Сообщение Time Exceeded
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Code | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | unused | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Заголовок IP и 64 бита исходной дейтаграммы | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Поля IP
- Destination Address
- Адрес отправителя исходной дейтаграммы.
Поля ICMP
- Type
- 11
- Code
- 0 — время жизни истекло в процессе доставки;
- 1 — время жизни истекло в процессе сборки фрагментов.
- Checksum
- Контрольная сумма представляет собой 16-битовое поразрядное дополнение до единицы суммы поразрядных дополнений до единицы сообщения ICMP, начиная с поля ICMP Type. При расчете контрольной суммы значение поля checksum принимается нулевым. Алгоритм вычисления контрольной суммы может быть изменен в будущем.
- Заголовок IP и 64 бита исходной дейтаграммы
- Эта информация используется хостом, чтобы связать сообщение с подходящим процессом. Если протокол вышележащего уровня использует порты, можно полагать, что номер порта присутствует в первых 64 байтах данных исходной дейтаграммы.
Описание
Если обрабатывающий дейтаграмму шлюз видит, что поле TTL содержит нулевое значение, дейтаграмма должна быть отброшена. Шлюз может уведомить отправителя дейтаграммы с помощью сообщения time exceeded.
Если хост, собирающий дейтаграмму из фрагментов, не может завершить сборку в течение заданного времени по причине нехватки фрагментов, дейтаграмма должна быть отброшена. Хост может передать отправителю дейтаграммы сообщение time exceeded.
При отсутствии нулевого фрагмента сообщение time exceeded передавать не нужно.
Код 0 может быть получен от шлюза, код 1 — от хоста.