IP Library › Granted Patent US 11,489,712
Granted Patent B1
US 11,489,712 · App. 16/846,278 · Granted Nov 1, 2022

Systems and methods for efficient configuration file management and distribution by network management systems

Inventors: Polisetty Rama Subbaiah (Sunnyvale, CA); Pallavi Ganny Krishnamurthy (Sunnyvale, CA); Kamal Kumar Tiwari (Sunnyvale, CA)
Assignee: Juniper Networks, Inc.
H04L41/0213H04L41/0806H04L41/0813H04L41/0863
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,489,712
App. No.
16/846,278
Granted
Nov 1, 2022
Kind
B1
Abstract

A disclosed method may include (1) generating a configuration file that represents a specific configuration of a network device included in a network, (2) storing the configuration file that represents the specific configuration of the network device among a set of configuration files available via an NMS, (3) assigning to the configuration file via the NMS, a configuration identifier that uniquely identifies the configuration file among the set of configuration files available via the NMS, (4) receiving, via the NMS, a rollback request to restore the network device to the specific configuration based at least in part on the configuration identifier, and then in response to receiving the rollback request, (5) restoring the network device to the specific configuration based at least in part on the configuration file. Various other systems, methods, and computer-readable media are also disclosed.

Claims (78)

1. A method comprising:

generating a configuration file that represents a specific configuration of a network device included in a network;

storing the configuration file that represents the specific configuration of the network device among a set of configuration files available via a Network Management System (NMS);

assigning, to the configuration file via the NMS, a configuration identifier that uniquely identifies the configuration file among the set of configuration files available via the NMS, wherein:

the NMS maintains a static 1-to-1 mapping between the configuration identifier and the configuration file; and

the NMS assigns different unique configuration identifiers to each configuration file among the set of configuration files, wherein each configuration file stores a complete configuration of the network device at a specific time, such that an addition of a different configuration file does not affect the static 1-to-1 mapping between the configuration identifier and the configuration file;

receiving, via the NMS, a rollback request to restore the network device to the specific configuration based at least in part on:

querying the rollback request for configuration identifiers;

locating the configuration identifier assigned to the configuration file within the rollback request; and

querying the static 1-to-1 mapping using the located configuration identifier; and

in response to receiving the rollback request, restoring the network device to the specific configuration based at least in part on:

identifying, from the query of the static 1-to-1 mapping using the configuration identifier, the configuration file stored among the set of configuration files available via the NMS; and

restoring the network device using the identified configuration file.

2. The method of claim 1 , wherein storing the configuration file among the set of configuration files available via the NMS comprises at least one of:

storing the configuration file on the network device; or

storing the configuration file on a remote device accessible via the NMS.

3. The method of claim 1 , further comprising at least one of:

advertising the configuration identifier to the network device; or

advertising the configuration identifier to at least one additional device.

4. The method of claim 1 , wherein receiving the rollback request comprises receiving the rollback request via a Command Line Interface (CLI).

5. The method of claim 1 , wherein the rollback request includes the configuration identifier.

6. The method of claim 1 , wherein restoring the network device to the specific configuration comprises providing the configuration file to the network device to enable the network device to revert to the specific configuration.

7. The method of claim 1 , wherein the rollback request includes:

the configuration identifier; and

an additional configuration identifier assigned to an additional configuration file included in the set of configuration files available via the NMS;

further comprising generating a delta file that captures a differential between the specific configuration represented by the configuration file and an additional configuration represented by the additional configuration file; and

wherein restoring the network device to the specific configuration comprises applying the delta file to the network device to revert to the specific configuration.

8. The method of claim 7 , wherein:

the network device is currently operating under the additional configuration; and

applying the delta file to the network device comprises reverting the network device from the additional configuration to the specific configuration by undoing one or more features captured in the delta file.

9. The method of claim 1 , further comprising copying the configuration file along with the configuration identifier to a database associated with the network device.

10. The method of claim 9 , further comprising querying the database for the configuration file to which the configuration identifier is assigned.

11. A system comprising:

a configuration module, stored in memory, that generates a configuration file that represents a specific configuration of a network device included in a network;

