Sitting at Layer 7 -- the very top of the Open Systems Interconnection (OSI) communications model -- the application layer provides services for an application program to ensure that effective communication with another application program on a network is possible. The application layer should not be thought of as an application as most people understand it. Instead, the application layer is a component within an application that controls the communication method to other devices. It's an abstraction layer service that masks the rest of the application from the transmission process. The application layer relies on all the layers below it to complete its process. At this stage, the data, or the application, is presented in a visual form the user can understand.
Functions of the application layer
- Ensures that the receiving device is identified, can be reached and is ready to accept data.
- Enables, if appropriate, authentication to occur between devices for an extra layer of security.
- Makes sure necessary communication interfaces exist. For example, is there an Ethernet or Wi-Fi interface 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.
- Presents the data on the receiving end to the user application.
Two types of software provide access to the network within the application layer: network-aware applications, such as email, and application-level services, such as file transfer or print spooling.