The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: clemc@ccc.com (Clem Cole)
Subject: [TUHS] Unix with TCP/IP for small PDP-11s
Date: Mon, 22 May 2017 12:29:09 -0400	[thread overview]
Message-ID: <CAC20D2OXOwYnbwpv8O=E14j-PQRONJrKL6VEyvCc+Reeguy72Q@mail.gmail.com> (raw)
In-Reply-To: <80EBBEAA-5774-4594-B69E-00FB1EE0F101@quintile.net>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3152 bytes --]

The Rand API is documented in a couple of papers that have been discussed
here previously.   I'll have to do a little googling to find them.   The
ChaosNET docs are the best MIT docs.


The API pretty much worked this way...  there was one simple kernel hook.
A small mod was done to the old nami routine (what modern UNIX calls
'lookup'), as a path was being parsed, the rest of the path was left in
place made available to other routines.

Thus you could open:  /dev/tcp/xxx  and the string xxx was available in
call that was implementing tcp and was then able to be passed xxx as a
parameter.  Hence, the traditional open/close/read/write was all that was
needed.

Joy codified a new API that was supposed to be more network centric and map
to different network protocols - the thinking being that
open/close/read/write were insufficient semantics for network operations.

Also, the only other issue at the time was that BSD's select(2) did not
exist, and the UNIX I/O were 100% synchronous.  So some other mechanism
(also discussed here) needed to be created to avoid blocking in the
application.  There were a couple of different schemes with V7's
multiplexor call was created by Chesson for DataKit (which was similar to
was used in the UofI code Arpanet code).   Rand, UNET & Chaos had something
else that gave the save async function, who's name I've forgotten at the
moment, but I believe Noel posted the code for same in the last year from
one of the MIT kernels - we had used it at CMU that we had gotten from Rand.

On Mon, May 22, 2017 at 10:51 AM, Steve Simon <steve at quintile.net> wrote:

> hi Clem,
>
> do you have pointers to any documentation on the rand/MIT network API?
>
> -Steve
>
>
>
>
> On 22 May 2017, at 15:09, Clem Cole <clemc at ccc.com> wrote:
>
>
> On Mon, May 22, 2017 at 5:28 AM, Paul Ruizendaal <pnr at planet.nl> wrote:
>
>> There are two other routes to TCP/IP on a PDP11 without split I/D:
>> - 3COM's TCP/IP package (initially an overlay over V7, soon after also
>> over 2BSD);
>>
> ​It's called UNET​
>
>
>
>
>> I believe the source to this is lost.
>>
> ​So far that is true, there are a couple of leads including a couple of
> unread tapes in my own basement.   The original authors and I have been in
> touch.   Assuming we can find and recover it, there is still an open issue
> of copyright.​
>
>
>
>
>> ​.....​
>>
>>
>> Note that these last two options have very different API's
>>
> ​Indeed...​
>
>
>
>
>> and would not be so easy to work with.
>>
> ​Mumble ... it just means post-Joy sockets code does not 'just work.'
>  UNET uses the Rand interface, which is similar to the interface MIT used
> for Chaos and Chesson used for the ARPAnet code at UofI, so there are
> programs that talk to it.   We had mail, ftp and telnet working just fine.​
>
> ​ Back in the day and IIRC we were playing with a port of the MIT SUPDUP
> code but I do not remember if that ever worked on the small address
> machines.​
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170522/b5457eb2/attachment.html>


  reply	other threads:[~2017-05-22 16:29 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-22  9:28 Paul Ruizendaal
2017-05-22 14:09 ` Clem Cole
2017-05-22 14:51   ` Steve Simon
2017-05-22 16:29     ` Clem Cole [this message]
2017-05-22 16:35       ` Ron Natalie
2017-05-22 22:07       ` Paul Ruizendaal
2017-05-22 23:25         ` Clem Cole
2017-05-23  0:36           ` Paul Ruizendaal
  -- strict thread matches above, loose matches on Subject: below --
2017-05-24 15:21 Noel Chiappa
2017-05-24 17:19 ` Jeremy C. Reed
     [not found] <mailman.1.1495591202.25149.tuhs@minnie.tuhs.org>
2017-05-24  9:20 ` Paul Ruizendaal
2017-05-23 13:43 Noel Chiappa
2017-05-23 11:35 Paul Ruizendaal
2017-05-23  1:33 Noel Chiappa
2017-05-23  1:14 Noel Chiappa
     [not found] <mailman.1.1495245601.20449.tuhs@minnie.tuhs.org>
2017-05-20 10:46 ` Johnny Billquist
2017-05-20 17:39   ` Henry Bent
2017-05-20 20:40     ` Johnny Billquist
2017-05-20 20:44       ` Henry Bent
2017-05-20 18:18   ` Warner Losh
2017-05-20 19:05     ` arnold
2017-05-20 20:29       ` Warner Losh
2017-05-20 21:41       ` David Arnold
2017-05-20 21:59         ` Erik E. Fair
2017-05-20 20:40     ` Johnny Billquist
2017-05-20 21:05       ` Warner Losh
2017-05-20 21:34         ` Johnny Billquist
2017-05-21  5:13           ` Random832
2017-05-21 11:04             ` Ron Natalie
2017-05-19 15:15 Noel Chiappa
2017-05-19 16:29 ` Henry Bent
2017-05-19 19:04   ` Ron Natalie
2017-05-20  0:15     ` Warner Losh
2017-05-20  0:21       ` Warner Losh
2017-05-19 17:39 ` Clem Cole
2017-05-21 16:16   ` Dave Horsfall
2017-05-21 19:58     ` Clem Cole
2017-05-21 20:57       ` Ron Natalie
2017-05-21 21:26         ` Clem Cole
2017-05-21 21:46         ` William Pechter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAC20D2OXOwYnbwpv8O=E14j-PQRONJrKL6VEyvCc+Reeguy72Q@mail.gmail.com' \
    --to=clemc@ccc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).