The ICMP protocol

June 2018

Error management

ICMP (Internet Control Message Protocol) is a protocol which makes it possible to manage information relating to errors on networked machines. Considering the few controls that IP protocol carries out, it not only allows errors to be corrected but also informs the protocols of neighboring layers of these errors. So, ICMP protocol is used by all routers, who use it to indicate an error (called a Delivery Problem).

ICMP messages are encapsulated

ICMP error messages are sent over the network in datagram form, like any other data. So, the error messages themselves can be subject to errors.

However, in the event of an error on a datagram carrying an ICMP message, no error message is delivered in order to avoid a "snowball" effect in the event of an incident on the network.

Here is what an ICMP message encapsulated in an IP datagram resembles:

ICMP Message
(8 bits) (8 bits) (16 bits) (variable size)

Meaning of ICMP messages

PING. This command, allowing the network to be tested, sends a datagram to a destination and requests its return.

More information

For more information on ICMP protocol, please refer to RFC792 which explains the protocol in detail:


El protocolo ICMP
El protocolo ICMP
Le protocole ICMP
Le protocole ICMP
Il protocollo ICMP
Il protocollo ICMP
O protocolo ICMP
O protocolo ICMP
Latest update on October 16, 2008 at 09:43 AM by Jeff.
This document, titled "The ICMP protocol," is available under the Creative Commons license. Any copy, reuse, or modification of the content should be sufficiently credited to CCM (