[ih] UDP creation (Was: Date of RFC 791 for celebration)

David P. Reed dpreed at reed.com
Fri Mar 31 08:46:59 PST 2006


I didn't conflate the meetings - in fact, I believe the '77 meeting is 
the one I was describing from memory.   There was a basic agreement on a 
UDP at the first meeting.   Since no one was implementing UDP, there was 
no need for a spec at that point.   TCP was being split, so there was a 
need to spec the split enough so that the prototype which was in 
development at the time could continue to evolve.
There was lots of discussion about the details of IP addresses, routing, 
what became the urgent pointer in TCP, the 3-way handshake and state 
machine for TCP, etc.  

I recall the spec of UDP (which is barely worthy of the name, it's so 
simple in concept) being written as part of a cleanup process, pushed by 
Postel to close some loose ends.   Remember the point of UDP was to 
support such things as packet speech, message exchange protocols like 
DNS, ... and we were still far from understanding what might need to be 
in UDP for such things.   So a long delay from conception to spec'ing 
was actually what happened.

I personally focused 99% of my time on TCP and IP issues in this 
timeframe and so did everyone else.  UDP was, to me, really a 
negotiating placeholder, something I was very happy we won in the 
negotiations leading up to it because my own research interest was in 
intercomputer message-exchange protocols - a general purpose solution 
that would be usable by lots of non-virtual-circuit apps.  All it needed 
was demuxing (ports).   In fact, I would have preferred (following my 
more extreme version of the E2E principle or principle of minimum 
mechanism) if there weren't even a checksum in the spec'ed format, so 
that error-recovery could have been left to layers on top (I recall I 
had "fantasies" at the time of putting end-to-end and inter-packet ECC's 
inside a crypto-based wrapper, so that only the ports and encrypted data 
would be exposed on the network.  Of course that wasn't a big deal, 
because 4 bytes wasted is not a battle I wanted to fight, and you didn't 
have to actually compute or check the UDP checksum).



Noel Chiappa wrote:
>     > From: "David P. Reed" <dpreed at reed.com>
>
>     > UDP came into being at the same ISI (Marina del Rey) meeting where we
>     > split IP and TCP. ...  I remember drawing on the board the IP packet and
>     > then the two alternative payload formats for TCP/IP and UDP/IP
>     > underneath them, and the common field layouts. We even talked at that
>     > meeting about the "virtual header" that would be included logical
>     > sharing in the TCP or UDP payload, because one of my personal agenda
>     > items was preserving the option to implement my officmate Steve Kent's
>     > proposal to do end-to-end encryption that he had submitted
>
> David, I wonder, are you conflating two different meetings in your memory?
>
> As far as I can tell, TCP and IP were split sometime at the end of '77,
> because the TCP-3 spec (in which they were separated) came out in January 1978
> (IEN-21, Cerf, Jan-78 "TCP 3 Specification").
>
> However, the UDP spec didn't come out until January 1979 (IEN-71, Reed,
> 21-Jan-79, "User Datagram Protocol") - over a year later.
>
> Also, I do seem to recall the final format for UDP being hashed out at a
> meeting I was at, shortly before you published the spec.
>
> Is it possible that the *basic concept* of UDP was worked out at one meeting
> (at the time of the split), and the final *details* of the protocol were
> hashed out at a much later meeting (shortly before the spec was published)?
>
>        Noel
>
>
>   




More information about the Internet-history mailing list