
Internet Command Message Protocol
(ICMP)
CS-431
Dick Steflik

ICMP
•Internet Command Message Protocol (ICMP)
•RFC 792
•Used to communicate IP status and error messages between
host and routers

ICMP
•Used to communicate IP status and error messages between
hosts and routers
•Uses IP to route its messages between hosts
•Must be implemented with IP
•remember, IP is just a packet delivery system
•transmits and routes datagrams from sources to destinations through a
series of interconnected networks
•it has a checksum in the IP header to detect lost bits
–no error detection on the datagram payload though
•but has no native mechanism for source host notification
•This is where ICMP comes in
•its used to report IP errors to the source host
•ICMP data is carried as the payload of an IP datagram
•specifies additional message formats within this area

Basic ICMP Header
•Headers are 32 bits in length; all contain same three fields
•type - 8 bit message type code
•thirteen message type are defined
•code - 8 bit; indicating why message is being sent
•checksum - standard internet checksum
•16 bit 1’s complement sum of the payload and header
–for purpose of calculation the checksum field is set to zero

ICMP Message types
•0 - Echo Reply
•3 - Destination Unreachable
•4 - Source Quench
•5 - Redirect
•8 - Echo
•11 - Time Exceeded
•12 - Parameter Problem
•13 - Timestamp
•14 - Timestamp Reply
•15 - Information Request
•16 - Information Reply
•17 - Address Mask Request
•18 - Address Mask Reply

