0% found this document useful (0 votes)
118 views

NET 201 Module 8

This document provides an overview of Module 8 of the Networking 1 course, which covers the application layer. It discusses key concepts like application layer protocols and services. The module outcomes are to understand the functionality of the transport layer, differentiate application layer protocols and services. The document then discusses various application layer topics in detail, including remote application processes, communication methods, directory services, and file services.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
118 views

NET 201 Module 8

This document provides an overview of Module 8 of the Networking 1 course, which covers the application layer. It discusses key concepts like application layer protocols and services. The module outcomes are to understand the functionality of the transport layer, differentiate application layer protocols and services. The document then discusses various application layer topics in detail, including remote application processes, communication methods, directory services, and file services.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 12

SCHOOL OF INFORMATION AND COMMUNICATION TECHNOLOGY

COURSE NUMBER: NET 201


COURSE TITLE: Networking 1
MODULE: 8

OVERVIEW
Application Layer
 Introduction  Directory Services
 Remote Application Processes  File Services
 Communication  Communication Services
 Application Layer Protocols  Application Services

MODULE OUTCOMES
At the end of this module, the students must have:
 distinguished the functionality of Transport Layer;
 defined and differentiated the different Application Layer Protocols;
 defined and differentiated Application Layer Services.
INTRODUCTION
Application layer is the top most layer in OSI and TCP/IP layered model. This layer exists in both
layered Models because of its significance, of interacting with user and user applications. This layer is
for applications which are involved in communication system.

A user may or may not directly interacts with the applications. Application layer is where the actual
communication is initiated and reflects. Because this layer is on the top of the layer stack, it does not
serve any other layers. Application layer takes the help of Transport and all layers below it to
communicate or transfer its data to the remote host.

When an application layer protocol wants to communicate with its peer application layer protocol on
remote host, it hands over the data or information to the Transport layer. The transport layer does the
rest with the help of all the layers below it.

DISCUSSION
There’is an ambiguity in understanding Application Layer and its protocol. Not every user application
can be put into Application Layer. except those applications which interact with the communication
system. For example, designing software or text-editor cannot be considered as application layer
programs.
On the other hand, when we use a Web Browser, which is actually using Hyper Text Transfer Protocol
(HTTP) to interact with the network. HTTP is Application Layer protocol.
Another example is File Transfer Protocol, which helps a user to transfer text based or binary files
across the network. A user can use this protocol in either GUI based software like FileZilla or CuteFTP
and the same user can use FTP in Command Line mode.
Hence, irrespective of which software you use, it is the protocol which is considered at Application
Layer used by that software. DNS is a protocol which helps user application protocols such as HTTP to
accomplish its work.
Two remote application processes can communicate mainly in two different fashions:
 Peer-to-peer: Both remote processes are executing at same level and they exchange data
using some shared resource.
 Client-Server: One remote process acts as a Client and requests some resource from another
application process acting as Server.
In client-server model, any process can act as Server or Client. It is not the type of machine, size of
the machine, or its computing power which makes it server; it is the ability of serving request that
makes a machine a server.

Network Application Architecture


Application architecture is different from the network architecture. The network architecture is fixed
and provides a set of services to applications. The application architecture, on the other hand, is
designed by the application developer and defines how the application should be structured over the
various end systems.
Application architecture is of two types:

o Client-server architecture: An application program running on the local machine sends a


request to another application program is known as a client, and a program that serves a
request is known as a server. For example, when a web server receives a request from the
client host, it responds to the request to the client host.

Characteristics Of Client-server architecture:

o In Client-server architecture, clients do not directly communicate with each other. For example,
in a web application, two browsers do not directly communicate with each other.
o A server is fixed, well-known address known as IP address because the server is always on
while the client can always contact the server by sending a packet to the sender's IP address.

Disadvantage Of Client-server architecture:

It is a single-server based architecture which is incapable of holding all the requests from the clients.
For example, a social networking site can become overwhelmed when there is only one server exists.

Client and Server model


