FSMLabs has just released the Q4 2009 version of our TimeKeeper product for synchronizing time within a possibly worldwide network.
We’ve been steadily improving performance and usability on TimeKeeper, the distributed time reference solution. Here’s a short
summary of the current version. TimeKeeper solves two problems: how to keep a cluster of machines in step and how to keep a possibly worldwide collection of clusters in step. For the first, Timekeeper piggybacks a microsecond level of accuracy over the standard Network Time Protocol, using an ordinary local network (or leased lines) to make “client” machines follow the server. The clients build up prtty sophisticated models of their own timing hardware and network delays to be able to keep themselves tightly locked to server time, even during network outages. For the second, TimeKeeper turns the same technology to the interface between the server and a reference time source, like the Global Positioning System (GPS). The server locks onto GPS time, for example, and then the clients lock onto the server. The result is that clients of two different servers, for example, one in Singapore and one in London and one in New York, will all have the same idea of the current time - to within a few microseconds.
TimeKeeper requires no changes in the operating system - it starts up on an ordinary Linux system (and we may develop a Windows version if there is interest). TimeKeeper is invisible to applications - except that the time they get “from the operating system” is suddenly very accurate. TimeKeeper requires almost no IT support: you start it, point it at a time source, and within 10 seconds your time is good to go. In fact, some of the most complex engineering in TimeKeeper is what gives us this “turn it on and don’t think about it” behavior.