Content Overview The application layer is the top layer in the TCP/IP reference model. When the ISO developed the OSI Reference Model, the application layer functions were divided into three separate, more detailed layers. Although the OSI version is more detailed, it is more common to refer to the application layer of TCP/IP since it is more encompassing. The application layer is the interface that separates application software from the transport layer, and deals with high-level protocols rather than segments, bytes, packets, or bits. It provides network services for users and their programs and is the layer in which user-access network processes reside. These processes include all of those that users interact with directly, as well as other processes of which the users are not aware. This layer includes all application layer protocols that use the host-to-host transport protocols to deliver data. Other functions that process user data such as data encryption, decryption, compression and decompression, can also reside at the application layer. Most of the application layer protocols provide user services. Application layer protocols are typically used for network management, file transfer, distributed file services, terminal emulation, and electronic mail. However, new user services are often added (for example, VPNs, VoIP, and so on). The most widely known and implemented TCP/IP application layer protocols are listed below: Other application layer protocols are listed below. These and other network applications use the services of TCP/IP and other lower-layer Internet protocols to provide users with basic network services.
Content 7.1 Troubleshooting the Application Layer 7.1.1 Overview The primary responsibility of the upper layers of the OSI model is to provide services such as e-mail, file transfer, and data transport. Application layer problems result when data is not delivered to the destination or network performance degrades to a level where productivity is affected. The same general troubleshooting process used to isolate problems at the lower layers can be used to isolate problems at the application layer. The ideas stay the same, but the technological focus has shifted to involve things such as refused or timed out connections, access lists, and DNS issues. Problem isolation is vital to successfully troubleshoot any problem. Merely isolating the problem will not bring the types of changes necessary to return network functions to the documented baseline. To meet the troubleshooting objective of resolving the problem, use the tools and resources that are provided to correctly configure the properties of a properly functioning network. Application layer problems prevent services from being provided to application programs. A problem at the application layer can result in unreachable or unusable resources when the physical, data link, network, and transport layers are functional. It is possible to have full network connectivity but the application simply cannot provide data. Another type of problem at the application layer occurs when the physical, data link, network, and transport layers are functional, but the data transfer and requests for network services from a single network service or application do not meet the normal expectations of a user. A problem at the application layer may cause users to complain that the network or the particular application that they are working with is sluggish or slower than usual when transferring data or requesting network services. Lab Activity Lab Exercise: Isolating Problems at the Transport and Application Layers After completing this lab, the student will be able to analyze user-feedback and end-system data to decide which OSI layer to begin isolating problems.
Content 7.1 Troubleshooting the Application Layer 7.1.2 Eliminating Layers 1-3 When an application program cannot successfully connect to the destination host, establish at which layer the problem resides. Is it a lower layer problem or a higher layer problem? For example, assume the problem is the inability to connect to a remote FTP server. To determine whether this is an application layer problem and not a lower layer problem, the first step is to verify Layer 3 connectivity. If successful, Layer 3 and lower can be eliminated as the source of the problem. To troubleshoot use the following steps:
  1. Ping the default gateway. If successful, Layer 1 and Layer 2 services are functioning properly.
  2. Verify end-to-end (host-to-host) connectivity. Use an extended ping if attempting the ping from a Cisco router.
If these pings are successful, then Layer 1 through Layer 3 can be eliminated. Since they are functioning properly, the issue must exist at a higher layer. Lab Activity Lab Exercise: Correcting Problems at the Transport and Application Layers In this lab, the student will use various Cisco commands to correct network problems.
Content 7.1 Troubleshooting the Application Layer 7.1.3 Eliminating Layer 4 Layer 4 is the home of UDP and TCP protocols and is not as easy to eliminate. For example, assume there are FTP connection problems. To troubleshoot Layer 4, use the following steps:
  1. Use the show access-list command. Are there any access-lists that could be stopping traffic? Notice which access lists have matches.
  2. Clear the access-list counters with the clear access-list counters command and try to establish an FTP connection again.
  3. Verify the access-list counters. Have any increased? Should they increase?
Improperly configured access lists are common problem areas. Be sure the implications of each access list statement are understood. This may sound strange but it sometimes helps to think like the packet. However, if the access lists are functioning as expected, then the problem must lie in a higher layer.