Best way to harness multiple stratum 1 servers

Best way to harness multiple stratum 1 servers

Post by jra » Thu, 06 Apr 2006 00:37:09


After I finish some reconfiguration, I'll have the embarrassment of
riches of having five stratum one servers, each driven by an independent
refclock (two GPSDO, one WWVB, and two Cesium). They all sit on a
private network behind my firewall/NAT box. I also have a couple of
external servers on my DMZ that I'd like to make available as stratum 2
boxes for pool.ntp.org.

At first blush, it would seem that a stratum 2 box fed by five stratum
1s on a local wire should be a pretty good source of time. However, in
the past, when I've played with syncing to multiple servers having very
similar offsets and delays, the stratum 2 box tended to jump from one
server to another, resulting in bad time service.

Is there a preferred configuration that would let the downstream box
have the benefit of the multiple stratum 1s, without jumping around?

Thanks,

John
_______________________________________________
questions mailing list
XXXX@XXXXX.COM
https://lists.ntp.isc.org/mailman/listinfo/questions
 
 
 

Best way to harness multiple stratum 1 servers

Post by Ronan Floo » Thu, 06 Apr 2006 01:15:08


Good grief! What Cesium and how do they interface to your servers?


Pick "the best" ?

server x.x.x.x prefer


--
Ronan Flood < XXXX@XXXXX.COM >
working for but not speaking for
Network Services, University of London Computer Centre
(which means: don't bother ULCC if I've said something you don't like)

 
 
 

Best way to harness multiple stratum 1 servers

Post by jra » Thu, 06 Apr 2006 01:44:39


Old HP 5061As with the digital clock option; they provide a 1pps output
to use with the ATOM driver.


That's the easy answer, assuming I know which one is "best". :-)

I guess my question may go to the fundamentals of ntp: can an NTP
server ever do better than any of the individual servers it sees? In
other words, does the algorithm blend the offset/jitter/delay
information it has to generate a concept of time based on not just one,
but the ensemble (or at least the survivors of the sanity checks), of
the available servers? If so, how best to configure that?

John
_______________________________________________
questions mailing list
XXXX@XXXXX.COM
https://lists.ntp.isc.org/mailman/listinfo/questions
 
 
 

Best way to harness multiple stratum 1 servers

Post by Ronan Floo » Thu, 06 Apr 2006 02:55:17


Ta. I see Symmetricom are selling the 5071 now, I shall have to
investigate their range (for our own purposes, see earlier posts).


Left to itself ntpd is supposed to do that, and there is anti-hopping
code in newer versions -- see clock_select() in ntp_proto.c and the
description of mitigation in

http://www.yqcomputer.com/ ~mills/ntp/html/prefer.html


--
Ronan Flood < XXXX@XXXXX.COM >
working for but not speaking for
Network Services, University of London Computer Centre
(which means: don't bother ULCC if I've said something you don't like)
 
 
 

Best way to harness multiple stratum 1 servers

Post by Richard B. » Thu, 06 Apr 2006 09:11:41


John,

Dave would probably refer you to the slide show! I probably should too
but I'll try to tackle this anyway. Ntpd selects the "best"
synchronization source. The selected synchronization source is given
great "weight" in the result but the other acceptable servers (marked
with a "+" in the ntpq banner also have an influence.

I've found clock hopping to be a problem with internet servers. I have
yet to see any two internet servers deliver anything resembling the same
time to my site. The differences may be only a millisecond or two but
a client hopping between sources that different is never going to settle
down and track any one source accurately.

To the extent that your stratum 1 servers differ from each other in
absolute time "as delivered to the client" and in stability, you will
have problems with your client.

I'm inclined to suspect that your WWVB reflock will not look anywhere
near as attractive to ntpd as your cesium clocks; the vagaries of LF
radio propagation will probably introduce enough jitter that it will
seldom, if ever, be selected.

You will be very dependent on the speed and latency of your local
network; I'd be inclined to say that you'd be wasting your time with
anything less than 100MB Full Duplex and switched.
 
 
 

Best way to harness multiple stratum 1 servers

Post by hmurra » Fri, 07 Apr 2006 04:08:53


As a practcal matter, the best is probably the one that's that most
reliable. Or the one that's most convenient. Or the one with the
fastest CPU or best network connection.

The last few nano/micro seconds won't make much difference
after a network hop.



--
The suespammers.org mail server is located in California. So are all my
other mailboxes. Please do not send unsolicited bulk e-mail or unsolicited
commercial e-mail to my suespammers.org address or any of my other addresses.
These are my opinions, not necessarily my employer's. I hate spam.
 
 
 

Best way to harness multiple stratum 1 servers

Post by jra » Fri, 07 Apr 2006 04:43:38

Hal Murray said the following on 04/05/2006 03:08 PM:


You're probably right, but my problem (if you can call having too many
time sources a problem!) is that it's not intuitively clear which one of
the servers is the best, other than that the WWVB server is
significantly worse than the GPS and Cs ones. But the GPS and Cs ones
have very similar performance. To the outside world it doesn't matter
because the internet and even my firewall performance will mask
differences at this level, but as an academic exercise, and on the local
wire, I'd like to see if I can wring the best possible performance out
of the system.

I'm probably asking NTP to perform at a level it's not really designed
for, and that perhaps the OS/hardware can't even support (in terms of
system clock stability and time resolution -- though a longer term goal
is to replace the mobo clock with a source derived from the Cs to solve
at least one problem).

John

_______________________________________________
questions mailing list
XXXX@XXXXX.COM
https://lists.ntp.isc.org/mailman/listinfo/questions
 
 
 

Best way to harness multiple stratum 1 servers

Post by Richard B. » Fri, 07 Apr 2006 07:02:03


John,

I believe I have read the PHK has modified the ntpd PLL for use with
refclocks such as GPS and Cesium. I don't know PLL design from a hole
in the ground but he might have improved the design for that specific
purpose. It's worth looking into!!

BTW, what hardware and O/S are you using for this project? Solaris
8/SPARC keeps time to a precision of one microsecond. I don't know of
any hardware/software that supports a higher precision but there may
well be some.
 
 
 

Best way to harness multiple stratum 1 servers

Post by hmurra » Fri, 07 Apr 2006 13:38:03

>You're probably right, but my problem (if you can call having too many

There is a noselect option on the server config line. That goes
through all the normal actions of collecting data from the server,
including writing data to the log files, but never selects that
server as the syspeer.

Assuming you can get a PPS signal to the box of interest...

You can use the PPS signal as a good place to stand and
monitor the other boxes to see how well they perform.

You can try various things and use the PPS/noselect as a marker
to get an accurate marker of how far off your local clock is.
(I've never tried this. It might not work.)

--
The suespammers.org mail server is located in California. So are all my
other mailboxes. Please do not send unsolicited bulk e-mail or unsolicited
commercial e-mail to my suespammers.org address or any of my other addresses.
These are my opinions, not necessarily my employer's. I hate spam.
 
 
 

Best way to harness multiple stratum 1 servers

Post by hmurra » Fri, 07 Apr 2006 13:45:29

>I'm probably asking NTP to perform at a level it's not really designed

Most of the mother boards I've looked at (not many) have a big
does-everything clock generator chip. In particular, it includes
some spread-spectrum magic to reduce EMI. Does anybody know
the temperature characteristcs of that spread spectrum area?
If I fed that chip a solid clock, could I still measure the
temperature by plotting the drift from NTP?

I've been daydreaming of a similar hack - get a good clock onto
a PCI card with a FPGA. I'll say more if anybody is interested.

--
The suespammers.org mail server is located in California. So are all my
other mailboxes. Please do not send unsolicited bulk e-mail or unsolicited
commercial e-mail to my suespammers.org address or any of my other addresses.
These are my opinions, not necessarily my employer's. I hate spam.
 
 
 

Best way to harness multiple stratum 1 servers

Post by Terje Math » Fri, 07 Apr 2006 15:59:55


The latter is the PHK way: Use a frequency synthesizer to generate the
required input frequency for your chosen motherboard, using the 10 MHz
(or whatever) Cs output as the source.

The next step is to build a 10 MHz (or faster!) counter which will reset
on each PPS signal, then count until latched by a read signal from the
NTP server. This allows you to get rid of the variable interrupt latency
problem.

Terje

--
- < XXXX@XXXXX.COM >
"almost all programming can be viewed as an exercise in caching"
 
 
 

Best way to harness multiple stratum 1 servers

Post by Terje Math » Fri, 07 Apr 2006 17:32:24


AFAIK, Sun was the first to implement nanosecond kernel time resolution,
it is definitely a standard part of all FreeBSD systems, and an absolute
requirement if you want sub-microsecond GPS/Cs performance.

Ulrich Windl have maintained a set of patches to Linux to get ns there
as well.

Terje
--
- < XXXX@XXXXX.COM >
"almost all programming can be viewed as an exercise in caching"
 
 
 

Best way to harness multiple stratum 1 servers

Post by Darryl Otz » Fri, 07 Apr 2006 19:37:38


If your Cs and GPS all have a common freqency output signal (2048kHz, 10MHz), you can use a phase meter to track any difference between them.
This will only be of benefit if you have three or more sources.
I have done this with Cs references to keep track the performance of old units.

dotzen.
 
 
 

Best way to harness multiple stratum 1 servers

Post by jra » Fri, 07 Apr 2006 21:30:31

Darryl Otzen said the following on 04/06/2006 06:37 AM:


I already do time-interval comparisons (using a time interval counter
and GPIB to log data onto a Linux machine) of the PPS between the Cs and
GPS (and, soon, each other) so I have pretty good data on their
performance (see http://www.yqcomputer.com/
data).

I'm looking at NTP as an auxiliary method, with the idea of having a
single network time source that represents the "best" time I can get
from the ensemble. I don't *need* to do this, but since the tool is
there, I thought I'd try to wring as much out of it as possible.

John
_______________________________________________
questions mailing list
XXXX@XXXXX.COM
https://lists.ntp.isc.org/mailman/listinfo/questions
 
 
 

Best way to harness multiple stratum 1 servers

Post by Wolfgang S » Fri, 07 Apr 2006 21:49:12


Terje Mathisen < XXXX@XXXXX.COM > writes:

I'd be tempted to do it the other way around - have the counter
free-running and latch the count on each PPS. That way missed PPS
events (as unlikely as they are) wouldn't mean a slipped clock and
fractional counts wouldn't be lost. One could also read the clock at
any time and apply the scaling and offset to get the current precise
time.

I am still hoping that at one point the GPS-on-a-chip manufacturers
will provide a fast/painless way to read the GPS chip's internal
counter and correction factors via the chip's external bus.

This gps chip below is used in <$100 consumer gps's. With a bit of
cooperation from the company it should be possible to put it on a pci
card with a PCI-to-ARM bus coupler. (Or maybe PCI-e, because it uses
fewer pins?)

http://www.yqcomputer.com/ (f)_6.20.05.pdf

-wolfgang
--
Wolfgang S. Rupprecht http://www.yqcomputer.com/
Direct SIP URL Dialing: http://www.yqcomputer.com/