# US 11,115,266 B2 · Priority based selection of time services

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

- Number: US 11,115,266 B2
- Document ID: US11115266B2
- Status: Granted
- Kind: B2
- Application number: 16/296,434
- Filed: 2019-03-08
- Published: 2020-09-10
- Granted: 2021-09-07
- Earliest claimed: 2019-03-08
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Eliot Lear
- Web page: https://patentgrep.com/patent/US11115266B2

## CPC

- H04J 3/0641: {Change of the master or reference, e.g. take-over or failure of the master}
- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 12/18: for broadcast or conference {, e.g. multicast}
- H04L 61/5014: using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
- H04L 67/104: Peer-to-peer [P2P] networks
- 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

In an embodiment, a method comprises at a network device in an enterprise network, selecting one or more time servers used for establishing a timing reference according to a predetermined priority order of selection that begins with determining whether the network device is configured with information indicating one or more time servers to be used. A timing reference is established for the network device based on a selected time server.

## Claims

### Claim 1

A method comprising:
at a network device in an enterprise network, selecting one or more time servers, to use for establishing a timing reference for the network device, according to a predetermined priority order of selection that begins with determining whether the network device is configured with identification information indicating the one or more time servers to be used;
in response to the network device not being configured with the identification information of the one or more time servers, communicating with a network management protocol server to obtain the identification information of the one or more time servers;
in response to not obtaining the identification information from the network management protocol server, sending into the enterprise network a multicast request for a network time protocol service; and
establishing the timing reference for the network device using a time server selected according to the predetermined priority order of selection.

### Claim 2 (depends on 1)

The method of claim 1, wherein selecting according to the predetermined priority order of selection includes:
if the network device is not configured with the identification information indicating the one or more time servers:
sending a request through the enterprise network to the network management protocol server for the identification information of the one or more time servers used by the network management protocol server; and
if the identification information of the one or more time servers used by the network management protocol server is received, selecting at least one of the one or more time servers used by the network management protocol server.

### Claim 3 (depends on 2)

The method of claim 2, wherein the network management protocol server is Dynamic Host Configuration Protocol server, and the request includes a network time protocol server option.

### Claim 4 (depends on 2)

The method of claim 2, wherein selecting according to the predetermined priority order of selection includes:
if the network device is not successful at selecting the time server based on the multicast request:
sending, into the enterprise network, a link layer protocol request for the network time protocol service; and
if a response is received to the link layer protocol request, selecting the time server based on information contained in the response to the link layer protocol request.

### Claim 5 (depends on 4)

The method of claim 4, wherein selecting according to the predetermined priority order of selection includes:
if the network device is not successful at selecting the time server based on the link layer protocol request:
attempting to connect to an Internet network time protocol server.

### Claim 6 (depends on 5)

The method of claim 5, wherein selecting according to the predetermined priority order of selection includes:
if the network device is not successful at connecting to the Internet network time protocol server:
detecting network time protocol packets sent via multicast into the enterprise network by one or more peer network devices.

### Claim 7 (depends on 1)

The method of claim 1, wherein selecting according to the predetermined priority order of selection includes:
if the network device is not configured with the identification information indicating the one or more time servers:
sending, into the enterprise network, the multicast request for the network time protocol service; and
if a response to the multicast request is received by the network device, selecting the time server based on information contained in the response to the multicast request.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
based on the predetermined priority order, selecting a time service mechanism from among a plurality of time service mechanisms that include one or more of:
obtaining the identification information of the one or more time servers using a link layer discovery protocol,
connecting to an Internet network time protocol server, or
detecting network time protocol packets sent via multicast.

### Claim 9 (depends on 8)

The method of claim 8, wherein selecting the time service mechanism is periodically repeated.

### Claim 10

