In the OSI (Open System Interconnection) model, the Network layer is the third layer. This layer is mostly associated with the movement of data by, which is achieved by the means of addressing and routing.
This layer directs the flow of data from a source to a destination, and this may be irrespective of the thing that the communicating machines might not be connected by the same physical medium. This is achieved through finding an appropriate path from one communicating machine to the other. For the purpose of transmitting data, if necessary, this layer can break the data into smaller chunks. Sometimes, the breaking of data becomes necessary. At the end, this layer is responsible for reassembling those smaller broken pieces of data into the original data after the data has reached its destination.
In other words, the network layers help in establishing communication with devices. These devices, connected over the internet, might be located on logically separate networks. The network layer uses various routing algorithms to guide data packets from a source to a destination network. A key element of this layer is that each network in the whole web of networks is assigned a network address; and such addresses are used to route packets (which is covered under the topics of Addressing and Switching, explained later on).
When the data is passed down to the next layer, then this implies that the lower layer needs to perform some services for the higher layer. In order for these services to be performed, the lower layer adds some information to the already existing header or trailer. For instance, the transport layer (lower layer) provides with its data and header to the network layer (higher layer). Then the Network layer adds header with the correct destination network layer address in order to facilitate the delivery of the packet to the other recipient machine.
Also, this layer translates the logical address into physical address. This layer decides the route from source to destination. It also manages the traffic problems such as switching, routing and controlling the congestion of data packets.
Besides this, the main functions which are performed by the network layer are:
- Routing: This can be seen as a three step process: First, sending data from source computer to some nearby router. Second, delivering data from the router near the source to a router near a destination. Third, delivering the data from the router near the destination to the end destination computer.
Routing involves Route Selection and Route Discovery.
- Logical Addressing: The network layer deals with implementing the logical addressing of the data packets, as the data link layer implements the physical addressing. Logical addressing is used make a difference between the source and destination system. The network layer adds a header to the data packet; this header contains the logical addresses of both, the sender and the receiver.
- Switching: It is the method of moving data through a network. There exist multiple redundant paths between the source and destination. The three major types are: Circuit switching, Message switching, and Packet switching.
In Circuit switching, the path for communication remains fixed during the duration of connection; this enables a well defined bandwidth and dedicated paths.
In Message Switching, each message is treated as an independent entity carrying its own address info and destination details. The info is used at each switch to transfer the message to the next switch in the route. The benefits in this mode: relatively low cost devices, data channel sharing, efficient use of bandwidth.
In Packet Switching, messages are divided into smaller packets. Each packet contains source and destination address information. Packets could be routed through the network independently, without the need to be stored temporarily anywhere. This switching mode routes the data through the network more rapidly and efficiently.
- Internetworking: In a network, there might be different networks of various configurations, i.e. the interconnected networks might not be similar. Here, this layer provides a way for logical connections between different types of networks.
- Fragmentation: As explained earlier, sometimes the breaking up of data into various packets become a necessity for the purpose of transmission of data. The smallest individual data unites might travel through different networks to reach its destination, where they are again reassembled at this layer.
Services which are provided by the Network Layer:
- Guaranteed delivery of packets is a service provided by this layer. There is an assurance that a packet would arrive at its destination.
- Guaranteed delivery, with bounded delay. This service guarantees that the packet will be delivered within a specified host-to-host delay bound.
- Ordered delivery of packets: It is ensured by this layer that each packet arrives at the destination in the order which they are sent.
- Guaranteed max jitter:
In networking, Jitter is the variation in the latency of packet flow between sender and receiver systems. This happens when some packets take longer time to travel from one system to the other. Jitter in a network might be due to network congestion, time drift and change in routes.
Network layer service ensures that there is guaranteed maximum jitter. This means that the amount of time taken between two successive transmissions at the sender side is equal to the amount of time taken between two successive receipts at the destination side.
- Security services: The network layer uses a session key to provide security between the source and destination. At the source side encryption of the payloads of datagrams being sent takes place with the help of this layer. Then, at the destination side, this layer again helps in the decryption of the received payload. Through this, the network layer is able to maintain data integrity and source authentication services.
In order to achieve its goal, the network layer must take into consideration the topology of the communication subnet (i.e. the set of all routers) and choose appropriate paths through it. At the same time, it should choose routes in such a ways so as to avoid overloading some of the communication lines and routers while leaving others idle. At last, when the source and destination are in different networks, it is incumbent on the network layer to deal with the differences in the networks and the problems arising out such differences.
The third layer of the Open Systems Interconnection (OSI) is called the network layer. While the Data Link Layer functions mostly inside Wide Area Network (WAN) and Local Area Network (LAN), Network Layer handles the responsibility of the transmission of data in different networks.
It has no use in the place where two computers are connected on the same path or link. It has the ability to route signals through different channels and because of that, it is considered a network controller. Through this layer, data is sent in the form of packets.
The primary responsibilities handled by the Layer are the Logical connection of a setup, routing, delivery error reporting, and data forwarding.
Because of its functionality and responsibilities, the Network Layer is often seen as the backbone of the entire OSI Model. Hardware devices such as routers, bridges, firewalls, and switches are a part of it with which it creates a logical image of the communication route that can be implemented with a physical medium.
The protocols needed for the functionality of the Network Layer are present in every router and host. Making it one of the most useful of all the layers.
Most known among these protocols are IP (internet protocol), Internetwork Packet Exchange (IPX) and Sequenced Packet Exchange (SPX) or as they are collectively known; IPX/SPX. IPX protocol is also used by the Transport Layer, which alongside the Data Link Layer works with Network Layer as they are placed above and below this layer respectively.
The functions of the Network layer are as follow:
- Translation of logical network address into a physical address.
- Service is provided by this layer to the transport layer for sending the data packets to the destination of the request.
- As it consists of Internet Protocol (IP), a connectionless protocol, that is to say, it doesn’t need acknowledgment to send transmit data packets, it is capable of forming a connectionless communication, making it the only layer in the model to able to do so. It is also capable of supporting connection-oriented communication like other layers but only one kind of communication can be established at one time.
- It also works as a locator of the IP address from where the data packets were requested from and it also works as a host for that address.
- It is commonly possible for two different subnets to have different addresses and protocols. That’s Protocols of Network Layer are found in all the router and host so this layer can resolve the issues and provide a common ground for them to form a connection.