PreviousNext

Using the Endpoint Map for Easy Application Development and Administration

Remote clients can find a server by using the server host's endpoint map to determine the server's communication endpoint. But how do remote clients know where to find the endpoint map itself? They know because the endpoint map is always accessible at a well-known endpoint (that is, it is always the same endpoint) on each host so clients can easily find it.

When hosts support multiple transports, the endpoint map listens on one port for each transport. In the IP address family (both TCP and UDP), the endpoint map process listens on port 135. In the Domain Domain Sockets (DDS) address family, it listens on port 12. In the DECnet NSP address family, it listens on port 69. A complete list of the protocol sequences and well-known endpoints used by the Endpoint Map Service can be found in the header file /opt/dcelocal/share/include/dce/ep.idl.

Note that not all hosts support all transports. DCE software tries to ensure that at least one transport is shared between a client and a server.

While well-known endpoints provide convenient access to some critical servers, for most servers they are impractical. That's because some address families have a limited number of endpoints and well-known endpoints can be assigned only by a central administrative authority. So most servers use dynamic endpoints. When a server starts up, the RPC runtime library gets an available endpoint from the operating system and registers it in the host endpoint map.

Because a server can be assigned a different endpoint each time it starts, the endpoint information is stored in the endpoint map rather than CDS, which is a repository for more stable information; namely, the server's host address and the transports it uses. As long as the server stays on the same machine, host and transport information need not be updated, which tends to reduce bottlenecks at CDS.

This scheme makes application development and administration easier because it reduces the need to manage endpoints. Servers needn't worry about passing dynamic endpoints to clients. Furthermore, unless a server moves to a new host, or removes or adds a transport, it doesn't even have to update the information in CDS.

More:

Automatic Endpoint Map Administration

Restricting Endpoints

Viewing Information in The Endpoint Map