o A client and server networking model is a model in which computers such as servers provide
the network services to the other computers such as clients to perform a user based tasks. This
model is known as client-server networking model.
o The application programs using the client-server model should follow the given below
strategies:
o An application program is known as a client program, running on the local machine that
requests for a service from an application program known as a server program, running on the
remote machine.
o A client program runs only when it requests for a service from the server while the server
program runs all time as it does not know when its service is required.
o A server provides a service for many clients not just for a single client. Therefore, we can say
that client-server follows the many-to-one relationship. Many clients can use the service of one
server.
o Services are required frequently, and many users have a specific client-server application
program. For example, the client-server application program allows the user to access the files,
send e-mail, and so on. If the services are more customized, then we should have one generic
application program that allows the user to access the services available on the remote
computer.

Client

A client is a program that runs on the local machine requesting service from the server. A client
program is a finite program means that the service started by the user and terminates when the
service is completed.

Server

A server is a program that runs on the remote machine providing services to the clients. When the
client requests for a service, then the server opens the door for the incoming requests, but it never
initiates the service.

A server program is an infinite program means that when it starts, it runs infinitely unless the problem
arises. The server waits for the incoming requests from the clients. When the request arrives at the
server, then it responds to the request.

Advantages of Client-server networks:


o Centralized: Centralized back-up is possible in client-server networks, i.e., all the data is
stored in a server.
o Security: These networks are more secure as all the shared resources are centrally
administered.
o Performance: The use of the dedicated server increases the speed of sharing resources. This
increases the performance of the overall system.
o Scalability: We can increase the number of clients and servers separately, i.e., the new
element can be added, or we can add a new node in a network at any time.

Disadvantages of Client-Server network:


o Traffic Congestion is a big problem in Client/Server networks. When a large number of clients
send requests to the same server may cause the problem of Traffic congestion.
o It does not have a robustness of a network, i.e., when the server is down, then the client
requests cannot be met.
o A client/server network is very decisive. Sometimes, regular computer hardware does not serve
a certain number of clients. In such situations, specific hardware is required at the server side
to complete the work.
o Sometimes the resources exist in the server but may not exist in the client. For example, If the
application is web, then we cannot take the print out directly on printers without taking out the
print view window on the web.

Communication
Two processes in client-server model can interact in various ways:
 Sockets
 Remote Procedure Calls (RPC)

Sockets
In this paradigm, the process acting as Server opens a socket using a well-known (or known by client)
port and waits until some client request comes. The second process acting as a Client also opens a
socket but instead of waiting for an incoming request, the client processes ‘requests first’.
When the request is reached to server, it is served. It can either be an information sharing or resource
request.

Remote Procedure Call


This is a mechanism where one process interacts with another by means of procedure calls. One
process (client) calls the procedure lying on remote host. The process on remote host is said to be
Server. Both processes are allocated stubs. This communication happens in the following way:
 The client process calls the client stub. It passes all the parameters pertaining to program local
to it.
 All parameters are then packed (marshalled) and a system call is made to send them to other
side of the network.
 Kernel sends the data over the network and the other end receives it.
 The remote host passes data to the server stub where it is unmarshalled.
 The parameters are passed to the procedure and the procedure is then executed.
 The result is sent back to the client in the same manner.

Application Protocols in Computer Network


There are several protocols which work for users in Application Layer. Application layer protocols can
be broadly divided into two categories:
 Protocols which are used by users.For email for example, eMail.
 Protocols which help and support protocols used by users.For example DNS.
Few of Application layer protocols are described below:

Domain Name System


The Domain Name System (DNS) works on Client Server model. It uses UDP protocol for transport
layer communication. DNS uses hierarchical domain based naming scheme. The DNS server is
configured with Fully Qualified Domain Names (FQDN) and email addresses mapped with their
respective Internet Protocol addresses.
A DNS server is requested with FQDN and it responds back with the IP address mapped with it. DNS
uses UDP port 53.

Simple Mail Transfer Protocol


The Simple Mail Transfer Protocol (SMTP) is used to transfer electronic mail from one user to another.
This task is done by means of email client software (User Agents) the user is using. User Agents help
the user to type and format the email and store it until internet is available. When an email is
submitted to send, the sending process is handled by Message Transfer Agent which is normally
comes inbuilt in email client software.
Message Transfer Agent uses SMTP to forward the email to another Message Transfer Agent (Server
side). While SMTP is used by end user to only send the emails, the Servers normally use SMTP to send
as well as receive emails. SMTP uses TCP port number 25 and 587.
Client software uses Internet Message Access Protocol (IMAP) or POP protocols to receive emails.

