RFC 1393 (rfc1393) - Page 2 of 7


Traceroute Using an IP Option



Alternative Format: Original Text Document



RFC 1393                       Traceroute                   January 1993


1.  Traceroute Today

   The existing traceroute operates by sending out a packet with a Time
   To Live (TTL) of 1.  The first hop then sends back an ICMP [1] error
   message indicating that the packet could not be forwarded because the
   TTL expired.  The packet is then resent with a TTL of 2, and the
   second hop returns the TTL expired.  This process continues until the
   destination is reached.  The purpose behind this is to record the
   source of each ICMP TTL exceeded message to provide a trace of the
   path the packet took to reach the destination.

   The advantage of this algorithm, is that every router already has the
   ability to send TTL exceeded messages.  No special code is required.
   The disadvantages are the number of packets generated (2n, where n is
   the number of hops), the time it takes to duplicate all the nearer
   hops with each successive packet, and the fact that the path may
   change during this process.  Also, this algorithm does not trace the
   return path, which may differ from the outbound path.

2.  Traceroute Tomorrow

   The proposed traceroute would use a different algorithm to achieve
   the same goal, namely, to trace the path to a host.  Because the new
   traceroute uses an ICMP message designed for the purpose, additional
   information, unavailable to the original traceroute user, can be made
   available.

2.1 Basic Algorithm

   A new IP Traceroute option will be defined.  The presence of this
   option in an ICMP Echo (or any other) packet, hereinafter referred to
   as the Outbound Packet, will cause a router to send the newly defined
   ICMP Traceroute message to the originator of the Outbound Packet.  In
   this way, the path of the Outbound Packet will be logged by the
   originator with only n+1 (instead of 2n) packets.  This algorithm
   does not suffer from a changing path and allows the response to the
   Outbound Packet, hereinafter refered to as the Return Packet, to be
   traced (provided the Outbound Packet's destination preserves the IP
   Traceroute option in the Return Packet).

   The disadvantage of this method is that the traceroute function will
   have to be put into the routers.  To counter this disadvantage,
   however, is the fact that this mechanism may be easily ported to a
   new IP version.







Malkin