PreviousNext

The Endpoint Mapper Service of the DCE Host Daemon

There are two parts to a server's location: the network address of the machine it resides on and the transport-specific address of the process - the network endpoint (for example, a UNIX port). The machine location is fairly stable, so its address can reasonably be entered into the Cell Directory Service. The network endpoint, however, can change each time the server process is started. Instead of making frequent changes to CDS to update a server's endpoint address, DCE RPC uses a specialized type of directory service, the endpoint mapper service, a service of dced. When a server starts, it registers its endpoint(s) with dced. Most servers will register an endpoint for each transport protocol supported on the host (for example, TCP and UDP).

Every machine that runs an RPC server also runs a dced. The dced process always uses the same network endpoint, so its process address is well known. Therefore, once a client knows what machine a server is running on, it can find the endpoint mapper running on that same machine. It can then ask the endpoint mapper for the network endpoint of the server process. This process is shown in the following figure (read the messages, shown in quotes, in clockwise order).


Client Finds Server Using CDS and the DCE Host Daemon