RFC: 2460
Оригинал: Internet Protocol, Version 6 (IPv6) Specification
Предыдущие версии: RFC 1883
Категория: Проект стандарта
Дата публикации:
Авторы: ,
Перевод: Мельников Дмитрий Анатольевич

RFC 2460, Страница 15 из 31

Нефрагментируемая часть включает IPv6-заголовок и любые другие заголовки расширения, которые должны обрабатываться IPv6-узлами, расположенными на маршруте следования до конечного узла/получателя, то есть все перечисленные выше заголовки, включая также заголовок расширения «Маршрутизация», если он представлен, либо заголовок «Дополнительные функции: ретрансляция», если он представлен, либо отсутствие каких-либо заголовков расширения. Фрагментируемая часть включает оставшуюся последовательность IPv6-пакета, то есть любые заголовки расширения, которые должны обрабатываться только конечным IPv6-узлом/получателем, заголовок вышележащего уровня Internet-архитектуры и транслируемые данные.

Фрагментируемая часть оригинального IPv6-пакета разбивается на фрагменты, каждый из которых имеет длину, равную целому числу 8-октетных последовательностей, за исключением, может быть, последнего фрагмента («крайний правый»). Фрагменты передаются последовательно друг за другом с помощью фрагментальных IPv6-пакет (рис.11).

                                      «n» фрагментов
                    ________________________/\_________________________
                   /                                                   \
                     Δ0
             Δ1
             Δ2
     Δn-1
+------------------+--------------+--------------+--//--+--------------+
|  Часть пакета,   |    Первый    |    Второй    |      |  Последний   |
|  не подлежащая   |   фрагмент   |   фрагмент   |      |   фрагмент   |
|   фрагментации   |              |              |      |              |
+------------------+--------------+--------------+--//--+--------------+
+------------------+--------------------+--------------------+
|  Часть пакета,   |     Заголовок      |                    |
|  не подлежащая   |     расширения     |  Первый фрагмент   |
|   фрагментации   |   «Фрагментация»   |                    |
+------------------+--------------------+--------------------+
+------------------+--------------------+--------------------+
|  Часть пакета,   |     Заголовок      |                    |
|  не подлежащая   |     расширения     |  Второй фрагмент   |
|   фрагментации   |   «Фрагментация»   |                    |
+------------------+--------------------+--------------------+
                             o
                             o
                             o
+------------------+--------------------+--------------------+
|  Часть пакета,   |     Заголовок      |                    |
|  не подлежащая   |     расширения     | Последний фрагмент |
|   фрагментации   |   «Фрагментация»   |                    |
+------------------+--------------------+--------------------+
Рис.11. Формат «оригинального пакета», разделенного на фрагменты, и фрагментальные пакеты

Каждый фрагментальный пакет состоит из:

  1. Нефрагментируемой части оригинального IPv6-пакета с полем «Размер поля полезной нагрузки» из оригинального IPv6-заголовка, в котором отбрасывается значение поля полезной нагрузки из оригинального заголовка и включается размер поля полезной нагрузки только данного фрагментального пакета. Кроме этого, значение в поле «Идентификатор следующего заголовка расширения» последнего заголовка расширения из нефрагментируемой части оригинального IPv6-пакета заменяется значением «44».

  2. Заголовка расширения «Фрагментация», включающего:

    • Поле «Идентификатор следующего заголовка расширения», значение в котором указывает на первый заголовок фрагментируемой части оригинального IPv6-пакета.

    • Поле «Смещение (сдвиг) данного фрагмента» («Fragment Offset») — длина (в 8-октетовых единицах) между началом фрагментируемой части исходного IPv6-пакета и началом данного фрагмента пакета (длина сдвига — Δk , где к = 0…n-1). Если имеет место первый фрагмент («крайний левый»), то данное поле заполняется нулями (см. рис.11).

    • Поле «Флаг» («M flag»), содержащее значение «0», если данный фрагмент является последним («крайний правый»), или «1»— в противном случае.

    • Поле «Идентификация», содержащее идентификатор для данного оригинального IPv6-пакета.

  3. И собственно самого фрагмента оригинального IPv6-пакета.

Страница 15 из 31

2007 - 2022 © Русские переводы RFC, IETF, ISOC.