Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lec.doc
Скачиваний:
31
Добавлен:
05.12.2018
Размер:
2.61 Mб
Скачать

1.2.7 Формат заголовка пакета Ipv4

Протокол IP является самым главным во всей иерархии протоколов семейства TCP/IP. Он используется для управления рассылкой TCP/IP пакетов по сети Internet.

Выделяют следующие функции:

а) определение пакета (датаграммы), который является базовым понятием и единицей передачи данных в сети Internet;

б) определение адресной схемы, которая используется в сети Internet;

в) передача данных между канальным уровнем и транспортным уровнем (мультиплексирование датаграмм во фреймы канального уровня);

г) маршрутизация пакетов по сети, т.е. передача пакетов от одного шлюза к другому с целью передачи пакета машине-получателю;

д) "нарезка" и сборка из фрагментов пакетов транспортного уровня.

Главными особенностями протокола IP является отсутствие ориентации на физическое или виртуальное соединение. Кроме этого, IP не заботится о проверке целостности информации в поле данных пакета, что заставляет отнести его к протоколам ненадежной доставки. Целостность данных проверяется протоколом TCP.

Т.о. информация о пути, по которому должен пройти пакет берется из самой сети в момент прохождения пакета. Эта процедура - маршрутизация. Принцип маршрутизации – один из тех факторов, обеспечивающих гибкость сети Internet и ее победу в соревновании с другими сетевыми технологиями.

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

Рис. 2.3. Формат пакета Ipv4.

Фактически, в этом заголовке определены все основные данные, необходимые для перечисленных выше функций протокола IP: адрес отправителя (4-ое слово заголовка), адрес получателя (5-ое слово заголовка), общая длина пакета (поле Total Lenght) и тип пересылаемой датаграммы (поле Protocol). Используя данные заголовка, машина может определить на какой сетевой интерфейс отправлять пакет. Если IP-адрес получателя принадлежит одной из ее сетей, то на интерфейс этой сети пакет и будет отправлен, в противном случае пакет отправят на другой шлюз.

Если пакет слишком долго "бродит" по сети, то очередной шлюз может отправить ICMP-пакет на машину-отправитель чтобы уведомить о том, что надо использовать другой шлюз. Сам IP-пакет будет уничтожен. На этом принципе работает программа ping, использующаяся для деления маршрутов прохождения пакетов по сети. Зная протокол транспортного уровня, IP-модуль производит раскапсулирование информации из своего пакета и ее направление на модуль обслуживания соответствующего транспорта.

При обсуждении формата заголовка пакета IP вернемся еще раз к инкапсулированию. Как уже отмечалось, при обычной процедуре инкапсулирования пакет помещается в поле данных фрейма, а в случае, когда это не может быть осуществлено, то разбивается на более мелкие фрагменты. Для того, чтобы потом восстановить пакет IP должен держать информацию о своем разбиении. Для этой цели используется поля "flags" и "fragmentation offset". В этих полях определяется, какая часть пакета получена в данном фрейме, если этот пакет был фрагментирован на более мелкие части.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]