File Transfer Protocol


The File Transfer Protocol (FTP) is the most widely used protocol for file transfer over the network.
FTP uses TCP/IP for communication and it works on TCP port 21. FTP works on Client/Server Model
where a client requests file from Server and server sends requested resource back to the client.
FTP uses out-of-band controlling i.e. FTP uses TCP port 20 for exchanging controlling information and
the actual data is sent over TCP port 21.
The client requests the server for a file. When the server receives a request for a file, it opens a TCP
connection for the client and transfers the file. After the transfer is complete, the server closes the
connection. For a second file, client requests again and the server reopens a new TCP connection.

Post Office Protocol (POP)


The Post Office Protocol version 3 (POP 3) is a simple mail retrieval protocol used by User Agents
(client email software) to retrieve mails from mail server.
When a client needs to retrieve mails from server, it opens a connection with the server on TCP port
110. User can then access his mails and download them to the local computer. POP3 works in two
modes. The most common mode the delete mode, is to delete the emails from remote server after
they are downloaded to local machines. The second mode, the keep mode, does not delete the email
from mail server and gives the user an option to access mails later on mail server.

Hyper Text Transfer Protocol (HTTP)


The Hyper Text Transfer Protocol (HTTP) is the foundation of World Wide Web. Hypertext is well
organized documentation system which uses hyperlinks to link the pages in the text documents. HTTP
works on client server model. When a user wants to access any HTTP page on the internet, the client
machine at user end initiates a TCP connection to server on port 80. When the server accepts the
client request, the client is authorized to access web pages.
To access the web pages, a client normally uses web browsers, who are responsible for initiating,
maintaining, and closing TCP connections. HTTP is a stateless protocol, which means the Server
maintains no information about earlier requests by clients.
HTTP versions
 HTTP 1.0 uses non persistent HTTP. At most one object can be sent over a single TCP
connection.
 HTTP 1.1 uses persistent HTTP. In this version, multiple objects can be sent over a single TCP
connection.

Network Services
Computer systems and computerized systems help human beings to work efficiently and explore the
unthinkable. When these devices are connected together to form a network, the capabilities are
enhanced multiple-times. Some basic services computer network can offer are.
Directory Services
These services are mapping between name and its value, which can be variable value or fixed. This
software system helps to store the information, organize it, and provides various means of accessing
it.
 Accounting
In an organization, a number of users have their user names and passwords mapped to them.
Directory Services provide means of storing this information in cryptic form and make available
when requested.
 Authentication and Authorization
User credentials are checked to authenticate a user at the time of login and/or periodically.
User accounts can be set into hierarchical structure and their access to resources can be
controlled using authorization schemes.
 Domain Name Services
DNS is widely used and one of the essential services on which internet works. This system
maps IP addresses to domain names, which are easier to remember and recall than IP
addresses. Because network operates with the help of IP addresses and humans tend to
remember website names, the DNS provides website’s IP address which is mapped to its name
from the back-end on the request of a website name from the user.

File Services
File services include sharing and transferring files over the network.
 File Sharing
One of the reason which gave birth to networking was file sharing. File sharing enables its
users to share their data with other users. User can upload the file to a specific server, which
is accessible by all intended users. As an alternative, user can make its file shared on its own
computer and provides access to intended users.
 File Transfer
This is an activity to copy or move file from one computer to another computer or to multiple
computers, with help of underlying network. Network enables its user to locate other users in
the network and transfers files.

Communication Services
 Email
Electronic mail is a communication method and something a computer user cannot work
without. This is the basis of today’s internet features. Email system has one or more email
servers. All its users are provided with unique IDs. When a user sends email to other user, it is
actually transferred between users with help of email server.
 Social Networking
Recent technologies have made technical life social. The computer savvy peoples, can find
other known peoples or friends, can connect with them, and can share thoughts, pictures, and
videos.
 Internet Chat
Internet chat provides instant text transfer services between two hosts. Two or more people
can communicate with each other using text based Internet Relay Chat services. These days,
voice chat and video chat are very common.
 Discussion Boards
Discussion boards provide a mechanism to connect multiple peoples with same interests.It
enables the users to put queries, questions, suggestions etc. which can be seen by all other
users. Other may respond as well.
 Remote Access
