Hi all,

I wrote about connecting to close by server is better but I was still 
unsatisfied with the way ntpd reacted to small network glitches when 
using reasonable poll values.

The silly thing is I knew I have a decent oscillator and that ntpd 
shouldn't fool around with my clock that much with its supposedly fancy 
"averaging" algorithms that are trying to figure out the real time it is.

I was even more deceived by ntpd after spending a few hours searching the 
docs and the mailing lists to find out that there seems to be no way of 
configuring limits on how much ntpd fools with the frequency of my clock. 
Tell me I am a fool if I missed it in the docs ;-)

Anyway, I am quite satisfied with the hack I came up with, see:

http://www.pool.ntp.org/scores/207.236.226.149

It seems now clear that my server keeps time between 0 and +10 ms viewed 
from the pool monitoring system. You could draw a nice average line 
showing that by removing the peaks caused by network glitches.

Hack: By trial and error, I found out the min and max frequency I want my 
clock to have (mind you ntpd) and I just overwrite the value set by ntpd 
if needed every minute with the script below. Try it out if you are tired 
of ntpd typical roller-coaster rides ;-) Typical example of what I used to 
experiment before (at the time of this writing):

http://www.pool.ntp.org/scores/147.231.100.5

So, the basic idea is that I don't care if ntpd thinks I am 90 ms ahead or 
behind, I know I can't be more than 5 ms ahead or behind and my system 
react accordingly thus keeping more accurate time.

#!/bin/sh

# Note that values are system dependant !!!!
# 251616 = 3.839 in ntpq -c rv
# 269120 = 4.106
# 280448 = 4.279
# 288544 = 4.403


let LOWLIMIT=280448
let HILIMIT=287520

let FREQ=`adjtimex -p | grep frequency | cut -d ":" -f 2 | cut -c 2-`
if [ ${FREQ} -gt ${HILIMIT} ]
then
adjtimex -f ${HILIMIT}
fi

if [ ${FREQ} -lt ${LOWLIMIT}  ]
then
adjtimex -f ${LOWLIMIT}
fi

Louis
http://blogtech.oc9.com
http://www.pool.ntp.org/scores/207.236.226.149
_______________________________________________
timekeepers mailing list
[email protected]
https://fortytwo.ch/mailman/cgi-bin/listinfo/timekeepers

Reply via email to