🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.protocols.misc
Article #269

Re: RPC Technologies

#269
From: Nathaniel Mishkin
Date: Wed, 12 Sep 1990 13:35
60 lines
3912 bytes
In article <1990Sep11.223905.13417@athena.mit.edu>, pae@athena.mit.edu (Philip Earnhardt) writes:
>Who does say what's permitted and what's not permitted in an NCS port?

A good question that many people have tried to address in the context
of many existing protocols (and programming languages, and ...).  I don't
know that I have a good answer.  The strictest answer is that what's
permitted and required are exactly what some spec says is permitted and
required.  The creation of such a spec that is absolutely complete is
a very tricky matter.  It took a long time and a lot of experience to
get, say, the TCP spec(s) (plus notes to implementors) into a state where
multiple implementors who read the specs actually produce implementations
that interoperate.  Even though most people simply clone existing TCP
implementations these days, one STILL sees the occasional interoperability
problem.  What's more, I'm not aware of any official "conformance test
suite" for TCP, although such a existence suite would seem to be an
extraordinarily useful adjunct to specs.

We believe that in the current NCS spec we have gone a long way toward
making a complete spec, but clearly it's not absolutely complete.
Questions such as you're raising -- "Is an implementation conformant
if it can deal only with calls of short duration" -- is not explicitly
addressed in the spec.  It should be.  I am reluctant to strictly disallow
such implementations, since allowing them does have some value.  Let's
say we'd put it in the "Minimal NCA/RPC" appendix to the spec.

By the way, I don't know that I've ever seen a spec of the Netwise RPC
protocol (i.e., the one that your current, non-SunRPC-based products
use).  Can you make one available?

>What's to keep someone from making a port that doesn't interoperate with
>another NCS port?

In general, the only thing that stops someone from making a
non-interoperating implementation (port or brand new) of some network
protocol is market pressure.  What's to keep someone from making an
implementation of TCP that doesn't interoperate with another TCP
implementation?  (Some protocol definers try to leverage the legal system.
As I recall, Sun doesn't let a vendor use the "NFS" trademark unless
the vendor's implementation passes some verification suite.  Not an
unreasonable idea.)

>Do you think it's important to support users in creating portable NCS
>applications? 

No, and I don't like apple pie either :-)

Of course it's important.  But you seem to treat everything as black
and white.  ALL systems have aspects that limit portability to some extent.
Like I said, if I use Sun RPC over TCP and I need to handle 100's of
clients, my application is not going to be portable to systems that support
only 20 file descriptors per process.  Does that mean the system is
useless?  No.  Does it mean it's less useful than one that requires only
1 file descriptor.  To some degree, yes.  How does this "degree" map
onto the space of real world systems and applications?  Time will tell.

--
                    -- Nat Mishkin
                       Cooperative Object Computing Operation
                       Hewlett-Packard Company
                       mishkin@apollo.hp.com
Technical Details
Message-ID: <1990Sep12.093500@apollo.HP.COM>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!samsung!uakari.primate.wisc.edu!sdd.hp.com!apollo!apollo.hp.com!mishkin
References: <1990Sep10.182341.11165@athena.mit.edu> <1990Sep11.120119@apollo.HP.COM> <1990Sep11.223905.13417@athena.mit.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!samsung!uakari.primate.wisc.edu!sdd.hp.com!apollo!apollo.hp.com!mishkin
From: mishkin@apollo.HP.COM (Nathaniel Mishkin)
Newsgroups: comp.protocols.misc
Subject: Re: RPC Technologies
Keywords: NCS Threads Preemption Portability
Message-ID: <1990Sep12.093500@apollo.HP.COM>
Date: 12 Sep 90 13:35:00 GMT
References: <1990Sep10.182341.11165@athena.mit.edu> <1990Sep11.120119@apollo.HP.COM> <1990Sep11.223905.13417@athena.mit.edu>
Sender: root@apollo.HP.COM
Reply-To: mishkin@apollo.HP.COM (Nathaniel Mishkin)
Organization: Hewlett-Packard Company - Cooperative Object Computing Operation
Lines: 60