A TCP/IP network layer protocol used by routers and TCP/IP hosts for building and maintaining routing tables, adjusting data flow rates, and reporting errors and control messages for TCP/IP network communication. Internet Control Message Protocol (ICMP) is defined in Request for Comments (RFC) 792.
ICMP uses connectionless Internet Protocol (IP) datagrams of various types for communicating control messages between hosts and routers on a TCP/IP network. The more common ICMP packets include the following:
When a multihomed machine running Windows NT is used as a router, it does not send Source Quench messages to the transmitting hosts if data is being received too quickly. Instead, it simply discards packets that can’t be buffered and processed.
ICMP redirects can modify a router’s routing table, so sometimes hackers try to subvert routers by issuing forged ICMP redirects in order to perform a denial of service attack. ICMP redirects are usually sent by routers only if all the following conditions occur: