ICMP
ICMP, the Internet Control Message Protocol, is a core supporting protocol of the Internet Protocol Suite. It is used by hosts, routers, and other network devices to send error messages and operational information indicating the success or failure of IP operations. ICMP messages carry information about problems such as unreachable destinations or timeouts, and they are used for diagnostic tasks. ICMP messages are encapsulated in IP packets and do not carry user data; they are not reliable and may be dropped, delayed, or filtered by firewalls.
ICMP was defined in the original Internet standard RFC 792, with subsequent updates for IPv4 and IPv6.
For IPv6, ICMPv6 serves the same diagnostic and error-reporting role and is defined in RFC 4443. ICMPv6
ICMP is widely used for network troubleshooting, diagnostics, and supporting features such as path MTU discovery.