In the previous post, “What is the Internet?”, I discussed the need for a layered architecture model (TCP/IP) that describes the inner workings of the Internet. In this post, I’ll look at another model called the OSI model and why & where you should use it.
Between the 1970s and the 1990s, there was a lot of debate between organizations, nations, and engineers to find a suitable communication protocol that would enable the best cross-boundary interconnected networking solution. This was also known as the protocol wars.
The Internet Protocol Suite (TCP/IP), developed by the Internet Engineering Task Force (IETF), won the protocol wars. Another big contender was the Open Systems Interconnection (OSI) model. This model was created by the International Organization for Standardization (ISO).
You probably have heard about some ISO standards before because the ISO standards organization develops international standards for a lot of things, spanning various industries and countries. The question, however, is why the other losing contenders of the protocol wars are not so widely known/adopted by the global IT community.
The TCP/IP model already won the first prize for its use on the internet. Still, neither the TCP/IP model nor the other contenders contributed to what the OSI model did: The OSI model did a spectacular job of simplifying networking concepts.
This made it the standard reference model used to discuss, design, and teach networking fundamentals in the classroom and the workplace.
OSI Reference Model
The OSI model provides a similar layered architecture approach as TCP/IP, but more specifically, forms a basis for ISO standards for systems interconnection. It also offers additional layers, which give enough granularity to be quite valuable for explaining different stages of the networking communication chain.
The OSI model specifies seven abstraction layers versus the four ones specified by TCP/IP. The image below shows the layers side-by-side, grouped by function, using four distinct colors. The center column also provides some examples of the protocols used by each layer. This depiction highlights that by using the OSI reference model, one can differentiate more between different protocols used within the functional networking layers.
The picture above shows mostly TCP/IP Protocols in the center column. Many OSI Protocols are specified by various ISO standards, as shown in the table provided here.
Additionally to protocols grouped by each layer, network devices such as switches, routers, gateways, etc., are generally grouped or referred to by their use in the OSI reference model layers. An example would be layer-2 or layer-3 network switches. This also makes sense since each network device implements protocols in the stack.
7. The Application Layer
The application layer is a data layer that enables applications to communicate with others. Like the HTTP protocol used by your browser application to display this text, which can communicate with the web server application that supports HTTP requests.
6. The Presentation Layer
The presentation layer is a data layer that defines data formats. This is where encryption (e.g. SSL) and compression takes place. Your browser will, for example, encrypt the HTTP request using SSL, where the combination is commonly referred to as HTTPS. This enables end-to-end encryption between the browser and web server applications, so you can safely browse the web, make requests, and read online content.
5. The Session Layer
The session layer is a data layer that establishes and terminates a connection session between two different systems. This happens, for example, when you send requests using your browser to the web server hosting this website. When this connection is established, a network socket is created. A network socket combines the underlying transport protocol (e.g., TCP), the IP address, and the port number. This serves as an endpoint for sending or receiving data within a network.
4. The Transport Layer
The transport layer is a segment/datagram layer. This means it takes the data from the layers above and encapsulates it into, e.g., a segment (TCP) or datagram (UDP). This is also where services such as flow control and delivery reliability play a significant role.
In our browser request example above, the HTTPS Protocol Data Unit (PDU) is encapsulated into a TCP segment. The transport layer will then ensure it is received correctly and at a suitable transmission rate between both sides of the connection.
3. The Network Layer
The network layer is a packet layer. This layer ensures that the segment/datagram received from layer 4 is chopped into packets and forwarded to the correct address using the correct and most optimal routes. This layer uses logical device addressing, e.g. using an IP address. The network layer can also decide to transmit packets through different available routes, which makes data transfers much more efficient.
2. The Data Link Layer
The data link layer encapsulates the network packets into frames. The frames are based on a specific protocol (Ethernet, Wi-Fi, etc.) between the two physical connection nodes. This layer provides the functional basis which enables the transport of a frame across a physical medium. The data link layer is commonly divided into two sublayers:
- Logical link control sublayer (LLC): This sublayer provides flow control and error detection.
- Media access control sublayer (MAC): This sublayer specifies access to the link and uses hardware device addressing (MAC Addresses).
1. The Physical Layer
The physical layer uses bits and provides a physical medium to transport data. It defines how cables, transmitters, and receivers send and receive bits (i.e., ones and zeros). This layer uses, for example, an ethernet cable (RJ45 <-> UTP Cable <-> RJ45) to physically connect two ethernet-supported network interface controllers (NICs) to each other. The combination in this “NIC — (cable + connectors) — NIC” example comprises the physical layer.
During the 1970s to 1990s the debate on which communication protocol stack would be the best suited for use in the internet resulted in the protocol wars. Even though the TCP/IP model was crowned victorious for use on the internet, the OSI model won the use as a standard reference model in discussions, design, and education of communication networks.
The OSI model functionally groups various communication protocols into seven categories. These categories make it easier to design and understand complex information technology infrastructures all the way from the physical layer to the application layer.
- Protocol Wars
- Internet Protocol Suite
- Internet Engineering Task Force
- OSI Model
- International Organization for Standardization
- Network Devices Explained
- Application Layer
- Presentation Layer
- Session Layer
- Network Socket
- Transport Layer
- Network Layer
- Data Link Layer
- OSI TCP IP Models
- MAC Address
- Physical Layer
- Registered Jack 45 (RJ45)
- Twisted Pair