IP Library Granted Patent US 11,018,937
Granted Patent B2
US 11,018,937 · App. 16/040,389 · Granted May 25, 2021

Determining an effect of a network configuration change

Inventor: Rodney Bruce Smith (Fremont, CA)
Assignee: CISCO TECHNOLOGY, INC.
H04L41/0866H04L41/0813H04L41/0883H04L41/145H04L41/28H04L41/5019H04L45/64
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,018,937
App. No.
16/040,389
Granted
May 25, 2021
Kind
B2
Abstract

A method may include identifying a first set of values indicative of a present state of a software-defined network (SDN). The method may further include receiving one or more proposed changes to the SDN via an interface. The method may also include determining, based on the one or more proposed changes to the SDN, a potential state of the SDN and a second set of values indicative of the potential state of the SDN. The method may further include generating a change index based on a comparison of the first set of values with the second set of values. The method may also include providing the change index via the interface.

Claims (75)

1. A method, comprising:

obtaining, by a control device, a first set of values indicative of a present state of a software-defined network (SDN), the present state comprising a current configuration of the SDN;

receiving one or more proposed changes to the SDN via an interface of the SDN;

generating a model of the SDN that reflects the SDN with the one or more proposed changes and one or more effects of the one or more proposed changes to the SDN, the model of the SDN being generated without applying the one or more proposed changes to the SDN;

determining, based on the model, a potential state of the SDN and a second set of values indicative of the potential state of the SDN, the potential state comprising a new configuration of the SDN reflecting the one or more proposed changes to the SDN;

determining differences between the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN;

combining the differences between the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN;

generating a change index comprising one or more change values corresponding to the combined differences between the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN, the change index indicating a magnitude of the one or more proposed changes; and

providing the change index via the interface.

2. The method of claim 1 , further comprising:

identifying a change threshold associated with a permission level of an administrator account associated with the one or more proposed changes; and

based on the change index not exceeding the change threshold, implementing the one or more proposed changes in the SDN.

3. The method of claim 1 , wherein generating the model of the SDN comprises implementing the one or more proposed changes in a separate testing SDN that mirrors or matches the SDN, wherein the one or more proposed changes implemented in the separate testing SDN indicate effects of the one or more proposed changes to the SDN without impacting a functioning of the SDN.

4. The method of claim 1 , further comprising:

identifying a first change threshold associated with a first permission level of a first administrator account, the first administrator account being associated with the one or more proposed changes; and

based on the change index exceeding the first change threshold, preventing the one or more proposed changes from being implemented in the SDN.

5. The method of claim 4 , further comprising:

receiving an authorization to implement the proposed changes in the SDN via the interface from a second administrator account with a second permission level;

identifying a second change threshold associated with a second permission level of the second administrator account, the second administrator being associated with the authorization; and

based on the change index not exceeding the second change threshold, implementing the one or more proposed changes in the SDN.

6. The method of claim 1 , further comprising identifying a third set of values for the SDN, the third set of values including historical data of the SDN, wherein the change index is further generated based on a comparison of the third set of values with the second set of values, wherein the third set of values includes one or more of: a number of hosts in the SDN, a number of autonomous systems in the SDN, and a category of applications in the SDN.

7. The method of claim 1 , wherein the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN include one or more of: a number of network routes configured in the SDN, a range of ports configured in the SDN for routing traffic, a configuration of one or more network tunnels configured in the SDN, a number of hosts on the SDN, a number of autonomous systems associated with the SDN, and a number of reachable destinations in the SDN.

8. The method of claim 1 , wherein generating the change index comprises:

for each value of the first set of values:

identifying a weight for the value;

determining a difference between the value and a corresponding value of the second set of values;

based on the weight and the difference between the value and the corresponding value, generating a change magnitude; and

combining the change magnitude for each value of the first set of values to generate the change index.

9. A non-transitory computer-readable medium having stored thereon computer-readable instructions which, when executed by one or more processors, cause the one or more processors to:

obtain a first set of values indicative of a present state of a software-defined network (SDN);

receive one or more proposed changes to the SDN via an interface of the SDN;

generate a model of the SDN that reflects the SDN with the one or more proposed changes and one or more effects of the one or more proposed changes to the SDN, the model of the SDN being generated without applying the one or more proposed changes to the SDN;

determine, based on the model, a potential state of the SDN and a second set of values indicative of the potential state of the SDN;

generate a change index indicating one or more differences between the present state of the SDN and the potential state of the SDN, the change index being based on a comparison of the first set of values indicative of the present state of the SDN with the second set of values indicative of the potential state of the SDN;

provide the change index via the interface;

identify a first change threshold associated with a first permission level of a first administrator account, the first administrator account being associated with the one or more proposed changes;

based on the change index exceeding the first change threshold, prevent the one or more proposed changes from being implemented in the SDN,

