The IEEE-1588 Precision Time Protocol (PTP) is a relatively new protocol (compared with NTP). As such, there are fewer options available for you to use for PTP Slave software. The options that do exist range from software-only solutions to software with hardware timestamping solutions.
PTP Slaves (software-only) are dependent on the operating system and processor load so results will vary. Time synchronization is impacted by Packet Delay Variation (PDV) which is dependent on the network switches used and the overall network traffic.
PTP Slaves (software with hardware timestamping) are not dependent on the operating system or processor load, but time synchronization is still impacted by the network infrastructure (network switches and network traffic).
For Microsoft Windows there is a software-only PTP Slave available. Linux users have several options available. The information below is a list of what is available and, unless stated otherwise, is NOT a list of recommendations.
For an overview of how PTP works please read our Introduction to PTP white paper.
Windows (PTPv2 only) |
Choices for PTP Slave software on Windows machines are limited. Windows is not a real-time operating system and synchronization is dependent on the CPU and the operating system version. PTP Slave software is available from Greyware and is called Domain Time II. Depending on the version of Windows you have, your PTP Slave can be synchronized to within microseconds of the Grandmaster (network topology dependent) using this software. |
Linux (PTPv2) |
PTP is freely available at Sourceforge and is a complete implementation of the IEEE-1588 specification for a standard clock. Source code for PTP is open source and because of contributions from users it is becoming an increasingly portable, interoperable, and stable IEEE-1588 implementation. |
Another PTP software-only slave is available from FSM Labs and is called TimeKeeper. |
PCIe PTP Slave cards with hardware timestamping are available from Solarflare, called PTP Server Adapters. |