Subject: Re: ICMP specification
To: None <email@example.com>
From: Greg A. Woods <firstname.lastname@example.org>
Date: 10/05/1998 13:35:17
[ On Mon, October 5, 1998 at 17:22:02 (+1000), Robert Elz wrote: ]
> Subject: Re: ICMP specification
> Date: Sun, 4 Oct 1998 22:32:56 -0700 (PDT)
> From: Marc Slemko <email@example.com>
> Message-ID: <Pine.GSO.4.02A.9810042206510.18202-100000@redfish>
> Do you have anything to support this assertion?
> Only what I recall Van Jacobsen saying when he first described traceroute.
Here's a part of the comment from Van Jacobson's Dec. 20, 1988 release:
* The udp port usage may appear bizarre (well, ok, it is bizarre).
* The problem is that an icmp message only contains 8 bytes of
* data from the original datagram. 8 bytes is the size of a udp
* header so, if we want to associate replies with the original
* datagram, the necessary information must be encoded into the
* udp header (the ip id could be used but there's no way to
* interlock with the kernel's assignment of ip id's and, anyway,
* it would have taken a lot more kernel hacking to allow this
* code to set the ip id). So, to allow two or more users to
* use traceroute simultaneously, we use this task's pid as the
* source port (the high bit is set to move the port number out
* of the "likely" range). To keep track of which probe is being
* replied to (so times and/or hop counts don't get confused by a
* reply that was delayed in transit), we increment the destination
* port number before each probe.
* Don't use this as a coding example. I was trying to find a
* routing problem and this code sort-of popped out after 48 hours
* without sleep. I was amazed it ever compiled, much less ran.
* I stole the idea for this program from Steve Deering. Since
* the first release, I've learned that had I attended the right
* IETF working group meetings, I also could have stolen it from Guy
* Almes or Matt Mathis. I don't know (or care) who came up with
* the idea first. I envy the originators' perspicacity and I'm
* glad they didn't keep the idea a secret.
* Tim Seaver, Ken Adelman and C. Philip Wood provided bug fixes and/or
* enhancements to the original distribution.
* I've hacked up a round-trip-route version of this that works by
* sending a loose-source-routed udp datagram through the destination
* back to yourself. Unfortunately, SO many gateways botch source
* routing, the thing is almost worthless. Maybe one day...
* -- Van Jacobson (firstname.lastname@example.org)
* Tue Dec 20 03:50:13 PST 1988
Greg A. Woods
+1 416 218-0098 VE3TCP <email@example.com> <robohack!woods>
Planix, Inc. <firstname.lastname@example.org>; Secrets of the Weird <email@example.com>