Re: [chrony-users] Asking chronyd not to combine time from multiple sources

[ Thread Index | Date Index | More 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 ______|_

On Thu, 21 Sep 2017, Chris Perl wrote:

I would like a way to be able to ask chronyd not to combine time from multiple sources, but instead to just trim the local clock
from the selected system peer.

I believe the ways you could do that today are:

1. Only have 1 server defined in chrony.conf
2. Use the `trust' and `prefer' directives on just one server in chrony.conf

Unfortunately, I don't think I can get what I want using those while also having the reliability I'm looking for.  The issues
I'm running into with the current set of keywords stems from my exact setup, so let me explain that it a bit more detail.

I have client systems talking to two local chronyd servers.  These are going to be high quality sources of time, as they are
backed by GPS receivers (or other high quality time sources) and are located very close to the clients.

However, I would like a way to detect if either of them goes crazy, so I'd like to add in some additional chronyd servers that
are close, but farther away than the local servers, and as such are subject to more uncertainty due to network delay.

That is why any ntp manual recommends that you use at least 3 servers, so that
the system can tell when one of them has gone crazy. With just two it is
But that third one could be lower quality one. If the two good ones are in
agreement, the third one will more or less be ignored. If one ofthe "good"
ones goes crazy and becomes much worse than the third one, then chroy will use
the good one and the third one.

What I had intended to do, was to mark the two local servers with `trust' and `prefer', which would cause the other servers to
basically just participate in deciding if either of the trust sources was crazy (I think).

No need. chrony will find that they deliver better time (less fluctuation) and
use them to discipline the local clock.

But, if both of the local servers are selectable, I wind up with time being combined, which I would like to be able to control
(for the purposes of reporting traceability back to UTC).


What I want to do is to implement a `exclusive' or a `nocombine' server directive (like `noselect', `trust', `prefer', etc) that
would allow you to control this.

The idea with `exclusive' being that if the selected system peer is marked exclusive, then all other sources that would have
been combined in SRC_SelectSource are discarded and not combined (perhaps marked SRC_EXCLUSIVE_EXCLUDED or something like that).

The idea with `nocombine' being that if a set of servers that are selectable, but not the system peer are marked `nocombine',
they will be discarded and no combined (perhaps marked SRC_NOCOMBINE or something like that).

Either one would work for my use case.

Are there other directives that I'm missing that could help me achieve what I'm shooting for?

If not, would you be open to patches implementing either `exclusive' or `nocombine'.  I think it would be a relatively easy

Not at all clear what you are asking for.

Mail converted by MHonArc 2.6.19+