Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Feb 2006 22:30:59 -0800 (PST)
From:      "Bruce R. Montague" <brucem@mail.cruzio.com>
To:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: Van Jacobson's network stack restructure
Message-ID:  <200602020630.k126Uxf5000490@mail.cruzio.com>

next in thread | raw e-mail | index | archive | help

Hi, hope this isn't too off-topic, but it's a 
reasonably hackery follow-up re a minor historical
question instigated by Van Jacobson's Slide 6, which
contains the following point: "First TCP/IP stack
done on Multics (1980)"

Presumably this means the first version of the
specific TCP/IP stack with the architecture that
evolved/forked/more-or-less-directly-was-reimplmented to
become the BSD kernel-resident TCP/IP stack.

  1. Was this first Multics stack written in PL/1?

Based on literature/web, etc., the very first
implementaton of TCP was a 24 Kbyte BCPL program
written by Richard Karp at Stanford for the ELF
operating system (this was in Cerf's lab). In 1975
the first test of TCP outside a single lab occured
when a link was established between this stack and
a TCP program of some sort written in Babbage by
Frank Deignan on a very small PDP-9 at University
College London. BBN did a 3rd independent BCPL
implementation of TCP under (user-level) TENEX.  All
3 TCP stacks first inter-operated in 1977. TCP was
split into TCP and IP in 1979. The sliding window   
protocol comes from Pouzin's Cyclades system (which
became operational in France sometime between
1972-1974; Cerf and Kahn acknowledged the influence   
of Cyclades on TCP); Pouzin had worked at MIT on
CTSS and coined the term "shell". 

 2. Was the Multics stack based on one of the BCPL
 stacks?

 3. Does anyone know anything about the UCL Babbage
TCP implmentation, or anything about the Babbage 
language?  (I assume it was a structured assembly
language, similar to PL/360 or SUPMAC).

4. Does anyone know anything about Frank Deignan?
Just curious, have tried to find out information
about this for awhile. Thanks in advance if you
know anything relating to any of this.


 - bruce




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200602020630.k126Uxf5000490>