I need to create a reliable and accurate synchronization between two CentOS 6 machines connected through a direct Ethernet connection.
I've seen that on Linux several implementation of the IEEE 1588 Precision Time Protocol (PTP) https://en.wikipedia.org/wiki/Precision_Time_Protocol exist:
- PTPd http://ptpd.sourceforge.net: - Apparently, this is the original implentation - Apparently, it is still maintained http://www.github.com/ptpd/ptpd - PTPd2 http://ptpd2.sourceforge.net: - A new version meant to supersede the previous implementation - Apparently unmaintained - For CentOS 6, available only in the EPEL repositories - PTPv2d http://code.google.com/p/ptpv2d: - A further implementation - Unmaintained as well - linuxptp http://linuxptp.sourceforge.net: - A specific implementation for Linux - Maintained - Available on the CentOS repositories - Suggested by the RedHat documentation for both RedHat 6 https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Configuring_PTP_Using_ptp4l.html and RedHat 7 https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sec-Using_PTP.html
My questions follow:
- Why does the RedHat documentation suggest the use of linuxptp https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s1-Installing_PTP.html for RedHat 6 (based on Linux kernel 2.6) despite the linuxptp documentation says that a Linux kernel version 3.0 or newer is needed http://linuxptp.sourceforge.net/ ? - Which are differences between PTPd2 and Linuxptp in terms of reliability and timing accuracy ? - Which one should I prefer on CentOS 6 and on CentOS 7, respectively ? - Why either PTPd2 and Linuxptp do not synchronize immediately and often need me to start/stop the service several times or manually change system time through date to make the machine synchronize ?
Many thanks for any hint.
On 18 Jan 2016 09:22, "Claudio Scordino" claudio@evidence.eu.com wrote:
I need to create a reliable and accurate synchronization between two
CentOS 6 machines connected through a direct Ethernet connection.
I've seen that on Linux several implementation of the IEEE 1588 Precision
Time Protocol (PTP) exist:
PTPd: Apparently, this is the original implentation Apparently, it is still maintained PTPd2: A new version meant to supersede the previous implementation Apparently unmaintained For CentOS 6, available only in the EPEL repositories PTPv2d: A further implementation Unmaintained as well linuxptp: A specific implementation for Linux Maintained Available on the CentOS repositories Suggested by the RedHat documentation for both RedHat 6 and RedHat 7
My questions follow:
Why does the RedHat documentation suggest the use of linuxptp for RedHat
6 (based on Linux kernel 2.6) despite the linuxptp documentation says that a Linux kernel version 3.0 or newer is needed ?
Because Red Hat backport many drivers and features so the 2.6.32 (not just 2.6) version number is totally irrelevant as to the actual features available in the kernel.
Which are differences between PTPd2 and Linuxptp in terms of reliability
and timing accuracy ?
No idea but there's probably a good reason RH picked up linuxptp as the formally supported version and the other is only in EPEL and not supported by them.
Which one should I prefer on CentOS 6 and on CentOS 7, respectively ?
Keep in the same for both to ease your maintenance burden in your configuration management.
Why either PTPd2 and Linuxptp do not synchronize immediately and often
need me to start/stop the service several times or manually change system time through date to make the machine synchronize ?
Sorry don't use it here so don't have a test bed... If there is a verbose or debug arguments check those for more detailed logs.