Application Layer in OSI Model

Learn via video courses
Topics Covered

Overview

In the OSI model, the application layer is the layer closest to the end-user, implying that the application layer and the end-user can interact directly with the software application. The application layer isn't an application. Instead, it's a component within an application that manages how data is sent to and received from other devices. It's an abstraction layer service that hides the rest of the program from the transmission.

What is the Application Layer?

The application layer is the topmost layer of the OSI model and the TCP/IP model. In TCP/IP model, the application layer is formed by combining the top three layers, i.e., the application layer, the presentation layer, and the session layer.

An application layer is an abstraction layer that specifies the shared communications protocols and interface methods used by hosts in a communications network. It is the layer closest to the end-user, implying that the application layer and the end-user can interact directly with the software application.

application layer diagram

It does not provide service to other layers because it is the topmost layer. The Application layer uses Transport and any levels below it to communicate with or transfer data to a remote host.

Consumers frequently require protocols from the Application Layer. One of the most often used application protocols is HTTP (HyperText Transfer Protocol), the foundation for the World Wide Web. Domain Name System (DNS), Simple Mail Transfer Protocol (SMTP), File Transfer Protocol (FTP), Trivial File Transfer Protocol (TFTP), and TELNET are some of the protocols used in the application layer.

What are the Services Provided by the Application Layer?

The application provides the following services.

  1. The application layer guarantees that the receiver is recognized, accessible, and ready to receive data from the sender.
  2. It enables authentication between devices for an extra layer of network security.
  3. It determines the protocol and data syntax rules at the application level.
  4. The protocols of the application layer also define the basic syntax of the message being forwarded or retrieved.
  5. It also checks whether the sender's computer has the necessary communication interfaces, such as an Ethernet or Wi-Fi interface.
  6. Finally, the data on the receiving end is presented to the user application.

Functions of the Application Layer

The application layer provides the following functions.

  1. The Application Layer provides protocols that allow the software to communicate and receive data and finally present it to users in a meaningful way.
  2. This layer allows users to log on as a remote host.
  3. The Application Layer provides various facilities for users to forward multiple emails and a storage facility.
  4. This layer acts as a window via which users and application processes can access network resources.
  5. This layer provides services such as email, file transfer, results distribution, directory services, network resources, etc.
  6. The application layer communicates with the operating system and guarantees that data is properly saved.
  7. This layer allows users to interact with other software applications.
  8. This application layer generally performs host initialization followed by remote login to hosts.
  9. This layer visualizes data, allowing individuals to grasp it rather than memorize it or see it in binary format (1s or 0s).

Application Layer Protocols

The various protocols used in the application layer make the communication between the sender and receiver faster, efficient, reliable, and safe. These protocols are discussed below.

HTTP

Hypertext transfer protocol enables us to access data via the internet. It sends data in plain text, audio, and video formats. Client and servers exchange resources over the internet using the HTTP protocol. Client devices request servers for the resources required to load a web page, and the servers respond by sending responses to the client.

SMTP

The SMTP (Simple Mail Transfer Protocol) is the TCP/IP protocol that handles email. The data is sent to another email address using this protocol. SMTP uses a procedure known as "store and forward" to transmit user emails on and across networks. It works with the Mail Transfer Agent to ensure that your message is sent to the correct computer and email mailbox. The port number for SMTP is 25.

TELNET

It's a tool that allows you to save and manage files over the internet. This protocol can be used to set up equipment for the first time, such as switches. The Telnet protocol is used by telnet command to communicate with a remote device or system. The port number for Telnet is 23.

FTP

The FTP (File Transfer Protocol) is a standard internet protocol for transferring data from one computer to another. FTP uses TCP to transmit data because TCP provides reliability and error-free data transmission. It facilitates file sharing via remote computer devices while ensuring dependable and efficient data delivery. For data control, FTP utilizes port 21, and for data access, it uses port 20.

TFTP

The TFTP (Trivial File Transfer Protocol) is a simple file transfer protocol. The TFTP uses User Datagram Protocol (UDP) to transmit data from one end to the other. The most common usage of TFTP is to read and write files/mail to and from a distant server. Compared to File Transfer Protocol, Trivial File Transfer Protocol is straightforward in design and has limited functionalities. While transmitting files, TFTP does not provide any authentication or security. As a result, it's commonly used to transfer boot files or configuration information between workstations in a local setup. Users in a computer network rarely use it due to its simplistic architecture. It is also unsafe to use the internet due to its lack of security. The TFTP port number is 69.

NFS

It's known as a NFS (network file system). It enables remote computers to mount file systems over a network and interact with them as if they were mounted locally. System administrators can combine resources on the network's centralized servers as a result of this. Port number for the NFS is 2049.

DNS

DNS stands for (Domain Name System). Similar to how a phone's contacts list matches names to numbers, the domain name system is a naming database that locates and translates internet domain names to their unique IP addresses. DNS was created because it is more difficult for humans to recall numerical numbers than alphabetic names. DNS is used in a variety of internet activities to swiftly discover an IP address to connect to and access content.

DHCP

The Dynamic Host Configuration Protocol is a network management protocol that dynamically allocates a unique IP address to any device or node on a network so that they can communicate using IP. DHCP is used to automate and maintain these setups from a central location. There is no need to manually assign IP addresses to new devices. As a result, connecting to a DHCP-based network requires no user configuration.

Examples of Application Layer Protocols

Some of the examples of the application layer protocols are

  • X.400 Message Handling Service Protocol facilitates email transfer among compatible systems.
  • Simple Network Management Protocol (SNTP) provides remote host management.
  • Bitcoin is for digital currency.
  • Hypertext Transfer Protocol(HTTP) for the message or text communications.
  • H.323 for voice-over IP. It is a packet-based communication.
  • A mail server uses POP (Post Office Protocol) protocol in conjunction with SMTP to accept and store mail for hosts.

Conclusion

  • The Application Layer is the top layer of both the OSI and TCP/IP models.
  • The application layer is the layer closest to the end-user, implying that the application layer and the end-user can interact directly with the software application.
  • Domain Name System (DNS), Simple Mail Transfer Protocol (SMTP), File Transfer Protocol (FTP), Trivial File Transfer Protocol (TFTP), and TELNET are some of the protocols used in the application layer.
  • Application Layer provides various services such as ensuring that the receiver is identified, reachable, and ready to accept data. It also makes sure necessary communication interfaces exist in the network.
  • Application Layer provides services such as email, file transfer, results in distribution, directory services, network resources, etc., and also allows users to log on to the remote host.