TCP/IP versus OSI protocol stacks

The Open Systems Interconnection (OSI) protocol stack is seldom used in practice, but is often used as a reference point in discussions of other protocols. This figure shows the rough correspondence between the layers of the widely used TCP/IP protocols and the OSI model layers.

Application programs in TCP/IP networks handle the functions of the top two OSI layers and part of the third, for example interpreting character codes, authenticating user passwords, and encrypting and decrypting data.

The TCP/IP transport layer assumes some of the OSI session layer functionality. IP is simpler than the OSI network layer protocol, with the data link layer doing more work.

OSI and TCP/IP both contended for acceptance for a time, but the inclusion of TCP/IP in Berkeley UNIX, Microsoft Windows, and the Apple Macintosh operating system, sealed the fate of OSI.

Although OSI is seldom used, it was historically important. Before the OSI standardization effort (1979), computer networks used proprietary protocols. The two leaders were System Network Architecture from IBM and DECNet from Digital Equipment Corporation. These worked as long as you used one or the other, but they were incompatible.

OSI defined a protocol stack that was not proprietary, but open for anyone to implement and use. It paved the way for TCP/IP. Today, computers from any manufacturer, running any operating system can communicate as long as they are all running TCP/IP.