3.4. Сообщение «Параметрическая проблема»
На рис.5 представлен формат сообщения «Параметрическая проблема».
0 0 |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 0 |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 0 |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 0 |
1 |
«Тип ICMPv6-сообщения» | «Тип кодирования» | «Проверочная сумма» | |||||||||||||||||||||||||||||
«Указатель» | |||||||||||||||||||||||||||||||
В этом субполе размещается принятое ошибочное сообщение (либо его часть). | |||||||||||||||||||||||||||||||
При этом суммарный размер данного ICMPv6-сообщения не должен превышать | |||||||||||||||||||||||||||||||
максимальный разрешенный размер IPv6-пакета. |
Рис.5. Формат ICMPv6-сообщения «Параметрическая проблема»
Поле «Адрес получателя» IPv6-заголовка пакета:
Он копируется из поля «Адрес отправителя» IPv6-заголовка принятого ошибочного пакета.
Поле «Тип ICMPv6-сообщения» ICMPv6-сообщения:
Это поле содержит значение «4».
Поле «Тип кодирования» ICMPv6-сообщения:
Это поле может содержать следующие значения:
«0» — обнаружено ошибочное поле заголовка;
«1» — обнаружен неопределенный тип поля «Следующий заголовок»;
«2» — обнаружена неопределенная дополнительная IPv6-функция.
Поле «Указатель» ICMPv6-сообщения:
Определяет номер октета внутри ошибочного пакета (место в пакете), где обнаружена ошибка. Указатель будет размещаться в конце ICMPv6-пакета, если ошибка находится за пределами той части сообщения, которая не превышает максимальный разрешенный размер ICMPv6-сообщения об ошибке.
Применение ICMPv6-сообщения «Параметрическая проблема»:
Если IPv6-узел, обрабатывающий пакет, найдет в нем проблемную ошибку, связанную с корректностью поля в IPv6-заголовке или заголовке расширения, которая не позволяет ему завершить обработку пакета, то тогда узел должен уничтожить принятый ошибочный пакет. Также целесообразно, передать ICMPv6-сообщение «Параметрическая проблема» по адресу источника ошибочного пакета, указав в нем тип и место обнаруженной параметрической проблемы.
Указатель определяет октет оригинального заголовка пакета, где была вскрыта ошибка. Например, ICMPv6-сообщение «Параметрическая проблема» со значениями «4» в поле «Тип ICMPv6-сообщения», «1» в поле «Тип кодирования» и «40» в поле «Указатель» будет означать, что IPv6-заголовок расширения, следующий за IPv6-заголовком, оригинального пакета содержит неопределенное значение в поле «Следующий заголовок».
Уведомление протокола вышележащего уровня:
IP-узел, который получил ICMPv6-сообщение «Параметрическая проблема», должен уведомить протокольный процесс вышележащего уровня.