ICMP

от Уикипедия, свободната енциклопедия
Направо към: навигация, търсене

ICMP (на английски: Internet Control Message Protocol) е един от основните протоколи в Интернет комуникацията. Използва се главно от операционните системи за изпращането на съобщения за грешка, показвайки недостъпност на Интернет услугата или че хостът в Интернет не може да бъде достигнат. ICMP рядко се използва от Интернет приложенията. Програми, които използват протокола ICMP са ping, nmap и др.

Структура на сегмента[редактиране | edit source]

Хедър[редактиране | edit source]

ICMP хедъра започва след този на IPv4 и бива идентифициран с протоколен номер '1'. Всички ICMP пакети имат 8-байтов хедър и променлив размер на частта със съдържащите се данни. Първите 4 байта от хедъра са последователни. Първият байт е за ICMP типа. Следващият обозначава ICMP кода. Третият и четвъртият представляват сума за проверка на цялостта на пакета за цялата информация, съдържаща се в него. Съдържанието на останалите 4 байта от хедъра е зависимо от типа и вида на ICMP пакета.

ICMP съобщенията за грешка съдържат частта с информацията в пакета, която включва в себе си целият IP хедър, заедно с първите 8 байта от съдържанието на IP пакета, причинил грешката. След това ICMP пакета бива капсулиран в нов IP пакет.

Битове 0–7 8–15 16–23 24–31
0 Тип Код Сума за проверка
32 Останала част от хедъра
  • Тип – ICMP тип.
  • Код – Подтип на зададеният тип.
  • Сума за проверка – Информация за проверка за грешки и цялост, изчислена от ICMP хедъра и данните в пакета.
  • Останала част от хедъра – 4-байтово поле, чиито пълнеж варира от типа и кода на ICMP пакета.

Приложения[редактиране | edit source]

Известно приложение на ICMP протокола е в мрежовият диагностичен инструмент ping, който използва Echo-Request/Reply съобщения за да провери свързаността с отдалечен хост.


Криейтив Комънс - Признание - Споделяне на споделеното Лиценз за свободна документация на ГНУ Тази страница частично или изцяло представлява превод на страницата „Internet Control Message Protocol“ в Уикипедия на английски. Оригиналният текст, както и този превод, са защитени от Лиценза „Криейтив Комънс - Признание - Споделяне на споделеното“, а за съдържание, създадено преди юни 2009 година — от Лиценза за свободна документация на ГНУ. Прегледайте историята на редакциите на оригиналната страница, както и на преводната страница, за да видите списъка на съавторите.