a storage module, stored in memory, that stores the configuration file that represents the specific configuration of the network device among a set of configuration files available via a Network Management System (NMS);

an assignment module, stored in memory, that assigns, to the configuration file via the NMS, a configuration identifier that uniquely identifies the configuration file among the set of configuration files available via the NMS, wherein:

the NMS maintains a static 1-to-1 mapping between the configuration identifier and the configuration file; and

the NMS assigns different unique configuration identifiers to each configuration file among the set of configuration files, wherein each configuration file stores a complete configuration of the network device at a specific time, such that an addition of a different configuration file does not affect the static 1-to-1 mapping between the configuration identifier and the configuration file;

a receiving module, stored in memory, that receives, via the NMS, a rollback request to restore the network device to the specific configuration based at least in part on:

querying the rollback request for configuration identifiers;

locating the configuration identifier assigned to the configuration file within the rollback request; and

querying the static 1-to-1 mapping using the located configuration identifier;

a restoration module, stored in memory, that restores, in response to the rollback request, the network device to the specific configuration based at least in part on:

identifying, from the query of the static 1-to-1 mapping using the configuration identifier, the configuration file stored among the set of configuration files available via the NMS; and

restoring the network device using the identified configuration file; and

at least one physical processor that executes the configuration module, the storage module, the assignment module, the receiving module, and the restoration module.

12. The system of claim 11 , wherein the storage module:

stores the configuration file on the network device; or

stores the configuration file on a remote device accessible via the NMS.

13. The system of claim 11 , further comprising an advertising module, stored in memory, that:

advertises the configuration identifier to the network device; or

advertises the configuration identifier to at least one additional device.

14. The system of claim 11 , wherein the receiving module receives the rollback request via a Command Line Interface (CLI).

15. The system of claim 11 , wherein the rollback request includes the configuration identifier.

16. The system of claim 11 , wherein, to restore the network device to the specific configuration, the restoration module provides the configuration file to the network device to enable the network device to revert to the specific configuration.

17. The system of claim 11 , wherein:

the rollback request includes:

the configuration identifier; and

an additional configuration identifier assigned to an additional configuration file included in the set of configuration files available via the NMS;

the configuration module generates a delta file that captures a differential between the specific configuration represented by the configuration file and an additional configuration represented by the additional configuration file; and

the restoration module applies the delta file to the network device to revert to the specific configuration.

18. The system of claim 17 , wherein:

the network device is currently operating under the additional configuration; and

the restoration module reverts the network device from the additional configuration to the specific configuration by undoing one or more features captured in the delta file.

19. The system of claim 11 , further comprising copying the configuration file along with the configuration identifier to a database associated with the network device.

20. A non-transitory computer-readable medium comprising one or more computer-readable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

generate a configuration file that represents a specific configuration of a network device included in a network;

store the configuration file that represents the specific configuration of the network device among a set of configuration files available via a Network Management System (NMS);

assign, to the configuration file via the NMS, a configuration identifier that uniquely identifies the configuration file among the set of configuration files available via the NMS, wherein:

the NMS maintains a static 1-to-1 mapping between the configuration identifier and the configuration file; and

the NMS assigns different unique configuration identifiers to each configuration file among the set of configuration files, wherein each configuration file stores a complete configuration of the network device at a specific time, such that an addition of a different configuration file does not affect the static 1-to-1 mapping between the configuration identifier and the configuration file;

receive, via the NMS, a rollback request to restore the network device to the specific configuration based at least in part on:

querying the rollback request for configuration identifiers;

locating the configuration identifier assigned to the configuration file within the rollback request; and

querying the static 1-to-1 mapping using the located configuration identifier; and

restore, in response to receiving the rollback request, the network device to the specific configuration based at least in part on:

identifying, from the query of the static 1-to-1 mapping using the configuration identifier, the configuration file stored among the set of configuration files available via the NMS; and

restoring the network device using the identified configuration file.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2020
From: SUBBAIAH, POLISETTY RAMA; KRISHNAMURTHY, PALLAVI GANNY; TIWARI, KAMAL KUMAR
To: JUNIPER NETWORKS, INC
Reel/Frame 052385/0257 →
Cited By (1)
US 12,463,870