Application Layer

The application layer is the highest layer in the protocol stack, and contains many of the technologies that power the web, yet we take it for granted nearly every day. In this topic, we examine in great detail the architectures contained within this layer, and the how we use them.

## Architectures

[edit | edit source]

The Application Layer is used in three ways:

* Client-Server
* Peer to Peer
* Hybrid

### Client-server

[edit | edit source]

The Client Server Model operates mainly on the concept of an always-on server, to whom a client may connect to. The server normally has a static IP address, and an associated DNS record to allow hosts to look it up. Clients may come and go, and are never directly connected to each other. Applications that communicate between hosts using the client server model must send information through the server, which may be problem if the server happens to go offline.

An example of the Client Server Architecture is the web server and browser. Wikiversity is hosted on a number of mediawiki servers, which are always on, allowing you and other people from across the globe to view this web page.

### Peer to Peer

[edit | edit source]

Also known as P2P, the peer to peer architecture does not require the use of centralised servers. Instead, hosts communicate directly with each other. Hosts may have dynamic IP addresses and may join or leave such networks at any time.

A greatly known example of P2P is the bittorrent file sharing protocol.

### Hybrid

[edit | edit source]

Hybrid architectures use a combination of both P2P and client server architecture.

An example of this is the Skype protocol. A central server stores each user's address book and IP address. When one person wants to make a call to another, Skype provides the IP address to the destination host and a peer to peer connection is established between the two users.

## Common Ports used in the Application Layer

[edit | edit source]

Protocol  | Port

|

FTP/data (File Transfer Protocol)  | 20
FTP/control (File Transfer Protocol)  | 21
SSH (Secure Shell)  | 22
Telnet  | 23
SMTP (Simple Mail Transfer Protocol)  | 25
DNS (Domain Name Service)  | 53
DHCP (Dynamic Host Control Protocol)  | 68
HTTP (Hypertext Transport Protocol)  | 80
POP3 (Post Office Protocol, ver 3)  | 110
NTP (Network Time Protocol)  | 123
IMAP (Internet Message Access Protocol)  | 143
SSL (Secure Socket Layer)  | 443
SMTP (Simple Mail Transfer Protocol/"submission")  | 587

## Technologies used in the Application Layer

[edit | edit source]

* Domain Name System
* Voice over Internet Protocol

## See Also

[edit | edit source]

* Internet Protocol Analysis - Application Layer