Have you ever wondered how computers stay in sync with the time? That is the responsibility of the Network Time Protocol (NTP). Around since 1985, NTP is one of the oldest protocols still in use on the internet and its reference implementation, ntpd, written in C, is still widely used today.
That's a problem. C is a language that is not memory safe, and ntpd has had its share of security vulnerabilities. Here is a list of CVEs.
As part of Project Pendulum, Folkert de Vries and his colleagues from Tweede Golf have been working on a Rust implementation of NTP. I sit down with Folkert to talk about the project, the challenges they faced, and the benefits of using Rust for this kind of project.
Along the way, we learn about funding open source projects, the challenges of establishing a new implementation of a protocol, and all sorts of other interesting things that might or might not be related to NTP.
Tweede Golf with Folkert de Vries | Rust in Production podcast - Listen or read transcript on Metacast