[ih] TTL [was Exterior Gateway Protocol]

Jack Haverty jack at 3kitty.org
Fri Sep 4 18:15:32 PDT 2020



On 9/4/20 4:05 PM, Brian E Carpenter via Internet-history wrote:
> So, here's another history question:
>
>
> I was taught many years ago that the TTL field (renamed Hop Limit in IPv6) was intended only as a last resort method of loop prevention.
>
> a) Is that accurate?
>
My recollection, from the discussions when the IP4 header was being
defined, was that TTL was included for two reasons:

1/ we couldn't be sure that packets would never loop, so TTL was a last
resort that would get rid of old packets.  The name "Time To Live"
captured the desire to actually limit packet lifetime, e.g., in
milliseconds, but hops were the best metric that could actually be
implemented.  So TTL was a placeholder for some future when it was
possible to measure time.   TTL did not prevent loops, but it did make
them less likely to cause problems.

2/ TCP connections could be "confused" if an old packet arrived that
looked like it belonged to a current connection, with unpredictable
behavior.  The TTL maximum at least set some limits on how long such a
window of vulnerability could be open.   Computers had an annoying
tendency to crash a lot in those days, but took rather long times to
reboot.  So the TTL made it less likely that an old packet would cause
problems.   (Note that this did not address the scenario when a gateway
crashed, was subsequently restarted possibly hours later, and sent out
all the packets it still had in its queues.)

/Jack




More information about the Internet-history mailing list