I keep my computers' clocks set typically to within a few hundredths of a second of "true time" using the NTP network time protocol software package. A faster connection than 28.8K would result in somewhat better synchronization, but it's certainly providing service that's as good as I need.
ISP's ought to set up some "Stratum 2" time servers so they can provide time setting services to their customers, and PCs should correspondingly coordinate their clocks on a regular basis via NTP. This would be helpful as at least a partial resolution to some of the errors that result from buggy news posting software particularly on Microsoft platforms.
Correct times are useful on a LAN for managing changes to files, and are critical for managing concurrent transactions in distributed client/server systems. Systems at work find it imperative to have a cluster of NTP servers with which internal servers coordinate.
At present, there are a few publicly-accessible Stratum 1 servers and many readily accessible Stratum 2 servers. With more usage of NTP:
Stratum 1 servers would almost certainly restrict access to "important" time servers in strata 1-2 to provide a robust "backbone."
Servers using radio links would be added in stratum 2. This of course has no "query" impact on stratum 1 servers...
These would probably provide services for regions or within Internet Service Provision organizations.
Smaller ISPs and local servers would have stratum 3 servers synchronized to the level 2 servers.
Users would sit around stratum 4, syncing to their ISP's stratum 3 time servers.
The protocol recognizes 16 strata, which is enough to handle synchronization requirements even within the scope of unimaginable levels of expansion on and around Planet Earth. A new scheme would doubtless be required if there were significant off-Earth activities, as other bodies in our solar system have (amongst other differences) days of different lengths, and are significant distances away in terms of the time it takes for electromagnetic radiation to go back and forth.
The above represents the " theory" of how things ought to be done if people acted intelligently in good faith. Reality has turned out somewhat differently. People writing Windows clients or selling hardware routers have hardcoded server names into them that are often overpowering Stratum 1 servers. See NTP pool for a solution that is in progress to allow public use. Many operators of Stratum 1 servers are now requiring private crypto keys in order to connect, and those that do not have those keys may receive a " kiss of death" packet, which provides consciously inaccurate time information, stratum set to 0, along with a message indicating the nature of the rejection of service.
Interactively updatable documentation may be found here...
pool.ntp.org: public ntp time server for everyone
Provides a round-robin DNS-based access to a list of publicly usable NTP servers. The more people that donate their time server to this pool, the more widely it will be usable, and the less costly time services will be to any individual time provider on the lists.
For people who want to fix their persistently fast or persistently slow Unix clocks with a minimum of fuss, this package includes sntpclock, a small, reliable SNTP client that deals properly with network delays and leap seconds.
An alternative NTP protocol implementation that is more attuned to use on systems with periodic/sporadic connections to the Internet. Some Linux distributions are shifting towards using Chrony instead of the "standard NTP" implementation.
At least, in comparison to the "TAI" time representation...
Problem: Linux BIOS clock isn't getting updated to the correct time...
To update the BIOS clock, one can use hwclock --systohc --utc. Initd scripts would get changed to something like the following:
case "$1" in start) # Adjust time to make life easy for xntpd echo "Syncing time for xntpd" /usr/sbin/ntpdate -o 1 tock.usno.navy.mil clock.llnl.gov norad.arc.nasa.gov # Uncomment to auto-set your Hardware Clock /sbin/hwclock --systohc --utc # Start daemon. echo -n "Starting ntpd: " daemon ntpd echo ;; stop) # # Uncomment to auto-set your Hardware Clock /sbin/hwclock --systohc --utc # Stop daemon. echo -n "Shutting down xntpd: " killproc ntpd echo ;; *) echo "Usage: ntpd.init {start|stop}" exit 1
![]() | ntpdate is likely to get deprecated some time over the next few years; it is likely that ntptime or ntptimeset or ntpd will have options introduced to make them preferrable alternatives. |
They sell numerous radio clocks suitable for doing time synchronization.
Embedded NTP servers supporting GPS-based time synchronization.
A UK company selling a variety of radio clocks and embedded NTP servers.
A UK-based company selling radio-based time servers
Info on NTP stuff...
A supplier of numerous sorts of time synchronization products.