The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Tom Teixeira <tjteixeira@earthlink.net>
To: The Eunuchs Hysterical Society <tuhs@tuhs.org>
Subject: [TUHS] Re: Research Datakit notes
Date: Tue, 28 Jun 2022 12:11:10 -0400	[thread overview]
Message-ID: <4d26b9fe-a087-7e9f-9bb1-aa1a85bf39d5@earthlink.net> (raw)
In-Reply-To: <CAKzdPgwwf9aMOi4_PceSuuDBJEH7r+znqMxWX7nbeiBtn3KaDg@mail.gmail.com>

On 6/28/22 8:45 AM, Rob Pike wrote:
> One of the reasons I'm not a networking expert may be relevant here. 
> With networks, I never found an abstraction to hang my hat on. Unlike 
> with file systems and files, or even Unix character devices, which 
> provide a level of remove from the underlying blocks and sectors and 
> so on, the Unix networking interface always seemed too low-level and 
> fiddly, analogous to making users write files by managing the blocks 
> and sectors themselves. It could be all sockets' fault, but when I 
> hear networking people talk about the protocols and stacks and routing 
> and load shedding and ....my ears droop. I know it's amazing 
> engineering and all that, but why aren't we allowed to program the I/O 
> without all that fuss? What makes networks so _different_? A telling 
> detail is that the original sockets interface had send and recv, not 
> read and write. From day 1 in Unix land at least, networking was 
> special, and it remains so, but I fail to see why it needs to be.

Two observations:

At the time, I think everyone was searching for the right abstraction. I 
don't remember the whole talk, but just an anecdote by, I think, David 
Clark. I don't remember if this was just a seminar at MIT LCS or perhaps 
at SIGOPS. In any case, David talked about trying to get some database 
people to use the virtual memory and file systems abstractions that had 
been built by Multics. They agreed that these were nice abstractions, 
but in the mean time, "get out of our way and let us at the disk."

Since networking developers and users were all searching for the right 
abstraction, and new hardware, protocols, and software interfaces were 
being proposed on what seemed like a weekly basis, many of the proposed 
interfaces tried to expose low level mechanisms as well as high level 
stream abstractions, preserving the hope that something like TCP could 
be implemented at user code level rather than the kernel.

Secondly, I had to dig up a reference for the Chaosnet software (MIT AI 
memo 628 available at 
http://bitsavers.trailing-edge.com/pdf/mit/ai/AIM-628_chaosnet.pdf and 
probably other places). The Unix implementation used the rest of the 
path name to specify connection setup parameters in the typical case 
which seemed more unix-like than sockets. But the Chaosnet software was 
definitely swept away in the Ethernet/sockets storm surge.




  parent reply	other threads:[~2022-06-28 16:11 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-25 23:01 [TUHS] " Paul Ruizendaal
2022-06-25 23:09 ` [TUHS] " Larry McVoy
2022-06-25 23:57   ` Rob Pike
2022-06-26  1:17     ` Paul Ruizendaal
2022-07-02  2:51       ` Grant Taylor via TUHS
2022-07-02  2:57         ` Larry McVoy
2022-06-28 10:38     ` Derek Fawcus
2022-06-28 12:36       ` Rob Pike
2022-06-28 12:45         ` Rob Pike
2022-06-28 13:33           ` Dan Cross
2022-06-28 21:19             ` Lawrence Stewart
2022-06-28 21:34               ` Richard Salz
2022-06-29  6:07                 ` Stuart Remphrey
2022-06-28 16:11           ` Tom Teixeira [this message]
2022-06-28 18:28           ` John Floren
2022-06-28 12:47         ` Rich Morin
2022-06-28 13:13           ` Marc Donner
2022-06-28 14:41             ` Clem Cole
2022-06-28 15:54               ` Tom Teixeira
2022-06-28 17:05             ` Adam Thornton
2022-06-28 17:43               ` John Labovitz
2022-06-28 22:45               ` [TUHS] HTTP (was Re: Re: Research Datakit notes) Derek Fawcus
2022-06-26  1:41 ` [TUHS] Re: Research Datakit notes Anthony Martin
2022-06-26  9:52   ` Ralph Corderoy
2022-06-26 11:04   ` Paul Ruizendaal
2022-06-29 20:21   ` Paul Ruizendaal
2022-06-26  2:19 Noel Chiappa
2022-06-26  9:46 ` steve jenkin
2022-06-26 20:35   ` Erik Fair
2022-06-26 21:53     ` Steve Jenkin
2022-06-26 10:16 ` Paul Ruizendaal via TUHS
2022-06-26 13:07 ` John Cowan
2022-06-26 13:35   ` Larry McVoy
2022-06-26 13:58     ` John Cowan
2022-06-27  0:43 Noel Chiappa
2022-06-27  3:00 ` Erik Fair
2022-06-27 21:40 Noel Chiappa
2022-06-27 22:40 ` George Michaelson
2022-06-28 15:50 Noel Chiappa
2022-06-28 21:32 ` Lawrence Stewart

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=4d26b9fe-a087-7e9f-9bb1-aa1a85bf39d5@earthlink.net \
    --to=tjteixeira@earthlink.net \
    --cc=tuhs@tuhs.org \
    /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).