System and method to overcome wander accumulation to achieve precision clock distribution over large networks
US-8949648-B2 · Feb 3, 2015 · US
US9335785B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9335785-B2 |
| Application number | US-201213555064-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 20, 2012 |
| Priority date | Jul 20, 2011 |
| Publication date | May 10, 2016 |
| Grant date | May 10, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An exemplary method of synchronizing a master clock and a slave clock comprises transmitting a plurality of packets between a master device and a slave device, calculating a first skew between a first pair of the plurality of packets at the slave device and a second skew between the first pair at the master device, calculating a ratio between the first skew and the second skew, providing a slave clock frequency correction to the slave device, calculating a first packet trip delay using a time that the master device initiates sending a packet to the slave device, a time the master device receives a response from the slave device, a corrected time the slave device receives the packet, and a corrected time the slave device initiates sending the response, calculating a first offset based on the first packet trip delay, and providing the first offset to the slave device.
Opening claim text (preview).
What is claimed is: 1. A method of synchronizing a master clock and a slave clock, the method comprising: transmitting a plurality of packets between a master device with the master clock and a slave device with the slave clock; determining a first time sending a first packet of the plurality of packets from the master device to the slave device and a second time sending a second packet of the plurality of packets from the master device to the slave device; determining a third time when the first packet of the plurality of packets is received by the slave device and a fourth time when the second packet of the plurality of packets is received by the slave device; determining a fifth time sending a third packet from the slave device to the master device and a sixth time sending a fourth packet from the slave device to the master device; determining a seventh time when the third packet from the slave device is received by the master device and a eighth time when the fourth packet from the slave device is received by the master device; calculating a first skew based on times between a first pair of the plurality of packets at the slave device and a second skew based on times between the first pair of the plurality of packets at the master device, the first skew including a difference between the second time and the first time, and the second skew including a difference between the fourth time and the third time; calculating a third skew based on a difference between the eighth time and the seventh time, and a fourth skew including a difference between the sixth time and the fifth time; calculating an RMS ratio based on transmission of the first and second packets from the master device to the slave device, the RMS ratio being based on the second skew divided by the first skew; calculating an RSM ratio based on transmission of the third and fourth packets from the slave device to the master device, the RSM ratio being based on the fourth skew divided by the third skew; comparing the RMS ratio to the RSM ratio; if the RMS ratio approximates the RSM ratio, providing a slave clock frequency correction of the slave clock to the slave device to allow the slave device to correct a slave clock frequency; calculating a first packet trip delay by using a time that the master device initiates sending at least one particular packet of the plurality of packets to the slave device, a time that the master device receives a response based on the at least one particular packet from the slave device, a corrected time that the slave device receives the at least one particular packet, and a corrected time that the slave device initiates sending the response; calculating a first offset between the master clock and the slave clock based on the first packet trip delay; and providing the first offset to the slave device to enable the slave device to make a correction of the slave clock. 2. The method of claim 1 wherein providing the slave clock frequency correction is determined based on a difference between the RMS ratio and the RSM ratio. 3. The method of claim 1 wherein the RMS ratio approximates the RSM ratio if a difference between the RMS ratio and the RSM ratio is less than a predetermined threshold. 4. The method of claim 1 further comprising iteratively calculating subsequent packet trip delays utilizing a subset of the plurality of packets. 5. The method of claim 4 further comprising determining a minimum value of the first and at least some subsequent packet trip delays. 6. The method of claim 5 further comprising obtaining a threshold relative to the minimum value of the first and subsequent packet trip delays, comparing one or more subsequent packet trip delays to the threshold relative to the minimum value of the first and subsequent packet trip delays, calculating a second offset based on the comparison, and providing the second offset between the master clock and the slave clock based on the first packet trip delay. 7. The method of claim 1 wherein calculating the first packet trip delay by using the time that the master device initiates sending the at least one particular packet of the plurality of packets to the slave device, the time that the master device receives the response from the slave device, a corrected time that the slave device receives the at least one particular packet, and the corrected time that the slave device initiates sending the response comprises RTD = ( T 4 - T 1 ) - ( T 3 - T 2 ) × R 2 wherein T 4 is the time that the master device receives the response from the slave device, T 1 is the time that the master device initiates sending the at least one particular packet to the slave device, T 3 is the time that the slave device initiates sending the response, T 2 is the time that the slave device receives the at least one particular packet, and R is the ratio between the first skew and the second skew. 8. The method of claim 1 wherein calculating the first offset between the master clock and the slave clock based on the first packet trip delay comprises offset=T 2 −T 1 −RTD wherein T 2 is the time that the slave device receives the at least one particular packet, T 1 is the time that the master device initiates sending the at least one particular packet to the slave device, and RTD is the first packet trip delay. 9. The method of claim 1 wherein calculating the first offset between the master clock and the slave clock based on the first packet trip delay comprises offset=T 3 −T 4 +meanRTD wherein T 3 is the time that the slave device initiates sending the response, T 4 is the time that the master device receives the response from the slave device, and RTD is the first packet trip delay. 10. A system for synchronizing a master clock and a slave clock, the system comprising: a communication module configured to transmit a plurality of packets between a master device with the master clock and a slave device with the slave clock; a frequency rate module configured to: determine a first time sending a first packet of the plurality of packets from the master device to the slave device and a second time sending a second packet of the plurality of packets from the master device to the slave device, determine a third time when the first packet of the plurality of packets is received by the slave device and a fourth time when the second packet of the plurality of packets is received by the slave device, determine a fifth time sending a third packet from the slave device to the master device and a sixth time sending a fourth packet from the slave device to the master device, determine a seventh time when the third packet from the slave device is received by the mast
Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays (arrangements for monitoring round trip delays in packet switching networks H04L43/0864) · CPC title
Delays · CPC title
Distribution of clock signals {, e.g. skew} · CPC title
Synchronisation of different clock signals {provided by a plurality of clock generators} · CPC title
Correction by delay · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.