Протоколы управления. Протокол ICMP |
RFC 792 |
|
Протокол управляющих сообщений Интернет (Internet Control Message Protocol)
•ICMP является частью сетевого уровня;
•доставляет собственные сообщения при помощи IP пакета в режиме дейтаграммы;
•предназначен для передачи сообщения об ошибках.
Существуют два типа ICMP-сообщений: сообщение-запрос и сообщение об ошибке.
Сообщения-запросы ICMP используются для диагностики сети
Сообщения об ошибках ICMP появляются в результате проблем с доставкой сетевого сообщения
Протоколы управления
Формат и инкапсуляция сообщения ICMP
64 бита (восемь байт)
Протоколы управления. Протокол ICMP
ICMP Сообщение - Ошибка
Формат ICMP-сообщения «пункт назначения недоступен»
ICMP Сообщение - Ошибка
Для постоянного слежения за состоянием сети |
Сообщения об ошибках перенаправления |
||
маршрутизаторы |
периодически |
обмениваются |
сообщениями, для обновления таблицы маршрутизации. Исходные данные которых хранятся в файлах конфигурации — это как правило, адрес соседнего маршрутизатора или шлюза.
Компьютеры обновляют свои таблицы, основываясь на информации от маршрутизаторов, с помощью ICMP- сообщений.
ICMP Сообщение - Ошибка
Ошибки типа «лимит времени исчерпан»
Заголовок IP-датаграммы содержит специальное поле «время существования» (Time-to-Live, TTL). Каждый маршрутизатор на пути пакета уменьшает время его существования.
Как только время существования в поле TTL IP-датаграммы сравняется с нулем, сетевые программы уничтожат пакет и вышлют ICMP-сообщение «лимит времени исчерпан» (тип 11) компьютеру- источнику пакета
Ошибки «неверный параметр»
Компьютеры и маршрутизаторы высылают такое сообщение, если источник проблемы с маршрутизацией или доставкой неизвестен
Код Описание
0Неверный IP заголовок
1Необходимая опция отсутствует
ICMP Сообщение - Ошибка
Сообщение об ошибке «столкновение данных»
Механизм контроля потока данных гарантирует, что передатчик не будет передавать быстрее, чем приемник в состоянии принять и обработать.
Протокол TCP обеспечивает механизм управления потоком в качестве одной из сетевых служб, но поскольку маршрутизаторы работают на уровне IP, в их входных очередях может создаваться аналог транспортной пробки в часы пик в результате слишком большого количества вновь приходящих IP- пакетов.
Если маршрутизатор не успевает обработать все приходящие пакеты, «лишние» пакеты уничтожаются, а компьютеру-источнику пакета направляется ICMP-сообщение об ошибке «столкновение данных»
Поле кода имеет значение 0
ICMP Сообщение - Запрос
Запросы «информация о маршрутизаторах»
В ICMP существуют два типа сообщений маршрутизаторов:
«информация о маршрутизации» (тип 10) «регистрация маршрутизатора» (тип 9)
Маршрутизаторы передают информационные ICMP-сообщения широковещательно через случайные интервалы времени
Интервалы колеблются от 450 до 600 секунд, значение поля «время существования» по умолчанию равно 30 минутам
ICMP Сообщение - Запрос
Запросы «временная метка»
Запросы «временная метка» (типы 13 и 14) позволяют вычислить время прохождения пакета между двумя компьютерами.
Компьютер-источник сообщения может заполнять поля: идентификатор метки и номер последовательности.
Три поля «временная метка» содержат количество секунд, прошедшее с полуночи:
первое поле значением текущего времени Компьютера-источник; Второе и третье поле Компьютер-приемник заполняет поле «принятая временная метка» и поле «переданная временная метка»
Запрос и ответ на получение маски адреса
Маска подсети определяет, на сколько частей (подсетей) разделена конкретная IP-сеть
Поля идентификатора и номера последовательности такие же, как и в сообщении «временная метка» Сообщение-ответ ICMP содержит маску подсети, накоторой находится компьютер-источник сообщения
ICMP Сообщение - Запрос
Запрос и ответ «эхо»
ICMP-модуль компьютера получает запрос «эхо», высылает собранное сообщение-ответ «эхо», что получивший компьютер находится в рабочем состоянии и способен отвечать на сетевые запросы.
ВЫВОДы:
1.ICMP переносит разнообразные сообщения об ошибках при доставке данных или маршрутизации.
2.Сообщения-запросы ICMP используются для отладки программного обеспечения сетевых компьютеров и разрешения проблем, связанных с межсетевой передачей данных, помогают определять источники сетевых неисправностей и отлаживать работу программ..
Сообщения об ошибках ICMP относятся к ошибкам при доставке пакетов данных и маршрутизации.
3.Использование и программирование ICMP:
Для работы с простым сокетом прикладная программа должна самостоятельно выполнять функции транспортного уровня, создавать и заполнять структуры данных требуемого протокола, в частности, заголовков IP и ICMP-датаграмм