Switching on our smartphone and sending an email to a friend living 5000 km from our home is something that we take for granted, but that involves a lot of very complex processes and has to take into account a myriad of different situations. As in any engineering problem, the best solution to tackle a complex problem is to break it down in a series of smaller problems easier to solve, and assemble the solution later. One way to do this is to make an abstraction, and separate the different functions of a computer s communication process in layers, considering that a layer communicates with the correspondent layer in the other computer by using the services of the layer that lies immediately under it, without knowing anything of what lies below and how it works. That way the programmers of the software that manages that layer only have to deal with how to communicate with its partner layer in the other computer and how to use the services of the layer below, being completely isolated of the rest of the processes involved in the communication.
The Open System Interconnection (OSI) model defines a networking framework to implement protocols in seven layers. Control is passed from one layer to the next, starting at the application layer in one station, and proceeding to the bottom layer, over the channel to the next station and back up the hierarchy. The OSI model doesn't really perform any functions in the networking process. It is a conceptual framework that allows the complex problem of computer internetworking to be broken down in smaller, more manageable problems. The OSI model takes the task of internetworking and divides that up into what is referred to as a vertical stack that consists of the following layers, that are usually divided in two sets
The Application set or upper set consists of the 3 top layers of the model. It deals with the communication between applications in the two end computers and its 3 layers manage data not yet divided in segments or packets. The top layer is the Application layer. This layer supports application and end-user processes. Communication partners are identified, quality of service is agreed, user authentication and privacy are considered, and any constraints on data syntax are identified. Everything at this layer is application-specific. This layer provides application services for file transfers, e-mail, and other network software services. Telnet and FTP are applications that exist entirely in the application level. Next we find the Presentation layer. This layer provides independence from differences in data representation (e.g., encryption) by translating from application to network format, and vice versa. The presentation layer works to transform data into the form that the application layer can accept. This layer formats and encrypts data to be sent across a network, providing freedom from compatibility problems. It is sometimes called the syntax layer. The last layer in the application set is the Session layer. This layer establishes, manages and terminates connections between
applications. The session layer sets up, coordinates, and terminates conversations and exchanges, it also dialogues between the applications at each end. It deals with session and connection coordination between one application and its counterpart in the other computer.
The transport set or lower set, consists of the remaining layers of the model and deals with all the processes needed when communicating in a computer network. Its layers work with smaller chunks of data, created to facilitate the communication and internetworking. The upper layer of this set is the Transport layer. This layer provides transparent transfer of data between end systems, or hosts, and is responsible for end-to-end error recovery and flow control. It is the lowest layer that works between end computers and it ensures complete data transfer. The next layer we find is the Network layer, that offers its services to Transport layer. This layer provides switching and routing technologies, managing a multi-node network, creating logical paths, known as virtual circuits, for transmitting data from node to node. Routing and forwarding are functions of this layer, as well as addressing, internetworking, error handling, congestion control and packet sequencing. This layer not only works in end computers, but also in the intermediate network devices. Approaching the communications hardware we find the Data Link Layer, that is in charge of direct communication between to adjacent nodes. At this layer, data packets are encoded and decoded into bits. It furnishes transmission protocol knowledge and management and handles errors in the physical layer, flow control and frame synchronization. The data link layer is divided into two sub layers: The Media Access Control (MAC) layer and the Logical Link Control (LLC) layer. The MAC sub layer controls how a computer on the network gains access to the data and permission to transmit it. The LLC layer controls frame synchronization, flow control and error checking. The layer that controls communication hardware is called Physical Layer. This layer conveys the bit stream - electrical impulse, light or radio signal through the network
at the electrical and mechanical level. It provides the hardware means of sending and receiving data on a carrier, including defining cables, cards and physical aspects. Gigabit Ethernet, RS232, DSL or ATM are protocols with physical layer components.
Here we can see an example of how the different layers are implemented in different devices. A router, that is able to connect different networks goes up to network layer. A switch, that works inside a local network, only goes up to layer 2. The hosts applications use all 7 layers to communicate
With the widespread use of the Internet, the simpler TCP/IP protocol stack has become a de facto standard in internetworking across the world, so the OSI model is no longer used to develop communication software, but it is still useful in education since its additional layers make it simpler to differentiate how network communication works. We can see it in use when system administrators troubleshoot a network problem. 1 Physical - Is the network cable plugged in? 2 Data Link - Do you have a link light in the network card? 3 Network Is the PC getting an IP address? 4 Transport - Can you ping your default gateway? 5 Session - Do you have DNS server information? Can you ping 4.2.2.2 but not google.com? 6 &7. Presentation & Application - Can you reach a website with your web browser?