IP Library › Granted Patent US 11,695,627
Granted Patent B1
US 11,695,627 · App. 17/569,406 · Granted Jul 4, 2023

Transactional distribution of modelled configuration from a centralized server to a plurality of subsidiary devices

Inventors: Michael Gibbings Fink (San Francisco, CA); Justin Costa-Roberts (San Francisco, CA); Avinash Kumar (San Francisco, CA)
Assignee: ARISTA NETWORKS, INC.
H04L41/0813H04L41/0856
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,695,627
App. No.
17/569,406
Granted
Jul 4, 2023
Kind
B1
Abstract

Techniques are provided for facilitating network devices to obtain configuration updates from a central configuration repository. Configuration update information is received regarding a configuration update in a configuration repository. A data tree is updated based on the configuration update information. An identifier unique to the update is generated. A determination is performed that network device properties of a network device correspond to a set of network device properties indicated for the configuration update information. A notification indicating the availability of the configuration update is sent over one or more networks to the network device.

Claims (56)

1. A method, comprising:

receiving configuration update information regarding a configuration update in a configuration repository, the configuration update information indicating a set of network device criteria of network devices to which the configuration update is to be applied;

implementing an update to a data tree based on the configuration update information;

generating epoch information for the update;

determining that network device properties of a network device satisfy the set of network device criteria;

sending, over one or more networks to the network device, a notification indicating an availability of the configuration update and including at least a portion of the epoch information,

wherein the epoch information includes a first epoch identifier and path information referencing a path in the data tree;

performing comparisons between the set of network device criteria and a collection of stored network device information indicating properties of a plurality of network devices; and

determining that the set of network device properties satisfy the set of network device criteria as a result of the comparisons.

2. The method of claim 1 , wherein the configuration update information includes a configuration update identifier, the method comprising:

receiving, over the one or more networks from the network device, a request for the configuration update identifier, the request including a first epoch identifier of the epoch information;

determining the configuration update identifier based on the first epoch identifier; and

sending, over the one or more networks, the configuration update identifier to the network device.

3. The method of claim 2 , wherein the request includes a second epoch identifier, the method comprising:

determining a collection of data objects of the data tree based on the first epoch identifier and the second epoch identifier, wherein the configuration update identifier is included in the collection of data objects.

4. The method of claim 1 , wherein the data tree has nodes representing configuration updates and having segments representing relationships between configuration updates.

5. The method of claim 1 , comprising:

receiving, over the one or more networks from the network device, a request for notifications regarding configuration updates that are applicable to the network device, the request including device information indicating a set of properties of the network device.

6. A system, comprising:

one or more processors; and

one or more non-transitory storage media storing instructions that, as a result of execution, cause the system to:

receive first configuration update information regarding a first configuration update in a configuration repository, the first configuration update information indicating a first set of network device properties of network devices to which the first configuration update is to be applied;

implement a first update to a first data tree based on the first configuration update information;

generate a first identifier for first update;

determine that network device properties of a first network device satisfy the first set of network device properties;

send, over one or more networks to the first network device, a first notification indicating an availability of the first configuration update and including the first identifier,

wherein the first notification includes path information referencing one or more objects in the data tree;

determine that network device properties of a plurality of network devices satisfy the first set of network device properties; and

update a record identifying the plurality of network devices to which the first configuration update applies.

7. The system of claim 6 , execution of the instructions causing the system to:

receive second configuration update information regarding a second configuration update in the configuration repository, the second configuration update information indicating a second set of network device properties of network devices to which the second configuration update is to be applied;

implement a second update to a second data tree based on the second configuration update information;

generate a second identifier for the second update;

determine that network device properties of a second network device satisfy the second set of network device properties; and

send, over one or more networks to the second network device, a second notification indicating the availability of the second configuration update and including the second identifier.

8. The system of claim 6 , execution of the instructions causing the system to:

receive, over the one or more networks from the first network device, a request for a configuration update identifier, the request including the first identifier and a second identifier associated with the data tree;

determine a set of configuration update identifiers based on the first identifier and the second identifier; and

send, over the one or more networks, the set of configuration update identifiers to the first network device.

9. The system of claim 6 , wherein the first update indicates a relationship of the first configuration update to a previous configuration update for a set of network devices.

10. The system of claim 6 , execution of the instructions causing the system to:

receive, over the one or more networks from the first network device, a request for notifications regarding configuration updates that are applicable to the first network device, the request including device information indicating a set of properties of the first network device.

11. One or more non-transitory computer readable media storing instructions that, as a result of execution by one or more processors, cause the one or more processors to:

receive configuration update information regarding a configuration update in a configuration repository, the configuration update information indicating a set of network device properties of network devices to which the configuration update is to be applied;

implement an update to a data tree based on the configuration update information;

generate a first identifier unique to the update to the data tree;

determine that network device properties of a network device correspond to the set of network device properties;

send, over one or more networks to the network device, a notification indicating an availability of the configuration update and including the first identifier,

wherein the first notification includes path information referencing one or more objects in the data tree;

perform comparisons between the set of network device properties indicated and network device properties records of a plurality of network devices; and

determine that network device properties of the first network device correspond to the set of network device properties as a result of the comparisons.

12. The one or more non-transitory computer readable media of claim 11 , wherein the update to the data tree includes adding, to the data tree, a first data object and an association between the first data object and a second data object of the data tree.

13. The one or more non-transitory computer readable media of claim 11 , execution of the instructions causing the one or more processors to:

receive, over the one or more networks from the first network device, a request for a set of configuration update identifiers, the request including the first identifier and a second identifier associated with the data tree.

14. The one or more non-transitory computer readable media of claim 11 , execution of the instructions causing the one or more processors to:

receive, over the one or more networks from the network device, a request for notifications regarding configuration updates that are applicable to the network device, the request including device information representative of a set of properties of the network device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2022
From: FINK, MICHAEL GIBBINGS; COSTA-ROBERTS, JUSTIN; KUMAR, AVINASH SIVA
To: ARISTA NETWORKS, INC.
Reel/Frame 058572/0782 →
Cited By (1)
US 12,271,393