Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книга бельфер.docx
Скачиваний:
247
Добавлен:
20.09.2019
Размер:
9.74 Mб
Скачать
  1. Глава 13. Ip-сети. Межсетевой уровень. Протоколы безопасности

    1. 13.1. Протоколы межсетевого уровня

      1. 13.1.1. Формат ip-пакета

Основным протоколом межсетевого уровня является протокол IP (Internet Protocol). IP - протокол выполняет функцию продвижения пакета между подсетями. Формат IP-пакета включает поле заголовка этого пакета и поле полезного груза. Под полезным грузом понимается поле, включающее заголовок сообщения транспортного уровня и данные прикладного уровня. В отличие от протоколов прикладного и транспортного уровней протокол IP устанавливается не только на оконечных станциях, но и на всех маршрутизаторах сети. IP - протокол является дейтаграммным ненадежным (без подтверждения) протоколом без установления соединений, т.е. дейтаграммным (гл. 2, разд. 2.2). Термин “ненадежный” отражает тот факт, что протокол IP не делает ничего, чтобы гарантировать доставку пакета, гарантировать последовательность доставленных пакетов, нет подтверждений, нет контроля ошибок и управления потоками данных. Если пакеты потеряны, то оконечному пункту (хосту) об этом не сообщается, а решением этой проблемы должны заниматься более высокие уровни.

Протокол IP реализует сеть передачи дейтаграмм. Дейтаграмма – это общее название для единиц данных, которыми оперируют протоколы без установления соединения. Дейтаграмму протокола IP называют также пакетом. Для доставки пакета протокол IP использует иерархическое структурирование IP – адресов, контроль за временем жизни пакетов в сети и проверку целостности заголовка IP – пакета. Как протокол без установления соединения, протокол IP обрабатывает каждую дейтаграмму индивидуально, т.е. каждый пакет маршрутизируется индивидуально. Узлы сети не устанавливают логическое соединение перед обменом IP – пакетами.

IP-пакет состоит из заголовка и инкапсулированного сегмента транспортного уровня. Приведём некоторые поля заголовка пакета IP.

Поле протокола верхнего уровня содержит идентификатор, указывающий какому протоколу верхнего уровня принадлежит информация, размещенная в поле данных пакета. Например, 6 означает, что в пакете находится заголовок протокола TCP, 17 - протокола UDP.

Поле IP - адресов источника и приемника имеют одинаковую длину 4 байта. IP-адреса представляются в формате десятичного представления с разделительными точками, где каждый байт представляется своим десятичным эквивалентом. Эти четыре десятичных числа разделяются точкой (например, 128.67.38.255). Каждый IP-адреса состоит из двух частей: идентификатора сети (подсети) NETID (network identifier) и идентификатора хоста HOSTID (host identifier). NETID идентифицирует определенную сеть, к которой подключен хост. Маршрутизаторы используют только NETID, который иногда называют префиксом сети. IP-адрес 128.67.38.255 имеет идентификатор сети 128.67 (в двоичном виде третий и четвертый байты – 10000000 и 01000011) и идентификатор хоста 38.255 (в двоичном виде первый и второй байты – 00100110 11111111). В протоколе IP для извлечения идентификатора сети NETID используется маска с использованием слэша (/). В маске каждый бит, которой является частью идентификатора сети NETID, равен 1, а биты, являющиеся частью идентификатора хоста HOSTID, равны 0. Например, 128.67.38.255/16 означает, что первые 16 битов этого адреса – это идентификатор NETID 128.67.0.0. За счет управления битами в маске группа IP-адресов может быть разбита на меньшие сети. Например, добавив 3 бита к 24 разрядной маске сети 3 бита, добавляется 8 новых сетей, каждая из которых содержит меньшее количество идентификаторов хостов.

Для идентификации компьютеров в IP-сетях используют IP-адреса. Однако пользователи пользуются более удобными символьными именами компьютеров. Символьные идентификаторы строятся по иерархическому принципу. Составляющие символьного (или доменного) имени разделяется точкой и перечисляются в следующем порядке: сначала простое имя хоста, затем имя группы хостов (например, имя организации), потом имя более крупной группы (домена) и так далее до имени домена самого высокого уровня (например, домена объединяющего организации по географическому принципу: RU – Россия, UK – Великобритания). Вместо отправки электронной почты на адрес Alla@128.67.38.255 удобнее выглядит адрес: Alla@art.edu.ru. Для преобразования текстовых имен была разработана служба имен доменов DNS (Domain Name System). Для преобразования имени в IP-адрес программа прикладного уровня обращается к процедуре распознавателя, который посылает UDP-пакет DNS-серверу. Этот сервер находит имя в базе данных и возвращает соответствующий IP-адрес вызвавшей его программе прикладного уровня.

Поле общей длины IP - пакета (т.е. заголовка и данных).

Поле время жизни. Определяет, как долго дейтаграмма может оставаться в сети. Каждый маршрутизатор уменьшает значение поля, как минимум, на единицу. Поэтому поле является механизмом самоуничтожения пакета.

Контрольная сумма циклического кода заголовка (контрольно-проверочная комбинация КПК) занимает 2 байта и рассчитывается только по заголовку.

Поскольку некоторые поля заголовка могут изменяться (например, время жизни), это поле проверяется на каждом маршрутизаторе. Если контрольная сумма неверна, то пакет отбрасывается, как только обнаруживается ошибка.