clock problem
Oliver Fromme
olli at lurza.secnetix.de
Fri May 11 10:11:41 UTC 2007
M. Warner Losh wrote:
> Peter Jeremy wrote:
> : There seems to be a bug in ntpd where the PLL can saturate at
> : +/-500ppm and will not recover. This problem seems too occur mostly
> : where the reference servers have lots of jitter (ie a fairly congested
> : link to them).
>
> Yes. This is a rather interesting misfeature of ntpd. Its rails are
> at +/- 500ppm, and when it hits the rail it assumes that things are
> too bad to continue and it stops.
I think it is related to the maximum slew rate of 1/2000,
which is equivalent to 500 ppm. The ntpd(8) manpage says:
"Since the slew rate of typical Unix kernels is limited to
0.5 ms/s, each second of adjustment requires an amortization
interval of 2000 s."
And a bit further down:
"The maximum slew rate possible is limited to 500 parts-per-
million (PPM) as a consequence of the correctness principles
on which the NTP protocol and algorithm design are based.
As a result, the local clock can take a long time to converge
to an acceptable offset, about 2,000 s for each second the
clock is outside the acceptable range."
> Most PC clocks have a frequency error on the order of 10-150ppm, so it
> doesn't take a whole lot of jitter from a conjectsted remote network
> to exceed the limits...
I think the "burst" and "iburst" options for the server lines
in ntp.conf might help in such cases.
Of course, the best solution is to buy a GPS or DCF radio
receiver and set up a startum-1 yourself. But last time
I tried to do that with a cheap DCF plug, it wasn't very
well supported on FreeBSD. Even an expensive Mainberg
receiver ( http://www.meinberg.de/english/ ) with an RS232
output worked much more accurately with a Solaris machine
than with FreeBSD. (Unfortunately, the Mainberg model
availbale to us did not have NTP support via ethernet
itself, only serial output.) I have to admit that that
was in FreeBSD 4.x days. The situation might have
improved in the meantime (I don't know).
Best regards
Oliver
--
Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M.
Handelsregister: Registergericht Muenchen, HRA 74606, Geschäftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün-
chen, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart
FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd
"C++ is to C as Lung Cancer is to Lung."
-- Thomas Funke
More information about the freebsd-stable
mailing list