Scott C. Lemon on the FIfth Law

Scott Lemon has done a very nice posting where he reviews the Law of Pluralism from the point of view of his experience at Novell. He begins by recalling the fifth law:

The Law of Pluralism:

A universal identity system MUST channel and enable the interworking of multiple identity technologies run by multiple identity providers.

Then this – and here's a secret – I think I have a sealed box of Novell FTAM too:

This reminds me of the original work at Novell on Open Protocol Technology – OPT – which was when we began to support multiple application protocols for file system access.

As a brief history, NetWare was a “next generation” kernel and operating system when it was introduced to the market. For a transport protocol, it used a variation of the Xerox XNS protocols that Novell renamed as IPX, SPX, RIP, SAP, and others. On top of this transport (the equivilent of TCP/IP in the Internet) was the application protocol for making file system requests – the NetWare Core Protocol or NCP. To simplify this, NCP can be thought of as similar to NFS … a file access protocol. So where UNIX systems would use NFS on a transport of TCP/IP, NetWare servers would be accessed from DOS workstations using NCP on a transport of IPX.

The first step towards Open Protocol Technology – or a form of Pluralism – was with Novell NetWare v2 (actually it was version 2.15 in 1988!) when Novell added support for the Apple Talk Protocol Suite, allowing Apple Macintosh computers to see a NetWare server as though it were an Apple server. This was done by adding support for the Apple transport protocols, and also the file protocols. So now DOS and Windows workstations could access files on the server using NCP/IPX, and Macintosh computers accessed the same files … using their native tongue, the Apple File Protocol.

Soon after this, Novell added support for TCP/IP, NFS, and FTP with the release of NetWare v3. It actually went even further when Novell implemented the OSI protocol stack on NetWare. I still have a sealed box of NetWare FTAM which was the product where Novell implemented the FTAM file protocols on top of an OSI protocol stack!

In this example of “pluralism” Novell was able to create a product that supported file system access via numerous transport protocols, and numerous file access protocols. We had demonstration networks showing where machines running DOS or Windows, along with Macintoshes(?), and UNIX machines, were all sharing files on the NetWare server. This was in 1989 through 1991!

If we fast forward to now this is a common feature of almost any operating system! Even the Linux systems in use today have the ability to mirror this type of functionality with multiple transport protocol support, and projects like Samba, Netatalk, etc.

To me, this law is a very common sense approach to systems design and allows for flexibility in implementations and usage. This makes complete sense.