[ntp:questions] Packet timestamps when using Windows-7/Vista
David J Taylor
david-taylor at blueyonder.delete-this-bit.and-this-part.co.uk.invalid
Fri Dec 11 08:23:00 UTC 2009
[Posted to NTP Hackers, but no reaction there as yet]
I've written a small program which sends some SNTP packets to various NTP
servers on my LAN, and looks at the timestamps which the server adds as
its RX and TX times. With Windows-7 and Vista I'm seeing some odd
results. I'm measuring (server TX) - (server RX) time.
1 - Bacchus - Windows 2000 Server - GPS/PPS ref. clock - older computer -
550MHz Pentium III. Most values around 70 us (microseconds) with a tail
up to about 120us.
2 - Feenix - Windows XP Home - GPS/PPS ref. clock - 1.9GHz single core
Pentium 4. Most values around 20-40us, tail to 100us. Occasional values
out to 1000us or more.
3 - Narvik - Windows XP Pro - LAN-synced - ~2.2GHz dual-core PC. Most
values 6 - 11us. Occasionally more.
4 - Gemini - Windows Vista - LAN synced - ~2.2GHz dual-core PC. A
distribution ranging from about -1000us to +1000us, possibly triangular
(I'm looking on a log Y-axis).
5 - Puffin - Windows Vista - wifi-LAN-synced - ~2+ GHz dual-core PC.
Similar results to Gemini.
6 - Stamsund - Windows 7 - GPS/PPS ref. clock - 2.8GHz single core HT
Pentium 4. Most results in the range 17-25us, but with some extremes.
7 - Hydra - Windows 7 - LAN synced - single-core AMD 3200+. Similar
distribution to Gemini.
So there are two things about these results which concern me:
A - if my program is correct, it seems that the timestamps on the
Windows-7/Vista systems are being set inconsistently, in that the server
transmit timestamp can be /before/ the receive timestamp! From the
distribution it seems that one timestamp is "precise" and the other a
Windows value based on a one millisecond (approx) timer.
B - Why does the Windows-7 system with a GPS/PPS reference clock not
behave in the same way i.e. it doesn't give negative (TX-RX) times?
What I don't know is whether these results are to be expected, whether
they may have any effect on the operation of NTP, and whether they might
even be the results of coding errors. I'm wondering whether this
indicates that something could be done to improve NTP on Windows-7/Vista,
and whether it might even provide a further clue as to why 4.2.5 performs
worse on Windows-7/Vista than on 2000/XP.
More information about the questions