Ghosts of OSI: The Spectre Haunting IP

By cb

The dominance of the Internet protocol suite has made it hard to think of anything else. Yet in the 80s and 90s, an alternative to the IP model (outside of the proprietary vendor-specific suites like SNA or DECnet) was challenging its rise: the Open Systems Interconnect, or the OSI protocol suite. The short story is while IP won, OSI didn’t disappear completely. It left its view of the world, the seven layer stack, in every CCNA course – even when it doesn’t fit IP at all.

More than that, it also left several protocols still in use today and made its mark on everyday software. They might be rebased onto IP, but their origins were in OSI. Who’s still out there?

LDAP. The “Lightweight” Directory Access Protocol comes from the fact it’s basically DAP, but on IP. What’s DAP? That’s the protocol used to access X.500 directories in an OSI network; LDAP is lightweight because it’s on IP. X.500 has a certain hierarchical scheme for describing addressing entities, where you describe them by the properties like country, department, etc. This is all designed to make directory lookups easier. Another aspect is you could then easily route things with mistakes made in the address easily, as the real post office does.

While most other aspects of OSI may be dead, X.500 thrives via LDAP. When both OpenLDAP and Active Directory are built on the foundation of it. Even TLS uses X.500, via X.509. It might not have an entire directory (instead PKI and root certificates), but the core pieces are there.

ASN.1. While ASN.1 isn’t as common as it used to be, it’s still used for X.509 and telecom protocols. What’s more important than ASN.1 itself is the impact it had on later formats, such as strict schemas, tag-length-value, and serialization. XML and Protobufs wouldn’t be the same without it. In fact, it feels we’ve been trying to reinvent the benefits of having a common serialization protocol (you know, layer 6) in our REST and RPC world.

IS-IS. The OSI router-to-router information protocol was designed by Radia Perlman of spanning tree fame, without which, IRC netsplits would be even worse. Although she’s better known for spanning tree, IS-IS was her bigger accomplishment, being the first carrier-grade routing protocol. Later, it was kludged into supporting IP; including shoving an IP address into OSI’s variable length address, an NSAP. It’s worth noting that there was a protocol designed for end systems (you know, anything that isn’t a router) to receive routes, ES-IS; the notion of this over a default gateway is another curious OSI quirk… that IPv6 learned from, in the form of neighbour discovery.

ISDN and H.323. It’s no surprise that since the telecom world was big into ISDN, that it would be based on OSI primitives. (The adoption of ISDN is another chapter in the sordid history of telecoms, standards, and adoption.) H.323 is basically ISDN over IP; including the ability to make clear channel data calls, and easily converted to ISDN for use with ISDN phones that used H.320. Since H.323 uses various OSI protocols, it needs things like TPKT to layer OSI semantics over IP.

In addition to H.32x, there was the additional T.120 extensions for conferencing. The features T.120 added into H.323 including desktop sharing and whiteboards. With H.323 and T.120 together, you basically had the featureset of Zoom in the 90s – indeed, and ecosystem of softphones like NetMeeting (that came with Windows) took full advantage of it. Who said Silicon Valley could innovate?

Exchange. Microsoft’s Exchange was basically an X.400-oriented version of their mail product. X.400 was the OSI mail system to go with X.500; it borrowed the same addressing system. While later versions of Exchange don’t expose the X.400 parts anymore, X.400 made its mark on the product.

RDP. RDP uses several OSI protocols, even though it was designed in the heyday of IP. Why? It started off as basically T.120 without the telephony bits; every time you log into a Windows system remotely, you’re basically making an H.323 call. Weird!

DICOM. Unless you work in the medical industry, there’s a good chance you’ve never heard of this protocol. Yet it lives on for medical imaging, NSAPs and all. This is a good example of a niche protocol drawn up in the hype of OSI standardizing everything networking that happened to persist because there weren’t many equivalents.

Conclusion

One pattern of OSI is that it was primarily promoted and adopted as the universal protocol stack with both industry backing (Microsoft, DEC, telecoms) and government backing (US and European ones in particular). IP ultimately won from being freely available, already having a large install base (through Unix systems), and the growth of the IP based internet. It might not have always been like this though – we’d live in a very different world if NSFnet adopted OSI. It’s also interesting to see how Microsoft (via Exchange and Active Directory, at minimum) and DEC (via DECnet Phase V) tried to rebase their existing stacks on OSI, with varying elements of integration (and success).

A lot of what survived from OSI was things where the alternatives were very poor (i.e NIS vs. LDAP, OSPF vs. IS-IS, SIP vs. H.323), non-existent (DICOM), or where a vendor rebased their stack and was committed to it (Microsoft in particular, RIP DEC).

It’s also unfortunate that not a lot of software based on the full package OSI below layer 7 survives. The most well-preserved examples are ISODE, the development OSI stack for Unix, and DECnet Phase V, which came with OpenVMS.

I’m considering future posts about OSI, such as overviews of the suite itself, or unusual products and histories base on it. Let me know what you’re curious about.