# US 9,882,666 B2 · Time synchronization for network testing equipment

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

- Number: US 9,882,666 B2
- Document ID: US9882666B2
- Status: Granted
- Kind: B2
- Application number: 14/822,217
- Filed: 2015-08-10
- Published: 2016-06-30
- Granted: 2018-01-30
- Earliest claimed: 2011-12-13
- Assignees: Viavi Solutions Inc.
- Applicants: Viavi Solutions Inc.
- Inventors: Canning Hsueh; Michael Stevens; Bob Samway
- Web page: https://patentgrep.com/patent/US9882666B2

## CPC

- H04J 3/0667: {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)}
- H04J 3/0635: {Clock or time synchronisation in a network (timer in protocols H04L69/28)}
- H04J 3/0682: {by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging}
- H04L 7/0012: {by comparing receiver clock with transmitter clock}
- H04L 12/4633: {Interconnection of networks using encapsulation techniques, e.g. tunneling}
- H04L 63/04: {for providing a confidential data exchange among entities communicating through data packet networks}
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04J: MULTIPLEX COMMUNICATION (transmission in general H04B; peculiar to transmission of digital information H04L5/00; systems for the simultaneous or sequential transmission of more than one television signal H04N7/08; in exchanges H04Q11/00; stereophonic systems H04S)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The invention relates to time synchronization between network testing elements in distributed network monitoring and testing systems, and provides a condensed PTP process wherein the number of timing messages exchanged between master and slave in one iteration of the time synchronization process is reduced. Furthermore, timing messages are encrypted to provide for a more secure synchronization process. One aspect of the method provides for an automatic detection and adaptive handling of protocol stacks of received timing packets.

## Claims

### Claim 1

A routing device comprising:
a memory to store instructions; and
a processor to execute the instructions to:
transmit, to a network probe device, a Sync message at a first time;
record, based on transmitting the Sync message, a first time value associated with the first time,
the network probe device receiving the Sync message at a second time associated with a second time value;
receive, from the network probe device, a Delay request message,
the network probe device transmitting the Delay request message at a third time associated with a third time value, and
the Delay request message being received at a fourth time;
record, based on receiving the Delay request message, a fourth time value associated with the fourth time;
transmit, to the network probe device, a Follow up Delay response message,
the Follow up Delay response message including the first time value and the fourth time value,
the network probe device computing, based on the first time value, the second time value, the third time value, and the fourth time value, an offset time value that is used to synchronize the routing device and the network probe device, and
at least one of the Sync message, the Delay request message, or the Follow up Delay response message being encrypted;
receive the offset time value from the network probe device; and
output the offset time value in association with a network location identifier for the network probe device.

### Claim 2 (depends on 1)

The routing device of claim 1, where the processor stores the first time value.

### Claim 3 (depends on 1)

The routing device of claim 1, where the first time value is different from the second time value.

### Claim 4 (depends on 1)

The routing device of claim 1, where the first time value, the second time value, the third time value, and the fourth time value are used to compute an amount of delay associated with a network that includes the routing device and the network probe device.

### Claim 5 (depends on 1)

The routing device of claim 1, where the offset time value is used to adjust a clock associated with the network probe device.

### Claim 6 (depends on 1)

The routing device of claim 1, where the processor is further to:
transmit the Sync message to a plurality of network probe devices,
the plurality of network probe devices including the network probe device.

### Claim 7

A method comprising:
transmitting, by a routing device and to a network probe device, a Sync message at a first time;
recording, by the routing device and based on transmitting the Sync message, a first time value associated with the first time,
the network probe device receiving the Sync message at a second time associated with a second time value;
receiving, by the routing device and from the network probe device, a Delay request message,
the network probe device transmitting the Delay request message at a third time associated with a third time value, and
the Delay request message being received at a fourth time;
recording, by the routing device and based on receiving the Delay request message, a fourth time value associated with the fourth time;
transmitting, by the routing device and to the network probe device, a Follow up Delay response message,
the Follow up Delay response message including the first time value and the fourth time value,
the network probe device computing, based on the first time value, the second time value, the third time value, and the fourth time value, an offset time value that is used to synchronize the routing device and the network probe device, and
at least one of the Sync message, the Delay request message, or the Follow up Delay response message being encrypted;
receiving, by the routing device, the offset time value from the network probe device; and
outputting, by the routing device, the offset time value in association with a network location identifier for the network probe device.

