In the mid-1980s, the ISO began outlining X.500, a standard that builds directories on distributed databases so that companies can divide their networks into distinct domains. Information is passed between domain servers in a hierarchical manner.
The first standard, completed in 1988, lacked needed features, such as replication. Also, X.500 was rigid, requiring addresses defined in a fixed manner: country, company, organizational unit, and locality information. By the time X.500 came into existence, many firms were reluctant to discard existing addressing schemes.
Also, the standard was designed to work with X.400, a lower-level E-mail standard, and it didn't work easily with other types of mail systems.
A 1992 version of X.500 includes replication facilities, so multiple copies of a global directory can be kept on different machines. Users now have the flexibility to customize addresses.
Problems may arise because the current specifications are broad and vendors have a lot of latitude. There are no accepted APIs that outline how to move information from one X.500 system to a second.
A directory system includes a list of such mailing addresses as well as the software needed to move it from one location to the next. X.500 has a hierarchical directory structure and global information; instructions are stored in a global Directory Information Tree (DIT). This information is then broken up and spread to different directories, dubbed Directory System Agents (DSAs), through a network via a Directory System Protocol, which lets directories exchange information.
The Directory User Agent (DUA) is client software that presents directory options to a user. A DUA then accesses the nearest DSA via a D
irectory Access Protocol (DAP), which connects a user to a directory system. DSAs then exchange information so the user can either transmit a message or locate a mailing address.