User:MrsValdry/Application Layer

Application layer

The Internet protocol suite (TCP/IP) and the Open Systems Interconnection model (OSI model) of computer networking each specify a group of protocols and methods identified by the name application layer. The Application Layer is the top or seventh layer of the Open Systems Interconnection Model. Contrary to what most believe, this layer does not include software applications such as Microsoft Word, or Firefox. Instead the Application Layer services communication between software applications and lower-layer network services. This way, the network can interpret an application's request. The application can then interpret the data from the network.

The application layer is more like a service layer that does routine maintenance checkups to make sure data can be sent and received as it should be. The application layer focuses more on network services, APIs, utilities, and operating system environments. This layer provides the following services:
 * Makes sure that the other party is identified and can be reached
 * If appropriate, authenticates either the message sender or receiver or both
 * Makes sure that necessary communication resources exist (for example, is there a modem in the sender's computer?)
 * Ensures agreement at both ends about error recovery procedures, data integrity, and privacy
 * Determines protocol and data syntax rules at the application level

The application layer makes it possible to communicate with the lower layers. Some of the things it focuses on are name resolution and redirector services. Name resolutions are when the IP address is being mapped to the user in a readable manner. Redirector Services, which is also sometimes called the "requester", it looks at the user's requests and if it is something that can be fulfilled locally, it is done so. If the request cannot be fulfilled on the local level the redirection to another computer is required. The requests are then directed to another machine. This will then allow the user to access the network as if it were a part of the local system. HTTP is a well-known protocol that is a part of the application layer.

Network services


The network services handle most notably file and printing, name resolution, and redirector services.

Name resolution is the method of mapping an IP address to a user-readable name. For instance, everyone knows the mega search engine, Google.com, however, not many know the ip address of Google. Without name resolutions, we would have to remember four octets of numbers for each website we wanted to visit. Do you know the ip address for Facebook?

A redirector, otherwise known as a requester, is a service that is largely taken for granted. It is a handy little service that looks at requests a user may make: if it can be fulfilled locally, it is done so. If the request requires a "redirection" to another computer, then the request is forwarded onto another machine. This enables users to access network resources just like they were an integral part of the local system. A user could browse files on another computer just like they were located on the local computer. Obviously redirector services are fairly powerful.

Application layer APIs
API simply stands for Application Programming Interface. An API (application programming interface) is just a collection of functions that allows programs to access an internal environment.

A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together. Most operating environments, such as Microsoft Windows, provide an API so that programmers can write applications consistent with the operating environment. Although application programming interfaces are designed for programmers, they are ultimately good for users because they guarantee that all programs using a common API will have similar interfaces. This makes it easier for users to learn new programs.

For instance it is much easier for an exclusive Windows XP user to navigate through Windows Vista and Windows 7. This is because each of these operating systems have similar application programming interfaces. However, it may be very difficult for an exclusive Windows OS user to navigate a system with a Mac OS installed. The application programming interfaces are completely different.

Application firewall
The application firewall's goal is to enhance the overall security of the application layer to prevent it from dangerous exposures which are likely to cause severe damage. The application firewall has two ways of functioning. It is either passive or active. When the firewall is active, its duties are to actively inspect all requests, which also include inspecting the actual message being interchanged. Only the messages that are considered to be safe are passed on to the application. When the mode is passive, they inspect all incoming requests against all known threats. Passive firewalls do not actively reject any potential threat even if they are discovered. The application firewall is fairly is to update which keeps them prepared to fight of new threats.

Network utilities
The major application layer utilities are:


 * Address Resolution Protocol (ARP)
 * Netstat
 * Ping
 * Tracert
 * FTP and TFTP
 * Hostname
 * Whois

TCP/IP protocols
The Internet Protocol Suite (TCP/IP) and the Open Systems Interconnection model (OSI model) of computer networking each specify a group of protocols and methods identified as the application layer.

In TCP/IP, the application layer contains all protocols and methods that fall into the realm of process-to-process communications across an Internet Protocol (IP) network. Application layer methods use the underlying transport layer protocols to establish host-to-host connections.

In the OSI model, the definition of its application layer is narrower in scope, explicitly distinguishing additional functionality above the transport layer at two additional levels, the session layer and the presentation layer. OSI specifies strict modular separation of functionality at these layers and provides protocol implementations for each layer.

The following protocols are explicitly mentioned in RFC 1123 (1989), describing the application layer of the Internet Protocol Suite.


 * Remote login category
 * Telnet
 * File transfer category
 * FTP
 * TFTP
 * Electronic mail category
 * SMTP
 * IMAP
 * POP
 * Support services category
 * DNS
 * RARP
 * BOOTP
 * SNMP
 * CMOT

Other protocols examples

 * 9P, Plan 9 from Bell Labs distributed file system protocol
 * AFP, Apple Filing Protocol
 * APPC, Advanced Program-to-Program Communication
 * AMQP, Advanced Message Queuing Protocol
 * BitTorrent
 * Atom Publishing Protocol
 * CFDP, Coherent File Distribution Protocol
 * DDS, Data Distribution Service
 * DeviceNet
 * eDonkey
 * ENRP, Endpoint Handlespace Redundancy Protocol
 * FastTrack (KaZaa, Grokster, iMesh)
 * Finger, User Information Protocol
 * Freenet
 * FTAM, File Transfer Access and Management
 * Gopher, Gopher protocol
 * HL7, Health Level Seven
 * HTTP, HyperText Transfer Protocol
 * H.323, Packet-Based Multimedia Communications System
 * IRCP, Internet Relay Chat Protocol
 * Kademlia
 * KAP, Anonymous File Transfer over UDP/IP (KickAss Protocol)
 * LDAP, Lightweight Directory Access Protocol
 * LPD, Line Printer Daemon Protocol
 * MIME (S-MIME), Multipurpose Internet Mail Extensions and Secure MIME
 * Modbus
 * Netconf
 * NFS, Network File System
 * NIS, Network Information Service
 * NNTP, Network News Transfer Protocol
 * NTCIP, National Transportation Communications for Intelligent Transportation System Protocol
 * NTP, Network Time Protocol
 * OSCAR, AOL Instant Messenger Protocol
 * PNRP, Peer Name Resolution Protocol
 * RDP, Remote Desktop Protocol
 * Rlogin, Remote Login in UNIX Systems
 * RPC, Remote Procedure Call
 * RTMP Real Time Messaging Protocol
 * RTP, Real-time Transport Protocol
 * RTPS, Real Time Publish Subscribe
 * RTSP, Real Time Streaming Protocol
 * SAP, Session Announcement Protocol
 * SDP, Session Description Protocol
 * SIP, Session Initiation Protocol
 * SLP, Service Location Protocol
 * SMB, Server Message Block
 * SNTP, Simple Network Time Protocol
 * SOCKS, the SOCKS internet protocol
 * SSH, Secure Shell
 * SSMS, Secure SMS Messaging Protocol
 * TCAP, Transaction Capabilities Application Part
 * TDS, Tabular Data Stream
 * TSP, Time Stamp Protocol
 * VTP, Virtual Terminal Protocol
 * Waka, an HTTP replacement protocol
 * Whois (and RWhois), Remote Directory Access Protocol
 * WebDAV
 * X.400, Message Handling Service Protocol
 * X.500, Directory Access Protocol (DAP)
 * XMPP, Extensible Messaging and Presence Protocol