Top Banner
Application Layer Functionality and Protocols Application Layer Protocols
30

Application layer protocols

Feb 12, 2017

Download

Devices & Hardware

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Application layer protocols

Application Layer Functionality and Protocols

Application Layer Protocols

Page 2: Application layer protocols

Applications Layer – allows user to interface with the network!

Page 3: Application layer protocols

Application Layer – Provides the interface between the applications on either end of the network.

Page 4: Application layer protocols

Protocols and networks

Page 5: Application layer protocols

Protocols

DNS – Matches domain names with IP addresses

HTTP – Used to transfer data between clients/servers using a web browser

SMTP & POP3 – used to send email messages from clients to servers over the internet

FTP – allows the download/upload of files between a client/server

Telnet – allows users to login to a host from a remote location and take control as if they were sitting at the machine (virtual connection)

DHCP – assigns IP addresses, subnet masks, default gateways, DNS servers, etc. To users as they login the network

Page 6: Application layer protocols

Application layer software

2 typesApplications – Provide the human (user) interface. Relies on lower layers to complete the communication process.

Services – establish an interface to the network where protocols provide the rules and formats that govern how data is treated..

Page 7: Application layer protocols

How data requests occur & are filled

Client/server model Advantages:

Centralized administrationSecurity is easier to enforce

Peer-to-peer networking and applications

Page 8: Application layer protocols

Client/Server Model Client –

device requesting information (initiates the data exchange)Can also UPLOAD data to the servers

Server – device responding to the requestHow does it handle multiple request from multiple users and keep everything

in order?Relies on support from the lower layer functions to distinguish between services and conversations.Server relies on a service called a server daemon – runs in the background and ‘listens’ for requests for that service. It can then exchange messages as appropriate & send requested data.

Examples:E-mail Client on an employee computer issues a request to the e-mail server

for any unread e-mail. The server responds by sending the e-mail to the client.

Conversations can originate with either party.

Page 9: Application layer protocols

Peer-to-Peer (P2P) Network Model Two or more computers are connected and are able to share resources

without having a dedicated server

Every end device can function as a client or server on a ‘per request’ basis

Resources are decentralized (information can be located anywhere)

Difficult to enforce security and policies

User accounts and access rights have to be set individually on each peer device

Page 10: Application layer protocols

Common Port Numbers

TCP FTP – 20-21Telnet – 23SMTP – 25 DNS – 53 (Both TCP & UDP)HTTP – 80

UDPDHCP – 67 & 68POP – 110

Page 11: Application layer protocols

Domain Name System (DNS) Each terminal in network has an unique IP address and a name (name space).

A name space that maps each address to a unique name can be organized in two ways: flat or hierarchical

In a flat name space, a name is assigned to an address. A name in this space is a sequence of characters without structure.

In a hierarchical name space, each name is made of several parts.

Page 12: Application layer protocols

An example given below in which TCP/IP uses a DNS client and a DNS server to map a name to an address. A user wants to use a file transfer client to access the corresponding file transfer server running on a remote host. The user knows only the file transfer server name, such as afilesource.com. However, the TCP/IP suite needs the IP address of the file transfer server to make the connection. The following six steps map the host name to an IP address:

The user passes the host name to the file transfer client.

The file transfer client passes the host name to the DNS client.

Each computer, after being booted, knows the address of one DNS server. The DNS client sends a message to a DNS server with a query that gives the file transfer server name using the known IP address of the DNS server.

The DNS server responds with the IP address of the desired file transfer server.

The DNS server passes the IP address to the file transfer client.

The file transfer client now uses the received IP address to access the file transfer Server.

Page 13: Application layer protocols

Domain Name System (DNS)

DNS is used for designing hierarchical name spaceExample of hierarchical name space: www.staffs.ac.uk, www.fcet.staffs.ac.uk,

gawains.staffs.ac.uk, blackboard.staffs.ac.uk

In this design the names are defined in an inverted-tree structure with the root at the top. The tree can have only 128 levels: level 0 (root) to level 127

Page 14: Application layer protocols

Domain Name and Label

Page 15: Application layer protocols

Domain Name Each node in the tree has a domain name. A full domain name is a

sequence of labels separated by dots (.). The domain names are always read from the node up to the root. The last label is the label of the root (null). This means that a full domain name always ends in a null label, which means the last character is a dot because the null string is nothing.

If a label is terminated by a null string, it is called a fully qualified domain name (FQDN).

Page 16: Application layer protocols

DNS Server Stores domain name space information within its domain/sub-

domain.

Page 17: Application layer protocols

DSN Services and Protocol

DNS Servers resolve names to IP addresses. It would be difficult to remember the IP address of every website we like to visit, but we can remember names.

Page 18: Application layer protocols

World Wide Web

The Web is a repository of information in which the documents, called web pages, are distributed all over the world and related documents are linked together.

The WWW is a distributed client-server service, in which a client using a browser can access a service using a server. However, the service provided is distributed over many locations called sites. Each site holds one or more web pages. Each web page, however, can contain some links to other web pages in the same or other sites

