# US 12,003,396 B2 · Asymmetry compensation for private line emulation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,003,396 B2
- Document ID: US12003396B2
- Status: Granted
- Kind: B2
- Application number: 16/851,631
- Filed: 2020-04-17
- Published: 2021-07-01
- Granted: 2024-06-04
- Earliest claimed: 2019-12-31
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Christian Schmutzer; Luca Della Chiesa
- Web page: https://patentgrep.com/patent/US12003396B2

## CPC

- H04L 43/0852: Delays
- H04L 47/56: implementing delay-aware scheduling
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In one example, an indication of a time during which a network communication obtained from a first network node was processed by the first network node, and an indication of a propagation delay from a second network node to the first network node, are obtained. A time during which the network communication was processed by the second network node is determined. A propagation delay from the first network node to the second network node is calculated based on the time during which the network communication was processed by the first network node and the time during which the network communication was processed by the second network node. A difference between the propagation delay from the first network node to the second network node, and the propagation delay from the second network node to the first network node, is determined and compensated is made for that difference.

## Claims

### Claim 1

A method comprising:
providing a first network communication to a first network node from a second network node, wherein the first network node and the second network node are separated from one another by a switched path network;
obtaining, from the first network node, a second network communication including an indication of a propagation delay from the second network node to the first network node that was calculated based on a time during which the first network communication was processed by the first network node and a time during which the first network communication was processed by the second network node;
calculating a propagation delay from the first network node to the second network node based on a time during which the second network communication was processed by the first network node and a time during which the second network communication was processed by the second network node;
determining that the propagation delay from the first network node to the second network node is less than the propagation delay from the second network node to the first network node;
delaying the second network communication in an egress buffer of the second network node for an amount of time substantially equal to a difference between the propagation delay from the first network node to the second network node, and the propagation delay from the second network node to the first network node;
providing a third network communication to the first network node from the second network node;
obtaining, from the first network node, a fourth network communication including an indication of an updated propagation delay from the second network node to the first network node that was calculated based on a time during which the third network communication was processed by the first network node and a time during which the third network communication was processed by the second network node;
calculating an updated propagation delay from the first network node to the second network node based on a time during which the fourth network communication was processed by the first network node and a time during which the fourth network communication was processed by the second network node;
determining that the updated propagation delay from the first network node to the second network node is less than the updated propagation delay from the second network node to the first network node; and
delaying the fourth network communication in an egress buffer of the second network node for an amount of time substantially equal to a difference between the updated propagation delay from the first network node to the second network node, and the updated propagation delay from the second network node to the first network node.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
providing, to the first network node, an indication of the propagation delay from the first network node to the second network node.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first network communication includes an indication of the time during which the first network communication was processed by the second network node.

### Claim 4 (depends on 1)

The method of claim 1, wherein the second network communication further includes the indication of the time during which the second network communication was processed by the first network node.

### Claim 5 (depends on 1)

The method of claim 1, wherein a local time of day of the first network node and a local time of day of the second network node are aligned.

### Claim 6 (depends on 1)

The method of claim 1, wherein the first network node and the second network node form at least part of a private line emulation network.

### Claim 7 (depends on 1)

The method of claim 1, wherein delaying the second network communication includes compensating for an asymmetry of lengths of a first optical fiber and of a second optical fiber between the first network node and the second network node.

### Claim 8 (depends on 1)

The method of claim 1, wherein delaying the second network communication includes compensating for a load of a network that includes the first network node and the second network node.

### Claim 9 (depends on 1)

The method of claim 1, wherein delaying the second network communication includes compensating for a design of a network that includes the first network node and the second network node.

### Claim 10 (depends on 1)

The method of claim 1, wherein delaying the second network communication includes compensating for a temperature of an optical fiber between the first network node and the second network node.

### Claim 11