receive an authorization to implement the proposed changes in the SDN via the interface from a second administrator account with a second permission level;

identify a second change threshold associated with a second permission level of the second administrator account, the second administrator being associated with the authorization; and

based on the change index not exceeding the second change threshold, implement the one or more proposed changes in the SDN.

10. The non-transitory computer-readable medium of claim 9 , wherein generating the model of the SDN comprises implementing the one or more proposed changes in a separate testing SDN that mirrors or matches the SDN, wherein the one or more proposed changes implemented in the separate testing SDN indicate the one or more effects of the one or more proposed changes to the SDN without impacting a functioning of the SDN.

11. The non-transitory computer-readable medium of claim 9 , storing instructions which, when executed by the one or more processors, cause the one or more processors to identify a third set of values for the SDN, the third set of values including historical data of the SDN, wherein the change index is further generated based on a comparison of the third set of values with the second set of values, wherein the third set of values includes one or more of: a number of hosts in the SDN, a number of autonomous systems in the SDN, and a category of applications in the SDN.

12. The non-transitory computer-readable medium of claim 9 , wherein the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN include one or more of: a number of network routes configured in the SDN, a range of ports configured in the SDN for routing traffic, configuration of one or more network tunnels configured in the SDN, a number of hosts on the SDN, a number of autonomous systems associated with the SDN, and a number of reachable destinations in the SDN.

13. The non-transitory computer-readable medium of claim 9 , wherein generating the change index comprises:

for each value of the first set of values:

identifying a weight for the value;

determining a difference between the value and a corresponding value of the second set of values;

based on the weight and the difference between the value and the corresponding value, generating a change magnitude; and

combining the change magnitude for each value of the first set of values to generate the change index.

14. A system comprising:

one or more processors; and

memory comprising instructions which, when executed by the one or more processors, cause the one or more processors to:

obtain a first set of values indicative of a present state of a software-defined network (SDN), the present state comprising a current configuration of the SDN;

receive one or more proposed changes to the SDN via an interface of the SDN;

generate a model of the SDN that reflects the SDN with the one or more proposed changes and one or more effects of the one or more proposed changes to the SDN, the model of the SDN being generated without applying the one or more proposed changes to the SDN;

determine, based on the model, a potential state of the SDN and a second set of values indicative of the potential state of the SDN, the potential state comprising a new configuration of the SDN reflecting the one or more proposed changes to the SDN;

determine differences between the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN;

combine the differences between the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN;

generate a change index comprising one or more change values corresponding to the combined differences between the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN, the change index indicating a magnitude of the one or more proposed changes; and

provide the change index via the interface.

15. The system of claim 14 , wherein the instructions, when executed by the one or more processors, cause the one or more processors to:

identify a change threshold associated with a permission level of an administrator account associated with the one or more proposed changes; and

based on the change index not exceeding the change threshold, implement the one or more proposed changes in the SDN.

16. The system of claim 14 , wherein the instructions, when executed by the one or more processors, cause the one or more processors to:

identify a first change threshold associated with a first permission level of a first administrator account, the first administrator account being associated with the one or more proposed changes; and

in response to the change index exceeding the first change threshold, prevent the one or more proposed changes from being implemented in the system.

17. The system of claim 14 , wherein generating the model of the SDN comprises implementing the one or more proposed changes in a separate testing SDN that mirrors or matches the SDN, wherein the one or more proposed changes implemented in the separate testing SDN indicate the one or more effects of the one or more proposed changes to the SDN without impacting a functioning of the SDN.

18. The system of claim 14 , wherein the instructions, when executed by the one or more processors, cause the one or more processors to identify a third set of values for the SDN, the third set of values including historical data of the SDN, wherein the change index is further generated based on a comparison of the third set of values with the second set of values, wherein the third set of values includes one or more of: a number of hosts in the SDN, a number of autonomous systems in the SDN, and a category of applications in the SDN.

19. The system of claim 14 , wherein the first set of values indicative of the present state of the SDN and the second set of values indicative of the potential state of the SDN include one or more of: a number of network routes configured in the SDN, a port range of ports configured in the SDN for routing traffic, a configuration of one or more network tunnels configured in the SDN, a number of hosts on the SDN, a number of autonomous systems associated with the SDN, and a number of reachable destinations in the SDN.

20. The system of claim 14 , wherein generating the change index comprises:

for each value of the first set of values:

identifying a weight for the value;

determining a difference between the value and a corresponding value of the second set of values;

based on the weight and the difference between the value and the corresponding value, generating a change magnitude; and

combining the change magnitude for each value of the first set of values to generate the change index.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2018
From: SMITH, RODNEY BRUCE
To: CISCO TECHNOLOGY, INC.
Reel/Frame 046421/0006 →
Continuity (2)
Provisional Application 62539502 · Jul 31, 2017
Related Publication 20190036776A1 · Jan 31, 2019
Cited By (1)
US 12,375,346