Each Directory Server has an embedded replication server that is responsible for transmitting updates to other replication servers. Each replicating base distinguished name (DN), such as cn=schema, dc=example,dc=com, has a separate component called a replica. Each replica connects to the embedded replication server running within the Directory Server Java virtual machine (JVM) process.

When a client application updates an entry on the Directory Server, the replica sends an update message to its embedded replication server. The replication server applies the change to the replicationChangelog backend repository and then sends an update message to the connected replication server on another directory server. The replication server on other directory servers then passes the change to the appropriate replica, which in turn applies the change to its backend after performing conflict resolution.

The following figure shows the standard setup.

Replicas and Replication Servers
Diagram of the replication process. The client or application sends an update to Identity Store A, which replicates the update to its built-in replication server. The replication server replicates the update to Identity Store B.
  1. The client or application sends a modification request to Identity Store A. The identity store applies the change.
  2. The Replica backend in Identity Store A sends an update message to the Replication Server in Identity Store A.
  3. The Replication Server in Identity Store A pushes the update to the Replication Server in Identity Store B.
  4. The Replication Server in Identity Store B applies the update the to the Replica backend in Identity Store B.