Professional Documents
Culture Documents
The Application Layer Includes The Following Functions
The Application Layer Includes The Following Functions
o Identifying communication partners: The application layer identifies the availability of communication partners for an application
o Determining resource availability: The application layer determines whether sufficient network resources are available for the
requested communication.
o Synchronizing communication: All the communications occur between the applications requires cooperation which is managed by
an application layer.
o Network Virtual terminal: An application layer allows a user to log on to a remote host. To do so, the application creates a software
emulation of a terminal at the remote host. The user's computer talks to the software terminal, which in turn, talks to the host. The
remote host thinks that it is communicating with one of its own terminals, so it allows the user to log on.
o File Transfer, Access, and Management (FTAM): An application allows a user to access files in a remote computer, to retrieve files
from a computer and to manage files in a remote computer. FTAM defines a hierarchical virtual file in terms of file structure, file
attributes and the kind of operations performed on the files and their attributes.
o Addressing: To obtain communication between client and server, there is a need for addressing. When a client made a request to
the server, the request contains the server address and its own address. The server response to the client request, the request
contains the destination address, i.e., client address. To achieve this kind of addressing, DNS is used.
o Directory Services: An application contains a distributed database that provides access for global information about various objects
and services.
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.
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.
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
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.
o P2P (peer-to-peer) architecture: It has no dedicated server in a data center. The peers are the computers which are not owned by
the service provider. Most of the peers reside in the homes, offices, schools, and universities. The peers communicate with each
other without passing the information through a dedicated server, this architecture is known as peer-to-peer architecture. The
applications based on P2P architecture includes file sharing and internet telephony.
o Self scalability: In a file sharing system, although each peer generates a workload by requesting the files, each peer also adds a
o Cost-effective: It is cost-effective as it does not require significant server infrastructure and server bandwidth.
o A network application consists of a pair of processes that send the messages to each other over a network.
o In P2P file-sharing system, a file is transferred from a process in one peer to a process in another peer. We label one of the two
o With P2P file sharing, the peer which is downloading the file is known as a client, and the peer which is uploading the file is known as
a server. However, we have observed in some applications such as P2P file sharing; a process can be both as a client and server.
Therefore, we can say that a process can both download and upload the files.
There are several protocols which work for users in Application Layer. Application layer protocols can be broadly divided into
two categories:
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
Recursive DNS: Clients typically do not make queries directly to authoritative DNS services. Instead, they generally connect to
another type of DNS service known a resolver, or a recursive DNS service. A recursive DNS service acts like a hotel concierge:
while it doesn't own any DNS records, it acts as an intermediary who can get the DNS information on your behalf. If a recursive
DNS has the DNS reference cached, or stored for a period of time, then it answers the DNS query by providing the source or IP
information. If not, it passes the query to one or more authoritative DNS servers to find the information.
o SMTP is a set of communication guidelines that allow software to transmit an electronic mail over the internet is
o It is a program used for sending messages to other computer users based on e-mail addresses.
o It provides a mail exchange between users on the same or different computers, and it also supports:
o The main purpose of SMTP is used to set up communication rules between servers. The servers have a way of
identifying themselves and announcing what kind of communication they are trying to perform. They also have a way
of handling the errors such as incorrect email address. For example, if the recipient address is wrong, then receiving
Components of SMTP
o First, we will break the SMTP client and SMTP server into two components such as user agent (UA) and mail transfer
agent (MTA). The user agent (UA) prepares the message, creates the envelope and then puts the message in the
envelope. The mail transfer agent (MTA) transfers this mail across the internet.
o SMTP allows a more complex system by adding a relaying system. Instead of just having one MTA at sending side and
one at receiving side, more MTAs can be added, acting either as a client or server to relay the email.
o The relaying system without TCP/IP protocol can also be used to send the emails to users, and this is achieved by the
use of the mail gateway. The mail gateway is a relay MTA that can be used to receive an email.
Working of SMTP
1. Composition of Mail: A user sends an e-mail by composing an electronic mail message using a Mail User Agent
(MUA). Mail User Agent is a program which is used to send and receive mail. The message contains two parts: body
and header. The body is the main part of the message while the header includes information such as the sender and
recipient address. The header also includes descriptive information such as the subject of the message. In this case,
the message body is like a letter and header is like an envelope that contains the recipient's address.
2. Submission of Mail: After composing an email, the mail client then submits the completed e-mail to the SMTP server
3. Delivery of Mail: E-mail addresses contain two parts: username of the recipient and domain name. For example,
vivek@gmail.com, where "vivek" is the username of the recipient and "gmail.com" is the domain name.
If the domain name of the recipient's email address is different from the sender's domain name, then MSA will send
the mail to the Mail Transfer Agent (MTA). To relay the email, the MTA will find the target domain. It checks the MX
record from Domain Name System to obtain the target domain. The MX record contains the domain name and IP
address of the recipient's domain. Once the record is located, MTA connects to the exchange server to relay the
message.
4. Receipt and Processing of Mail: Once the incoming message is received, the exchange server delivers it to the
incoming server (Mail Delivery Agent) which stores the e-mail where it waits for the user to retrieve it.
5. Access and Retrieval of Mail: The stored email in MDA can be retrieved by using MUA (Mail User Agent). MUA can be
o FTP is a standard internet protocol provided by TCP/IP used for transmitting the files from one host to another.
o It is mainly used for transferring the web page files from their creator to the computer that acts as a server for other computers on
the internet.
o It is also used for downloading the files to computer from other servers.
Objectives of FTP
Why FTP?
Although transferring files from one system to another is very simple and straightforward, but sometimes it can cause problems. For example,
two systems may have different file conventions. Two systems may have different ways to represent text and data. Two systems may have
different directory structures. FTP protocol overcomes these problems by establishing two connections between hosts. One connection is used
for data transfer, and another connection is used for the control connection.
Mechanism of FTP
The above figure shows the basic model of the FTP. The FTP client has three components: the user interface, control process, and data transfer
process. The server has two components: the server control process and the server data transfer process.
o Control Connection: The control connection uses very simple rules for communication. Through control connection, we can transfer
a line of command or line of response at a time. The control connection is made between the control processes. The control
o Data Connection: The Data Connection uses very complex rules as data types may vary. The data connection is made between data
transfer processes. The data connection opens when a command comes for transferring the files and closes when the file is
transferred.
FTP Clients
o FTP client is a program that implements a file transfer protocol which allows you to transfer files between two hosts on the internet.
o It allows a user to connect to a remote host and upload or download the files.
o It has a set of commands that we can use to connect to a host, transfer the files between you and your host and close the
connection.
o The FTP program is also available as a built-in component in a Web browser. This GUI based FTP client makes the file transfer very
easy and also does not require to remember the FTP commands.
Advantages of FTP:
o Speed: One of the biggest advantages of FTP is speed. The FTP is one of the fastest way to transfer the files from one computer to
another computer.
o Efficient: It is more efficient as we do not need to complete all the operations to get the entire file.
o Security: To access the FTP server, we need to login with the username and password. Therefore, we can say that FTP is more
secure.
o Back & forth movement: FTP allows us to transfer the files back and forth. Suppose you are a manager of the company, you send
some information to all the employees, and they all send information back on the same server.
Disadvantages of FTP:
o The standard requirement of the industry is that all the FTP transmissions should be encrypted. However, not all the FTP providers
are equal and not all the providers offer encryption. So, we will have to look out for the FTP providers that provides encryption.
o FTP serves two operations, i.e., to send and receive large files on a network. However, the size limit of the file is 2GB that can be
sent. It also doesn't allow you to run simultaneous transfers to multiple receivers.
o Passwords and file contents are sent in clear text that allows unwanted eavesdropping. So, it is quite possible that attackers can
carry out the brute force attack by trying to guess the FTP password.
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.
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
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
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.
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
o Traffic Congestion is a big problem in Client/Server networks. When a large number of clients send requests to the same server may
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.
E-Mail Format:-
Electronic Mail (e-mail) is one of the most widely used services of the Internet. This service allows an Internet user
to send a message in a formatted manner (mail) to other Internet users in any part of the world. Message in the
mail not only contain text, but it also contains images, audio and videos data. The person who is sending mail is
called sender and person who receives mail is called the recipient. It is just like postal mail service.
Format of E-mail :
An e-mail consists of three parts that are as follows :
1. Envelope
2. Header
3. Body
These are explained as following below.
1. Envelope :
The envelope part encapsulates the message. It contains all information that is required for sending any e-mail
such as destination address, priority and security level. The envelope is used by MTAs for routing message.
2. Header :
The header consists of a series of lines. Each header field consists of a single line of ASCII text specifying field name,
colon and value. The main header fields related to message transport are
1. To: It specifies the DNS address of the primary recipient(s).
2. Cc : It refers to carbon copy. It specifies address of secondary recipient(s).
3. BCC: It refers to blind carbon copy. It is very similar to Cc. The only difference between Cc and Bcc is that it
allow user to send copy to the third party without primary and secondary recipient knowing about this.
4. From : It specifies name of person who wrote message.
5. Sender : It specifies e-mail address of person who has sent message.
6. Received : It refers to identity of sender’s, data and also time message was received. It also contains the
information which is used to find bugs in routing system.
7. Return-Path: It is added by the message transfer agent. This part is used to specify how to get back to the
sender.
3. Body:- The body of a message contains text that is the actual content/message that needs to be sent, such as
“Employees who are eligible for the new health care program should contact their supervisors by next Friday if
they want to switch.” The message body also may include signatures or automatically generated text that is
inserted by the sender’s email system.
The above-discussed field is represented in tabular form as follows :
Header Meaning
In addition to above-discussed fields, the header may also contain a variety of other fields which are as follows :
Header Meaning
Message-Id: It refers to the unique number for referencing this message later.
MIME Protocol
MIME stands for Multipurpose Internet Mail Extensions. It is used to extend the capabilities of Internet e-mail protocols such as
SMTP. The MIME protocol allows the users to exchange various types of digital content such as pictures, audio, video, and
various types of documents and files in the e-mail. MIME was created in 1991 by a computer scientist named Nathan
Borenstein at a company called Bell Communications.
MIME is an e-mail extension protocol, i.e., it does not operate independently, but it helps to extend the capabilities of e-mail in
collaboration with other protocols such as SMTP. Since MIME was able to transfer only text written file in a limited size English
language with the help of the internet. At present, it is used by almost all e-mail related service companies such as Gmail,
Yahoo-mail, Hotmail.
MIME protocol is used to transfer e-mail in the computer network for the following reasons:
1. The MIME protocol supports multiple languages in e-mail, such as Hindi, French, Japanese, Chinese, etc.
2. Simple protocols can reject mail that exceeds a certain size, but there is no word limit in MIME.
3. Images, audio, and video cannot be sent using simple e-mail protocols such as SMTP. These require MIME protocol.
4. Many times, emails are designed using code such as HTML and CSS, they are mainly used by companies for marketing
their product. This type of code uses MIME to send email created from HTML and CSS.
MIME Header
MIME adds five additional fields to the header portion of the actual e-mail to extend the properties of the simple email
protocol. These fields are as follows:
1. MIME Version
2. Content Type
4. Content Id
5. Content description
1. MIME Version
It defines the version of the MIME protocol. This header usually has a parameter value 1.0, indicating that the message is
formatted using MIME.
2. Content Type
It describes the type and subtype of information to be sent in the message. These messages can be of many types such as Text,
Image, Audio, Video, and they also have many subtypes such that the subtype of the image can be png or jpeg. Similarly, the
subtype of Video can be WEBM, MP4 etc.
In this field, it is told which method has been used to convert mail information into ASCII or Binary number, such as 7-bit
encoding, 8-bit encoding, etc.
4. Content Id
In this field, a unique "Content Id" number is appended to all email messages so that they can be uniquely identified.
5. Content description
This field contains a brief description of the content within the email. This means that information about whatever is being sent
in the mail is clearly in the "Content Description". This field also provides the information of name, creation date, and
modification date of the file.
1. It is capable of sending various types of files in a message, such as text, audio, video files.
2. It also provides the facility to send and receive emails in different languages like Hindi, French, Japanese, Chinese etc.
3. It also provides the facility of connecting HTML and CSS to email, due to which people can design email as per their
TCP/IP Socket Connection:-
A socket programming interface provides the routines required for interprocess communication between applications, either
on the local system or spread in a distributed, TCP/IP based network environment. Once a peer-to-peer connection is
established, a socket descriptor is used to uniquely identify the connection. The socket descriptor itself is a task specific
numerical value.
One end of a peer-to-peer connection of a TCP/IP based distributed network application described by a socket is uniquely
defined by
Internet address
for example 127.0.0.1 (in an IPv4 network) or FF01::101 (in an IPv6 network).
Communication protocol
o User Datagram Protocol (UDP)
o Transmission Control Protocol (TCP)
Port
Socket applications were usually C or C++ applications using a variation of the socket API originally defined by the Berkeley
Software Distribution (BSD). The JAVA language also provides a socket API. JAVA based Client/Server applications exploit those
socket services.
Socket programming interfaces have been standardized for ease of portability by The Open Group for example.
Besides TCP/IP based sockets, UNIX systems provide socket interfaces for interprocess communication (IPC) within the local
UNIX host itself. Those UNIX sockets use the local file system for interprocess communication.
z/VSE provides TCP/IP based socket services. They can be used for IPC too, although they are primarily aimed for network
communication only.
Internet Telephony:- Internet Telephony refers to all types of telephony services (including phone
calls, fax, voicemail, video calls and other forms of communication) where calls and data are sent
digitally over the Internet using the Internet Protocol (IP), rather than being transmitted over
traditional analogue landlines. An example of an Internet Telephony service is Cloudya, the Cloud
Telephone System from NFON.
Internet Telephony and Voice over IP (VoIP) are often used synonymously, but in reality, VoIP is a
subset of Internet Telephony that refers to voice traffic only. While Internet Telephony is a general
term for the IP packet-switching technology used by Internet phone systems to exchange any type
of information, Voice over IP is the specific method for carrying voice calls over an IP network.
Internet Telephony includes VoIP capability as well as a host of other features and functionality. For
example, with Internet Telephony from NFON, it is possible to integrate Unified Communications
(UC) and fax solutions over XCAPI.
In order to use an Internet phone system, it is necessary to have a VoIP solution such as the
NFON Cloud Telephone System.
As you speak through a microphone (laptop, mobile or headset) your voice - the audio signal - is
digitised. This data is split into packets and given individual labels.
Your call is made up of different packets of data. Each packet of data travels over the Internet to the
recipient. When the data arrives at the end destination it is put back into the correct order. The
data is then converted into audio and the recipient hears what you said.
Interestingly, the data packets don’t necessarily arrive in the order they were sent: they can
overtake each other en route. When then arrive they are reassembled in the correct order and your
message can be heard by the recipient.
Advantages:-
Internet Telephony offers many advantages compared to traditional telephony as it makes business
communication smarter, more flexible, more comfortable and more cost effective. One of its main
benefits is that is allows multiple device integration including smartphones and desk phones. Users
can, for instance, access their office extension from their smartphone, giving them complete
freedom of communication, no matter whether they are working remotely or in the office.
1. Full scalability and flexibility: The best Internet Telephony solutions are hosted in the cloud, so
there’s no need for the customer to buy, install and maintain expensive on-premise platforms.
Implementation is quick and telephony services, the number of users and any extra features can be
scaled up and down as required.
2. Lower costs: Typically, IP Telephony is more cost-efficient than traditional landline and mobile
telephony. With a cloud telephony solution, internal calls within an organisation are completely free
of charge.
3. Seamless accessibility and portability: Users can access their Internet Telephony services from
anywhere and from any device as long as they have an Internet connection. A dedicated app – such
as the Cloudya app from NFON – brings all the functionality of the cloud telephone system onto
users’ smartphones, from voicemail and contact lists to call forwarding and conference calls. This
makes the switch to mobile working easy.
4. Advanced features: With Internet Telephony, voice and data are transported over the same
network, making new services possible – such as ‘meet and share’ video calls. Integrations add extra
functionality, allowing organisations to streamline all their communication and business processes.
For example, Cloudya from NFON integrates with Unified Communications tools such as Microsoft
Teams for effective team collaboration. Find out more here
5. Excellent voice quality: IP Telephony has come a long way since it was first introduced in the 1990s.
As long as the user has a fast and stable Internet connection with good bandwidth, VoIP calls should
experience no latency issues or interruptions. In addition, the latest IP phones and headsets are
designed to achieve superior sound quality with noise-cancelling and advanced audio compression,
cutting out any background noise.