Протокол ICMP. Типы сообщений.

Протокол ICMP. Типы сообщений.

Предназначен д/обработки ошибок, возникающих в процессе пересылки IP – датограмм и д/простейшего тестирования сети. Протокол ICMP явл-ся необход-м д/работы протокола IP и обязат-н д/реализации на всех хостах. Относится к сетевому уровню. Д/доставки ICMP пакетов испол-ся протокол IP. Формат ICMP сообщ-й различается в зависим-ти от их типа. Общими д/всех ICMP сообщ-й явл-ся 1-ые 3-и поля: это поле тип (определ-щие поле типа ICMP) – 8 бит; код (содерж-щие код ошибки) – 8 бит; поле контрольной длины – 16 бит. Основ-ые типы сообщ-й:

1. получ-ль не достижим – высылается в том случае, если IP- датограмма не может быть достав-на получ-лю. Поле кода в этом случае содержит причину, по к-рой пакет не может быть доставлен. Основ-е причины: хост не достижим; сеть не достижима; необходима фрагментация, но установ-н флаг DF.

2. сообщ-е переадресации – высылается в случае, когда отправ-ль пытается передать пакет получ-лю не ч/з тот шлюз. В этом случае шлюз возвращает отправ-лю ICMP сообщ-е, указыв-щее какой шлюз следует использ-ть д/данного получ-ля.

3. сообщ-е о превышении времени жизни – в зависим-ти от кода, может означать либо то, что в процессе доставки зн-ние поля TTL в IP заголовке достигло 0 или пакет был уничтожен, либо то, что пакет фрагментирован и шлюз, к-рый должен был его собрать, не получил все фрагменты пакета в течение предельного времени сборки фрагментов.

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

Данный тип сообщ-й испол-ся командой ping. При опред-ии пути до получ-ля может использ-ся программа traceroute. Работает след-щим образом: Хосту, до к-рого требуется опред-ть маршрут, высылается IP пакет со зн-нием поля TTL, установ-ым в 1-цу. Этот пакет доходит до 1-го шлюза на пути к получ-лю, там з-ние поля TTL ↓ на 1-цу →=0, пакет уничт-тся, а отправ-лю выс-ется ICMP сообщ-е о превышении жизни. По обратному адресу в этом сообщ-и отправ-ль может опред-ть 1-ый шлюз на пути к отправ-лю, затем отправ-ль высылает IP пакет со зн-ем поля TTL=2, пакет дойдет до 2-го шлюза, там будет уничтожен, и отправ-ль получит сообщ-е об этом → узнает адрес 2-го шлюза на пути до получ-ля — отправ-ль может узнать всю последов-ть шлюзов на пути к получ-лю.