Page 19: Application layer protocols

Web Client (Browser):

Each browser usually consists of three parts: a controller, client protocols, and interpreters. The controller receives input from the keyboard or the mouse and uses the client programs to access the document. After the document has been accessed, the controller uses one of the interpreters(HTML, Java, or JavaScript) to display the document on the screen. The client protocol can be one of the protocols such as HTTP or FTP.

Web Server

The web page is stored at the server. Each time a request arrives, the corresponding document is sent to the client.

Web Documents

The documents in the WWW can be grouped into three broad categories: –Static–Dynamic–active

Page 20: Application layer protocols

Static Documents

Static documents are fixed-content documents that are created and stored in a server. The client can get a copy of the document only. In other words, the contents of the file are determined when the file is created, not w.hen it is used.

Dynamic Documents

A dynamic document is created by a web server whenever a browser requests the document. When a request arrives, the web server runs an application program or a script that creates the dynamic document. The server returns the result of the program or script as a response to the browser that requested the document. Because a fresh document is created for each request, the contents of a dynamic document may vary from one request to another. A very simple example of a dynamic document is the retrieval of the time and date from a server.

Active Documents

For many applications, a program or a script needs to be run at the client site. These are called active documents. For example, suppose a program that creates animated graphics on the screen or a program that interacts with the user. When a browser requests an active document, the server sends a copy of the document or a script. The document is then run at the client (browser) site.

Page 21: Application layer protocols

HyperText Transfer Protocol (HTTP)

The HyperText Transfer Protocol (HTTP) is used to define how the client-server programs can be written to retrieve web pages from the Web. An HTTP client sends a request; an HTTP server returns a response. The server uses the port number 80.

HTTP uses the services of TCP. This means that, before any transaction between the client and the server can take place, a connection needs to be established between them. After the transaction, the connection should be terminated.

Page 22: Application layer protocols

WWW Service and HTTP Steps:

1) URL is typed in the address bar. 2) Browser checks with DNS server to convert it to an IP address3) Connects to the server requested4) Using HTTP or HTTPS protocol requirements, the browser sends a GET

request to the server to ask for the desired html document (usually index.html)

5) The server sends the HTML code for the web page to the browser.6) The browser interprets the HTML code and formats the page to fit the

browser window.

Page 23: Application layer protocols

WWW Service and HTTP

HTTP/HTTPS are some of the MOST

used application protocols!

Page 24: Application layer protocols

E-mail services and SMTP/POP protocols E-mail is the most popular network service.

E-mail client (when people compose e-mail) is called Mail User Agent (MUA)

MUA allows messages to be sent/retrieved to and from your mailbox

Requires several applications and servicesPOP or POP3 – deliver email from server to client (incoming messages)SMTP – handles outbound messages from clients

Page 25: Application layer protocols

E-mail services and SMTP/POP protocols What do servers require?

1) Must be running SMTP!2) Also operates

1) Mail Transfer Agent (MTA) – used to forward email1)Receives email from the clients MUA2)Uses SMTP to route email between SERVERS!3)Passes email to the MDA for final delivery

2) Mail Delivery Agent (MDA) – receives messages from MUA or from the MTA on another server

3) For two e-mail servers to talk – MUST run SMTP and MTA in order to transfer mail between the 2 servers!

Page 26: Application layer protocols

E-mail services and SMTP/POP protocols

Page 27: Application layer protocols

FTP Commonly used application layer protocol

Allows for the transfer of files between clients/servers.

Requires 2 connections to the server1) Commands – uses TCP port 212) Actual data – uses TCP port 20

Page 28: Application layer protocols

DHCP Dynamic Host Configuration Protocol – enables devices to obtain IP

addresses, subnet masks, gateways, DNS server information, etc. from a DHCP server.

An IP address that is not being used is assigned from a range of available addresses

Not permanently assigned – only leased for a specific period of time (usually 24 hours – 7 days)

If the host logs off or the power is lost, the IP address they were using is returned to the pool to be re-assigned to another host when needed.

This is how you are able to use Wi-Fi at various places in the world! Don’t use DHCP for devices such as servers, printers, routers, switches,

etc. These should be statically assigned.

Page 29: Application layer protocols

Telnet Developed in the early 1970’s – among the oldest of the application layer

protocols and services in the TCP/IP protocol suite.

Allows users to follow text-based terminal devices over the network using software.

A connection is known as a ‘virtual terminal (vty)’ session.

Can be run from the command prompt on a PC.

You can use the device as if you were sitting there with all the rights and priorities that you username will offer you.

TELNET requires a logging name and password, it is vulnerable to hacking because it sends all data including the password in plaintext (not encrypted). A hacker can eavesdrop and obtain the logging name and password. Because of this security issue, the use of TELNET has diminished in favor of another protocol, Secure Shell (SSH).

Page 30: Application layer protocols

Telnet