[ih] BBN C-series computers

Vint Cerf vint at google.com
Wed Oct 25 12:28:30 PDT 2017


sorry "when" Microsoft not "with" ....duh

v


On Wed, Oct 25, 2017 at 3:27 PM, Vint Cerf <vint at google.com> wrote:

> 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
>



-- 
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/958fa0de/attachment.htm>


More information about the Internet-history mailing list