X.500" is defined primarily to support a widely-distributed directory. One way to achieve distribution is to define a network of client and server processes. Each process may reside on a different computer system and the processes communicate with eachother via defined protocols. Client processes request services from the servers, which provide these services.
The "X.500 functional model" consists of two kinds of processes or agents:
Basically, the DSA's are the servers providing the directory services to the DUA's, which are its clients.
The DUAs and DSAs communicate with eachother via two protocols:
The DUA uses the DAP to send directory requests to a DSA and to receive the reply. Similarily, if the directly attached DSA cannot service the request from the DUA, it uses the DSP to pass the request to other DSAs in the the network.