Ntimed Project

Ntimed is a tightly-focused NTP implementation designed for high security and high performance. The NTP Project’s software is most likely the longest-running software project on the Internet. It was designed as a Reference Implementation, so it does as much as it can to make sure that the complete NTP Protocol specification can be demonstrably proven to be portable and robust. This is a good and necessary thing. And while the codebase has been wildly successful and has had an enviable security record, it is very big and has had some rare problems (which have been made worse by the fact that its codebase is so very widely used) and there are an increasing number of cases where a highly-focused tool is preferred. Enter the Ntimed Project.

The Ntimed Project is the result of decades of Poul-Henning Kamp’s experience as an NTP Project Developer, a “time nut”, and his vast experience with computer network timekeeping. His work to-date on Ntimed has been made possible by a contract from the Linux Foundation’s Core Infrastructure Initiative.

The Ntimed Project is comprised of three packages:

  • ntimed-client is run on “leaf nodes”. Its job is to talk to upstream NTP servers and adjust the local clock. The preview release of ntimed-client happened in December of 2014, and the first release of the code happened in April of 2015.
  • ntimed-slave is run in the “middle layers”. Its job is to query upstream servers, adjust the local clock, and to provide time to downstream clients. This project was 30% complete as of April 2015. The preview release for ntimed-slave is currently planned for 2017
  • ntimed-master runs at the top layer. Its job is to talk to reference clocks and to provide time to clients and slaves. ntimed-master could see a preview release in 2017.

At some point in the future the ability to use PTP will likely enter the picture.