[ntp:questions] symmetricom tp1100 stratum and leap indicator behavior

Terje Mathisen terje.mathisen at tmsw.no
Thu Aug 1 11:43:30 UTC 2019

Chris wrote:
> On 07/31/19 20:10, Andrew Harrison wrote:
>> The backstory...  I've been tasked with deploying a pair of 
>> Symmetricom TP1100 Time Providers with GPS antennae as the official 
>> time source for the company (replacing an ancient server with a 
>> Meinberg card in it).  My company actually purchased the Symmetricoms 
>> a few years ago, but they never got around to putting them in 
>> production.  No one was able or willing to put in the time to get them 
>> going.  I started working at the company recently and they gave the 
>> project to me.
>> I've got them up and running and my test ntp client (my Linux 
>> workstation running ntp 4.2.8p12) can pull time from them just fine.
>> Now for the hard part.  What we want to happen is that if the GPS of 
>> the primary Symmetricom goes offline, we want the clients to start 
>> getting time from the backup unit.
>> Ideally what would happen is the GPS goes offline, the Symmetricom 
>> would set itself to a higher stratum level and the clients abandon it 
>> for the device that has the better stratum, but this is not what happens.
>> I had to use Wireshark to see that instead, when the GPS goes offline, 
>> the Symmetricom stops advertising a stratum level (Wireshark shows 
>> "unspecified or invalid") while the leap indicator shows "clock 
>> unsynchronized" (3 I think it was).  (When I enable the GPS again, 
>> Wireshark shows the stratum level coming through as 1 and leap 
>> indicator shows 0 "no warning".)
>> On my workstation test client, ntp apparently doesn't know what to do 
>> when a time source stops indicating its stratum level so it keeps 
>> right on showing stratum 1 in ntpq output even though Wireshark 
>> clearly shows the packets coming through with stratum level 
>> "unspecified or invalid".
>> So, my question is, can I configure ntp in such a way that it responds 
>> to either a lack of advertised stratum or a leap warning indicator 
>> greater than 0?
>> Thanks!
> If you have 2 servers, both gps, then the polling host needs to
> have config to allow fallback to the second unit when it fails.
> Not a time server issue afaics, unless each has fallback ability in
> itself.
> What you could do is run ntpd on a third host, polling both time
> servers along with a host or two from an ntp pool, which should have
> the ability to spot the outlier and continue providing accurate time.
> Not sure about the overall behavior, but wouldn't take long to set
> it up and check results...
> Chris

I ran the ntp setup for Norway's largest multinational corporation for 
20+ years, my final setup used dedicated TrueTime/Symmetricom/Meinberg 
gps-based servers in 3 main locations, augmented with radio-based clocks 
in a couple more as well as several hand-made FreeBSD servers using 
Oncore and SURE evaluation boards with timing gps receivers.

All these primary sources were used as references for a second layer of 
dedicated Stratum 2 servers, two in each of those 3 main geographical 
centers, and with identical/symmetrical conf files. The latter works 
because an ntpd server automatically omits any circular reference, to 
itself or another source.

Finally, every single client machine capable of running the full ntpd 
stack was configured to use all 6 Stratum 2 servers as their reference, 
this provided enough redundancy that we never suffered any visible 
hickups even when we passed through the GPS week rollover or when an 
individual reference server lost a leap second event.

Except for the hardware ref servers, this was all effectively close to 
zero cost, only some labor hours.

- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"

More information about the questions mailing list