Statime vs Linux PTP: Comparison of precision

David
Security software engineer
Statime vs Linux PTP: Comparison of precision

As part of the development of our Precision Time Protocol implementation, Statime, we want to know how it performs compared to other implementations of PTP.

To figure this out, last April we visited VSL, the Dutch National Metrology Institute. There, we performed comparitive precision tests between Statime and Linux PTP.

We're happy and proud to report that we've measured performance for Statime comparable to Linux PTP!

Setup

For our testing, we used a computer with a normal x86 processor and an Intel i210 network card. On this machine, both Linux PTP and Statime were installed. Finally, one of the gpio pins on the i210 was configured as a pulse per second (PPS) output tied to the network card's clock.

For the test, we then started the software under test (either Statime or Linux PTP). It was connected to one of VSL's PTP grandmaster clocks and instructed to synchronize with that.

After the software's synchronization had properly stabilized, the time difference between the grandmaster clock's PPS output and that of the network card was measured during a period of half an hour.

Using this data, a stability measure called Allan deviation was calculated for the network card's clock whilst running either software package.

Results

The results of our testing are visualized below. Plots B1 and B2 show the offset of the Linux PTP clock (in purple) and Statime clock (in green) respectively. Plot A shows the stability of these clocks.

stability Plot A: Stability of the clock when synchronized by Statime and Linux PTP respectively, as a function of timescale of measurement. Lower is better.

ptp4l-statime-overtime-sidebyside Plots B1 and B2: Offset of the clock when synchronized to the reference clock. Cable lengths were not callibrated, hence only variation is relevant.

We see that there is no significant difference between the quality of time synchronization provided by either implementation.

From the results we can conclude that Statime's clock stability is comparable to Linux PTP.

VSL has issued a Certification of Calibration for these measurements.

Acknowledgements

Thanks to VSL, and in particular Erik Dierikx and Yan Xie for preparing and performing these measurements.

Stay up-to-date

Stay up-to-date with our work and blog posts?

Related articles

Our Statime project now provides strong synchronization performance and accurate synchronization error estimates without manual tuning for any specific hardware, because it automatically determines the main uncertainty parameters for a Kalman-based clock servo. This process is described in a scientific paper, soon to be published by the IEEE.
The internet has a hole at the bottom of its trust stack, and we need to do something about it. In particular, the internet needs secure time synchronization to fortify the security of our digital world. In this article, we present a path towards the adoption of securely synchronized time.
In Dutch we have a saying 'meten is weten', which translates to 'to measure is to know'. That sentiment is frequently overlooked in setting up computers and networks.