Computer networking reference models
There is a continuing and frustrating tendency, in Wikipedia articles on network architecture, to treat the OSI model as if it is still used other than as a teaching aid, and to try to “coerce” (using the lovely word choice of my colleague, Priscilla Oppenheimer) Internet Protocol Suite protocols into OSI layers. Layering, as an abstraction, is useful up to a point. It can be overused. An updated IETF architectural document, RFC3439, [1] even contains a section entitled: "Layering Considered Harmful": Emphasizing layering as the key driver of architecture is not a feature of the TCP/IP model, but rather of OSI. Much confusion comes from attempts to force OSI-like layering onto an architecture that minimizes their use.
I have insufficient hair to tear it out whenever I try to explain that the Internet protocol suite was not intended to match OSI, was developed before OSI, the full set of OSI specifications (i.e., not just document ISO 7498) subdivide layers so that it is no longer seven, and that OSI has, in the real world, been relegated to a teaching tool. The Internet Protocol Suite has four layers, defined in RFC1122[2]and no IETF document, as opposed to some nonauthoritative textbooks, say it has five.
No IETF standards-track document has accepted a five-layer model, and IETF documents indeed deprecate strict layering of all sorts. Given the lack of acceptance of the five-layer model by the body with technical responsibility for the protocol suite, it is not unreasonable to regard five-layer presentations as teaching aids, possibly to make the IP suite architecture more familiar to those students who were first exposed to layering using the OSI model. Comparisons between the IP and OSI suites can give some insight into the abstraction of layering, but trying to coerce Internet protocols, not designed with OSI in mind, can only lead to confusion.
Again, RFC1122 defines 4 layers. If anyone can find another IETF document that states the OSI model is followed, please cite it. Further, RFC 1122 was published in 1989, while the OSI Reference Model, ISO 7498, was published in 1984. If the RFC 1122 authors had wanted to be OSI compliant, they had the OSI definitions available to them. They didn't use them. Does that suggest they were not concerned with OSI compliance?
For Internet Protocol Suite architecture, textbooks are not authoritative; the IETF's work, particularly the Standards Track, is definitive for the Internet Protocol Suite. I've written networking textbooks, and, while I might clarify an IETF document, I certainly don't contend that textbooks are more definitive than the actual technical specifications created by expert, not beginning student or teacher, consensus.
Unfortunately not available free online AFAIK, there are ISO documents such as "Internal Organization of the Network Layer" [3], which splits the network layer nicely into three levels, logical (lower-layer agnostic), subnetwork (i.e., link technology) specific, and a mapping sublayer between them. ARP, with which many people struggle, drops perfectly into the mapping (technically subnetwork dependence convergence) between them. Another ISO document, "OSI Routeing [sic] Framework" [4], makes it clear that routing protocols, no matter what protocol carries their payloads, are layer management protocols for the network layer. Annex 4 to ISO 7498 gives the OSI Management Framework [5], with both system management and layer management components.
When the IETF was dealing with MPLS and some other things that "don't quite fit", and some people insisted on calling it "layer 2.5", the reality is that the IETF set up a "Sub-IP Area" and did the original work there. MPLS is now back under the Routing Area. There was also a Performance Implications of Link Characteristics (PILC) working group that has ended its effort, but also deals with sub-IP (archives at http://www.isi.edu/pilc/)
References
- ↑ Bush, R.; Meyer (2002), Some Internet Architectural Guidelines and Philosophy, IETF, RFC3439, ftp://ftp.rfc-editor.org/in-notes/rfc3439.txt
- ↑ Braden, R (1989), Requirements for Internet Hosts -- Communication Layers, IETF, RFC1122, http://www.isi.edu/in-notes/rfc1122.txt
- ↑ Internal Organization of the Network Layer, ISO, 1988, ISO 8648, http://engineers.ihs.com/document/abstract/WRCFCAAAAAAAAAAA
- ↑ OSI Routeing Framework, ISO, 1995, ISO/TR 9575, http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=25981
- ↑ Open Systems Interconnection -- Basic Reference Model -- Part 4: Management framework, ISO, ISO7498/4, http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=14258&ICS1=35&ICS2=100&ICS3=70