ICMP

Associated with IP is a control protocol called the Internet control message protocol, or ICMP, which sends control messages between hosts and routers. ICMP messages are carried in IP datagrams with the Protocol field set to 1. There are a number of different ICMP message types usually sent by routers to inform hosts of errors or of better routes. Some examples are:

ICMP is used to create some useful network utilities, notably ping, tracert and pathping. For example, ping simply sends an Echo Request to a selected destination and waits to see if an Echo Reply is received: this is useful in determining whether a host or router is alive. tracert sends out an Echo Request to a destination but with the ttl field of its IP packet set to 1. The first router on the path decrements this to zero and kills the packet, but also sends back a Time Exceeded message identifying itself. Next, an Echo Request with a ttl of 2 is sent, forcing the second router on the path to identify itself and so on until the source has a complete list of the routers on the current path to the selected destination. pathping is similar to tracert but also repeatedly pings routers on the path to a chosen destination and estimates the packet losses caused by overloaded routers (congestion). This can be helpful in attempting to locate the source of any problem experienced in reaching a destination.

Exercise: Open a Windows 2000 Command Windows and experiment with the three utilities mention. To get options for each command, type it with no parameters. Note that tracert and pathping both report round trip times to routers and both use 'return asterisks if a router does not reply.