[ntp:questions] Compensating for asymmetric delay on a per-peer/server basis?
martin.burnicki at meinberg.de
Thu Sep 11 13:35:06 UTC 2014
William Unruh wrote:
> Not if you have gps reference at both ends, though why you would not use
> the gps as the timesource then I do not know.
The case mentioned by the original poster is just one possible reason.
If you have a GPS controlled NTP server at home, and a fast internet
connection, and you are willing to contribute to the pool, then usually
external clients querying your server will see a systematic offset/error
depending on the ratio of the upload/download speed for your home
If you had a chance to measure this from an external node using another
GPS controlled NTP server you could try to compensate this, and thus
provide better accuracy to the clients coming from the pool.
This is also what Rob has mentioned in another post of this thread, and
I agree with Rob that a one approach could be to specify (and configure
for ntpd) the systematic error due to asymmetry of your internet connection.
However, this can also be pretty tricky if you have several NTP nodes on
your home network, if all nodes and the inet router are connected to the
For different nodes on you home net there is no asymmetry (thus no time
error), but for each of them who contacts also an external server there
is. And often a specific machine contacts the other internal devices as
well as the external ones via the same own LAN interface.
So for your internal operation this means:
- If you specify a fudge time for a specific interface this may be OK
for external servers but yield an error for internal servers, i.e.
exactly the other way round as without compensation.
- You had indeed to specify a fudge time for servers of which you know
they are outside on the internet, e.g. other pool servers
On the other hand, if your local NTP server shall be accessible both for
external pool clients, and local clients, how should you know where a
specific request comes from? Based on the IP address? Only if the local
network and the internet interface are connected via different interfaces?
So even though it would be good to be able to specify some compensation
values, there should be different ways to do it, and putting all
together in a way that there is no error is tricky.
More information about the questions