Application Layer of OSI Model

FREE Online Courses: Dive into Knowledge for Free. Learn More!

What is the Application Layer?

In the OSI model, the layer closest to the end user is the application layer, which means that the application layer and end user may interact directly with the software. Client and server architectures serve as the foundation for application layer programs.

Functions of Application Layer

1. Identifying partners for communication:

The application layer decides whether or not communication partners are available for an application with data to transmit.

2. Determining the availability of network resources:

The application layer assesses if adequate network resources are available for the intended communication.

3. Communication synchronisation:
All communications between applications require collaboration, which is managed by an application layer.

Services of Application Layer

1. Network Virtual Terminal:

Application layer allows a user to connect to a remote host. In order to accomplish this, the application creates a software emulation of a terminal on the remote computer.

The user’s computer communicates with the software terminal, which communicates with the host. Because the remote host believes it is interacting with one of its own terminals, it enables the user to log in.

2. File Transfer, Access, and Management (FTAM):

An application that allows a user to access and manage files on another computer.

A hierarchical virtual file is defined by FTAM in terms of file structure, attributes, and the types of operations.

3. Addressing:

Addressing is required to establish communication between the client and the server. When a client sends a request to the server, the request includes both the server address and the client’s own address.

The server response to the client request provides the destination address, i.e., the client address. DNS is utilised to obtain this type of addressing.

4. Mail Services:

Email forwarding and storage are provided by an application layer.

5. Directory Services:

A distributed database that gives access to global information about numerous objects and services is contained in an application.

6. Authentication:

It validates either the sender’s or the receiver’s communication, or both.

Architectures of Application Layer

1. Peer-to-Peer Architecture (P2P):

peer to peer architecture

It does not have a dedicated server in a data centre. Peers are machines that do not belong to the service provider. The majority of their peers live in their homes, offices, schools, and colleges. Peers interact with each other without using a dedicated server; this design is known as peer-to-peer architecture. File sharing and internet telephony are examples of P2P-based applications.

Features of P2P Architecture:

a. Self-scalability:

In a file sharing system, each peer produces a workload by requesting files, but each peer also provides service capacity by distributing the files to the peer.

b. Cost-effective:

It is inexpensive since it does not need a large server infrastructure or server bandwidth.

2. Client-Server Architecture:

client server architecture

A client and server networking paradigm is one in which computers, such as servers, give network services to other computers, such as clients, in order for them to execute user-based activities. This is referred to as the client-server networking paradigm.

An application program known as a client program, which runs on the local system, requests a service from an application program known as a server program, which runs on the distant machine.

A client program runs only when it requests a service from the server, but the server software runs continuously since it does not know when its service is needed.

A server delivers a service to many clients rather than just one. As a result, we may say that the client-server connection is many-to-one. One server can serve several clients.

Services are commonly necessary, and many users have a client-server application software. The client-server application software, for example, allows the user to access files, send e-mail, and so on. If the services are more specialised, we should have a single general application software that allows the user to access the services on the distant machine.

a. Client:

A client is a software that runs on a local system and asks the server for services. A client program is a finite program, which implies that it begins when the user initiates the service and ends when the service is done.

b. Server:

A server is a software that runs on a remote computer and provides services to clients. When a client requests a service, the server opens the door for future requests but never begins the service.

A server program is an endless program, which implies that once started, it will continue indefinitely until a problem develops. The server sits in anticipation of client queries. When the request arrives at the server, it responds to it.

Advantages of Client-Server Architecture:

1. Centralized: In client-server networks, centralised backup is feasible, which means that all data is kept on a server.

2. Security: Because all shared resources are managed centrally, these networks are more secure.

3. Performance: Using a dedicated server speeds up the process of sharing resources. This improves the overall system performance.

4. Scalability means that we can expand the number of clients and servers independently, i.e., a new element can be added, or a new node in a network may be added at any moment.

Disadvantages of Client Server Architecture:

1. Congestion is a major issue in Client/Server networks. When a high number of customers submit requests to the same server, traffic congestion may occur.

2. It lacks network resilience, i.e., when the server goes down, the client requests cannot be satisfied.

3. A client/server network is extremely important. Occasionally, standard computer hardware cannot service a particular amount of customers. In such cases, particular hardware on the server side is necessary to accomplish the task.

4. Sometimes resources exist on the server but not on the client.

Summary:

In this article, we looked at the various functions and services provided by the application layer. We also looked at the two most widely used application layer architectures – peer to peer and client server architecture. We also covered the major terms and advantages and disadvantages of client server architecture.

You give me 15 seconds I promise you best tutorials
Please share your happy experience on Google

follow dataflair on YouTube

Leave a Reply

Your email address will not be published. Required fields are marked *