Precision time protocol (PTP) is used to synchronize clocks within a computer network. The original standard, IEEE 1588, was defined in 2002. Under IEEE 1588, PTP time servers can be implemented through hardware or software.
Specifically, the master-slave relationship used for synchronized clocks in a PTP network can be established by software running on a master computer and slave computers networked together.
Alternatively, the master-slave relationship can be established with a dedicated PTP server networked to slave computers.
While the IEEE 1588 standard can be satisfied through either a hardware or software implementation, practical differences will arise depending on how the system is designed. Here are three differences between a hardware and software implementation of a PTP network:
A hardware-based PTP network is more accurate than a software-based PTP network. The primary reason for the differences in accuracy is the availability of hardware time stamping. Software running on a master and slave computer can implement the IEEE standard to achieve synchronization to within 10 to 100 microseconds. This is highly accurate. However, it is not as accurate as hardware-based systems.
In a hardware-based system, a PTP clock server with hardware time stamping and slave devices contained within each networked computer can achieve synchronization to within nanoseconds. This is 1,000 times more accurate than a software-based approach.
Operating System Independence
A hardware-based PTP network operates independently of the operating system of the slave computers. Or more accurately put, a hardware-based implementation is agnostic to the operating systems running on the slave devices. PTP server Windows-implementation is the same as a PTP server-Linux implementation because the PTP server operates the same regardless of the slave device operating system.
A software-based PTP network, on the other hand, is dependent on the operating system of the slave devices. A PTP server Windows-implementation must be compatible with Microsoft Windows running on the master device and slave devices.
This is important for a few reasons. The software-based system’s accuracy will depend on the operating system load and processor load experienced by each device.
Ease of Configuration
Hardware-based systems are generally easier to configure than software-based systems. This might seem counter-intuitive. However, hardware-based systems require the installation of a PTP clock server into the network, usually by plugging a network cable into the PTP clock server and installing slave devices into each slave computer to talk to the PTP clock server. In some ways, a hardware-based system is a plug and play.
A software-based system requires software to be installed at each device. Moreover, each slave device must be configured to communicate with the master device. Because software implementations are dependent on operating systems, a PTP server Windows-implementation may require configuration of Windows to control the system clock.
Although either a software-based or hardware-based PTP system can synchronize computers within a network to a high degree of accuracy, there are differences between a software-based and hardware-based system. These differences can affect the ease of configuration, the compatibility, and the accuracy within the network.