[ih] BBN C-series computers
Vint Cerf
vint at google.com
Wed Oct 25 12:27:59 PDT 2017
FTP Software - TCP/IP for DOS/Windows - went belly up with Microsoft
integrated this into a version of their OS.
IBM, DEC and HP did implementations in the research labs without charge to
DARPA.
v
On Wed, Oct 25, 2017 at 2:27 PM, Jack Haverty <jack at 3kitty.org> wrote:
> The history of TCP implementations was driven by non-technical forces
> too. As the saying goes -- "Follow the money."
>
> ARPA paid for the development of most if not all of the very early TCP
> implementations: the BBN-TENEX and LSI-11 for the Packet Radio project,
> my own PDP-11/40 Unix implementation as part of a Network Security
> research program, Sax/Edmond's HP-3000 code, Braden's IBM work at UCLA,
> Clark/Chiappa at MIT, Mills LSI-11 at UDel, and Gurwitz Vax
> implementation. Probably more I've forgotten. Wingfield's PDP-11/70
> was funded, IIRC, by DCEC, the research arm of DCA - so it represented a
> tiny step from the research/ARPA world into the operational side.
>
> ARPA also paid for development of OSes, in particular BSD. As the TCP
> implementations were completed, ARPA stopped funding further
> TCP-specific work, and, also IIRC, made those baseline implementations
> generally available. Berkeley continued BSD with ARPA funds, which
> evolved into Sun. Big government contractors (motivated by the
> contractual requirement to support TCP) built TCPs as they needed.
>
> Note also that the "await/capac" Unix interface was created by Randy
> Rettberg and I to be the minimal functionality, with absolute minimal
> kernel code footprint, that we knew was needed to be able to write
> network applications - ftp, telnet, etc. The goal was to cram it into
> the PDP-11/40, not to make a definitive interface for general Unix use.
> So it's not surprising that sockets took over.
>
> Also, someone commented that it would have been possible to do
> networking with standard Unix primitives at the time, by having multiple
> processes interacting. We actually tried that. More accurately, Ray
> Tomlinson (yes the same one) ported a network security application that
> had been running on BBN-TENEX into a Unix implementation with a dozen or
> so interacting processes. With all of the context switching it was so
> slow that it was totally unusable. Plan B was await/capac to make it
> possible to use a single Unix process instead.
>
> Hardware vendors built TCPs too, such as the C/70. IIRC, the C/70
> development for network management was partially funded by DCA, so that
> would have provided support for TCP development too.
>
> Startups popped up to fill gaps. Microsoft was a tad late to the party,
> and a slew of small companies created TCPs for DOS/Windows. I recall
> circa 1990 we had to deal with testing our software using 30+ different
> TCP implementations for Windows that were then in common use.
>
> Historians may find DNA traces of some of those baseline 1980-ish
> implementations in the later systems. My gut feeling is that the
> choices that were made were not necessarily driven much by technical
> evaluations, but more often by pragmatic considerations - availability
> of code, or of personnel with relevant experience.
>
> So, when you seek to unravel the history of TCP (and the Internet), I'd
> suggest also following the trails of the money, the people, as well as
> the software to understand why things happened the way they did. That
> won't be easy...
>
> HTH,
> /Jack
>
> On 10/25/2017 08:27 AM, James J Dempsey wrote:
> > Paul Ruizendaal <pnr at planet.nl> wrote:
> >
> >>> On 24 Oct 2017, at 20:52, James J Dempsey <jjd at jjd.com> wrote:
> >>>
> >>> The C/70 (as well as the C/60) definitely did have a TCP/IP stack.
> One of
> >>> the first uses of the C/70 was to build and run the NU Network
> Monitoring
> >>> system. When I arrived at BBN in the Summer of 1981, we were already
> on
> >>> track to transition ARPANET to TCP/IP, which as we know eventually
> happened
> >>> on 1 Jan 1983.
> >>
> >> Thanks for confirming that. Would you recall if the C/70 used the
> sockets API
> >> or the earlier arpanet API? (I would suspect the latter).
> >>
> >> If the former, it would be the only back port of sockets to V7 that I?m
> >> aware of (unless one thinks of 2.8BSD/2.9BSD as being V7).
> >
> > If you check out RFC 801 (written Nov 1981), Rob Gurwitz (who wrote BBN's
> > UNIX TCP implementation) says of "BBN C70 UNIX":
> >
> > The C/70 processor is a BBN-designed system with a native
> > instruction set oriented toward executing the C language. It
> > supports UNIX Version 7 and provides for user processes with a
> > 20-bit address space. The TCP/IP implementation for the C/70 was
> > ported from the BBN VAX TCP/IP, and shares all of its features.
> >
> > This version of TCP/IP is running experimentally at BBN, but is
> > still under development. Performance tuning is underway, to make
> > it more compatible with the C/70's memory management system.
> >
> > In the same RFC, Rob writes of the BBN VAX UNIX TCP implementation:
> >
> > The VAX TCP/IP implementation is written in C for Berkeley 4.1BSD
> > UNIX, and runs in the UNIX kernel. It has been run on VAX 11/780s
> > and 750s at several sites, and is due to be generally available in
> > early 1982.
> >
> > The implementation conforms to the TCP and IP specifications (RFC
> > 791, 793). The implementation supports the new extended internet
> > address formats, and both GGP and ICMP. It also supports multiple
> > network access protocols and device drivers. Aside from ARPANET
> > 1822 and the ACC LH/DH-11 driver, experimental drivers have also
> > been developed for ETHERNET. There are user interfaces for
> > accessing the IP and local network access layers independent of
> > the TCP.
> >
> > Higher level protocol services include user and server TELNET,
> > MTP, and FTP, implemented as user level programs. There are also
> > tools available for monitoring and recording network traffic for
> > debugging purposes.
> >
> > Continuing development includes performance enhancements. The
> > implementation is described in IEN-168.
> >
> > IEN-168 (available here https://www.rfc-editor.org/ien/ien168.txt )
> does not
> > contain the word "socket", so I suspect that that means the BBN-UNIX
> > implementation of TCP didn't contains the socket interface, initially.
> >
> > In "Networking Implementation Notes 4.4BSD Edition" (
> > https://docs.freebsd.org/44doc/smm/18.net/paper.pdf ) Sam Leffler and
> Bill
> > Joy acknowledge the BBN TCP/IP implementation:
> >
> > Many of the ideas related to protocol modularity, memory management,
> and
> > network interfaces are based on Rob Gurwitz’s TCP/IP implementation
> for the
> > 4.1BSD version of UNIX on the VAX [Gurwitz81].
> >
> > [Gurwitz81] is IEN-168.
> >
> > Finally, at http://www.xbbn.org/note-12.html there is this description
> of
> > sockets and BBN's TCP implementation:
> >
> > The BBN BSD TCP was the standard TCP for 4BSD and BSD UNIX 4.1.
> However, in
> > BSD 4.2, the team at U.C. Berkeley created their own and very
> different
> > implementation of TCP/IP (using the now familiar socket interface
> developed
> > by Bill Joy and Sam Leffler of Berkeley along with Gurwitz). BBN
> promptly
> > revised its TCP implementation to use the socket interface, and
> for about a
> > year there was a battle to determine whose networking code would
> take
> > precedence. Although the BBN code won some adherents, and was
> licensed to
> > several computer vendors, the Berkeley code won the battle.
> >
> > I hope this clears that up.
> >
> > --Jim Dempsey--
> >
> > _______
> > internet-history mailing list
> > internet-history at postel.org
> > http://mailman.postel.org/mailman/listinfo/internet-history
> > Contact list-owner at postel.org for assistance.
> >
> _______
> internet-history mailing list
> internet-history at postel.org
> http://mailman.postel.org/mailman/listinfo/internet-history
> Contact list-owner at postel.org for assistance.
>
--
New postal address:
Google
1875 Explorer Street, 10th Floor
Reston, VA 20190
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://elists.isoc.org/pipermail/internet-history/attachments/20171025/64f16d6b/attachment.htm>
More information about the Internet-history
mailing list