Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Протокол IP.doc
Скачиваний:
2
Добавлен:
07.07.2019
Размер:
402.94 Кб
Скачать

Дополнительные заголовки

В опущенных полях заголовка иногда возникает необходимость, поэтому в прото­коле IPv6 была представлена новая концепция (необязательного) дополнитель­ного заголовка. На сегодня определены шесть типов дополнительных заголовков, которые перечислены в табл. 5.9. Все они являются необязательными, но в случае использования более чем одного дополнительного заголовка они должны распо­лагаться сразу за фиксированным заголовком, желательно в указанном порядке.

Таблица 5.9 – Дополнительные заголовки IPv6

Дополнительный заголовок

Описание

Параметры маршрутизации

Разнообразная информация для маршрутизатора

Параметры получателя

Дополнительная информация для получателя

Маршрутизация

Частичный список транзитных маршрутизаторов на пути пакета

Фрагментация

Управление фрагментами дейтаграмм

Аутентификация

Проверка подлинности отправителя

Шифрование данных

Информация о зашифрованном содержимом

У некоторых заголовков формат фиксированный, другие содержат перемен­ное количество полей переменной длины. Для них каждый пункт кодируется в виде тройки (Тип, Длина, Значение). Тип представляет собой однобайтовое по­ле, содержащее код параметра. Первые два бита этого поля сообщают, что делать с пакетом, маршрутизаторам, не знающим, как обрабатывать данный параметр. Возможны четыре следующих варианта: пропустить параметр, игнорировать па­кет, игнорировать пакет и отослать обратно ICMP-пакет, а также то же самое, что и предыдущий вариант, но не отсылать обратно ICMP-пакет в случае много­адресной рассылки (чтобы один неверный многоадресный пакет не породил миллионы ICMP-донесений).

Поле Длина также имеет размер 1 байт. Оно сообщает, насколько велико зна­чение (от 0 до 255 байт). Поле Значение содержит необходимую информацию, размером до 255 байт.

Заголовок параметров маршрутизации содержит информацию, которую должны исследовать маршрутизаторы на протяжении всего пути следования па­кета. Пока что был определен один вариант использования этого параметра: под­держка дейтаграмм, превышающих 64 Кбайт. Формат заголовка показан на рис. 5.59.

Как и все дополнительные заголовки, он начинается с байта, означающего тип следующего заголовка. Следующий байт содержит длину дополнительного заго­ловка в байтах, не считая первых 8 байт, являющихся обязательными. С этого начинаются все расширения.

Следующие два байта указывают, что данный параметр содержит размер дейта­граммы (код 194) в виде 4-байтового числа. Размеры меньше 65 536 не допускают­ся, так как могут привести к тому, что первый же маршрутизатор проигнорирует данный пакет и отошлет обратно ICMP-сообщение об ошибке. Дейтаграммы, ис­пользующие подобные расширения заголовка, называются джамбограммами (от слова «jumbo», означающего нечто большое и неуклюжее). Использование джамбограмм важно для суперкомпьютерных приложений, которым необходимо эф­фективно передавать по Интернету гигабайты данных.

Маршрутный заголовок содержит информацию об одном или нескольких маршрутизаторах, которые следует посетить по пути к получателю. Это очень сильно напоминает свободную маршрутизацию стандарта IPv4 тем, что указан­ные в списке маршрутизаторы должны быть пройдены строго по порядку, тогда как не указанные проходятся между ними. Формат маршрутного заголовка пока­зан на рис. 5.60.

Первые четыре байта дополнительного маршрутного заголовка содержат че­тыре однобайтовых целых числа. В поле Тип маршрутизации описывает­ся формат оставшейся части заголовка. Если он равен 0, это означает, что далее следует зарезервированное 32-разрядное слово, а за ним — некоторое число ад­ресов IPv6. В будущем, возможно, будут по мере необходимости изобретаться какие-то новые поля. Наконец, в поле Число оставшихся сегментов указывается, сколько адресов из списка еще осталось посетить. Его значение уменьшается при прохождении каждого адреса. Когда оно достигает нуля, пакет оставляется на произвол судьбы — никаких указаний относительно его дальнейшего маршрута не дается. Обычно в этот момент пакет уже находится достаточно близко к месту назначения, и оптимальный маршрут очевиден.

Заголовок фрагментации определяет фрагментацию способом, схожим с про­токолом IPv4. Заголовок содержит идентификатор дейтаграммы, номер фрагмента и бит, информирующий о том, является ли этот фрагмент последним. В отличие от IPv4, в протоколе IPv6 фрагментировать пакет может только хост-источник. Маршрутизаторы фрагментировать пересылаемые пакеты не могут. Это поры­вающее с философией прошлого изменение в протоколе упрощает и ускоряет работу маршрутизаторов. Как уже было сказано, маршрутизатор отвергает слишком большие пакеты, посылая в ответ ICMP-пакет, указывающий хосту-ис­точнику на необходимость заново передать пакет, выполнив его фрагментацию на меньшие части.

Заголовок аутентификации предоставляет механизм подтверждения подлин­ности отправителя пакета. Шифрование данных, содержащихся в поле полезной нагрузки, обеспечивает конфиденциальность: прочесть содержимое пакета смо­жет только тот, для кого предназначен пакет. Для выполнения этой задачи в за­головках используются криптографические методы.