Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Networking

Journal AB3A's Journal: Synchronicity

It may not be magic to most of you, but we have to maintain a time server in our very isolated intranet. So I gathered these "floor sweepings" (pieces and parts of PC gear that was too obsolete to use in production) and a case. I downloaded a recent FreeBSD distro, downloaded an up to date copy of NTP and compiled it (after a few minor edits to the source because of system calls which had been updated).

Then I stationed this pile of "floor sweepings" next to an old GPS based Frequency and Time reference. It's actually an old HP piece (from before the Agilent days) and it's very accurate even when it uses the hold-over oscillator. We use it to calibrate most of our spectrum analyzers, signal generators, and frequency counter references.

The IRIG-B output didn't play well in the sound card. I tried a few different combinations and then gave up in disgust. I don't know what was wrong, and I didn't have the time to puzzle it out. However, I did have a PPS output, so I rigged up a connection to the parallel port.

FreeBSD has a good PPS clock driver for NTP. In fact, it's not just good, it's very good. All I had to do was to get the computer within 500 milliseconds of the current time. I set my watch to a WWV receiver from a brain dead heath GR-1000 clock we used to use many years ago (we never throw anything out if it has an asset sticker on it). Then I set the time on the NTP box. And then I started ntpd. That got me within about 20 mS of the real time.

Then I waited. About an hour later, I checked up on it. Yeah, it was homing in on the time. It was about 5 mS off. Next morning I looked in on it. It was about 8 uS slow. A look at the statistics shows that I can routinely expect this thing to be within about 10 uS accurate.

This is on a crunchy old Celeron MOBO at 350 MHz. It's that PPS driver. It doesn't just work at the user level, it synchronizes kernel. Is that cool or what?

No, we don't need this kind of accuracy. We only need to maintain an accuracy of a second or two of across our network. But it is pretty cool to be able to say that we're routinely within about 10 uS of actual time.

All the other nodes are accurate within less than 10 milliseconds. I think the the jitter introduced by our WAN latency and activity causes most of this. However, I don't think anyone cares but me. As long as the other nodes are within a couple seconds of each other, nobody will notice.

I'm still amazed by this sort of accuracy. I know, it doesn't take much to amuse me...

This discussion has been archived. No new comments can be posted.

Synchronicity

Comments Filter:

BASIC is the Computer Science equivalent of `Scientific Creationism'.

Working...