Illustrated TCP/IP Illustrated TCP/IP
by Matthew G. Naugle
Wiley Computer Publishing, John Wiley & Sons, Inc.
ISBN: 0471196568   Pub Date: 11/01/98
  

Previous Table of Contents Next


Chapter 186
More ICMP Functions

ICMP has added functions over the years as indicated by RFCs 1256 (Router Discovery) and 1393 (ICMP Traceroute). ICMP running in a router can respond to a host’s request to find the subnet address mask for its network. A host, upon startup, can request of a router the subnet mask assigned to the network.

Although not really used anymore (there are better methods for controlling traffic, such as the Slow Start algorithm discussed in a moment). Source quench is the endstation’s ability to indicate to the originator of a message that the host cannot accept the rate at which the sender is submitting the packets. A source quench packet is continually generated to the originator until the rate of data flow slows down. The intended recipient of a source quench will continue to slow down its data rate until it receives no more source quench packets. The station that was requested to slow down will then start to increase the data rate again. This is similar to a flow control, except that it is more like throttle control—the data is not stopped, merely slowed down and then increased again. It is generated by any network station on the internet to indicate that the node cannot handle the rate of the incoming data. This ICMP type was not included in ICMPv6. It was found that other protocols handle congestion better than forcing the routers to handle it.

There are many other uses of the ICMP protocol. When a router receives a datagram, it may determine a better router that can provide a shorter route to the destination network. This is an ICMP Redirect, and this message informs the sender of a better route. If the TTL field is 0, a router will inform the originator of this through an ICMP message (Time Exceeded). A user’s workstation can request a timestamp from a router, asking it to repeat the time when it received a packet. This is used for measuring delay to a destination.

More ICMP Functions

  ICMP has added functions beyond what is in the RFC.
  Separate RFCs such as 1256 (Router Discovery) and 1393 (traceroute) have been added as separate RFCs.
  Source Quench is not used anymore.
  The summary of ICMP message types are:
  Echo Request and Reply (PING)
  Destination Unreachable (host or network)
  Source Quench—slow down the rate of transmission
  Redirect (tell a host to take a better path)
  Time Exceeded (TTL decremented to 0)
  Parameter problem
  Timestamp and Reply—record the time a datagram arrived/send the information back to the originator
  Information Request and Reply—not implemented

Summary of Message Types

0 Echo Reply
3 Destination Unreachable
4 Source Quench
5 Redirect (there is a better route message)
8 Echo
11 Time Exceeded (TTL)
12 Parameter Problem
13 Timestamp
14 Timestamp Reply
15 Information Request
16 Information Reply


Previous Table of Contents Next