Network clock synchronization

US2017006567A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017006567-A1
Application numberUS-201514755621-A
CountryUS
Kind codeA1
Filing dateJun 30, 2015
Priority dateJun 30, 2015
Publication dateJan 5, 2017
Grant date

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.

According to example embodiments of the present invention, predetermined patterns are inserted into data streams and exchanged between a master node and a slave node. By recognizing the patterns near the underlying interface of the physical layer, the master node and slave node can generate timestamps that exactly identify when the respective messages leaves and/or arrives at the physical layer. The slave clock can be synchronized to the master clock based on such timestamps.

First claim

Opening claim text (preview).

I/We claim: 1 . A computer-implemented method comprising: inserting a first pattern into an outgoing data stream to be transmitted from a master node to a slave node; generating a first timestamp identifying when the first pattern is sent out from a physical layer of the master node; and generating a fourth timestamp identifying when a second pattern arrives at the physical layer of the master node, the second pattern being inserted in an incoming data stream transmitted from the slave node to the master node, wherein the first timestamp and the fourth timestamp are sent from the master node to the slave node for clock synchronization between the master node and the slave node. 2 . The method of claim 1 , wherein inserting the first pattern comprises: inserting the first pattern into the outgoing data stream in response to a synchronization message being sent from the master node to the slave node to initiate the clock synchronization; and removing at least one block from an inter packet gap (IPG) in the outgoing data stream to compensate for a throughput cost caused by the inserting of the first pattern. 3 . The method of claim 1 , wherein inserting the first pattern comprises: inserting the first pattern into the outgoing data stream at a physical coding sub-layer (PCS) in the physical layer of the master node. 4 . The method of claim 1 , wherein forward error correction (FEC) is disabled in the physical layer of the master node, and wherein inserting the first pattern comprises: determining a raw pattern such that scrambling the raw pattern produces the first pattern; and causing the raw pattern to be scrambled during a time interval that is determined based on a size of the raw pattern, scrambling of the outgoing data stream being suspended during the time interval. 5 . The method of claim 1 , wherein forward error correction (FEC) is enabled in the physical layer of the master node, and wherein inserting the first pattern comprises: determining a raw pattern such that performing FEC encoding on the raw pattern produces the first pattern; and causing FEC encoding to be performed on the raw pattern during a time interval that is determined based on a size of the raw pattern, FEC encoding of the outgoing data stream being suspended during the time interval. 6 . The method of claim 1 , wherein the physical layer of the master node includes a serializer that receives the outgoing data stream via a parallel data interface and outputs serialized data stream via a series data interface, and wherein generating the first timestamp comprises: in response to recognizing the first pattern before the first pattern is serialized by the serializer, determining an offset of the first pattern with respect to a width of the parallel data interface of the serializer; determining a delay associated with the recognition of the first pattern; and generating the first timestamp based on a high speed clock for the series data interface of the serializer, a low speed clock for the parallel data interface of the serializer, the offset and the delay. 7 . The method of claim 1 , wherein the physical layer of the master node includes a deserializer that receives the incoming data stream via a series data interface and outputs deserialized data stream via a parallel data interface, and wherein generating the fourth timestamp comprises: in response to recognizing the second pattern after the second pattern is deserialized by the deserializer, determining an offset of the second pattern with respect to a width of the parallel data interface of the deserializer; determining a delay associated with the recognition of the second pattern; and generating the fourth timestamp based on a high speed clock for the series data interface of the deserializer, a low speed clock for the parallel data interface of the deserializer, the offset and the delay. 8 . The method of claim 1 , wherein generating the fourth timestamp comprises: in response to receiving a delay request message from the slave node, recognizing the second pattern within a guard time period of a predetermined length for generating the fourth timestamp, the delay request message being received after sending the first timestamp to the slave node, and wherein the method further comprises: in response to the delay request message, sending the fourth timestamp to the slave node in a delay response message. 9 . A computer-implemented method comprising: generating a second timestamp identifying when a first pattern arrives at a physical layer of a slave node, the first pattern being inserted in an incoming data stream transmitted from a master node to the slave node; inserting a second pattern into an outgoing data stream to be transmitted from the slave node to the master node; and generating a third timestamp identifying when the second pattern is sent out from the physical layer of the slave node, wherein the second timestamp and the third timestamp are used for clock synchronization between the master node and the slave node. 10 . The method of claim 9 , further comprising: receiving a first timestamp from the master node, the first timestamp identifying when the first pattern is sent out from a physical layer of the master node; and receiving a fourth timestamp from the master node, the fourth timestamp identifying when the second pattern arrives at the physical layer of the master node. 11 . The method of claim 9 , wherein generating the second timestamp comprises: in response to receiving a synchronization message from the master node to initiate the clock synchronization, recognizing the first pattern in a guard time period of a predetermined length for generating the second timestamp. 12 . The method of claim 9 , wherein forward error correction (FEC) is disabled in the physical layer of the slave node, and wherein inserting the second pattern comprises: determining a raw pattern such that scrambling the raw pattern produces the second pattern; and causing the raw pattern to be scrambled during a time interval that is determined based on a size of the raw pattern, scrambling of the outgoing data stream being suspended during the time interval. 13 . The method of claim 9 , wherein forward error correction (FEC) is enabled in the physical layer of the slave node, and wherein inserting the second pattern comprises: determining a raw pattern such that performing FEC encoding on the raw pattern produces the second pattern; and causing FEC encoding to be performed on the raw pattern during a time interval that is determined based on a size of the raw pattern, FEC encoding of the outgoing data stream being suspended during the time interval. 14 . The method of claim 9 , wherein the physical layer includes a deserializer for deserializing that receives the incoming data stream via a series data interface and outputs deserialized data stream via a parallel data interface, and wherein generating the second timestamp comprises: in response to recognizing the first pattern after the first pattern is deserialized by the deserializer, determining an offset of the first pattern with respect to a width of the parallel data interface of the deserializer; determining a delay associated with the recognition of the first pattern; and generating the second timestamp based on a high speed clock for the series data interface of the deserializer, a low speed clock for the parallel data interface of the deserializer, the offset and the delay. 15 . The method of claim 9 , wherein the physical layer includes a serializer that receives

Assignees

Inventors

Classifications

  • one node acting as a reference for the others · CPC title

  • by using forward error control (H04L1/0618 takes precedence; coding, decoding or code conversion, for error detection or correction H03M13/00) · CPC title

  • Arrangements at the transmitter end · 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 US2017006567A1 cover?
According to example embodiments of the present invention, predetermined patterns are inserted into data streams and exchanged between a master node and a slave node. By recognizing the patterns near the underlying interface of the physical layer, the master node and slave node can generate timestamps that exactly identify when the respective messages leaves and/or arrives at the physical layer…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification H04W56/0015. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Jan 05 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). 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).