As you learned in the previous chapter, we build computer networks to share resources. To share or use the shared resources, the computers need some network information necessary to communicate over the network, such as machine addresses, user names, passwords, access permissions, printer names, and so forth. Each machine on the network can maintain this information on its own, but that would be a cumbersome task for a network administrator, a task prone to errors and inconsistencies. The solution to this problem is to maintain this information on a centralized machine called a naming server and let other machines retrieve this information from this server, which offers what is a called a naming service.
There are a number of naming services to support the varying needs of networks. Solaris supports the Network Information Service (NIS), Network Information Service Plus (NIS+), Domain Name Service (DNS), and Light Weight Access Protocol (LDAP) directory services. All these services are run in a client/server network environment where there are naming service clients and naming service servers. In network services, caching is often used to improve service performance. The naming service cache daemon, nscd, provides the caching service for the most frequent name service requests.
The core question in this chapter is: what are the naming services and how are they managed? In search of an answer, we will explore three thought streams: naming service servers, naming service clients, and naming service caching.