Content Overview IP is limited because
it is a best effort delivery system. It has no mechanism to
ensure that the data is delivered, regardless of the problems
it may encounter on the network. Data may fail to reach its
destination for a variety of reasons, such as hardware failure,
improper configuration or incorrect routing information. To
help identify these failures, IP uses the Internet Control
Message Protocol (ICMP) to notify the sender of the data that
there was an error in the delivery process. This module
describes the various types of ICMP error messages and some of
the ways they are used. Because IP does not have a built-in
mechanism for sending error and control messages, it uses the
ICMP to send and receive error and control messages to hosts on
a network. This module focuses on control messages, which are
messages that provide information or configuration parameters
to hosts. Knowledge of ICMP control messages is an essential
part of network troubleshooting and is a key to a full
understanding of IP networks. Students completing this module
should be able to: - Describe ICMP
- Describe
the ICMP message format
- Identify ICMP error message
types
- Identify potential causes of specific ICMP
error messages
- Describe ICMP control messages
- Identify a variety of ICMP control messages used in
networks today
- Determine the causes for ICMP control
messages
Content 8.1 Overview of
TCP/IP Error Message 8.1.1 Internet Control
Message Protocol (ICMP) IP is an unreliable method for
delivery of network data. It is known as a best effort delivery
mechanism. It has no built-in processes to ensure that data is
delivered in the event that problems exist with network
communication. If an intermediary device such as a router
fails, or if a destination device is disconnected from the
network, data cannot be delivered. Additionally, nothing in its
basic design allows IP to notify the sender that a data
transmission has failed. Internet Control Message Protocol
(ICMP) is the component of the TCP/IP protocol stack that
addresses this basic limitation of IP. ICMP does not overcome
the unreliability issues in IP. Reliability must be provided by
upper layer protocols if it is needed. Web Links
Introduction to ICMP http://www.cisco.com/en/US/tech/tk826/
tk364/tk344/tech_ protocol_home.html
Content 8.1
Overview of TCP/IP Error Message 8.1.2
Error reporting and error correction ICMP is an error
reporting protocol for IP. When datagram delivery errors occur,
ICMP is used to report these errors back to the source of the
datagram. For example, if Workstation 1 in Figure is sending a
datagram to Workstation 6, but interface Fa0/0 on Router C goes
down, Router C then utilizes ICMP to send a message back to
Workstation 1 indicating that the datagram could not be
delivered. ICMP does not correct the encountered network
problem; it merely reports the problem. When Router C receives
the datagram from Workstation 1, it knows only the source and
destination IP addresses of the datagram. It does not know
about the exact path the datagram took on the way to Router C.
Therefore, Router C can only notify Workstation 1 of the
failure, and no ICMP messages are sent to Router A and Router
B. ICMP reports on the status of the delivered packet only to
the source device. It does not propagate information about
network changes to routers. Web Links Internet Protocol:
Error and Control Messages (ICMP)
http://faculty.weber.edu/wclark/ch9a.pdf
Content
8.1 Overview of TCP/IP Error Message
8.1.3 ICMP message delivery ICMP messages are
encapsulated into datagrams in the same way any other data is
delivered using IP. Figure displays the encapsulation of ICMP
data within an IP datagram.Since ICMP messages are transmitted
in the same way as any other data, they are subject to the same
delivery failures. This creates a scenario where error reports
could generate more error reports, causing increased congestion
on an already ailing network. For this reason, errors created
by ICMP messages do not generate their own ICMP messages. It is
thus possible to have a datagram delivery error that is never
reported back to the sender of the data. Web Links Best
Effort Delivery http://oucsace.cs.ohiou.edu/~osterman/
class/cs444.archive/ notes/icmp.pdf
Content 8.1
Overview of TCP/IP Error Message 8.1.4
Unreachable networks Network communication depends upon
certain basic conditions being met. First, the sending and
receiving devices must have the TCP/IP protocol stack properly
configured. This includes the installation of the TCP/IP
protocol and proper configuration of IP address and subnet
mask. A default gateway must also be configured if datagrams
are to travel outside of the local network. Second,
intermediary devices must be in place to route the datagram
from the source device and its network to the destination
network. Routers serve this function. A router also must have
the TCP/IP protocol properly configured on its interfaces, and
it must use an appropriate routing protocol. If these
conditions are not met, then network communication cannot take
place. For instance, the sending device may address the
datagram to a non-existent IP address or to a destination
device that is disconnected from its network. Routers can also
be points of failure if a connecting interface is down or if
the router does not have the information necessary to find the
destination network. If a destination network is not
accessible, it is said to be an unreachable network. Figures
and show a router receiving a packet that it is unable to
deliver to its ultimate destination. The packet is
undeliverable because there is no known route to the
destination. Because of this, the router sends an ICMP host
unreachable message to the source.
Content 8.1
Overview of TCP/IP Error Message 8.1.5 Using
ping to test destination reachability The ICMP protocol can
be used to test the availability of a particular destination.
Figure shows ICMP being used to issue an echo request message
to the destination device. If the destination device receives
the ICMP echo request, it formulates an echo reply message to
send back to the source of the echo request. If the sender
receives the echo reply, this confirms that the destination
device can be reached via the IP protocol. The echo request
message is typically initiated using the ping command as
shown in Figure . In this example, the command is used with the
IP address of the destination device. The command can also be
utilized as shown in Figure using the IP address of the
destination device. In these examples, the ping command
issues four echo requests and receives four echo replies,
confirming IP connectivity between the two devices.
Content 8.1 Overview of TCP/IP Error Message
8.1.6 Detecting excessively long routes
Situations can occur in network communication where a datagram
travels in a circle, never reaching its destination. This might
occur if two routers continually route a datagram back and
forth between them, thinking the other should be the next hop
to the destination. This is an example of faulty routing
information. The limitations of the routing protocol can result
in destinations being unreachable. For example, RIP has a limit
on the distance a certain routing information is allowed to
travel. The hop limit of RIP is 15, which means that the packet
will only be allowed to pass through 15 routers. In either of
these cases, an excessively long route exists. Whether the
actual path includes a circular routing path or too many hops,
the packet will eventually exceed the maximum hop count. This
is also known as reaching its time-to-live (TTL), because the
TTL value typically matches the maximum hop count defined by
the routing protocol. A TTL value is defined in each datagram.
As each router processes the datagram, it decreases the TTL