ICMP - Controlling IP ICMP (Internet Control Message Protocol) is used to add some control functionality missing in the IP protocol. ICMP packets arrive encapsulated inside IP packets. Yet, they may contain message that dictate how IP routing should work. Each ICMP packet has one of a list of defined message types. For example, 'host unreachable', that may be sent by a router that got a packet for which it cannot locate a next HOP. The famous "ping" utility uses two ICMP message types to do its work - 'echo' and 'echo reply'. Each host receiving an 'echo' packet destined to it, is expected to transmit an 'echo reply' message back to the originating host.