ICMP (Internet Control Message Protocol)

icmp-header-how

Internet Control Message Protocol is a Layer 3 Protocol. In IP networks, devices send ICMP encapsulated in IP packet. The general role of ICMP Protocol is generate error packets about the network devices and it is used in troubleshooting activities. As a summary, ICMP supports IP routing, diagnostics and error reporting.

Network engineers use ICMP Protocol generally for troubleshooting activities. The main two troubleshooting commands for network engineers , “ping” and “traceroute”, works with Internet Control Message Protocol . In every passed node, TTL value in the IP packet decrease one. And when it is 0, that node sends ICMP message to the sender, about the reachability of the destination.

Internet Control Message Protocol does not guaranteed the delivery. A hundred percent security is not required already.


ICMP Message and ICMP Header Format

ICMP Message is sent as encapsulated in IP Packet.

icmp-header-how

In the ICMP Message, firstly there is an ICMP Header in the front.This Internet Control Message Protocol Message , consist of the below areas:

• Type
• Code
• Checksum
• Unused

icmp-header-fields

We can devide ICMP Messages into two category accourding to their goals. These Message Categories are:

• Error Messages
• Informational / Query Messages


ICMP Type And Code Fields

ICMP Header has three main areas as we mentione above: Type, Code and Checksome. Here;

• “Type” is the format of DHCP Message.
• “Code” is a detailed description of DHCP Message.

What are these Type and Code values? Let’s see firtly Type values and their meanings. And then we will talk about the Code values.

The Type values and teir meanings are below:

Like ICMPv4, ICMPv6 also has the Code values. You can also check the code values of this different Types below:

icmpv6-error-messages

icmpv6-informational-messages

icmpv6-neighbour-discovery-messages

One Response to “ICMP (Internet Control Message Protocol)”


Leave a Reply

Your email address will not be published. Required fields are marked *