ICMP (Internet Control Message Protocol)

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

br /> ICMP=1
Контрольная сумма заголовка

16-битное дополнение до единицы суммы дополнений до единицы всех 16-битных слов в заголовке. При вычислении данной суммы следует первоначально устанавливать значение этого поля в нуль.
В дальнейшем этот алгоритм вычисления контрольной суммы должен быть изменен.

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

Адрес шлюза или хост-компьютера, который составил данное ICMP сообщение. Если не оговорено обратное, в этом поле может находиться любой из адресов шлюза.

Адрес получателя

Адрес шлюза или хост-компьютера, которому следует послать данное сообщение.

Сообщение о недостижимости порта

01234567890123456789012345678901Тип Код Контрольная сумма не используется Internet заголовок + 64 бита данных из исходной датаграммы Поля Internet протокола:

Адрес получателя

Локальная сеть и адрес компьютера, отправившего исходную датаграмму

Поля ICMP протокола

Тип
3

Код

0 невозможно передать датаграмму на локальную сеть, где находится адресат1 невозможно передать датаграмму на хост-компьютер, являющийся адресатом2нельзя воспользоваться указанным протоколом3нельзя передать данные на указанный порт4для передачи датаграммы по сети требуется фрагментация, однако выставлен флаг DF. 5 сбой в маршрутизации при отправленииКонтрольная сумма
Контрольная сумма является 16-битным дополнением до единицы суммы дополнений октетов в полях ICMP сообщения, начиная с поля типа ICMP. Для вычисления контрольной суммы первоначально значение этого поля обнуляется. В будущем процедура вычисления контрольной суммы может быть изменена.

Internet заголовок + 64 бита данных из исходной датаграммы
Данное поле содержит Internet заголовок и первые 64 бита данных из исходной датаграммы для выработки сообщения для соответствующего процесса. Если протокол более высокого уровня использует номера портов, то предполагается, что эти номера находятся в первых 64 битах поля данных.

Описание
Если, согласно информации в таблицах маршрутизации шлюза, локальная сеть, указанная в Internet заголовке датаграммы в поле адресата, является недостижимой, например, из-за ее чрезмерной удаленности, то шлюз может послать хост-компьютеру, отправившему датаграмму по Internet сети, сообщение о недостижимости адресата.

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

Иная ситуация возникает, когда для достижения адресата датаграмма должна быть разбита шлюзом на отдельные фрагменты, но установлен флаг запрета фрагментации. О этом случае шлюз обязан ликвидировать датаграмму и может при этом послать сообщение о недостижимости адресата.

Шлюз может послать сообщения с кодами 0, 1, 4 и 5. Хост-компьютер может послать сообщения с кодами 2 и 3.

Сообщение о превышении контрольного времени

01234567890123456789012345678901Тип Код Контрольная сумма не используется Internet заголовок + 64 бита данных из исходной датаграммы Поля IP заголовка

Заимствованы сеть и адрес отправителя из исходной датаграммы с данными. Поля ICMP сообщения

Тип
11

Код

 

0 при передаче превышено время жизни1превышено контрольное время при сборке фрагментов датаграммыКонтрольная сумма

Контрольная сумма является 16-битным дополнением до единицы суммы дополнений в ICMP сообщении, начиная с поля типа ICMP.

При вычислении суммы следует сперва обнулить поле контрольной суммы. В будущем алгоритм контрольной суммы может быть изменен.

Internet заголовок + 64 бита данных из исходной датаграммы

Internet заголовок плюс первые 64 бита данных из исходной датаграммы. Эти биты данных используются хост-компьютером для привязки сообщения к соответствующему процессу. Если протокол более высокого уровня использует номера портов, то предполагается, что эти номера входят в первые 64 бита данных в исходной датаграмме.

Описание
Если фрагмент нулевого размера превысил контрольное время, то сообщение в этом не посылается вовсе.

Шлюз может послать сообщение с кодом 0, а хост - с кодом 1.

Сообщение о проблемах с параметром

01234567890123456789012345678901Тип Код Контрольная сумма указатель не используется Internet заголовок + 64 бита данных из исходной датаграммы Поля IP заголовка

Заимствованы сеть и адрес отправителя из исходной датаграммы с данными. Поля ICMP сообщения

Тип
12

Код
0 - указатель показывает ошибку

Контрольная сумма

Контрольная сумма является 16-битным дополнением до единицы суммы дополнений в ICMP сообщении, начиная с поля типа ICMP.

При вычислении суммы следует сперва обнулить поле контрольной суммы. В будущем алгоритм вычисления контрольной суммы может быть изменен.

Указатель

Если код = 0, то он указывает на октет, где была обнаружена ошибка.
Internet заголовок + 64 бита данных из исходной датаграммы
Эти биты данных используются хост-компьютером для привязки сообщения к соответствующему процессу. Если протокол более высокого уровня использует номера портов, то предполагается, что эти номера входят в первые 64 бита данных в исходной датаграмме.

Описание
Если шлюз или хост-компьютер, обрабатывающий датаграмму, обнаруживает проблему с обработкой параметров заголовка, и это не позволяет завершить ее обработку, то он должен ликвидировать рассматриваемую датаграмму. Одной из потенциальных причин такой неприятн