### Claim 8 (depends on 7)

The method of claim 7, further comprising:
storing the first time value.

### Claim 9 (depends on 7)

The method of claim 7, where the first time value is different from the second time value.

### Claim 10 (depends on 7)

The method of claim 7, where the first time value, the second time value, the third time value, and the fourth time value are used to compute an amount of delay associated with a network that includes the routing device and the network probe device.

### Claim 11 (depends on 7)

The method of claim 7, where the offset time value is used to adjust a clock associated with the network probe device.

### Claim 12 (depends on 7)

The method of claim 7, further comprising:
transmitting the Sync message to a plurality of network probe devices,
the plurality of network probe devices including the network probe device.

### Claim 13

A network probe device comprising:
a memory to store instructions; and
a processor to execute the instructions to:
receive, from a routing device, a Sync message,
the Sync message being transmitted at a first time associated with a first time value
the Sync message being received at a second time;
record, based on receiving the Sync message, a second time value associated with the second time;
transmit, to the routing device, a Delay request message at a third time,
the Delay request message being received by the routing device at a fourth time associated with a fourth time value;
record, based on transmitting the Delay request message, a third time value associated with the third time;
receive, from the routing device, a Follow up Delay response message,
the Follow up Delay response message including the first time value and the fourth time value;
compute, based on the first time value, the second time value, the third time value, and the fourth time value, an offset time value that is used to synchronize the routing device and the network probe device,
at least one of the Sync message, the Delay request message, or the Follow up Delay response message being encrypted; and
transmit the offset time value to the routing device,
the routing device outputting the offset time value in association with a network location identifier for the network probe device.

### Claim 14 (depends on 13)

The network probe device of claim 13, where the processor synchronizes, using the offset time value, the network probe device and the routing device.

### Claim 15 (depends on 14)

The network probe device of claim 14, where the processor, when synchronizing the network probe device and the routing device, is to:
synchronize the network probe device and the routing device by adjusting a clock associated with the network prove device.

### Claim 16 (depends on 13)

The network probe device of claim 13, where the processor is further to:
compute, using the first time value, the second time value, the third time value, and the fourth time value, an amount of delay associated with a network that includes the network probe device and the routing device.

### Claim 17 (depends on 13)

The network probe device of claim 13, where each of the first time value, the second time value, the third time value, and the fourth time value is different from each other.

### Claim 18 (depends on 1)

The routing device of claim 1, where the Sync message, the Delay request message, or the Follow up Delay response message is encrypted using at least one of:
a Grain-128 encryption,
a Rivest Cipher 4 (RC4) encryption,
a Galois/Counter Mode encryption,
a Counter with cipher block chaining message authentication code (CBC-MAC) encryption,
an encrypt-then-authenticate-then-translate (EAX) encryption, or
an Offset Codebook Mode encryption.

### Claim 19 (depends on 7)

The method of claim 7, where the Sync message, the Delay request message, or the Follow up Delay response message is encrypted using at least one of:
a Grain-128 encryption,
a Rivest Cipher 4 (RC4) encryption,
a Galois/Counter Mode encryption,
a Counter with cipher block chaining message authentication code (CBC-MAC) encryption,
an encrypt-then-authenticate-then-translate (EAX) encryption, or
an Offset Codebook Mode encryption.

### Claim 20 (depends on 13)

The network probe device of claim 13, where the Sync message, the Delay request message, or the Follow up Delay response message is encrypted using at least one of:
a Grain-128 encryption,
a Rivest Cipher 4 (RC4) encryption,
a Galois/Counter Mode encryption,
a Counter with cipher block chaining message authentication code (CBC-MAC) encryption,
an encrypt-then-authenticate-then-translate (EAX) encryption, or
an Offset Codebook Mode encryption.
