What are the types of ICMP message types?

Internet Control Message Protocol (ICMP) shares error reporting and device status messages which can be further divided into specific message types with their codes.

These message types can be divided into two categories −

  • Error Reporting Messages
  • Query Messages

These message types are shown below −

Error Reporting Messages

These are messages which are sent when an error is reported by ICMP protocol.

Some of common messages under this category are as follows:

Destination Unreachable (Type 3)

One of the most common error reporting messages occurs when the router is unable to locate the path of the packet where it is needed to be delivered and in this case the packet also gets discarded and this message is sent to the source.

Redirect (Type 5)

This ICMP error message occurs whenever there is a request that demands redirection means there is a router called Gateway that has the information of other routers and based on the destination the packet is sent to the correct router.

But sometimes the packet that is needed to be sent to a router is not in the gateway router information directly. It needs to get the address of that router from the routers mentioned in its table. So as soon as it gets that address it gives the redirect message to the host so that host can directly send the message to that given address.

Query Messages

These are messages which are sent when ICMP queries about the status of the host.

Some of common messages under this category are as follows −

Echo Request (Type 8) & Echo reply (Type 0)

This pair of messages determines whether a given host can connect to a given destination by generating the echo request and echo reply messages. These are used simply to diagnose a network connection between sender and destination.

Time-stamp Request (Type 13) & Time stamp Reply (Type14)

These message pairs record the time taken by a host or router to reach another host or router by generating the time-stamp request and time-stamp reply messages where the difference between the 2 timestamps can tell the time taken to reach from one host to another.