ICMP - Internet Control Message Protocol
ICMP is short for Internet Control Message Protocol. It is an extension to the Internet Protocol (IP) defined by RFC 792. ICMP supports packets containing error, control, and informational messages. It is an error reporting protocol and is used by routers, hosts and network devices to generate error messages when there are problems delivering IP packets.
ICMP is Defined by RFC 792
RFC 792 defins the goals and specifications for ICMP. ICMP, uses the basic support of IP , however it is actually an integral part of IP, and must be implemented by every IP module. As defined by RFC 792;
"ICMP messages are sent in several situations: for example, when a datagram cannot reach its destination, when the gateway does not have the buffering capacity to forward a datagram, and when the gateway can direct the host to send traffic on a shorter route. The Internet Protocol is not designed to be absolutely reliable. The purpose of these control messages is to provide feedback about problems in the communication environment." [source]
The Internet Control Message Protocol is used by routers, devices or hosts to communicate error information to other routers, devices, or hosts. An ICMP message contains TYPE, CODE and CHECKSUM fields. These fields identify the ICMP message, provide additional information about Type and provide a method for determining the integrity of the message.
The PING command, for example, uses ICMP to test an Internet connection.
Stay up to date on the latest developments in Internet terminology with a free weekly newsletter from Webopedia. Join to subscribe now.
This chat guide lists more than 1,460 text message and online chat abbreviations to help you translate today's texting lingo. Read More »SEO Dictionary
From keyword analysis to backlinks and Google search engine algorithm updates, our search engine optimization glossary lists 85 SEO terms you need... Read More »Slideshow: History of Microsoft Operating Systems
Microsoft Windows is a family of operating systems for personal computers. In this article we look at the history of Microsoft operating... Read More »
Computer architecture provides an introduction to system design basics for most computer science students. Read More »Network Fundamentals Study Guide
Networking fundamentals teaches the building blocks of modern network design. Learn different types of networks, concepts, architecture and... Read More »Java Basics, Part 1
Java is a high-level programming language. This guide describes the basics of Java, providing an overview of syntax, variables, data types and... Read More »