In order to synchronize clock sources on both ends of a packet transfer network, timing information is transmitted between a clock source of a transmit node and a clock source of a receive node. However, standard time synchronization protocols can be inaccurate and typically result in long synchronization times. Further, such protocols have very poor tolerance for the uncertain and varying delay of synchronization signals from the transmit node to the receive node of the packet transfer network, commonly known as packet delay variation (PDV).
One such example of an existing time synchronization protocol is the Standard Precision Time Protocol (PTP) IEEE 1588. IEEE 1588 utilizes two phases in a synchronization process. The first phase corrects the time difference between the clock sources, and is known as offset measurement. This phase is performed with synchronization messages sent from the transmit node to the receive node. The second phase actively measures the delay or latency between the clock sources with delay requests sent from the receive node to the transmit node, and delay responses sent from the transmit node to the receive node. Thus, IEEE 1588 teaches a bidirectional transmission of packets in the synchronization of clock sources. However, IEEE 1588 is not capable of tolerating PDV at high orders of magnitude. Further the bidirectional message transmittal is slower and less accurate in determining synchronization times.
Therefore, there is a need for a time synchronization protocol that has faster synchronization times for the clock sources of the transmit node and the receive node while also resulting in greater accuracy in synchronization. It is also desirable for such a time synchronization protocol to be tolerant of PDV at high orders of magnitude.