Many Application layer components are network services. In earlier hours you might have read that a layer of the protocol system provides services for other layers of the system. In many cases, these services are a well-defined, integral part of the protocol system. In the case of the Application layer, the services are not all required for the operation of the protocol software and are more likely provided for the direct benefit of a user or to link the network with the local operating system.
The features available at the Application layer include the following:
File and Print Services
A print server operates a printer and fulfills requests to print documents on that printer. A file server operates a data storage device, such as a hard drive, and fulfills requests to read or write data to that device.
Because file service and print service are such common networking activities, they are often thought of together. Often the same computer (or sometimes even the same service) provides both file and print service capabilities. Whether or not they're together, the theory is the same. Figure 7.2 shows a typical file service scenario. A request for a file comes across the network and up through the protocol layers to the Transport layer, where it is routed through the appropriate port to the file server service.
By the Way
Figure 7.2 is a schematic drawing showing only the basic components as they relate to TCP/IP. In a real protocol and operating system implementation, additional layers or components might assist with forwarding the data to the file server service.
Name Resolution Services
As you learned in Hour 1, "What Is TCP/IP?," name resolution is the process of mapping IP addresses to predefined, user-friendly alphanumeric names. The domain name service (DNS) provides name resolution for the Internet and can also provide name resolution for isolated TCP/IP networks. DNS uses name servers to resolve DNS name queries. A name server service runs at the Application layer of the name server computer and communicates with other name servers to exchange name resolution information. Other name resolution systems exist, such as Network Information Service (NIS), NetBIOS name resolution, and a number of name service variants associated with the Light Directory Access Protocol (LDAP).
Name resolution is an example of an Application layer service that functions integrally with lower protocol layers and actively participates in the interactions of the protocol stack. DNS or WINS queries are initiated by the protocol software of the client machine, rather than by a user or user application. A user references a domain name, and the underlying protocol software resolves that name to an IP address using name resolution.
A redirector intercepts service requests in the local computer and checks to see whether the request should be fulfilled locally or forwarded to another computer on the network. If the request is addressed to a service on another machine, the redirector redirects the request to the network (see Figure 7.3).