Project Pendulum

The Pendulum project is building modern, open-source implementations of the Network Time Protocol and the Precision Time Protocol.

Pendulum focuses on security and robustness and provides memory safety through Rust. Statime (PTP) and ntpd-rs (NTP) are the two projects that constitute Pendulum.

Objectives

Our mission is to create memory-safe timing protocol implementations that 1) provide reliable time synchronization, and 2) are easily extensible to accommodate future timing standards improvements.
Working with the timing community and sharing our insights and knowledge is an integral part of that mission.

Roadmap

Q2 2023: PTP master in Statime + ntpd-rs adoption work
Q3 2023: Stable release ntpd-rs + NTP/PTP clock device
Q4 2023: PTP for Linux

Why Pendulum?

Running on millions of devices and servers, NTP and PTP are vital building blocks of the Internet and other critical infrastructure: in finance and broadcasting, in our power grids and telecommunication, and in security protocols.
Because of this, we implement security improvements such as NTS, to help provide as-safe-as-possible infrastructure. We also participate in the IETF NTP working group, specifically to contribute to the next iteration of the NTP standard, NTPv5.
Contrary to other popular time synchronization services, our implementations in Rust guarantee memory safety, and we focus on exposing a minimal attack surface.

The projects

ntpd-rs

ntpd-rs is an open-source implementation of the Network Time Protocol completely written in Rust, with a focus on exposing a minimal attack surface. This video explains how ntpd-rs brings NTP into the modern era.

The project was initially funded by ISRG's Prossimo, as part of their mission to achieve memory safety for the Internet's most critical infrastructure. The NTP initiative page on Prossimo's website tells the story.

ntpd-rs is part of Project Pendulum. In July of 2023 the Sovereign Tech Fund invested in Pendulum, securing development and maintenance in 2023, and maintenance and adoption work in 2024.

Statime

Statime is an initiative of Tweede golf, an open-source implementation of the Precision Time Protocol (PTP) in Rust.

High-precision timing is part of crucial networking infrastructure. With Statime we provide a memory-safe alternative for existing implementations.

The first milestones of the project were kindly co-funded by the NLnet Foundation.

Statime is part of Project Pendulum. In July of 2023 the Sovereign Tech Fund invested in Pendulum, securing development and maintenance in 2023, and maintenance and adoption work in 2024.

What ISRG has to say

Delivering solid results quickly, comes from a team that is focused on the task at hand. That definitely is an aspect of TG's work that we appreciate because it leads to impressive efficiency.
Josh Aas
Executive Director, Internet Security Research Group

Support us

Financial stability is key to maintaining and extending the projects and growing adoption. We offer GitHub sponsoring options and are happy to talk about custom sponsoring arrangements or funding for specific features.

Blog posts on Pendulum

Support Pendulum?

Do you want to learn more about Pendulum, NTP or PTP, or support our project?