Rfc | 0873 |
Title | Illusion of vendor support |
Author | M.A. Padlipsky |
Date | September 1982 |
Format: | TXT, HTML |
Status: | UNKNOWN |
|
RFC 873 September 1982
M82-49
THE ILLUSION OF VENDOR SUPPORT
ABSTRACT
The sometimes-held position that "vendor supplied"
intercomputer networking protocols based upon the International
Standards Organization's Reference Model for Open System
Interconnection are worth waiting for, in particular in
preference to protocols based upon the ARPANET Reference Model
(ARM), is shown to be fallacious.
The paper is a companion piece to M82-47, M82-48, M82-50,
and M82-51.
M. A. Padlipsky
Introduction
Even one or two members of the DoD Protocol Standards
Technical Panel join with many others (including, apparently,
some members of the DoD Protocol Standards Steering Group, and
clearly, somebody at the GAO) in expressing a desire to "go with
vendor-supported intercomputer networking protocols instead of
using our own." The author's view of the implications of this
desire should be clear from the title of this paper. What
evidence, then, is there to so stigmatize what is clearly a
well-meant desire to save the Government money?
Scope
First, we must consider what is meant by "vendor-supported
protocols." It can't be just X.25, because that only gets you
through the network layer whether you're appealing to the
International Standards Organization's widely-publicized
Reference Model for Open System Interconnection (ISORM) or to the
unfortunately rather tacit reference model (ARM) to which the
ARPANET protocols (e.g., TCP, IP, Telnet, FTP) were designed. It
also can't be just X.25 and X.28/X.29 (even with X.75 tossed in
to handle "internetting" and X.121 for addressing) because: 1.
They don't serve as a protocol suite for resource sharing (also
known as OSI), but rather only allow for remote access [1]. 2.
They (coming as they do from the Consultative Committee on
International Telegraphy and Telephony--and including one or two
other protocols, in reality) don't even constitute the full
protocol suite being worked on by the U. S. National Bureau of
Standards, much less the somewhat different suite being evolved
by ISO. So it must be a suite from NBS or ISO, and for present
purposes we needn't differentiate between them as their Reference
Models are close enough to be shorthanded as the ISORM.
Timeliness
Realizing that we're being asked to consider an
ISORM-related protocol suite as what the vendors are expected to
support has one immediate consequence which in some sense can be
considered to dominate all of the other points to be raised:
That is, the DoD procurement process entails quite long lead
times. Yet the ISORM suite is by no means complete at present.
Without prejudice to its
merits or demerits, only X.25 (as levels 1-3, and with some
ambiguity as to what level X.75 belongs at) is as yet firmly in
the ISORM suite (which it will be convenient to refer to as
"ISORMS"), and there is even some doubt as to how firmly they're
there. (E.g., a British observer at a recent PSTP meeting
assured the author that "We in the U.K. don't believe X.25 is
officially part of the ISORM.") There are proposals which have
been circulating for some time at Level 4, and less far along
through the international (or even national, remembering NBS)
standardization process, ones at Level(s) 5-7. It must be noted
that: 1. These are by and large "paper protocols" (that is,
they have not been subjected to the test of actual use). 2.
Even ISO and NBS's warmest supporters acknowledge that the
standardization process "takes years." So if the DoD is to avoid
buying what might turn out to be a series of pigs in a series of
pokes, it can't wait for the ISORMS.
On the other side of the coin, the DoD is letting
intercomputer networking contracts right now. And, right now,
there does exist a suite of protocols designed to the ARPANET
Reference Model (ARMS, with no pun intended). Implementations of
the ARMS already exist for a number of operating systems already
in use in the DoD. Now, it is not argued that the ARMS protocols
come "for free" in upcoming acquisitions (contractors fuss about
the style of the available specifications, system maintainers
fear incursions of non-vendor supplied code into operating
systems, and so on), but it is unarguable that the ARMS can be
procured significantly more rapidly than the ISORMS. (It is also
unarguable that those who speak of their unwillingness to see the
DoD "develop new protocols rather than employ international
standards" haven't done their homework; we're not talking about
new protocols in the ARMS, we're talking about protocols that
have been in real use for years.)
Quality of Support
The timeliness argument can lead to a counterargument that
the ISORMS is "worth waiting for," though, so we're not done yet.
Let's look further at what "vendor support" means. Clearly, the
proponents of the position expect that vendors' implementations
of protocols will be in conformance with the Standards for those
protocols. Given the nature of these specifications, though,
what can we infer about the quality of support we can expect from
the vendors?
There are two problem areas immediately apparent:
ambiguities and options. Let's take ambiguities first. The
following are some of the questions raised by knowledgable
observers about the present state of the ISORMS:
1. Can an X.25 comm subnet offer alternate routing? (The
answer depends on whether "DCE's" are expected to
follow X.25 between themselves. The situation is
further complicated by the fact that some ISORM
advocates don't even include the Data Communication
Elements in their depictions of the Model; this leads
to the metaphorical question* "Are there parking
garages between the highrises?") If you can conform to
X.25 and not offer alternate routing--which certainly
appears to be consistent with the spec, and might even
be construed as required by it--the DoD's inherent
interest in "survivability" cannot be served by you.
2. Can an X.75 internet offer alternate gatewaying? (The
answer is almost surely no, unless the X.75 spec is
re-written.) If not, again the DoD's interest is not
served.
3. Does "Expedited Data" have semantics with regard to the
L4-L5/L7 interface? (Not as I read the spec, by the
way.) If not, the ISORMS lacks the ability to convey an
"Out-of-Band-Signal" to an Application protocol. (This
leads to the metaphorical question, "What good is an
SST if there's nobody on duty at the Customs Shed?")
4. Must all layers be traversed on each transmission?
(There are rumors of a new ISORM "null-layer" concept;
it's not in the last version I looked at, however, and
apparently the answer is yes at present.) If so, the
DoD's inherent interest in efficiency/timeliness cannot
be served. (This leads to the metaphorical question,
"Are there elevators inside the highrises, or just
staircases?")
5. Can an implementation be in conformance with the ISORM
and yet flout the prescription that "N-entities must
communicate with each other by means of N-1 entities"?
(Not as I read the spec.) If not, again
implementations must be inefficient, because the
prescription represents an inappropriate legislation of
implementation detail which can only lead to
inefficient implementations.
_______________
* This and other metaphorical questions are dealt with at
greater length in reference [2].
6. Is each layer one protocol or many? (The point quoted
in 5 would seem to imply the latter, but many ISORM
advocates claim it's the former except for L1 and L7.)
If each layer is a "monolith", the DoD's interest is
not served because there are many circumstances in
which applications of interest require different L1-3
and L4 protocols in particular, and almost surely
different L5 and L6 protocols. (Areas of concern:
Packetized Speech, Packet Radio, etc.)
The upshot of these ambiguities (and we haven't exhausted
the subject) is that different vendors could easily offer
ISORMS's in good faith which didn't interoperate "off-the-shelf".
Granted, they could almost certainly be fixed, but not cheaply.
(It is also interesting to note that a recent ANSI X3T5 meeting
decided to vote against acceptance of the ISORM as a
standard--while endorsing it as valuable descriptively--because
of that standards committee's realization of just the point we
are making here: that requiring contractual compliance with a
Reference Model can only be desirable if the Reference Model were
articulated with utter--and probably humanly
unattainable--precision.)
The area of options is also a source for concern over future
interoperability of ISORMS implementations from different
vendors. There's no need to go into detail because the broad
concern borders on the obvious: What happens when Vendor A's
implementations rely on the presence of an optional feature that
Vendor B's implementations don't choose to supply? Somebody
winds up paying--and it's unlikely to be either Vendor.
On the other side of the coin, the ARMS designers were all
colleagues who met together frequently to resolve ambiguities and
refine optionality in common. Not that the ARMS protocols are
held to be flawless, but they're much further along than the
ISORMS.
To conclude this section, then, there are grounds to suspect
that the quality of vendor support will be low unless the price
of vendor support is high.
Nature of the Design Process
The advantage of having colleagues design protocols touched
on above leads to another area which gives rise to concern over
how valuable vendor-supported protocols really are. Let's
consider how international standards are arrived at:
The first problem has to do with just who participates in
the international standardization process. The author has
occasionally chided two different acquaintances from NBS that
they should do something about setting standards for membership
on standards committees. The uniform response is to the effect
that "They are, after all, voluntary standard organizations, and
we take what we're given." Just how much significance is
properly attached to this insight is problematical. Even the
line of argument that runs, "How can you expect those
institutions which have votes to send their best technical people
to a standards committee? Those are precisely the people they
want to keep at home, working away," while enticing, does not,
after all, guarantee that standards committees will attract only
less-competent technicians. There are even a few Old Network
Boys from the ARPANET involved with the ISORM, and at least one
at NBS. However, when it is realized that the rule that only
active implementers of TCP were allowed on the design team even
precluded the present author's attendance (one of the oldest of
the Old Network Boys, and the coiner of the phrase, at that), it
should be clear that the ARMS enjoys an almost automatic
advantage when it comes to technical quality over the ISORMS,
without even appealing to the acknowledged-by-most politicization
of the international standards arena.
What, though, of the NBS's independent effort? They have
access to the experienced designers who evolved the ARMS, don't
they? One would think so, but in actual practice the NBS's
perception of the political necessities of their situation led
one of their representatives at a PSTP (the Department of Defense
Protocol Standards Technical Panel) meeting to reply to a
reminder that one of the features of their proposed Transport
Protocol was a recapitulation of an early ARPANET Horror Story
and would consume inordinate amounts of CPU time on participating
Hosts only with a statement that "the NBS Transport Protocol has
to be acceptable as ECMA [the European Computer Manufacturer's
Association] Class 4." And even though NBS went to one of the
traditional ARPANET-related firms for most of their protocol
proposals, curiously enough in all the Features Analyses the
author has seen the features attributed to protocols in the ARMS
are almost as likely to be misstated as not.
The conclusion we should draw from all this is not that
there's something wrong with the air in Gaithersburg, but rather
that there's something bracing in the air that is exhaled by
technical people whose different "home systems'" idiosyncracies
lead naturally to an intellectual cross-fertilization, on the one
hand, and a tacit agreement that "doing it right" takes
precedence over "doing it expediently," on the other hand. (If
that sounds too corny, the reader should be aware that the author
attended a large number of
ARPANET protocol design meetings even if he wasn't eligible for
TCP: in order to clarify our Host-parochial biases, we screamed
at each other a lot, but we got the job done.)
One other aspect of the international standardization
process has noteworthy unfortunate implications for the resultant
designs: However one might feel on a technical level about the
presence of at least seven layers (some seem to be undergoing
mitosis and growing "sublayers"), this leads to a real problem at
the organizational--psychological level. For each layer gets its
own committee, and each committee is vulnerable to Parkinson's
Law, and each layer is in danger of becoming an expansionist
fiefdom .... If your protocol designers are, on the other hand,
mainly working system programmers when they're at home--as they
tend to be in the ARPANET--they are far less inclined to make
their layers their careers. And if experience is weighted
heavily--as it usually was in the ARPANET--the same designers
tend to be involved with all or most of the protocols in your
suite. This not only militates against empire building, it also
minimizes misunderstandings over the interfaces between
protocols.
"Space-Time" Considerations
At the risk of beating a downed horse, there's one other
problem area with the belief that "Vendor supplied protocols will
be worth waiting for" which really must be touched on. Let's
examine the likely motives of the Vendors with respect to
"space-time" considerations. That is, the system programmer
designers of the ARMS were highly motivated to keep protocol
implementations small and efficient in order to conserve the very
resources they were trying to make sharable: the Hosts' CPU
cycles and memory locations. Are Vendors similarly motivated?
For some, the reminder that "IBM isn't in business to sell
computers, it's in business to sell computer time" (and you can
replace the company name with just about any one you want) should
suffice. Especially when you realize that it was the traditional
answer to the neophyte programmer's query as to how come there
were firms making good livings selling Sort-Merge utilities for
System X when one came with the operating system (X = 7094 and
the Operating system was IBSYS, to date the author). But that's
all somewhat "cynical", even if it's accurate. Is there any
evidence in today's world?
Well, by their fruits shall you know them: 1. The feature
of the NBS Transport Protocol alluded to earlier was an every
15-second "probe" of an open connection ("to be sure the other
guy's still
there"). In the early days of the ARPANET, one Host elected to
have its Host-Host protocol (popularly miscalled "NCP" but more
accurately AH-HP, for ARPANET Host-Host Protocol) send an echo
("ECO") command to each other Host each minute. The "Network
Daemon" on Multics (the process which fielded AH-HP commands)
found its bill tripled as a result. The ECMA-desired protocol
would generate four nuisance commands each minute--from every
Host you're talking to! (The "M", recall, is for
Manufacturers.)* 2. X.25 is meant to be a network interface.
Even with all the ambiguities of the ISORM, one would think the
"peer" of a "DTE" (Host) X.25 module (or "entity") would be a
"DCE" (comm subnet processor) X.25 module. But you can also "talk
to" at least the foreign DCE's X.25 and (one believes) even the
foreign DTE's; indeed, it's hard to avoid it. Why all these
apparently extraneous transmissions? CCITT is a body consisting
of the representatives of "the PTT's"--European for State-owned
communications monopolies. 3. The ISORM legislates that
"N-entities" must communicate through "N-1 entities." Doesn't
that make for the needless multiplication of N-1 entities? Won't
that require processing more state information than a closed (or
even an open) subroutine call within level N? Doesn't anybody
there care about Host CPU cycles and memory consumption?
Note particularly well that there is no need to attribute
base motives to the designers of the ISORMS. Whether they're
doing all that sort of thing on purpose or not doesn't matter.
What does matter is that their environment doesn't offer positive
incentives to design efficient protocols, even if it doesn't
offer positive disincentives. (And just to anticipate a likely
cheap shot, TCP checksums are necessary to satisfy the design
goal of reliability; ECMA four pings a minute is[/was]
unconscionable.)
TANSTAAFL
We're very near the end of our analysis. Readers familiar
with the above acronym might be tempted to stop now, though there
are a few good points to come. For the benefit of those who are
not aware: "There Ain't No Such Thing As A Free Lunch."
Achieving interoperability among vendor-supplied protocol
interpreters won't come for free. For that matter, what with all
this "unbundling"
________________
* Rumor has it that the probes have since been withdrawn from
the spec. Bravo. However, that they were ever in the spec is
still extremely disquieting--and how long it took to get them
out does not engender confidence that the ISORMS will be
"tight" in the next few years.
stuff, who says even the incompatible ones come for free? You
might make up those costs by not having to pay your maintenance
programmers to reinsert the ARMS into each new release of the
operating system from the vendor, but not only don't good
operating systems change all that often, but also you'll be
paying out microseconds and memory cells at rates that can easily
add up to ordering the next member up in the family. In short,
even if the lunch is free, the bread will be stale and the cheese
will be moldy, more likely than not. It's also the case that as
operating systems have come to evolve, the "networking" code has
less and less need to be inserted into the hardcore supervisor or
equivalent. That is, the necessary interprocess communication
and process creation primitives tend to come with the system now,
and device drivers/managers of the user's own devising can often
be added as options rather than having to be built in, so the
odds are good that it won't be at all hard to keep up with new
releases anyway. Furthermore, it turns out that more and more
vendors are supplying (or in process of becoming able to supply)
TCP/IP anyway, so the whole issue of waiting for vendor support
might well soon become moot.
References
[1] Padlipsky, M. A., "The Elements of Networking Style",
M81-41, The MITRE Corporation, October 1981, attempts to
clarify the distinction between "remote access" and
"resource sharing" as networking styles.
[2] ----------, "A Perspective on the ARPANET Reference Model",
M82-47, the MITRE Corporation, September 1982; also
available in Proc. INFOCOM '83.