How NTP Performance Is Determined (Computer Network Time Synchronization)

No discussion of NTP operation is complete without mention of where timekeeping errors originate and what NTP does about them.However, for the purposes of discussion here, it is necessary only to describe how the errors are interpreted and how the error budget is compiled and passed along the chain from the primary servers through intervening servers to the clients.

In the normal course of operation, the NTP data-grooming and discipline algorithms keep track of both deterministic and nondeterministic errors. Deterministic errors are those that can be measured and corrected, such as the quasi-constant components of the time error and oscillator frequency error. Nondeterministic errors are estimated from measured root-mean-square (RMS) offset differences between samples from the server (peer jitter) and between samples from different servers (select jitter). In addition, the discipline algorithm has two statistics: clock jitter, computed from clock update time differences, and oscillator wander, computed from clock update frequency differences.

The peer dispersion statistic e represents the error due to the clock oscillator maximum frequency error ^ or tolerance and clock reading maximum error p or precision. (A glossary of the Greek symbols used in this topic is shown in Figure 11.3.) When a server update is received, the round-trip delay 5 is calculated, and e is initialized with the sum of the remote server and local client precisions, usually something in the low microseconds, then increases at a fixed rate of 15 ]s for each second after that until reset by a subsequent update. The peer jitter statistic 9 is an average of the offset differences between the last several updates. There are two derived statistics included in the server update message: root delay A and root dispersion E. These represent, respectively, the accumulated delay and dispersion of the server relative to the root of the NTP synchronization subnet. These statistics are updated as packets arrive for each association separately.


To assess the quality of service, a metric interpreted as the root distance A is defined in Equation 11.11 and reproduced here for convenience:

tmp94_thumb

There are two statistics available to application programs using the kernel API, maximum error and expected error.This is the deterministic upper bound that the actual time offset can never exceed. The expected error represents the nondeterministic uncertainty of the offset as estimated from the various jitter contributions, which we know as the peer jitter. This is an important distinction since different applications may need one or the other or both of these statistics.

Next post:

Previous post: