[ntp:questions] Time slew doesn't seem to work

David L. Mills mills at udel.edu
Fri Apr 11 18:47:14 UTC 2008


The original model implemented in the Alpha kernel does not step the 
clock backward unless the step is greater than two seconds. Rather, it 
stops the clock and advances one microsecond at each read. This applies 
whether NTP slews or steps. Various ports of that code have broken this 
model in every possible way.

The 500-PPM slew once was common in the ubiquitous Unix kernel. The 
value was chosen as a compromise between short slew time for relatively 
small adjustments and moderate resolution during the slew interval. This 
works out to 5 microseconds per tick with a 100-Hz clock and a 5-us 
jitter. In truth this could be changed to anything you want, as long as 
the value is fixed.

Some kernelmongers, including SGI and Linux, have put up fancy code 
designed to reduce the slew time for large adjustments. This inserts and 
additional pole in the clock discipline impulse response which results 
in unstable behavior for adjustments over half a second or so.

The default step threshold is 128 ms; the -x command line option sets it 
to 600 s and does nothing else. The 600-s value was chosen as the 
expected accuracy with eyeball and wristwatch. If the extra pole is not 
there, the original response is preserved over that range and largely 
independent of the slew value itself.

Say you change from 5 us per tick to 1 ms per tick or 100 ms/s. This 
would amortize a 600-s adjustment in almost two hours and reduce the 
resolution to 1 ms. If your extended network requires synchronization to 
better than one second, in all but the last second of that slew the 
network would not be synchronized.


David Woolley wrote:
> Unruh wrote:
>> Not at 500PPM limit but if you use the tick adjustment, it is more than
>> enough time. (The tick adjust limits out at 100,000PPM)
> I believe ntpd assumes that it is constant.  Having a large tickadj 
> causes poor resolution when using the user space discipline.
> I suspect that Dr Mills would say that a high slew rate also compromises 
> the system behaviour when you cascasde multiple strata.

More information about the questions mailing list