The RADclock project (formerly known under 'TSCclock')
aims to provide a new system for network timing within two years.
We are developing replacements for NTP clients and servers based on new principles,
in particular the need to distinguish between difference clocks and absolute clocks.
The term RADclock, 'Robust Absolute and Difference Clock', stems from this.
The RADclock difference clock, for example, can measure RTTs to under a microsecond,
even if connectively to the time server is lost for over a week!
The RADclock is available and can be used as an alternative to the ntpd daemon to provide convenient system clock synchronisation for systems running FreeBSD and Linux. In terms of local hardware, it exploits the availability of counters such as the HPET counter or the TSC (Time-Stamp-Counter) commonly found in PC architectures.
The RADclock performance has been tested over a period of years under a wide variety of conditions, including network congestion, network disconnection and server faults, and has been proven to be extremely robust (see the Documentation section for published papers on this topic).
Two Clocks in One
The RADclock actually provides two clocks, an absolute and a difference clock. The absolute clock provides "wall clock" time (i.e. today, right now) while the difference clock is designed to measure accurately the time elapsed between two events. Each clock can be accessed using the API provided.
The RADclock also gives access to kernel level packet timestamping.
The RADclock is compatible with the NTP protocol and can be deployed quickly on hosts to provide a robust timekeeping solution, using existing NTP servers. It can run in parallel to the ntpd daemon without harm, so that both clocks can coexist and be used independently. For example initially the RADclock could be reserved for specific applications requiring high accuracy.
The RADclock is released under the GNU GPL licence. It is also packaged for some specific Linux distributions. The latest stable version is 0.3.3 and can be obtained from the download section.
The RADclock project is supported by a Linkage Project Grant from the Australian Research Council in collaboration with Symmetricom Inc. It is supported in part by a Google Research Award.