The Limits of NTP Accuracy on Linux

65 signa11 14 8/26/2025, 1:02:59 AM scottstuff.net ↗

Comments (14)

diarmuidc · 55m ago
Why is there no mention of PTP here? If you want accurate time synchronisation in a network just use the correct tool, https://en.wikipedia.org/wiki/Precision_Time_Protocol

Linux PTP (https://linuxptp.sourceforge.net/) and hardware timestamping in the network card will get you in the sub 100ns range

senderista · 1m ago
PTP is discussed in the concluding article of the series: https://scottstuff.net/posts/2025/06/10/timing-conclusions/
jacob2161 · 2m ago
Chrony over NTP is capable of incredible accuracy, as shown in the post. Most users who think they need PTP actually just need Chrony and high quality switches/NICs.

Chrony is much better software than any of the PTP daemons I tested a few years ago (for an onboard autonomous vehicle system).

rendaw · 22m ago
There's a discussion on that in the comments at the bottom of the article, where the author explains why it wasn't analyzed.
azalemeth · 2h ago
My experience with rt Linux is that it can be exceptionally good at keeping time, if you give up the rest of the multitasking micro sleeping architecture. What do you need this accurate time for? I'm equally sure, as acknowledged, the multipath routing isn't helping either.
mustache_kimono · 1h ago
> What do you need this accurate time for?

Securities regulation?: https://podcasts.apple.com/us/podcast/signals-and-threads/id...

JdeBP · 1h ago
Bear in mind that the author specifically reminds us, halfway down, that the goal is consistency, not accuracy per se. Making all of the systems accurate to GNSS is merely a means of achieving the consistency goal so that event logs from multiple systems can be aligned.
throwawaysoxjje · 14m ago
It’s wild they talk about the jitter in the pps signals but glossed over the jitter the oscilloscope?
sugarpimpdorsey · 1h ago
There are so many inaccurate technical details here I wouldn't know where to begin, let alone write a blog post. Sigh.
ainiriand · 5m ago
Unfortunately I think the same as you. The provided details in the blog post are by no means any way of doing any sort of time benchmark or network i/o benchmark. For starters, he is comparing times from tsc enabled hardware (x86_i64), with raspberry pi which are arm. Network i/o benchmarking on linux should be done with system calls to the network cards or input devices and not through the kernel drivers etc...
jmpman · 54m ago
I would be extremely interested in reading your blog post. Fascinating topic.
watersb · 2h ago
Segal's Law:

"A man with a watch knows what time it is. A man with two watches is never sure."

https://en.m.wikipedia.org/wiki/Segal's_law

JdeBP · 1h ago
A person with two watches finds xyrself suddenly in the messy business of doing full NTP, rather than the much simpler model of SNTP. (-:
nullc · 2h ago
GPS timing modules should have a sawtooth correction value that will tell you the error between the upcoming pulse and GPS time. The issue is that PPS pulse has to be aligned to the receiver's clock. Using that will remove the main source of jitter.