How accurate can I expect the time to be from an NTP stratum 0 server on the same subnet on an Ethernet network?

I have an application that depends on gpsd and ntpd to accurately set the system time on a linux machine.

gpsd fed NMEA + PPS

The application suppresses ~ 25 MB per second over the network, and I think that loading in the system causes a jitter in time somehow. (loaded PCI Express bus causing intermittent interrupt delay)

I have another machine that is not loaded at all, which I could configure to read GPS and act as an NTP server for a loaded computer. (a loaded machine will get startum 1 ???)

How accurate can I expect the time to be from the stratum 0 NTP server server on the same Ethernet subnet?

I hope this is not too off topic, I am sure that someday someone else will be happy that the answer is documented here .; -)

+4
source share
3 answers

The best information I could find on NTP Accuracy seems to indicate 1-2 ms in the LAN settings:

NTP v4 with kernel mods to support it, is capable of much better than 1 ms, possibly up to 1 ns. According to [Dave Mills], NTP v3 is accurate to 1-2 ms on a local network and 10 ms on a WAN. http://www.cis.udel.edu/~mills/ntp.html

Other articles suggest that with an accurate time source, such as a GPS time source, NTP is accurate up to 50us, but links to Linux kernel support say that accuracy in a few ms is possible. http://www.atomic-clock.galleon.eu.com/support/ntp-time-server-accuracy.html

Another article says that it depends on the predictability of network delays (i.e., low jitter networks). http://www.postel.org/pipermail/end2end-interest/2003-April/002925.html

+4
source

NTP is generally considered good for small single-bit ms in this situation.

After it has been running for several days, there really shouldn't be a lot of jitter in any of the actual hours, because ntpd implements a bunch of very long-term filtering.

However, you really do not say how you measure time, and any mechanism that you use can be as unstable as (if not more) basic synchronization.

If you have a busy network and network cards with really deep buffering, this may not help, since there will be more jitter between the arrival of the packet and the interrupt service. It’s better if you switch to an Ethernet switch, all the worse because old-fashioned hubs are better for synchronization than switches in this regard.

+2
source

The stratum level of the NTP server in question is not related to clock / server accuracy. This purely means the distance from the "reference clock".

More importantly, with regard to the accuracy of NTP (in terms of time, of course), this is the latency of the network between the servers, the type of server used and the potential server load. Depending on which NTP server you are using, they document how accurate their time is. Each server software uses different algorithms to calculate time based on network latency and server load, and this comes down to the accuracy of these algorithms.

For example, the MS NTP server states that it will be accurate in 2 seconds. OpenNTPd has stated that it will not give you possible server accuracy. There are cases where stratum 3 servers may be more accurate than stratum 2 servers, etc.

0
source

Source: https://habr.com/ru/post/1277110/


All Articles