Протокол управляющих сообщений Internet

Вторым протоколом сетевого уровня является Протокол управляющих сообщений Internet (ICMP). ICMP - обязательная часть любой реализации IP. ICMP отправляет сообщения об ошибках и управляющие сообщения протоколу IP.

С помощью этого протокола шлюзы и хосты отправляют источнику пакетов отчеты о неполадках. ICMP выполняет следующие функции:

  • Проверяет, что хост-получатель активен и доступен
  • Сообщает об неправильных параметрах в заголовке дейтаграммы
  • Синхронизует часы и определяет время передачи данных по маршруту
  • Определяет IP-адреса и маски подсетей
Прим.: Как и протоколы более высокого уровня, протокол ICMP использует базовые функции IP. Однако в действительности ICMP представляет собой часть протокола IP и должен быть реализован в каждом модуле IP.

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

Сообщения ICMP отправляются в следующих ситуациях:

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

TCP/IP отправляет и принимает сообщения ICMP нескольких типов (см. Типы сообщений протокола управляющих сообщений Internet). Протокол ICMP встроен в ядро и для него не предусмотрен интерфейс прикладных программ (API).