From owner-freebsd-current Sat Jun 15 10:40:36 1996 Return-Path: owner-current Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id KAA06243 for current-outgoing; Sat, 15 Jun 1996 10:40:36 -0700 (PDT) Received: from halloran-eldar.lcs.mit.edu (halloran-eldar.lcs.mit.edu [18.26.0.159]) by freefall.freebsd.org (8.7.5/8.7.3) with SMTP id KAA06232 for ; Sat, 15 Jun 1996 10:40:33 -0700 (PDT) Received: by halloran-eldar.lcs.mit.edu; (5.65/1.1.8.2/19Aug95-0530PM) id AA25187; Sat, 15 Jun 1996 13:40:24 -0400 Date: Sat, 15 Jun 1996 13:40:24 -0400 From: Garrett Wollman Message-Id: <9606151740.AA25187@halloran-eldar.lcs.mit.edu> To: Nate Williams Cc: current@FreeBSD.org Subject: NTP gurus In-Reply-To: <199606150254.UAA23487@rocky.sri.MT.net> References: <199606150254.UAA23487@rocky.sri.MT.net> Sender: owner-current@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk < said: > Anyway, back to my question. How do I determine 'how accurage' my > system's clock is based on /etc/ntp.drift? What are good numbers to > have? Actually, the best thing to look at (because it's updated on an on-going basis) is the output of `ntpq -c rv'. For example, on my system: wollman@khavrinen(62)$ ntpq -c rv status=06f4 leap_none, sync_ntp, 15 events, event_peer/strat_chg system="FreeBSD", leap=00, stratum=3, rootdelay=27.08, rootdispersion=14.30, peer=61525, refid=amsterdam.lcs.mit.edu, reftime=b56d6d78.705ad000 Sat, Jun 15 1996 13:12:24.438, poll=6, clock=b56d6d7e.bf068000 Sat, Jun 15 1996 13:12:30.746, phase=4.362, freq=27394.97, error=3.20 The `freq=' number is the frequency error, although measured in odd units. Multiply by 86400/1024, and you have the error in microseconds per day. (As given, the `freq' is in 2^-10 us/s.) In my case, my clock is about two seconds per day fast (slow?). (I could use Greg Troxel's ``time surveying'' code over the course of a few months for a much more definite and accurate idea of the characteristics of my hardware oscillator, and of the quality of the servers I am using.) Some other useful things in this listing... `rootdelay' and `rootdispersion' give an estimate of the actual quality of time service relative to the authoritative time source(s) which are at the root of the distribution tree. `poll' is the polling interval, in log2 seconds. `phase' is the actual current estimated phase error between your system clock and what it thinks the current time is; `error' is an indication of how accurate the phase and frequency measurements are thought to be. `phase' and `poll' are also available in the `ntpq -p' display. The difference between the nominal and measured frequency of the timer (as determined by Bruce's code) is about 10 ns in the period of the oscillator (which is about 838.1 us); by my calculation, this could account for about one second per day. I suspect that there is enough hour-to-hour variation in the oscillator for this difference to make no matter. -GAWollman -- Garrett A. Wollman | Shashish is simple, it's discreet, it's brief. ... wollman@lcs.mit.edu | Shashish is the bonding of hearts in spite of distance. Opinions not those of| It is a bond more powerful than absence. We like people MIT, LCS, ANA, or NSA| who like Shashish. - Claude McKenzie + Florent Vollant