Timing synchronization service and distribution system

US11115142B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-11115142-B1
Application numberUS-201916438310-A
CountryUS
Kind codeB1
Filing dateJun 11, 2019
Priority dateDec 21, 2018
Publication dateSep 7, 2021
Grant dateSep 7, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

This disclosure describes techniques for delivering high-accuracy and high-precision clock synchronization in heterogeneous distributed computer clusters. For example, the disclosure describes a synchronization engine that sets efficient clock synchronization processes based on a cluster node's characteristics, pricing, precision, geolocation, and/or cluster topology, while in some cases using a combination of master clock data with internal atomic clocks of computers. The techniques described herein integrate the synchronization engine into a time synchronization process that may provide stability, versatility, precision and cost balance using technical improvements for characterizing timing system delivery channels.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: sending, by a first probing device in a network comprising a plurality of probing devices, and to a second probing device of the plurality of probing devices in the network, a timestamp for the first probing device, wherein the first probing device and the second probing device are included in a probing device pair; receiving, by the first probing device, and from the second probing device, a timestamp for the second probing device; determining, by the first probing device, a timestamp offset between the timestamp for the first probing device and the timestamp for the second probing device; receiving, by the first probing device, an independent timestamp offset for the probing device pair; when the timestamp offset is classified as a valid timestamp offset based on a difference between the timestamp offset and the independent timestamp offset for the probing device pair, determining, by the first probing device, based at least in part on the timestamp for the first probing device and the timestamp for the second probing device, an upper-bound delta time and a lower-bound delta time for the probing device pair; calculating, by the first probing device, and based at least in part on the upper-bound delta time and the lower-bound delta time for the probing device pair, a slope value and an intercept value for the first probing device; and sending, by the first probing device, and to a local system master clock, the slope value and the intercept value for the first probing device. 2. The method of claim 1 , further comprising: comparing, by the first probing device, the timestamp offset and the independent timestamp offset; and responsive to determining that the timestamp offset is approximately equal to the independent timestamp offset, classifying, by the first probing device, the timestamp offset as a valid timestamp offset. 3. The method of claim 1 , further comprising: sending, by the first probing device, and to the second probing device of the plurality of probing devices in the network, a second timestamp for the first probing device; receiving, by the first probing device, and from the second probing device, a second timestamp for the second probing device; determining, by the first probing device, a second timestamp offset between the second timestamp for the first probing device and the second timestamp for the second probing device; comparing, by the first probing device, the second timestamp offset and the independent timestamp offset; responsive to determining that the second timestamp offset is not approximately equal to the independent timestamp offset, classifying, by the first probing device, second the timestamp offset as an invalid timestamp offset; and responsive to classifying the second timestamp offset as an invalid timestamp offset, refraining, by the first probing device, from determining a second upper-bound delta time and a second lower-bound delta time for the probing device pair based on the second timestamp offset. 4. The method of claim 1 , further comprising: sending, by the first probing device, and to the second probing device of the plurality of probing devices in the network, a second timestamp for the first probing device; receiving, by the first probing device, and from the second probing device, a second timestamp for the second probing device; determining, by the first probing device, based at least in part on the timestamp for the first probing device, the timestamp for the second probing device, the second timestamp for the first probing device, and the second timestamp for the second probing device, the upper-bound delta time and the lower-bound delta time for the probing device pair; calculating, by the first probing device, and based at least in part on the upper-bound delta time and the lower-bound delta time for the probing device pair, the slope value and the intercept value for the first probing device; and sending, by the first probing device, and to the local system master clock, the slope value and the intercept value for the first probing device. 5. The method of claim 4 , further comprising: sending, by the first probing device, and to the second probing device of the plurality of probing devices in the network, a third timestamp for the first probing device; receiving, by the first probing device, and from the second probing device, a third timestamp for the second probing device; determining, by the first probing device, and based at least in part on the third timestamp for the first probing device, the third timestamp for the second probing device, the upper-bound delta time for the probing device pair, and the lower-bound delta time for the probing device pair, an updated upper-bound delta time and an updated lower-bound delta time for the probing device pair; calculating, by the first probing device, and based at least in part on the updated upper-bound delta time and the updated lower-bound delta time for the probing device pair, an updated slope value and an updated intercept value for the first probing device; and sending, by the first probing device, and to the local system master clock, the updated slope value and the updated intercept value for the first probing device. 6. The method of claim 1 , further comprising: receiving, by the first probing device, and from the local system master clock, a reference clock probe that includes a time synchronization offset for the first probing device; and synchronizing, by the first probing device, and based at least in part on the time synchronization offset, a clock on the first probing device. 7. The method of claim 1 , wherein sending the timestamp for the first probing device comprises: sending, by the first probing device, and to the second probing device, a probe packet that includes the timestamp for the first probing device. 8. The method of claim 1 , wherein calculating the slope value and the intercept value for the first probing device comprises: creating, by the first probing device, a non-linear model; and calculating, by the first probing device, and using the non-linear model, the upper-bound delta time, and the lower-bound delta time, the slope value and the intercept value for the first probing device. 9. The method of claim 1 , further comprising: sending, by the first probing device, and to a third probing device of the plurality of probing devices in the network, a second timestamp for the first probing device, wherein the first probing device and the third probing device are included in a second probing device pair; receiving, by the first probing device, and from the third probing device, a timestamp for the third probing device; determining, by the first probing device, based at least in part on the second timestamp for the first probing device and the timestamp for the third probing device, an upper-bound delta time and a lower-bound delta time for the second probing device pair; calculating, by the first probing device, and based at least in part on the upper-bound delta time and the lower-bound delta time for the probing device pair and the upper-bound delta time and the lower-bound delta time for the second probing device pair, the slope value and the intercept value for the first probing device. 10. A first probing device comprising: one or more processors operably coupled to a memory; and a synchronization engine executable by the one or more processors to: send, to a second probing device of a plurality of probing devices in a network, a timestamp for the first probing device, wherein the first probing device and the second probing device are included in a probing device pair; receive, from the

Assignees

Inventors

Classifications

  • Network monitoring probes · CPC title

  • using time related information in packets, e.g. by adding timestamps · CPC title

  • Transmission error · CPC title

  • Special purpose or proprietary protocols or architectures (network applications for proprietary or special purpose networking environments H04L67/12) · CPC title

  • Monitoring arrangements {(for SDH/SONET rings H04J3/085)} · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11115142B1 cover?
This disclosure describes techniques for delivering high-accuracy and high-precision clock synchronization in heterogeneous distributed computer clusters. For example, the disclosure describes a synchronization engine that sets efficient clock synchronization processes based on a cluster node's characteristics, pricing, precision, geolocation, and/or cluster topology, while in some cases using …
Who is the assignee on this patent?
Equinix Inc
What technology area does this patent fall under?
Primary CPC classification G06F1/12. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 07 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).