This service enables user to access the data residing on the remote computer. This feature is
known as Remote desktop. This can be done via some remote device, e.g. mobile phone or
home computer.

Application Services
These are nothing but providing network based services to the users such as web services, database
managing, and resource sharing.
 Resource Sharing
To use resources efficiently and economically, network provides a mean to share them. This
may include Servers, Printers, and Storage Media etc.
 Databases
This application service is one of the most important services. It stores data and information,
processes it, and enables the users to retrieve it efficiently by using queries. Databases help
organizations to make decisions based on statistics.
 Web Services
World Wide Web has become the synonym for internet.It is used to connect to the internet,
and access files and information services provided by the internet servers.
Activity No. 1
Name: Date:
Year and Section: Signature:

(20 points) Give two protocols of the Application Layer and explained them.

Activity No. 2
Name: Date:
Year and Section: Signature:

(20 points) Write an essay about the difference of Peer to Peer and Client Server Model. Minimum of
150 words maximum of 300 words.
SUMMARY
The application layer is the topmost layer of the protocol hierarchy. It is the layer where actual
communication is initiated. It uses the services of the transport layer, the network layer, the data link
layer, and the physical layer to transfer data to a remote host. This chapter discusses some of the
application layer protocols in greater detail. These application layer protocols are as follows: Dynamic
Host Configuration Protocol (DHCP) and Domain Name System (DNS), File transfer protocol (FTP),
Hypertext transfer protocol (HTTP), Simple mail transfer protocol (SMTP), and Simple network
management protocol (SNMP). DHCP is defined in RFC 1541 and updated in RFC 2131. It was designed
to provide a centralized approach to configuring and maintaining IP addresses. The DNS is a
distributed, hierarchical database where authority flows from the top of the hierarchy downward. FTP is
a standard network protocol used to transfer computer files between two hosts on a computer
network.

RUBRICS for Activity No. 2


Category 4 3 2 1
Neatness and The work is The work is The work is The work appears
organization presented in a presented in a presented in an sloppy and
neat, clear, neat and organized fashion unorganized. It is
organized fashion organized fashion but may be hard hard to know
that is easy to that is usually to read at times. what information
read. easy to read. goes together.
Understanding I got it!! I did it in I got it. I I understood I did not
new ways and understood the parts of the understand the
showed you how problem and have problem. I got problem.
it worked. I can an appropriate started, but I
tell you what solution. All parts couldn’t finish.
concepts are of the problem
used. are addressed.
Explanation Complete Good solid Explanation is Misses key points
response with a response with unclear
detailed clear explanation
explanation
Demonstration of Shows complete Response shows Response shows Response shows a
Knowledge understanding of substantial SOME complete lack of
questions, ideas, understanding understanding understanding
and processes
Requirements Goes beyond the Meets the Hardly meets the Does not meet
requirements requirements requirements the requirements
Put a check on the topic whether you can understand it on your own, need more reference material, or
if you can’t understand.
SELF ASSESSMENT
I CAN DO IT WITH
I CAN DO IT ON MY THE HELP OF A I CANNOT
OWN. REFERENCE UNDERSTAND.
MATERIAL.

Application Layer

Please write your written feedback below:

Name: Date:
Year and Section: Signature:

REFERENCES
1. Kurose, Ross, et al. 2017. Computer Networking A Top-Down Approach. 7 th Edition. Pearson
Education Limited
2. Fox, Hao, et al. 2018. Internet Infrastructure – Networking, Web Services, and Cloud
Computing. Taylor & Francis Group, LLC
3. Data Communication and Networking. Retrieved from
https://www.tutorialspoint.com/data_communication_computer_network/index.htm
4. Network Protocols and its Security. Retrieved from https://www.w3schools.in/cyber-
security/network-protocols-and-its-security/

SUGGESTED READINGS
1. https://www.javatpoint.com/computer-network-application-layer
2. https://www.router-switch.com/faq/what-is-application-layer-the-functions-and-examples-
of-application-layer.html
3. https://www.techopedia.com/definition/6006/application-layer
4. https://www.tutorialspoint.com/data_communication_computer_network/application_layer_i
ntroduction.htm

You might also like