[ih] Internet history - code and people (was Re: BBN C-series computers)
Wayne Hathaway
wayne at playaholic.com
Wed Oct 25 16:27:20 PDT 2017
For what it's worth, my IBM TSS/360 version at NASA Ames was from scratch and
even in 360 Assembler. Not too many other tools available. I forget what our user
interface looked like, but it was definitely not sockets. I guess it was in keeping with
what TSS/360 did, but that was too many years ago for me to remember. Oh, NASA
actually paid me as a consultant after I had left civil service to upgrade the NCP code
to TCP, a very entertaining exercise. :-)
Wayne Hathaway
On Wed, 25 Oct 2017 18:44:37 -0400, Vint Cerf wrote:
i think the DEC and HP implementations may have been from scratch (?) while the IBM Labs version might had had contact with Univ Wisconsin (Larry Landweber would know) or UCLA (Bob Braden). Landweber was involved in an IP/X.25 implementation also. The DEC implementation might have had help from BBN (does anyone on the list recall)?
vint
On Wed, Oct 25, 2017 at 5:52 PM, Jack Haverty <jack at 3kitty.org> wrote:
I've always been curious about the ways, other than technical committees
as documented in RFCs et al, that Internet history was driven.
E.G., did the DEC/IBM/HP implementations in their respective labs use
any of the code developed by ARPA for their machines? Recruit the
people? Or did they start from the spec? Did the 30+ vendors of
DOS/Windows TCP products spring from the work by Jim Mathis, Dave Mills,
et al?
There was a lot of talk back then about "Technology Transfer" as a
government goal - basically saying that the government didn't want to
fund development forever. Just wondering how that worked out... Did
TCP/IP spread because the availability of free code enabled it? Or
because the people moved from the research to product worlds and brought
the knowledge (and code) with them?
I'm sure some of this happened. Maybe some historian will tackle the
problem of uncovering the various paths and timing that people and code
took over the early decade or so. And how important that was to how
things turned out.
/Jack
On 10/25/2017 12:28 PM, Vint Cerf wrote:
> sorry "when" Microsoft not "with" ....duh
>
> v
>
>
> On Wed, Oct 25, 2017 at 3:27 PM, Vint Cerf <vint at google.com
> <mailto: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
> <mailto: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 <mailto:pnr at planet.nl>> wrote:
> >
> >>> On 24 Oct 2017, at 20:52, James J Dempsey <jjd at jjd.com
> <mailto: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
> <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
> <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
> <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 <mailto:internet-history at postel.org>
> > http://mailman.postel.org/mailman/listinfo/internet-history
> <http://mailman.postel.org/mailman/listinfo/internet-history>
> > Contact list-owner at postel.org <mailto:list-owner at postel.org>
> for assistance.
> >
> _______
> internet-history mailing list
> internet-history at postel.org <mailto:internet-history at postel.org>
> http://mailman.postel.org/mailman/listinfo/internet-history
> <http://mailman.postel.org/mailman/listinfo/internet-history>
> Contact list-owner at postel.org <mailto: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
--
New postal address:
Google
1875 Explorer Street, 10th Floor
Reston, VA 20190
_______
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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://elists.isoc.org/pipermail/internet-history/attachments/20171025/3082efbd/attachment.htm>
More information about the Internet-history
mailing list