IP has no mechanism for error reporting or error-correcting. ICMPv4 was created to overcome this. a) What is ICMPv4? b) How do we use ICMPv4 with the TCP/IP Suite? c) How does it overcome the limitations in IP? Solution What is ICMP? ICMP stands for Internet Control Message Protocol. It is an error reporting protocol network device like routers used to generate error messages to the source IP addresses when network problem prevent delivery of IP Packets. ICMP creates and sends messages to the source IP address indicating that a gateway to the router, host and service cannot be reached for packet delivery. Any Network IP device has the capability to send, receive or process ICMP messages. How do we use ICMPv4 with the TCP/IP Suite? Various message types are defined in ICMP that allow different types of information to be exchanged. These are usually either generated for the purpose of reporting errors, or for exchanging important information of different sorts that is needed to keep IP operating smoothly. ICMP itself doesn\'t define how all the different ICMP messages are used; this is done by the protocols that use the messages. In this manner, ICMP describes a simple message-passing service to other protocols. ICMP is not like most other TCP/IP protocols in that it does not perform a specific task. It defines a mechanism by which various control messages can be transmitted and received to implement a variety of functions. ICMP is considered an integral part of IP, even though it uses IP to sends its messages. The operation of ICMP involves some portion of the TCP/IP protocol software on a machine detecting a condition that causes it to generate an ICMP message. This is often the IP layer itself, though it may be some other part of the software. The message is then encapsulated and transmitted like any other TCP/IP message, and is given no special treatment compared to other IP datagrams. The message is sent over the internetwork to the IP layer at the receiving device. Again, since many of the ICMP messages are actually intended to convey information to a device\'s IP software, the IP layer itself may be the “ultimate destination” of an ICMP message once a recipient gets it. In other cases, the ultimate destination may be some other part of the TCP/IP protocol software, which is determined by the type of message received. ICMP does not use ports like UDP or TCP to direct its messages to different applications on a host; the software recognizes the message type and directs it accordingly within the software How does it overcome the limitation in IP? IP is an unreliable method for the delivery of network data. It is known as a best effort delivery mechanism. It has no built-in process to ensure that data is delivered. If an intermediary device such as a router fails, data cannot be delivered. Additionally, nothing in its basic design allows IP to notify the sender that a data transmission has failed. ICMP is the component of the TCP/IP protocol.