ISPCS paper: Estimating noise for clock-synchronizing Kalman filters
Background
Time synchronization is one of the most basic and essential building blocks of a safe digital infrastructure, whether it is a local network or the world-wide web. Knowing when a certain connection is established (requested and received) is a key aspect of determining its trustworthiness.
Our Statime project is an implemenation of the Precision Time Protocol that we wrote in Rust because of its strong safety guarantees. It has always been our goal to create an implementation that wasn't just safe, but performant, free to use, and accessible to as many users as possible.
The details
One of the optimizations we have done in Statime, is implementing methods to smooth out and improve the process of connecting a time-receiving clock to a time-transmitting clock. We did this using a Kalman-based clock servo that automatically and continuously determines the main uncertainty parameters. This means it can now provide strong synchronization performance and accurate synchronization error estimates without the need for manual tuning for any specific hardware.
The paper
These methods are described in detail in a scientific publication written for the Institute of Electrical and Electronics Engineers, IEEE, who also govern the many standards in the industry, including the PTP standards. Specifically, the article is written for the 2024 International IEEE Symposium on Precision Clock Synchronization for Measurement, Control, & Communication, which Ruben and I are attending in Tokyo from 7 to 11 Oct.
As the paper has been accepted, but not yet published by them, we can share the submitted paper with you here: "Estimating noise for clock-synchronizing Kalman filters".
Please note that only personal use of the material is permitted, as per the copyright notice in the article.
We'd like to thank Sovereign Tech Fund and NLnet Foundation for providing the financial support we needed to join the ISPCS.
Funding the secure timing effort
We need financial backing to continue, optimize and maintain our work on the open services that boost secure time, called Project Pendulum (which includes both Statime and ntpd-rs). Please get in touch with us via pendulum@trifectatech.org, if you are interested in financially supporting this project.
Why fund us?
Trifecta Tech Foundation, the non-profit backed by Tweede golf, develops and maintains open-source software for vital infrastructure in the public interest, such as these modern, open-source implementations of the Network Time Protocol and the Precision Time Protocol.
The team has an in-depth understanding of time synchronization protocols and the development of secure and robust systems software. Working with the timing community and sharing our insights is an integral part of our mission; see trifectatech.org/initiatives/time-synchronization/.