According to Hallberg (2009), application layer is defined as the top layer within the Open System Interconnectivity (OSI) server layer model. The application layer enables the user to access information over the network by use of an application. This layer deals with issues such as resource availability, synchronization of communication, and identification of communication partners. The application layer is responsible to decide whether network resources are adequate for the requested communication. Synchronization of communication is the process by which all possible communication between applications are co-operated by the management of the application layer. The communication partners with data to send are identified as the application layer determines their availability and identity.
The OSI model's application layer offers end-user services like, electronic messaging, virtual terminal access, file transfers, and the e-mail. Apart from providing the user interface, application layer is responsible for displaying images and data to the user in a format that can be easily recognized. Therefore, the application layer within the OSI model plays a role in organizing and displaying data and images in format that is human compatible (Lammle, 2007).
The application layer is comprised of many protocols that are usually needed. Most of the application layer protocols offer services that enable programs access the network. Thus, the application layer is known as the entrance point that is used by programs to access the OSI model as well as to utilize the network resources. Examples of the application layer protocols include, File Transfer Protocol (FTP), Telnet, Simple Mail Transfer Protocol (SMTP), Trivial File Transfer Protocol (TFTP), Finger Protocol, Simple Network Management Protocol (SNMP), Network File System (NFS) protocol, Network News Transfer Protocol (NNTP), Domain Name System (DNS) protocol, Bootstrap Protocol (BOOTP), Rlogin Protocol, Multi-Purpose Internet Mail Extensions (MIME) protocol, Netware Core Protocol (NCP), Advanced Program to Program Communications (APPC) protocol, Apple Filing Protocol (AFP), and Server Message Block (SMB) protocol (Lammle, 2007). Of the application layer protocols, only a few protocols will be discussed.
There are very many protocols existing in today's world, but only a few have been written to play a role in data transfer. These are the standard Internet protocols that are established and sustained by the Internet Engineering Task Force (IETF) (Hallberg, 2009). The FTP protocol is an internet protocol that provides the simplest way of exchanging electronic files between computers with internet connection. FTP uses the TCP/IP protocols to transfer the Web page files from the designers to the server computers to be viewed by internet users worldwide. This application protocol also enables internet users to download programs as well as other electronic files from various servers around the world.
SMTP is another application protocol used to transfer data between two or more computers on the internet. It can be defined as an Internet standard that is used to transfer electronic mail over Internet Protocol networks. The SMTP is a very reliable and efficient means of transferring electronic mail from senders to recipients, for instance, in case the mail delivery fails, the mail messages will be queued and then delivered later when conditions allow. NNTP is defined as an internet application protocol that allows for transportation of Usenet news articles between two or more news servers. This protocol is also used for posting and reading articles by the user client applications at the destination.
The application layer as the layer seven of the OSI model is utilized as a window for application processes and users to get an access to network services. This layer provides many functions including, remote file access, network management, device redirection and resource sharing, electronic messaging such as e-mail messaging, and stimulation of computer virtual terminals. The application layer is comprised of many protocols that are usually needed and most of these protocols offer services that enable programs access the network.