OSI reference model OSI is developed by International standards organization adopted for the intercommunication between two different systems. Since it becomes complicated and messy the OSI model layer was divided into several layers and given a separate task to ensure that everything is managed independently. OSI consists of seven layers, and each layer performs a particular network function. Principles of OSI layer When we require different abstraction levels while communicating on different networks, it becomes important to follow a protocol. These layers follow the protocol and have well-defined functionality. These layers will act as a filter and control the flow of information between the different interfaces. Characteristics of the OSI Model The OSI model is divided into parts Upper layer- The upper layer has all those layers which are used for the interaction between the user and the application. All the issues related to the applications such as the presentation, software etc are handled in the upper layer. Lower layer- The lower layer has all the layers related to transportation of the data on the network. The physical medium used to transfer the data is monitored by the lowest layer of the OSI model i.e. physical layer. OSI layer The OSI layer consists of seven layers:1. Physical Layer 2. Data-Link Layer 3. Network Layer 4. Transport Layer 5. Session Layer 6. Presentation Layer 7. Application Layer Physical layer- The lowest layer of the OSI reference model is called the physical layer which ensures proper communication over the channel. It transmits in the form of raw bits on the physical medium. The physical layer converts the signals received into 0s and 1s and transmits them to the next layer i.e. Data link layer. The devices that work on physical layers are;- Hub, modem and repeaters. Physical layer performs following functions like Bit synchronization, Bit rate control, Physical topologies, Data Transmission. Data-Link Layer- The data link layer breaks the data into frames and ensures their error-free transmission and also processes the acknowledgement frames that are sent back by the receiver. To identify every frame individually the DLL attaches bit patterns to the start and end of every frame. When a packet arrives in a network, it is the responsibility of DLL to transmit it to the Host using its MAC address. The data link layer is divided into two layers such as Logical Link Control (LLC) and Media Access Control (MAC). DLL is responsible to wrap the mac address in the header of the frame before transmitting the packet to host. The functionality of the data link layer are as follows:- Framing, Physical addressing, Error control, Flow control, Access control. The devices that work on Data Link Layer devices are switches & bridges. Network LayerThe network layer is responsible for the transmission of data from source to destination on different networks. The network layer selects the best routing path to transmit the packet among the various routes available. To identify the sender and receiver it places the IP addresses in the header of the packet transmitted. All the devices that are on the network are tracked and managed by the network layer. The network is responsible for routing and forwarding the packets to the next layer. Routers work on the network layer devices. The network layer works on protocols like ipv6 and ipv4. Transport LayerThe fourth layer in OSI layer is the transport layer which accepts the data from the session layer and divides it into smaller parts known as segments and passes it to the network layer. It also ensures that the sequence of the messages during transmission remains intact and no duplication of the data takes place. This is why this layer is the most important as it provides reliable data delivery from one process to the other. While transmitting the data to the network layer it adds the source and destination port number in the header of the segments. The transport layer follows protocol such as transmission control protocol and User Datagram Protocol. Session LayerThe session layer mainly handles the sessions by establishing, managing and terminating them. This layer establishes the connection, manages the sessions and authentication. Session is mainly essential for a user to log into any timesharing system that is remotely situated. One of the functions of the session layer is Dialog control. It controls the traffic flow between two processes which can be a half-duplex communication or full-duplex. This is implemented through token management. Another session layer service is synchronization. This is probably a very important session service for data transmission. There may be many crashes while transmission and to ensure that after an abort the data transfer does not get started from beginning, session layer inserts checkpoints. It helps to recover the time elapsed and resumes transmission processes. Presentation LayerA Presentation layer, unlike other layers, focuses on the syntax and semantics of data transmitted rather than on the bit by bit transmission. It adopts standard encoding so that the data structure exchanged is compatible with all the computers to communicate. The data is manipulated according to the acceptable format of the network and then translated. This layer thus is termed as a Translation layer. The functions of the presentation layer are Translation- Translation on the network Encryption/ decryption- It assigns the encryption algorithms to transmit data securely. The encrypted data thus is termed as ciphertext while the decrypted data is termed as plain text. Data Compression- This compresses the data to reduce the number of bits in the message. Application Layer- An application layer provides the services to the application user by providing the network services. This is the top layer in the OSI model and interacts with the user. The application layer is implemented by network applications which transfer the data between the user and the presentation layer. It manages how the information is displayed to the user. The applications can be anything which the user interacts to for example the browsers or any chat messengers. The application layer is also called a desktop layer as it manages how the user is interacting through the desktop. But we cannot term it as an application because it is just a layer that manages the interaction of applications. The main functions of the application layer are to provide network services, network transparency and resource allocation for the end-user.