Distributed Name Service (DNS) Management Operations Manual

DNS Database Replication
How DNS Exports the Name Database
31258 Tandem Computers Incorporated 5–5
The Queue Manager
The name manager makes no attempt to determine which systems are to be involved
in the update. That task is delegated to the part of the name exporter known as the
queue manager. The queue manager’s main processing loop is as follows:
1. Begin a TMF transaction.
2. Read the primary queue with lock.
3. If a request is found, analyze the request to determine the systems to which it
needs to be sent. For each of these systems, insert a copy of the request into the
corresponding secondary queue and delete the primary queue entry.
4. End the TMF transaction.
5. If the primary queue is empty, issue a command to the name manager whose
completion signals when a new request has been inserted into the primary queue.
Note that the name exporter issues a request to the name manager only when the
primary queue is empty; as long as there are requests in the primary queue, the
exporter processes them without involving the name manager.
The Export Controller
In addition to the queue manager, the name exporter contains an export controller and
up to 31 export tasks. The export controller monitors the status of secondary queues,
initiates export tasks when required, and monitors export task execution. When
initiated, each export task processes the secondary queue for a single remote system.
The export task’s main processing loop is as follows:
1. Begin a TMF transaction.
2. Read the secondary queue with lock.
3. If an end-of-file (EOF) is reached, processing stops.
4. Otherwise, format the SPI request and send it to the remote manager.
5. If there is no error, delete secondary queue entry and end the TMF transaction.
6. Otherwise, abort the TMF transaction and stop.
Time-Staged Replication When you change the definition of a replicated name, DNS attempts to update all
remote copies of that definition after the primary update. If a node in a name’s
domain is unavailable at the time of an addition or modification to the DNS database,
all copies of that name cannot be updated. Since this update cannot occur
immediately and simultaneously, DNS queues the update for the remote nodes and
delivers it individually to each node on which the replicated name exists. This
technique is called time-staged replication; it is illustrated in Figure 5-2. Time-staged
replication allows some copies of name definitions to be temporarily inconsistent with
others.