Open Systems Interconnection (OSI) Model

Reading Time: 4 minutes

Open Systems Interconnection Model Introduction :

The Open Systems Interconnection Model is a way to isolate communication problems between two remote computers. The abstract model have few layers, and each layer has certain functions. Those functions need to be performed by the services of the respective layer.

Layers in Open Systems Interconnection Model :

The process of communication between two endpoints in a network can be divided into seven distinct groups of related functions or layers. Each communicating user or program is on a device that can provide those seven layers of function.

The different layers in the OSI Model are as follows:

Physical Layer :

The physical layer is the bottom layer of the OSI model. It is responsible for creating physical connections between devices. The physical layer store bits of information.

The following is the responsibility of the physical layer:

  • Bit synchronization : The bit transmission layer provides a clock that allows bit synchronization. This clock controls both the transmitter and receiver and guarantees bit-level synchronization.
  • Physical Topology: The physical layer defines the placement of devices / nodes in the network. Bus, star, or mesh topology.
  • Transmission mode: The physical layer also determines how data is transmitted between the two connected devices. Simplex, half-duplex, and full-duplex transmission modes are available.

The data link layer is responsible for the transfer of messages from node to node. The main purpose of this layer is to ensure that there are no errors in sending data from one node to another over the physical layer.

The responsibilities of the data link layer are:

  • Framing: The data link layer is responsible for framing. This allows the sender to deliver a set of bits related to the recipient to the recipient. This can be achieved by adding a unique bit pattern at the beginning and end of the frame.
  • Physical addressing: After the frames are created, the data link layer adds the sender and / or receiver’s physical address (MAC address) to the header of each frame.
  • Error control: The data link layer implements error control by detecting broken or lost frames and re-transmitting them
  • Flow control: Because the data rate needs to be consistent on both sides, the data gets corrupted, so flow control adjusts the amount of data that can be sent before the acknowledgment.
  • When many devices share a single communication channel, the MAC sub-layer helps determine which device the data link layer controls the channel at any given time.

Network Layer :

The network layer is responsible for data transmission between hosts on different networks.

Following are the responsibilities of the network layer:

  • Routing: From source to destination, the network layer protocols determine which path is best. Routing is the name for this network layer function.
  • The network layer defines an addressing scheme in order to uniquely identify each device on the internet work. The network layer places the IP addresses of the sender and receiver in the header. Such addresses recognize each gadget in a unique and universal way.

Transport layer :

The transport layer provides services to the application layer and at the same time receives services from the network layer. A segment is a unit of data in the transport layer.

The transport layer responsibilities are as follows:

  • This layer receives a message from the (session) layer and divides it into smaller pieces.
  • The transport layer header provides the form of an address, called a service point address or port address, for delivering messages to related processes.

Session layer :

The session layer is responsible for establishing connections, maintaining sessions, authenticating users, and ensuring security.

The following are the responsibilities of the session layer:

  • Session establishment, maintenance, and termination: Layers allow two processes to establish, use, and terminate connections.
  • Sync: This layer allows a process to checkpoint data and act as a sync point.
  • Dialog controller: The session layer allows the two systems to communicate in half-duplex or full-duplex mode.

Presentation layer :

This layer is usually part of an operating system (OS) and converts incoming and outgoing data from one presentation format to another — for example, from clear text to encrypted text at one end and back to clear text at the other.

The responsibilities of the presentation layer are as follows:

  • Responsible for conversion from ASCII to EBCDIC.
  • Encryption / Decryption: Data encryption is the process of converting data into another format or encoding. Key values ​​are used when encrypting and decrypting data.
  • Compression: This technique reduces the amount of data that needs to be sent over the network.

Application Layer :

The application layer implemented by network applications is at the top of the stack of layers in the OSI model.

The responsibilities of the application layer are:

  • This layer also acts as a window for application services to connect to the network and present the received information to the user.
  • It is also responsible for file transfer access and file management.
  • It is in charge of postal service.
  • It is also responsible for directory services.

Conclusion :

Open Systems Interconnection Model is the blueprint for host to host communication. So this is basically to understand the flow of communication which starts as discussed in this blog. In other words, it describes, how the different software and hardware components involved in a network communication. That’s all basic I have in my mind as of now, related to the topic. If you want to add anything or you do not relate to my view on any point, drop me a comment. I will be happy to discuss. For more blogs, click here

Written by 

Rituraj Khare is a Software Consultant at Knoldus Inc. in Noida. He did his B.Tech from Dr. A.P.J. Abdul Kalam Technical University. He is familiar with Scala, Python, Unit testing, Git, Kafka, Docker, Jenkins. He is currently working in the Scala Practice area. He loves to dig deep in coding and loves to play indoor games, especially Chess.

Leave a Reply