| ## How CDS Works Operation of the Cell Directory Service involves several major participants: · Client applications · Servers · Clerks · Clearinghouses CDS uses a client/server model. An application that depends on CDS to store and retrieve information for it is a client of CDS. Client applications create names for resources on behalf of their users. Through a client application, a user can supply other information for CDS to store as attributes of a name. Then, when a client application user refers to the resource by its CDS name, CDS retrieves data from the attributes for use by the client application. A system running CDS server software is a CDS server. A CDS server stores and maintains CDS names and handles requests to create, modify, or look up data. A component called the clerk is the interface between client applications and CDS servers. Every DCE node must run a CDS clerk. The clerk receives a request from a client application, sends the request to a server, and returns the resulting information to the client. This process is called a lookup. The clerk is also the interface through which client applications create and modify names. One clerk can work on behalf of many client applications. The clerk caches, or saves, the results of lookups so that it does not have to repeatedly go to a server for the same information. The cache is written to disk periodically so that the information can survive a system reboot or the restart of an application. When you stop the CDS advertiser, the cache is written to disk. Caching improves performance and reduces network traffic. The following figure shows a sample configuration of CDS clerks and servers on a 9-node Local Area Network (LAN). Every node is a clerk, and CDS servers run on two selected nodes. CDS Clerks and Servers on a LAN Every CDS server has a database called a clearinghouse in which it stores names and other CDS data. The clearinghouse is where a CDS server adds, modifies, deletes, and retrieves data on behalf of client applications. Although more than one clearinghouse can exist at a server node, it is not recommended as a normal configuration. The following figure shows the interaction between a CDS client, clerk, server, and clearinghouse during a simple lookup. A Sample CDS Lookup The preceding figure shows the following CDS lookup steps: 1. The client application on Node 1 sends a lookup request to the local clerk. 2. The clerk checks its cache and, not finding the name there, contacts the server on Node 2. 3. The server checks to see if the name is in its clearinghouse. 4. The name exists in the clearinghouse, so the server gets the requested information. 5. The server returns the information to the clerk on Node 1. 6. The clerk passes the requested data to the client application. The clerk also caches the information so that it does not have to contact a server the next time a client requests a lookup of that same name. ##