Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Протокол управляющих сообщений Интернета версии 6 ( ICMPv6 ) представляет собой реализацию протокола управляющих сообщений Интернета (ICMP) для Интернет-протокола версии 6 (IPv6). ICMPv6 определен в RFC 4443. [1] ICMPv6 является неотъемлемой частью IPv6 и выполняет функции отчетов об ошибках и диагностики (например, ping ).

ICMPv6 имеет основу для расширений для реализации будущих изменений. Было опубликовано несколько расширений, определяющих новые типы сообщений ICMPv6, а также новые параметры для существующих типов сообщений ICMPv6. Например, Neighbor Discovery Protocol (NDP) - это протокол обнаружения узла, основанный на ICMPv6, который заменяет и расширяет функции ARP . [2] Secure Neighbor Discovery (SEND) - это расширение NDP с дополнительной безопасностью. Обнаружение многоадресного прослушивателя (MLD) используется маршрутизаторами IPv6 для обнаружения многоадресных прослушивателей в прямом подключении, подобно тому как протокол управления группами Интернета (IGMP) используется в IPv4 . Обнаружение многоадресного маршрутизатора (MRD) позволяет обнаруживать многоадресные маршрутизаторы.

Типы и форматы сообщений [ править ]

Сообщения ICMPv6 можно классифицировать как сообщения об ошибках и информационные сообщения . Сообщения ICMPv6 транспортируются пакетами IPv6, в которых значение следующего заголовка IPv6 для ICMPv6 установлено на значение 58.

Сообщение ICMPv6 состоит из заголовка и данных протокола. Заголовок содержит всего три поля: тип (8 бит), код (8 бит) и контрольная сумма (16 бит). type указывает тип сообщения. Значения в диапазоне от 0 до 127 (старший бит равен 0) указывают на сообщение об ошибке, а значения в диапазоне от 128 до 255 (старший бит равен 1) указывают на информационное сообщение. Значение поля кода зависит от типа сообщения и обеспечивает дополнительный уровень детализации сообщения. Поле контрольной суммы обеспечивает минимальный уровень проверки целостности сообщения ICMP.

Типы [ править ]

Управляющие сообщения идентифицируются значением в поле типа . Поле кода дает дополнительную контекстную информацию для сообщения. Некоторые сообщения служат той же цели, что и типы сообщений ICMP с соответствующими названиями.

Обратите внимание, что приведенная выше таблица не является исчерпывающей. Текущий полный список назначенных типов ICMPv6 можно найти по этой ссылке: IANA: Параметры ICMPv6 .

Контрольная сумма [ править ]

ICMPv6 обеспечивает минимальный уровень проверки целостности сообщения путем включения 16-битной контрольной суммы в его заголовок. Контрольная сумма вычисляется, начиная с псевдозаголовка полей заголовка IPv6 в соответствии со стандартом IPv6 [3], который состоит из адресов источника и получателя, длины пакета и следующего поля заголовка, последнее из которых имеет значение 58. После этого псевдозаголовка контрольная сумма продолжается сообщением ICMPv6. Вычисление контрольной суммы выполняется в соответствии со стандартами Интернет-протокола с использованием суммирования дополнения до 16-битных единиц , за которым следует окончательное дополнение самой контрольной суммы и вставка ее в поле контрольной суммы. [4]Обратите внимание, что это отличается от того, как он рассчитывается для IPv4 в ICMP , но аналогичен расчету, выполненному в TCP .

Обработка сообщений [ править ]

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

Ссылки [ править ]

  1. ^ RFC 4443, Протокол управляющих сообщений Интернета (ICMPv6) для спецификации Интернет-протокола версии 6 (IPv6)
  2. ^ RFC 3315, § 3
  3. ^ RFC 2460, Интернет-протокол, спецификация версии 6 (IPv6) , раздел 8.1 ( Контрольная сумма верхнего уровня ), С. Диринг, Р. Хинден (декабрь 1998 г.)
  4. ^ RFC 1071, Вычисление контрольной суммы Интернета , Р. Брейден, Д. Борман, К. Партридж (сентябрь 1988 г.)

Внешние ссылки [ править ]

  • IANA: параметры ICMPv6
  • Перенумерация маршрутизатора для IPv6 . DOI : 10,17487 / RFC2894 . RFC 2894 .