Re: [chrony-users] measuring accuracy of time synchronization among group of servers

[ Thread Index | Date Index | More chrony.tuxfamily.org/chrony-users Archives ]




William G. Unruh __| Canadian Institute for|____ Tel: +1(604)822-3273
Physics&Astronomy _|___ Advanced Research _|____ Fax: +1(604)822-5324
UBC, Vancouver,BC _|_ Program in Cosmology |____ unruh@xxxxxxxxxxxxxx
Canada V6T 1Z1 ____|____ and Gravity ______|_ www.theory.physics.ubc.ca/

On Wed, 3 Jun 2020, Simon Kepp wrote:

I have ordered a Stratum 1 GPS appliance to use for further testing, and my
current accuracy requirement is 50ms, but what I'm really interested in, is
understanding how to measure the actual precision, I am obtaining, not
necessarily precision against real time, but relative precision among a
group of servers.

Teh only way of really measuring how well the systems synchronize is to
atttach a much better clock to the machine and see how well the machine time
agrees with that real time. Now it could be off by 17 days, but if all of the
machines are off by exactly the same 17 days to within a nanosecond then the
clocks are all synchronized with each other to a nanosecond.

Using the network to try to see how well they synchronize has problems with
"how long does the system clock read take, how long does it take to get the
signals out onto the network, etc.

I also do not know how far apart the various clocks are physically. If they
are all in the same room, plugged into the same router, then you should easily
get microsecond synchronization. If they are scattered around the world, by
far the best thing is to synchronize each to UPS, and they will then be
synchronized to each other by microseconds or, with a bit of work,
nanoseconds.

In fact synchronizing each to  GPS is probably the best way to make sure they
are synchronized to each other. I know youdo not care if they are synchronized
to UTC, but it is still the best way of synchronizing them to each other. if
they are all in the same room, you can attach them each to the one GPS timing
receiver. (Note that gps timing can cost much less than $100.)
..


On Wed, Jun 3, 2020 at 9:03 PM Bill Unruh <unruh@xxxxxxxxxxxxxx> wrote:

I have a cluster of servers KLCEPH01-05 in a lab, that I must maintain
synchronized clocks on to maintain cluster consistency.clock being
accurately synced to real time is always a plus, but not a strict
requirement in this case.
I've set up Chrony on the servers, and configured all servers with the
same
external upstream source, (currently dk.pool.ntp org, but experimenting
to
find the best source). Furthermore, I've set up all clustermembers to use
each others as peers. My challenge now is to determine the accuracy to
which these servers are synchronized relative to each other.
Output from chronyc sources -v from KLCEPH02 produce the following
result:
root@KLCEPH02:~# chronyc sources -v
210 Number of sources = 8

 .-- Source mode  '^' = server, '=' = peer, '#' = local clock.
/ .- Source state '*' = current synced, '+' = combined , '-' = not
combined,
| /   '?' = unreachable, 'x' = time may be in error, '~' = time too
variable.
||                                                 .- xxxx [ yyyy ] +/-
zzzz
||      Reachability register (octal) -.           |  xxxx = adjusted
offset,
||      Log2(Polling interval) --.      |          |  yyyy = measured
offset,
||                                \     |          |  zzzz = estimated
error.
||                                 |    |           \
MS Name/IP address         Stratum Poll Reach LastRx Last sample


===============================================================================
^+ time.cloudflare.com           3  10   377   489  -1763us[-1763us] +/-
12ms
^* 5.103.128.88.static.fibi>     1  10   377   510  -1913us[-1891us] +/-
7726us
^- matrix.rxtx.dk                2  10   377    45  -2797us[-2797us] +/-
26ms
^+ sweetums.eng.tdc.net          2  10   377   273  -2036us[-2036us] +/-
29ms
=+ klceph01.kepp.tech            2   6   377    21   +459us[ +459us] +/-
8107us
=- KLCEPH03.kepp.tech            4   8   275  478m   +138us[ -647us] +/-
9145us
=- klceph04.kepp.tech            3   6   377    68   -353us[ -353us] +/-
8980us
=+ klceph05.kepp.tech            3   8   373   221   -212us[ -212us] +/-
o
Klceph03 seems to be disconnected. It has been 478 min=30000 sec since it
last
responded
so I would exclude that.

also, the readings could be out because your external source is flakey and
your machines are reading it at different times.
Note that is is miliseconds off and is also pretty unstable. If you really
want to test,
get yourself a gps clock and measure how far the clocks are from that gps
time
lwhen you connect it to each of the machines. That will give a much better
measure.

You do not say what your requirements for synchronization are. Minutes,
seconds, milliseconds, microseconds, nanoseconds? If you want a few
microseconds using some network source is a bad idea. If you want
milliseconds or longer, then you are probably ok as is.



7752us


my impression is, that taking abs(xxxx) + abs(zzzz), would be a good
meassure for the upper bound of how well, the servers are actually in
sync
( about 8-10 ms in the example above). Is this interpretation correct, or
is there a better way of determining a bound of their  current internal
clock accuracy?

Best Regards
Simon Kepp
Kepp Technologies


--
To unsubscribe email chrony-users-request@xxxxxxxxxxxxxxxxxxxx
with "unsubscribe" in the subject.
For help email chrony-users-request@xxxxxxxxxxxxxxxxxxxx
with "help" in the subject.
Trouble?  Email listmaster@xxxxxxxxxxxxxxxxxxxx.




--
To unsubscribe email chrony-users-request@xxxxxxxxxxxxxxxxxxxx with "unsubscribe" in the subject. For help email chrony-users-request@xxxxxxxxxxxxxxxxxxxx with "help" in the subject.
Trouble?  Email listmaster@xxxxxxxxxxxxxxxxxxxx.


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/