[ntp:questions] NTP 4.2.2p4 loopstats

John Gill jg at jgill.net
Wed Nov 15 23:49:18 UTC 2006

And I thought I was asking such a simple question...  :)

Many thanks to all who took the time to enlighten me.

For the record, TomD's patch works well.  As to whether sys_jitter or 
clock_jitter is a better indicator of performance, I am certainly not 
going to presume to differ with those far more qualified than I.


David L. Mills wrote:
> TomD,
> There are several jitter statistics now, including per-association 
> jitter and system jitter. These statistics are averages of first-oder 
> time differences. It became apparent that frequency differences are a 
> valuable indicator of equipment malfunction, A/C failure and so on. I 
> could have simply tacked on an additional field, but there would be many 
> more guys than just you out for my scalp. The old statistic wasn't very 
> useful anyway. Take it from me and my own monitoring stash that you 
> really want the frequency differences, properly interpreted as wander or 
> maybe noise, but not jitter in the normal techical interpretation.
> The intended interpretation of loopstats is, as the name suggests, 
> watching the discipline loop time, time differences, frequency, 
> frequency differences and time constant (poll interval). From long 
> experience, these xstatistics are really what you need to know. Watch 
> the ;noise over a day or two; see how exquisitly sensitive it is.
> Dave
> TomD wrote:
>> Wandering back to jg's original question...
>> It appears that the jitter field which gets written to loopstats
>> changed considerably between 4.2.0 and 4.2.2.
>> The new value, in the global variable clock_jitter, is calculated from
>> (last offset - current offset) rather than from the current offset as
>> in 4.2.0.
>> This new value is displayed by ntpq rv as "noise".
>> The old value is still around in the global sys_jitter.     ntpq still
>> displays this value as "jitter" in 4.2.2.
>> The sys_jitter value still gets updated, but not by ntp_loopfilter
>> anymore - which only updates clock_jitter.
>> This is significant to anyone who post-processes loopstats, as the new
>> values are typically smaller in magnitude.
>> I can't find anything about it in the bugs, docs, or mailing list.
>> Maybe I'm just not finding it.
>> A quick fix (...well, a quick ugly hack actually...), for anyone who's
>> loopstats post-processing has been disrupted with 4.2.2, is to change
>> the calls in ntpd/ntp_loopfilter.c to pass  sys_jitter  instead of
>> clock_jitter  to the 'record_loop_stats'  function.
>> Note that you probably don't want to change *anything* else in
>> ntp_loopfilter -  just the number which gets written to loopstats, lest
>> you disrupt the calculation of poll interval, etc.
>> -tom-

More information about the questions mailing list