🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.lan
Article #1139

Re: Networking on UNIX - 3 approaches

#1139
From: Steve Langdon
Date: Tue, 12 Aug 1986 07:06
67 lines
4473 bytes
In article <964@hoptoad.uucp> tim@hoptoad.uucp (Tim Maroney) writes:

> I have done a good deal of work with 4.2bsd networking - my first job at CMU
> was to implement a socket interface for the UNIX SNA done at the Information
> Technology Center.  During the course of this work, I came across some
> serious deficiencies in the system.  It was almost impossible to fit a
> half-duplex protocol like SNA into the model, and I expect that other
> non-Internet protocols would probably suffer similar difficulties.  I was
> forced to add new hooks to the protosw mechanism, for instance.  Imposing a
> particular model of networking on all the protocols in the world seems to me
> a highly questionable decision, since no one (ISORMites to the contrary) has
> really formulated a general model of protocols.

As a card carrying ISORMite I cannot help but take issue with Tim's statements.
His posting shows a basic misunderstanding about the difference between the
protocol used in a layer and the service provided by the layer.  The example
he gives is clearly based on different services (ie. half-duplex vs. duplex)
rather than protocol differences.  I would be the last person to claim that
the OSI model, service definitions, or protocols are perfect.
However, one of the best things about OSI is the idea of clearly dividing an
abstract service from the protocol(s) which implement it.

> [discussion of sockets and socket based implementations removed]

> The new Bell protocol-independent networking is even worse.  You can run
> uucp and cu over Ethernet now.  I'd much rather have a poke in the eye with
> a sharp stick.  Protocol independence is achieved at the expense of protocol
> functionality, at least as I understood the USENIX papers.

I have not read the USENIX papers, but I have had many discussions with
Gill McGrath and others at Summit who were responsible for the new
Transport Layer Interface (TLI).  I think they did an excellent job of
designing an interface which provides the Transport Service without exposing
protocol implementation details.  I should add that my praise for this
example does not mean that it is necessary, or desirable, to view all OSI
layer interfaces as software module interfaces.  Efficiency will often
require layers to be implemented without an exposed "service" interface.

> It seems to me that protocols should be implemented in a freer way, with the
> impossibility of protocol independence recognized.  ...

If you follow this argument to its logical conclusion you would also eliminate
stdio and many of the IO abstractions which are central to the success of Unix.

> [discussions of mechanisms for protocol dependent system calls removed]

What is your objection to the mechanism provided by System V Rel 3 streams?
It allows user programs to pass protocol specific information to kernal
resident protocol stream modules or drivers.  Use of the TLI is encouraged
where appropriate, but the general case is still covered.

> Let's not get bogged down in questions of implementation at first; I would
> like to see discussions of the merits and demerits of these three approaches
> to networking on UNIX, however.

I may have seemed rather harsh on Tim, but that was not my intent.  In fact,
he presented his views in enough detail so that a reasoned response was
possible.  Unfortunately, many others who voice opinions do not offer enough
information to allow a specific reply.

I have directed followups to net.dcom which appears to be the most suitable
group to continue this discussion.
-- 
Stephen J. Langdon                  ...!{ihnp4,cbosgd,hplabs,sun}!amdahl!sjl

[ The article above is not an official statement from any organization
  in the known universe. ]
Technical Details
Message-ID: <3535@amdahl.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!amdahl!sjl
References: <964@hoptoad.uucp>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!amdahl!sjl
From: sjl@amdahl.UUCP (Steve Langdon)
Newsgroups: net.lan,net.unix-wizards
Subject: Re: Networking on UNIX - 3 approaches
Message-ID: <3535@amdahl.UUCP>
Date: Tue, 12-Aug-86 03:06:56 EDT
Article-I.D.: amdahl.3535
Posted: Tue Aug 12 03:06:56 1986
Date-Received: Tue, 12-Aug-86 22:08:00 EDT
References: <964@hoptoad.uucp>
Reply-To: sjl@amdahl.UUCP (Steve Langdon)
Followup-To: net.dcom
Organization: Amdahl Corp, Advanced Systems Planning
Lines: 67
Keywords: networks sockets streams SNA protosw LAN
Summary: The same service can be provided by several protocols