An apparatus comprising:
a memory configured to store executable instructions; and
one or more processors coupled to the memory, wherein the one or more processors are configured to:
provide a first network communication to a network node, wherein the network node and the apparatus are separated from one another by a switched path network;
obtain, from the network node, a second network communication including an indication of a propagation delay from the apparatus to the network node that was calculated based on a time during which the first network communication was processed by the network node and a time during which the first network communication was processed by the apparatus;
calculate a propagation delay from the network node to the apparatus based on a time during which the second network communication was processed by the network node and a time during which the second network communication was processed by the apparatus;
determine that the propagation delay from the network node to the apparatus is less than the propagation delay from the apparatus to the network node;
delay the second network communication in an egress buffer of the apparatus for an amount of time substantially equal to a difference between the propagation delay from the network node to the apparatus, and the propagation delay from the apparatus to the network node;
provide a third network communication to the network node from the apparatus;
obtaining, from the network node, a fourth network communication including an indication of an updated propagation delay from the apparatus to the network node that was calculated based on a time during which the third network communication was processed by the network node and a time during which the third network communication was processed by the apparatus;
calculate an updated propagation delay from the network node to the apparatus based on a time during which the fourth network communication was processed by the network node and a time during which the fourth network communication was processed by the apparatus;
determine that the updated propagation delay from the network node to the apparatus is less than the updated propagation delay from the apparatus to the network node; and
delay the fourth network communication in an egress buffer of the apparatus for an amount of time substantially equal to a difference between the updated propagation delay from the network node to the apparatus, and the updated propagation delay from the apparatus to the network node.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the one or more processors are further configured to:
provide, to the network node, an indication of the propagation delay from the network node to the apparatus.

### Claim 13 (depends on 11)

The apparatus of claim 11, wherein the first network communication includes an indication of the time during which the first network communication was processed by the apparatus.

### Claim 14 (depends on 11)

The apparatus of claim 11, wherein the second network communication further includes the indication of the time during which the first network communication was processed by the network node.

### Claim 15 (depends on 11)

The apparatus of claim 11, wherein a local time of day of the network node and a local time of day of the apparatus are aligned.

### Claim 16

One or more non-transitory computer readable storage media encoded with instructions that, when executed by a processor, cause the processor to:
provide a first network communication to a first network node from a second network node, wherein the first network node and the second network node are separated from one another by a switched path network;
obtain, from the first network node, a second network communication including an indication of a propagation delay from the second network node to the first network node that was calculated based on a time during which the first network communication was processed by the first network node and a time during which the first network communication was processed by a second network node;
calculate a propagation delay from the first network node to the second network node based on a time during which the second network communication was processed by the first network node and a time during which the second network communication was processed by the second network node;
determine that the propagation delay from the first network node to the second network node is less than the propagation delay from the second network node to the first network node;
delay the second network communication in an egress buffer of the second network node for an amount of time substantially equal to a difference between the propagation delay from the first network node to the second network node, and the propagation delay from the second network node to the first network node;
provide a third network communication to the first network node from the second network node;
obtain, from the first network node, a fourth network communication including an indication of an updated propagation delay from the second network node to the first network node that was calculated based on a time during which the third network communication was processed by the first network node and a time during which the third network communication was processed by the second network node;
calculate an updated propagation delay from the first network node to the second network node based on a time during which the fourth network communication was processed by the first network node and a time during which the fourth network communication was processed by the second network node;
determine that the updated propagation delay from the first network node to the second network node is less than the updated propagation delay from the second network node to the first network node; and
delay the fourth network communication in an egress buffer of the second network node for an amount of time substantially equal to a difference between the updated propagation delay from the first network node to the second network node, and the updated propagation delay from the second network node to the first network node.

### Claim 17 (depends on 16)

The one or more non-transitory computer readable storage media of claim 16, wherein the instructions further cause the processor to:
provide, to the first network node, an indication of the propagation delay from the first network node to the second network node.

### Claim 18 (depends on 16)

The one or more non-transitory computer readable storage media of claim 16, wherein the first network communication includes an indication of the time during which the first network communication was processed by the second network node.

### Claim 19 (depends on 16)

The one or more non-transitory computer readable storage media of claim 16, wherein the second network communication further includes the indication of the time during which the first network communication was processed by the first network node.

### Claim 20 (depends on 16)

The one or more non-transitory computer readable storage media of claim 16, wherein the instructions further cause the processor to delay the second network communication by compensating for an asymmetry of lengths of a first optical fiber and of a second optical fiber between the first network node and the second network node.
