[comp.protocols.misc] On the TCP/ISO debate

ken@gvax.cs.cornell.edu (Ken Birman) (06/12/87)

Oops!  I was indeed thinking of the 7-layer reference model, which is what
I thought people were arguing for -- not the protocol suite, X.25, or whatever.
Thanks for pointing this out.  I find the multiple uses of ISO confusing.

My feeling that multicasting and other higher-level functions (blast transfer
protocols, etc) are in the long run going to be very important for building
high performance distributed applications and especially robust applications,
for example the fault-tolerant ones that my group is focused on.  They may
actually become more important in practical terms than point-to-point protocols
of any kind.

I appreciate that there is a lot to argue about regarding the relative
inadequacies of TCP, XNS, X.25, or what have you.  But, arguing these issues
won't make it easier to build really sophisticated distributed software.
What is needed is a "leap" in the level of abstraction to a kind of
distributed computing environment in which this kind of application is just
easier to build.  Why do I consider this relevant?  Well, it seems natural to
me that before one decides which standard is "best", one should have a very
good sense of what application programs will demand a decade from now.  And,
I don't feel that we have a good sense for this because all our experience
is RPC oriented and stream oriented, and these may in the long run turn out to
have been a very inadequate style of communication support.

I would support this claim by observing that very little distributed software
exists and what does exist is remarkably unsophisticated about distributed
system "state".  Moreover, very little of it is particularly robust or able
to dynamically adapt to changing conditions.

If, as I think, the real issues are at this higher level, than the kind of low
level transport protocol one uses is probably not going to be TCP or X.25
(unless the world has standardized on one of these and there is no choice).
It will be something else (VMTP?) optimized for the sorts of things the
high level abstraction must support.

So, I would propose that people discuss "high level requirements" for a while,
in order to build up a strong argument for improving performance of those
classes of applications that are poorly served by the existing protocol suites.
From this, a better understanding of what the proponents of the different
standards are really talking about might emerge, and then we would really
be doing something productive...

By the way, questions about the exact functioning of Dave Cheriton's task force
are best addressed to Dave.  I'm just a member.  Dave is also on the end-to-end
group, which I am not.  So, I just can't answer these sorts of questions.  
Also, if you arer worrying about this, other members of the group seem far
more knowledgable about the existing standards (ISO included) than I am.

Ken