[time-nuts] Network Time Puzzle

Peter Martinez peter.martinez at btinternet.com
Sun May 26 08:26:24 UTC 2019

Greetings, Time Nuts, from a new member.

I have two old Windows XP laptops on which I can lock the timing to GPS, 
which means I can read the time at which things happen to a few 
microseconds.  I thought I would modify some of my old NTP software, both 
client and server, to make use of this and see how well the ntp system 

It's all working fine, but in the course of trying to decide what to set for 
the "local port address", I discovered a strange effect.  If I set the local 
port address of my ntp client to one value (somewhere between 49152 and 
65535 for example), then query an ntp server on the internet, then change 
the local port to another value and do it again, the Time Offset and Round 
Trip Delay readings come back different. Change the port back and the 
offset/delay values go back to the original.  Same on the other PC.  But 
ONLY on some distant servers.  Most of them don't show the effect.

I have seen jumps of about 6.2msec in delay and 3.1msec in offset, but the 
offset might be positive or negative.  This leads me to think that this 
wierd effect is a propagation delay occuring in one of the two paths, either 
the path from me to the server or from the server back to me.  On some 
servers I have seen the delay jump by 12.4msec with no jump in the offset. 
This must be a 6.2 msec. delay in BOTH propagation delays.  In this case, 
four different values of local port address can give rise to 4 different 
delay/offset combinations.  A scatter plot of delay versus offset, with 
random port address, shows four dots in a diamond shape.  Different delay 
values give different-sized diamonds.  Routes with more than one such effect 
show even prettier patterns of superimposed diamonds.  The effect is stable 
over time, at least for the length of time (weeks) I have been studying it.

If this is real (and I am fairly sure it's not a bug at my end or at the 
servers), then it will impact on the accuracy which can be achieved with 
NTP.  I ask myself "Why does the network do this?".  Is there a valid reason 
for it, or is it a side-effect of something else?  Has anyone else seen this 
effect?  Is there anyone out there reading this who could modify an NTP 
client program so that the loal port address can be changed manually, and 
see if this is a widespread feature of the internet.  If this effect didn't 
occur, NTP could be a lot better than it is now.

Peter Martinez G3PLX

More information about the Time-nuts_lists.febo.com mailing list