[ih] Some Berkeley Unix history - too many PHDs per packet
Dave Taht
dave.taht at gmail.com
Fri Mar 8 02:55:29 PST 2024
>From john nagle here, a good article, and a long and enjoyable thread:
https://news.ycombinator.com/item?id=39630457
...
Ford Aerospace was one of the first commercial sites of BSD Unix. The
licensing was complicated. We had to buy Unix 32V from AT&T first.
That transaction got on the path for major corporate documents. AT&T
and Ford Motor had a cross-licensing agreement. Eventually, I got a
no-cost license agreement embossed with the corporate seals of both
the Ford Motor Company and the American Telephone and Telegraph
Corporation. Made a copy and taped it onto a VAX. Then I drove up to
Berkeley from Palo Alto and Bill Joy gave me a BSD tape.
BSD didn't have networking at that point. We bought 3COM's UNET.[1]
That was TCP/IP, written by Greg Shaw. $7,300 for a first CPU. $4,300
for each additional CPU. It didn't use "sockets"; you opened a
connection by opening a pseudo-device. UNET itself was in user space,
talking to the other end of those pseudo-devices.
Once we got that going, we had it on VAX machines, some PDP-11
machines, and some Zilog Z8000 machines. (The Zilog Z8000 was roughly
similar to a PDP-11) All of which, along with some other weird
machines including a Symbolics LISP machine, eventually interoperated.
We had some of Dave Mills' Fuzzballs as routers [2], and a long-haul
link to another Ford location that connected to the ARPANET. Links
included 10Mb/s Ethernet, a DEC device called a DMC that used triaxial
coax cables, and serial lines running SLIP. A dedicated 9600 baud
serial synchronous line to Detroit was a big expense.
My work in congestion control came from making all this play well
together. These early TCP/IP implementations did not play well with
others. Network interoperability is assumed now, but it was a new,
strange idea back then, in an era when each major computer maker had
their own networking protocols. UNET as delivered was intended to talk
only to other UNET nodes. I had to write UDP and ICMP, and do a major
rewrite on TCP.
When BSD got networking, it was initially intended to talk only over
Ethernet, to other BSD implementations. When 4.3BSD came out, it would
only talk to some other implementations during alternate 4 hour
intervals. I had to fix the sequence number arithmetic, which wrapped
incorrectly.
And finally, it all worked. For a few years, it was said of the TCP/IP
Internet that it took "too many PhDs per packet." One day, on the
Stanford campus, I saw a big guy with a tool belt carrying an Ethernet
bridge (a sizable box in those days) under his arm, and thought, this
is finally a working technology.
[1] https://archive.org/details/bitsavers_3Com3ComUN_1019199/pag...
[2] https://eecs.engin.umich.edu/stories/remembering-alum-david-...
--
https://www.youtube.com/watch?v=N0Tmvv5jJKs Epik Mellon Podcast
Dave Täht CSO, LibreQos
More information about the Internet-history
mailing list