OSI is a model that is used to understand how network protocols work. Usually when we are studying how networks work this is one of the first topics on the study guide. The problem, however, is that usually people don’t understand why this model exists nor how it really works – even people that memorized the names of all the seven layers of this model to take an exam at college or a certification exam still have no clue. In this tutorial we will explain you why the OSI model exists and how it works and we will also present a quick correlation between TCP/IP and the OSI model.
When computer networks first appeared many years ago they usually used proprietary solutions, i.e., only one company manufactured all technologies used by the network, so this manufacturer was in charge of all systems present on the network. There is no option to use equipments from different vendors.
In order to help the interconnection of different networks, ISO (International Standards Organization) developed a reference model called OSI (Open Systems Interconnection) in order to allow manufacturers to create protocols using this model. Some people get confused with these two acronyms, as they use the same letters. ISO is the name of the organization, while OSI is the name of the reference model for developing protocols.
Protocol is a “language” used to transmit data over a network. In order to two computers talk to each other, they must be using the same protocol (i.e., language).
When you send an e-mail from your computer, your e-mail program (called e-mail client) sends data (your e-mail) to the protocol stack, which does a lot of things we will be explaining in this tutorial, then this protocol stack sends data to the networking media (usually cable or air, on wireless networks) then the protocol stack on the computer on the other side (the e-mail server) gets the data do some processing we will explain later and sends data (your e-mail) to the e-mail server program.
The protocol stack does a lot of things and the role of the OSI model is to standardize the order under which the protocol stack does these things. Two different protocols may be incompatible but if they follow the OSI model, both will do things on the same order, making it easier to software developers to understand how they work.
You may have notice that we used the word “stack”. This is because protocols like TCP/IP aren’t really a single protocol, but several protocols working together. So the most appropriate name for it isn’t simple “protocol” but “protocol stack”.
The OSI model is divided into seven layers. It is very interesting to note that TCP/IP (probably the most used network protocol nowadays) and other “famous” protocols like IPX/SPX (used by Novell Netware) and NetBEUI (used by Microsoft products) don’t fully follow this model, corresponding only to part of the OSI model. On the other hand, by studying the OSI model you will understand how protocols work in a general fashion, meaning that it will be easier for you to understand how real-world protocols like TCP/IP work.
The basic idea of the OSI reference model is this: each layer is in charge of some kind of processing and each layer only talks to the layers immediately below and above it. For example, the sixth layer will only talk to the seventh and fifth layers, and never directly with the first layer.
When your computer is transmitting data to the network, one given layer will receive data from the layer above, process what it is receiving, add some control information to the data that this particular layer is in charge of, and sending the new data with this new control information added to the layer below.
When your computer is receiving data, the contrary process will occur: one given layer will receive data from the layer below, process what it is receiving, removing control information from the data that this particular layer is in charge of, and sending the new data without the control information to the layer above.
What is important to keep in mind is that each layer will add (when your computer is sending data) or remove (when your computer is receiving data) control information that it is in charge of.
Let’s now see the 7-layer OSI model.