> I'd actually much prefer for OSI to win the "war of the definitions". > Rigid definitions tend to constrain thinking to fit into the patterns > defined. We're much better off just having a rough idea what things > mean when it gets to this level. While the concept of layering is fine (more or less), the specific layers adopted in the OSI model have only a moderate relation with actual practice, and are a poor fit for the Internet architecture. Specifically: 1) OSI's modeling of the lower layers was driven by the need to accommodate X.25 split between physical transmission, HDLC/LAP-B, and virtual circuits. This does not describe well the situation in the Internet, in which IP is often layered on top of what OSI considers a network layer, e.g. X.25 or ATM; the same problem arose when attempting to layer CLNP on top of these networks; this led to Byzantine discussions of sub-layers 3a, 3b and 3c. 2) OSI's modeling of the upper layers was driven by the need to accommodate the Teletex application, which used a pass-through transport (class zero) and required a "session" layer to handle check-pointing and restart. In the real world, check-pointing and other synchronization tasks are performed a layer above marshalling and un-marshalling, i.e. above the presentation layer. Again, OSI's response to the reality check has been a Byzantine decomposition of the application layer into "application service elements" that would what we usually understand as "session control". The main problem with OSI is that they drew the layers in 1980, i.e. before the client server architectures based on RPC stabilized, before we gained experience with internetworking. The TCP-IP architecture choice of having an internet layer on top of a subnet layer, and single layer for the application were, at the time, much more practical. They withstood time much better. -- Christian Huitema