Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!husc6!think!ames!hao!gatech!rutgers!princeton!allegra!ulysses!faline!karn
From: karn@faline.UUCP
Newsgroups: comp.dcom.lans,comp.protocols.misc,comp.sources.wanted
Subject: Re: OSI-model software
Message-ID: <638@faline.bellcore.com>
Date: Fri, 12-Jun-87 20:34:04 EDT
Article-I.D.: faline.638
Posted: Fri Jun 12 20:34:04 1987
Date-Received: Sat, 20-Jun-87 18:59:23 EDT
References: <223@diab.UUCP> <233@idacrd.UUCP> <526@alliant.UUCP> <1204@botter.cs.vu.nl>
Organization: Bell Communications Research, Inc
Lines: 92
Summary: The problem with ISORMites (pronounced "eyesore-mites")
Xref: mnetor comp.dcom.lans:541 comp.protocols.misc:72 comp.sources.wanted:1385

In article <1204@botter.cs.vu.nl>, ast@botter.UUCP writes:

> Virtually everyone now agrees that the OSI model is a good way to look at
> networking.  The war is about which protocols which be used in which layer.

About the only thing virtually everybody agrees on is that hierarchical
layering is usually a good idea in a computer communication network. 
The ISO Reference Model (not so fondly called "eyesore-emm" by
Padlipsky) is only one of several possible hierarchical models, and a
rather outdated one at that.

Among the major flaws of the ISO Reference Model are:

1. A fixed number (7) of layers. In a real network there may well be
more or less than 7 layers. The important thing is the relative position
of a protocol in the hierarchy and the function it performs, not the
fixed "level x" designator it might have.  Jon Postel and Danny Cohen
wrote a paper a few years ago in which they examined some real
networking systems and showed that either a) N = N + 1 (for any value
of N), OR b) the notion of "seven and only seven layers" is
fundamentally flawed.

2. It completely ignores internetworking. This is related to point #1,
since in a real internetwork you may very well have two or more network
layers in a "stack", e.g., a subnet layer underneath an internet layer.
(Some people do split ISO Layer 3 into Layer 3A, the Subnet layer, and
Layer 3B, the Internet layer.)  The fact that the model still doesn't
formally recognize the very real existence of and need for internetworking
says something about the motivations of those who influence the ISO.

3. Overly redundant layer functionality. My pet peeve is the use of the
term "reliable" in the link layer description, implying that the primary
burden for reliable delivery of information rests here instead of the
transport layer where it belongs. No other concept has contributed so
much to needless complexity, inflated costs and lousy performance than
the stubborn notion that each and every layer must "guarantee"
reliability, usually through the use of an overhead-laden connection-
oriented protocol.

A decade ago this mentality brought you X.25.  Now it has resurfaced in
an even more astonishingly byzantine creation, "IEEE 802.1 Connection-
Oriented Logical Link Control" (basically X.25 over Ethernet, believe
it or not). For more on the general subject of end-to-end vs low level
reliability mechanisms, see "End-to-end Arguments in System Design" by
Jerome Saltzer of MIT.

4. While important concepts are ignored, another layer exists whose
function is questionable at best: the Session layer. I've yet to figure
out just what it's supposed to do, and why a separate layer is needed to
do it.

5. While not a fault of the ISO RM per se, some of its overly zealous
followers (whom Padlipsky also not-so-fondly refers to as ISORMites,
pronounced "eyesore mites") tout it as *the* way a network *must* be
built. Even the originators of the ISORM never intended it as anything
other than as a general guide to *naming* the pieces of *existing*
networks. For example, I've had people tell me that I can't have a
"network" without a separate Session layer, even though TCP and UDP have
perfectly adequate port numbering and "well known socket" mechanisms.
When I ask why, they say "ISO says so".

In addition to the faults of the underlying reference model, the ISO/OSI
"protocol suite" has a host of faults of its own.  First and foremost
among them is the fetish for connection-oriented protocols. Only
recently did a connectionless transport protocol get added, despite
the widespread use of UDP in the ARPA Internet for things like network
databases and distributed file systems. On the other hand, there are a
FIVE different and mutually incompatible  protocols all providing a
connection-oriented transport service (TP-0 thru TP-4). If the ISO was
*really* serious about "open systems interconnection", they would pick
ONE connection-oriented transport protocol (TP-4, the most general one).
They claim you don't need all that reliability if you're running on a
PTT network, but of course the real reason is that they're scared to
death of internetworking. There's no way a PTT is going to allow it to
happen unimpeded.

Yes, eventually you may be able to pick a "subset" of the ISO stack that
answers the needs of the internetworking world. But if you do, you end up
with something that is similar to, but (deliberately) incompatible with
TCP/IP. So why bother?

In summary, if you think open systems interconnection is a good idea, I
agree. That's why I and so many others use TCP/IP. I have nothing
against migrating to an international standard if it is provably
superior to what we have (e.g., the metric system vs the English system)
but this is *not* the case with OSI in its present form.  I also dislike
the "bomb crazed military", but I also see no reason not to take their
technology and beat it into plowshares.  In fact, it gives me a real
feeling of satisfaction to take military technology and pervert and
subvert it to peaceful uses!

Phil