[ih] Date of RFC 791 for celebration

Jack Haverty jack at 3kitty.org
Thu Mar 30 18:48:47 PST 2006


Dave,

Thanks for the pointer - I looked into the Meeting Notes for the
ISI-hosted TCP meetings and the one on 30-31 January 1978 is probably
where it happened or at least started.  That was also where
fragmentation was moved from TCP into IP.   This is also when the TCP3
Draft Specification was out for comments, and a lot of the agenda looks
like it focused on issues brought up by the spec, e.g., "Sequence
Counting and Rubber Everythings" as one of the working groups, whose
work eventually led to the TCP 4 that got implemented later in 1978.

The agenda includes:

"
Multidestination Addressing, Broadcast, Datagrams, and Emission Control
Mode - Cerf
Discuss the multidestination and broadcast topic, set up a working group
on it, and introduce the issue of incorporating a datagram mode and an
emmission control mode of operation into TCP
"

Alas, the minutes only say:

"Vint led a general discussion of these topics which turned up a lot of
questions and few answers."

I bet the UDP layout happened in that working group.

The more I look through these minutes, the more good stuff I find.   I'm
going to try to scan them in and put them somewhere online if no one
finds them before I get to it.

On Thu, 2006-03-30 at 08:55 -0500, David P. Reed wrote:
> UDP came into being at the same ISI (Marina del Rey) meeting where we 
> split IP and TCP.   They were part of the same argument, which was due 
> to the demand from several of us to have "connectionless" datagrams for 
> non-stream communications.   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 (and 
> been shut down on including in TCP because of NSA's fear of crypto 
> becoming common [Vint and Bob Kahn tell me that NSA would have killed 
> the Internet program had they insisted]).

Yes, the security issues and related projects are a good example of the
"other things going on at the same time" that influenced the TCP
architecture.

> 
> Note that the virtual header was interesting, because stricter layer 
> separation might have led to TCP using globally unique process port 
> identifiers (as I argued for and implemented in DSP, the internetworking 
> protocol I did at MIT in the summer of 1976), and the transport layer 
> using addresses that named one or the other interface of a multi-home 
> machine.   Thus the virtual header was a compromise that entangled 
> interface IDs with process identity, creating two possible identifiers 
> for the same process port - one of many inelegancies that traded off 
> efficiency (header size) for architectural simplicity.

Yep, I agree.   Efficiency was a big issue.  I remember some meeting
where we laid out in excruciating detail how TCP would affect the
efficiency of those expensive leased lines that interconnected all the
Arpanet IMPs.  Much of the traffic on the Arpanet was people using
Telnet to read their mail, or compose replies.  Character-at-a-time
remote-echo operation was a major downer.   After you added up the TCP
header, the IP header, options and the like, and adjusted for the fact
that long-haul leased lines had to be operated at less than 50%
utilization to avoid queueing delays, something like 98-99% of the line
was overhead.  So that $3000/month leased line was "wasting" $2950/month
in the eyes of beancounters.

I remember also being somewhat disturbed at the similar inelegance of
the checksumming algorithm, which didn't protect much at all against
common failures.   But a better algorithm needed much more computer
power, and we didn't have all that much to start with....not to mention
memory for more code.

Computer technology was different then.  Well, maybe not, now that
everyone seems to want to move movies and such all over the planet and
those OC-xx lines start to look pretty tiny, and my 3 GHz machine seems
as slow as my old <1MHz PDP-11.

I think that lots of TCP architectural decisions were driven by such
pragmatic concerns, with the expectation of "doing it right" in the next
version, which has taken far longer than anyone probably guessed.  I'm
truly astonished at how long TCP has served and how big the Internet has
grown.

> 
> 
> Stephen Casner wrote:
> > On Wed, 29 Mar 2006, Jack Haverty wrote:
> >   
> >> I wonder when UDP came into being (i.e., implementation, not
> >> specification) to define a way of accessing that IP datagram
> >> functionality.   I remember it happening at some meeting (was almost a
> >> no-brainer), but can't remember when.
> >>     
> >
> > I remember this being a meeting at ISI, but I couldn't name a date.
> >
> >                                                         -- Steve
> >
> >
> >   
> 
> 




More information about the Internet-history mailing list