A network device comprising:
a network interface configured to enable network communications in a network by sending packets into the network or receiving packets from the network;
a processor coupled to the network interface, the processor configured to:
select one or more time servers, to use for establishing a timing reference for the network device, according to a predetermined priority order of selection that begins with determining whether the network device is configured with identification information indicating one or more time servers to be used;
in response to the network device not being configured with the identification information of the one or more time servers, cause to communicate with a network management protocol server to obtain the identification information of the one or more time servers;
in response to the network device not obtaining the identification information from the network management protocol server, send, into the network, a multicast request for a network time protocol service; and
establish the-timing reference for the network device using a time server selected according to the predetermined priority order of selection.

### Claim 11 (depends on 10)

The network device of claim 10, wherein the processor is configured to:
if the network device is not configured with the identification information indicating the one or more time servers:
cause a request to be sent into the network to the network management protocol server to receive the identification information of the one or more time servers used by the network management protocol server; and
if the identification information of the one or more time servers used by the network management protocol server is received, select at least one of the one or more time servers used by the network management protocol server.

### Claim 12 (depends on 11)

The network device of claim 11, wherein the processor is configured to:
if the network device is not successful at selecting the time server based on the multicast request:
send, into the network, a link layer protocol request for the network time protocol service; and
if a response is received to the link layer protocol request, selecting the time server based on information contained in the response to the link layer protocol request.

### Claim 13 (depends on 12)

The network device of claim 12, wherein the processor is configured to:
if the network device is not successful at selecting the time server based on the link layer protocol request:
attempt to connect to an Internet network time protocol server.

### Claim 14 (depends on 13)

The network device of claim 13, wherein the processor is configured to:
if the network device is not successful at connecting to the Internet network time protocol server:
detect network time protocol packets sent via multicast into the network by one or more peer network devices.

### Claim 15

One or more non-transitory computer readable storage media encoded with instructions that, when executed by a processor, cause the processor to:
at a network device in an enterprise network, select one or more time servers, to use for establishing a timing reference, according to a predetermined priority order of selection that begins with determining whether the network device is configured with identification information indicating one or more time servers to be used;
in response to the network device not being configured with the identification information of the one or more time servers, communicate with a network management protocol server to obtain the identification information of the one or more time servers;
in response to not obtaining the identification information from the network management protocol server, send, into the enterprise network, a multicast request for a network time protocol service; and
establish the timing reference for the network device using a time server selected according to the predetermined priority order of selection.

### Claim 16 (depends on 15)

The non-transitory computer readable storage media of claim 15, wherein instructions to select according to the predetermined priority order of selection includes instructions to:
if the network device is not configured with the identification information indicating the one or more time servers:
send a request, through the enterprise network, to the network management protocol server, to receive the identification information of the one or more time servers used by the network management protocol server; and
if the identification information of the one or more time servers used by the network management protocol server is received, select at least one of the one or more time servers used by the network management protocol server.

### Claim 17 (depends on 16)

The non-transitory computer readable storage media of claim 16, wherein instructions to select according to the predetermined priority order of selection includes instructions to:
if the network device is not successful at selecting the time server based on the multicast request:
send, into the enterprise network, a link layer protocol request for the network time protocol service; and
if a response is received to the link layer protocol request, select the time server based on information contained in the response to the link layer protocol request.

### Claim 18 (depends on 17)

The non-transitory computer readable storage media of claim 17, wherein instructions to select according to the predetermined priority order of selection includes instructions to:
if the network device is not successful at selecting the time server based on the link layer protocol request:
attempt to connect to an Internet network time protocol server.

### Claim 19 (depends on 18)

The non-transitory computer readable storage media of claim 18, wherein instructions to select according to the predetermined priority order of selection includes instructions to:
if the network device is not successful at connecting to the Internet network time protocol server:
detect network time protocol packets sent via multicast into the enterprise network by one or more peer network devices.

### Claim 20 (depends on 15)

The non-transitory computer readable storage media of claim 15, wherein the network management protocol server is a Dynamic Host Configuration Protocol server.
