[TUHS] Spider [was: Unix quix]

Warner Losh imp at bsdimp.com
Thu Jan 23 11:00:35 AEST 2020


On Wed, Jan 22, 2020 at 12:54 PM Paul Ruizendaal <pnr at planet.nl> wrote:

> I can answer some of the below, as I was looking into that a few years ago.
>
> > 81. Q:  What was the first Unix network?
> > A: spider
> > You thought it was Datakit, didn't you? But Sandy Fraser had an earlier
> > project.
> >
> > When did Alexander G Fraser's spider cell network happen? For that
> matter,
> > when did Datakit happen? I can't find references to either start date on
> > line (nor anything on spider except for references to it in Dr Fraser's
> > bio). I can find references to Datakit in 1978 or so.
>
> Spider was designed between 1969 and 1974 - the final lab report (#23)
> dates from December 1974. It was based around a serial loop running at T1
> signalling speed (~1.5Mhz). Here is a video recorded by Dr. Fraser about
> it: https://www.youtube.com/watch?v=ojRtJ1U6Qzw (first half is about
> Spider, second half about Datakit).
>

Cool! I'll have to watch that.

It connected to its hosts via a (discrete TTL-based) microcontroller or
> “TIU” and seems to have been connected almost immediately to Unix systems:
> the oldest driver I have been able to locate is in the V4 tree (
> https://minnie.tuhs.org/cgi-bin/utree.pl?file=V4/nsys/dmr/tdir/tiu.c). It
> used a DMA-based parallel interface into the PDP11. As such, it seems to
> have been much faster than the typical Datakit connection later - but I
> know too little about Datakit to be sure.
>

Me too. I know even less about Spider. I've been looking for Bell Labs
Computing Science Technical Report #23. It's referenced in the visit report
below. So far, the closest I've come is
https://www.computerhistory.org/collections/catalog/102773566 which says
that CHM has it on paper. :/ From about 1990 or so, these reports are easy
to find.


> There is an interesting visit report from 1975 that discusses some of the
> stuff that was done with Spider here:
> https://stacks.stanford.edu/file/druid:rq704hx4375/rq704hx4375.pdf
> Beyond those experiments I think Spider usage was limited to file serving
> (’nfs’ and ‘ufs’) and printing (’npr’). It would seem logical that it was
> used for remote login, but I have not found any traces of such usage. Same
> for email usage.
>

Oh that's very interesting. The earliest Network Unix was all about remote
login and file transfer (not file servering). The earliest version were for
telnet/ftp clients. Later versions have the servers in them.


> From what little I know, I think that Datakit became operational in a test
> network in 1979 and as a product in 1982.
>

OK.  That's good to know. Are there good references for this?


> > I  thought the answer was "ARPANET" since we had a NCP on 4th edition
> Unix
> > in late 1974 or early 1975 from the University of Illinois dating from
> that
> > time (the code in TUHS appears to be based on V6 + a number of patches).
>
> “Network Unix” (https://www.rfc-editor.org/rfc/rfc681.html) was written
> by Steve Holmgren, Gary Grossman and Steve Bunch in the last 3 months of
> 1974. To my best knowledge they used V5 and migrated to V6 as it came
> along. I think they were getting regular update tapes, and they implemented
> their system as a device driver (plus userland support) to be able to keep
> up with the steady flow of updates. Greg Chesson was also involved with
> this Arpanet Unix.
>

That makes sense. The version in our archive is very close to V6.


> As far as I can tell, Arpanet Unix saw fairly wide deployment within the
> Arpanet research community, also as a front end processor for other systems.
>

My research matches that. Starting in about 1976 there was an explosion of
host names with -unix in their name. There's a number of ARPANET census
reports, or ARPANET resource reports that have lots of Unix systems. RFCs
show the explosion from 1977 onward. Google has these reports that can be
downloaded as a PDF, but are otherwise kinda hard to find :(.


> A few years back I asked on this list why “Network Unix” was not more
> enthusiastically received by the core Unix development team and
> (conceptually) integrated into the main code base. I understood the replies
> as that (i) people were very satisfied with Spider; and (ii) being part of
> Bell they wanted a networking system that was more compatible with the Bell
> network, i.e. Datakit.
>

Yea. I never understood how Unix could be so leading edge in computing, yet
so backward (at least so poor at picking winners) at networking. But this
does make a certain amount of sense. We've also seen NIH in the children of
Unix as well (Linux, NetBSD, FreeBSD, OpenBSD and MacOS have all had this
issue, sometimes for good, sometimes for ill).


> In my opinion both “Spider Unix” and “Arpanet Unix” threw a very long
> conceptual shadow. From Spider onwards, the Research systems viewed the
> network as a device (Spider), that could be multiplexed (V8 streams) or
> even mounted (Plan9). The Arpa lineage saw the network as a long distance
> bidirectional pipe, with the actual I/O device hidden from view; this view
> persists all the way to 4.2BSD and beyond.
>

Yes. It's difficult to match a connected socket to a network interface...
And sockets definitely take the view that it's not a device you are talking
to at all, but a special kind of thing that you can do normal I/O to (and a
few other special things too).


> I often wonder if it was (is?) possible to come up with a design with the
> conceptual clarity of Plan9, but organised around the “network as a pipe”
> view instead.
>

We'll never know.

Warner
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20200122/e29b08ff/attachment-0001.html>


More information about the TUHS mailing list