Нефрагментируемая часть включает IPv6-заголовок и любые другие заголовки расширения, которые должны обрабатываться IPv6-узлами, расположенными на маршруте следования до конечного узла/получателя, то есть все перечисленные выше заголовки, включая также заголовок расширения «Маршрутизация», если он представлен, либо заголовок «Дополнительные функции: ретрансляция», если он представлен, либо отсутствие каких-либо заголовков расширения. Фрагментируемая часть включает оставшуюся последовательность IPv6-пакета, то есть любые заголовки расширения, которые должны обрабатываться только конечным IPv6-узлом/получателем, заголовок вышележащего уровня Internet-архитектуры и транслируемые данные.
Фрагментируемая часть оригинального IPv6-пакета разбивается на фрагменты, каждый из которых имеет длину, равную целому числу 8-октетных последовательностей, за исключением, может быть, последнего фрагмента («крайний правый»). Фрагменты передаются последовательно друг за другом с помощью фрагментальных IPv6-пакет (рис.11).
«n» фрагментов ________________________/\_________________________ / \ Δ0 Δ1 Δ2 Δn-1 +------------------+--------------+--------------+--//--+--------------+ | Часть пакета, | Первый | Второй | | Последний | | не подлежащая | фрагмент | фрагмент | | фрагмент | | фрагментации | | | | | +------------------+--------------+--------------+--//--+--------------+ +------------------+--------------------+--------------------+ | Часть пакета, | Заголовок | | | не подлежащая | расширения | Первый фрагмент | | фрагментации | «Фрагментация» | | +------------------+--------------------+--------------------+ +------------------+--------------------+--------------------+ | Часть пакета, | Заголовок | | | не подлежащая | расширения | Второй фрагмент | | фрагментации | «Фрагментация» | | +------------------+--------------------+--------------------+ o o o +------------------+--------------------+--------------------+ | Часть пакета, | Заголовок | | | не подлежащая | расширения | Последний фрагмент | | фрагментации | «Фрагментация» | | +------------------+--------------------+--------------------+ Рис.11. Формат «оригинального пакета», разделенного на фрагменты, и фрагментальные пакеты
Каждый фрагментальный пакет состоит из:
Нефрагментируемой части оригинального IPv6-пакета с полем «Размер поля полезной нагрузки» из оригинального IPv6-заголовка, в котором отбрасывается значение поля полезной нагрузки из оригинального заголовка и включается размер поля полезной нагрузки только данного фрагментального пакета. Кроме этого, значение в поле «Идентификатор следующего заголовка расширения» последнего заголовка расширения из нефрагментируемой части оригинального IPv6-пакета заменяется значением «44».
Заголовка расширения «Фрагментация», включающего:
Поле «Идентификатор следующего заголовка расширения», значение в котором указывает на первый заголовок фрагментируемой части оригинального IPv6-пакета.
Поле «Смещение (сдвиг) данного фрагмента» («Fragment Offset») — длина (в 8-октетовых единицах) между началом фрагментируемой части исходного IPv6-пакета и началом данного фрагмента пакета (длина сдвига — Δk , где к = 0…n-1). Если имеет место первый фрагмент («крайний левый»), то данное поле заполняется нулями (см. рис.11).
Поле «Флаг» («M flag»), содержащее значение «0», если данный фрагмент является последним («крайний правый»), или «1»— в противном случае.
Поле «Идентификация», содержащее идентификатор для данного оригинального IPv6-пакета.
И собственно самого фрагмента оригинального IPv6-пакета.