IP Library Granted Patent US 11,627,166
Granted Patent B2
US 11,627,166 · App. 17/063,864 · Granted Apr 11, 2023

Scope discovery and policy generation in an enterprise network

Inventors: Weifei Zeng (Sunnyvale, CA); Sai Ankith Averineni (Fremont, CA); Omid Madani (San Carlos, CA); Paul Mach (Oakland, CA); Yash Vipul Doshi (Union City, CA); Sasidhar Evuru (Sunnyvale, CA); Sayeed Mohammed Tasnim (Sunnyvale, CA); Sameer Salim Mahomed Ali Ladiwala (Mountain View, CA); Chakradhar Reddy Vangeti (Sunnyvale, CA); Thanh Nhan Nguyen (Mountain View, CA); Varun Malhotra (Sunnyvale, CA); Shashidhar Gandham (Fremont, CA); Navindra Yadav (Cupertino, CA); Thanh Trung Ngo (Menlo Park, CA); Maxwell Aaron Mechanic (Portland, OR)
Assignee: Cisco Technology, Inc.
H04L63/205H04L41/0893H04L41/14H04L47/2483
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,627,166
App. No.
17/063,864
Granted
Apr 11, 2023
Kind
B2
Abstract

The present disclosure relates to methods, systems, and non-transitory computer readable media for discovering policy scopes within an enterprise network and managing network policies for discovered policy scopes. In one aspect, a method includes identifying one or more communities of devices in an enterprise network; defining, from the one or more communities of devices, policy scopes in the enterprise network; generating a hierarchical representation of the policy scopes; identifying, based on the hierarchical representation of the policy scopes, one or more policies governing traffic flow between devices associated with each of the policy scopes; and managing application of the one or more policies at the devices.

Claims (66)

1. A method comprising:

identifying one or more communities of devices in an enterprise network, each of the community of devices being defined by a group of the devices with at least a threshold number of communications among themselves, but less than the threshold number of communications with other devices;

defining, from the one or more communities of devices, policy scopes in the enterprise network, the policy scopes defining how network traffic is managed within the network;

generating a hierarchical representation of the policy scopes;

identifying, based on the hierarchical representation of the policy scopes, one or more policies governing traffic flow between devices associated with each of the policy scopes, comprising:

selecting a node in the hierarchical representation corresponding to a policy scope;

identifying the one or more policies as policies governing traffic flow involving descendent nodes of the selected node; and

managing application of the one or more policies at the devices corresponding to a sub-tree of the selected node and descendent nodes of the selected node;

wherein managing application of the one or more policies includes one or more of:

generating a minimal policy set for one or more of the policy scopes;

deleting a redundant policy of the one or more policies; and

generating a new policy for at least one of the policy scopes;

wherein generating the minimal policy set comprises:

identifying, from among the one or more policies, at least one policy implemented in a policy scope with an ancestor policy scope in the hierarchical representation of policy scopes; and

generating an updated policy for the ancestor policy scope, the minimal policy set including the updated policy.

2. The method of claim 1 , wherein identifying the one or more communities of devices comprises:

receiving traffic flow data between devices of the enterprise network;

generating a weighted graph based on the traffic flow data; and

performing a hierarchical community detection on the weighted graph to identify the one or more communities of devices.

3. The method of claim 2 , wherein each identified community of devices is associated with one policy scope from among the policy scopes.

4. A device comprising:

one or more memories including computer-readable instructions stored therein; and

one or more processors configured to execute the computer-readable instructions to:

identify one or more communities of devices in an enterprise network, each of the community of devices being defined by a group of the devices with at least a threshold number of communications among themselves, but less than the threshold number of communications with other devices;

define, from the one or more communities of devices, policy scopes in the enterprise network, the policy scopes defining how network traffic is managed within the network;

generate a hierarchical representation of the policy scopes;

identify, based on the hierarchical representation of the policy scopes, one or more policies governing traffic flow between devices associated with each of the policy scopes, comprising:

select a node in the hierarchical representation corresponding to a policy scope;

identify the one or more policies as policies governing traffic flow involving descendent nodes of the selected node; and

manage application of the one or more policies at the devices corresponding to a sub-tree of the selected node and descendent nodes of the selected node;

wherein managing application of the one or more policies includes one or more of:

generating a minimal policy set for one or more of the policy scopes;

deleting a redundant policy of the one or more policies; and

generating a new policy for at least one of the policy scopes;

wherein generating the minimal policy set comprises:

identifying, from among the one or more policies, at least one policy implemented in a policy scope with an ancestor policy scope in the hierarchical representation of policy scopes; and

generating an updated policy for the ancestor policy scope, the minimal policy set including the updated policy.

5. The device of claim 4 , wherein the one or more processors are configured to execute the computer-readable instructions to:

generate a minimal policy set for one or more of the policy scopes;

delete a redundant policy of the one or more policies; and

generate a new policy for at least one of the policy scopes.

6. The device of claim 5 , wherein the one or more processors are configured to execute the computer-readable instructions to:

identify, from among the one or more policies, at least one policy implemented in a policy scope with an ancestor policy scope in the hierarchical representation of policy scopes; and

generate an updated policy for the ancestor policy scope, the minimal policy set including the updated policy.

7. The device of claim 4 , wherein the device is an analytics engine of the enterprise network.

8. One or more non-transitory computer-readable storage media comprising computer-readable instructions stored thereon which, when executed by one or more processors, cause the one or more processors to:

identify one or more communities of devices in an enterprise network, each of the community of devices being defined by a group of the devices with at least a threshold number of communications among themselves, but less than the threshold number of communications with other devices;

define, from the one or more communities of devices, policy scopes in the enterprise network, the policy scopes defining how network traffic is managed within the network;

generate a hierarchical representation of the policy scopes;

identify, based on the hierarchical representation of the policy scopes, one or more policies governing traffic flow between devices associated with each of the policy scopes, comprising:

select a node in the hierarchical representation corresponding to a policy scope;

identify the one or more policies as policies governing traffic flow involving descendent nodes of the selected node; and

manage application of the one or more policies at the devices corresponding to a sub-tree of the selected node and descendent nodes of the selected node;

wherein managing application of the one or more policies includes one or more of:

generating a minimal policy set for one or more of the policy scopes;

deleting a redundant policy of the one or more policies; and

generating a new policy for at least one of the policy scopes;

wherein generating the minimal policy set comprises:

identifying, from among the one or more policies, at least one policy implemented in a policy scope with an ancestor policy scope in the hierarchical representation of policy scopes; and

generating an updated policy for the ancestor policy scope, the minimal policy set including the updated policy.

9. The non-transitory computer-readable storage media of claim 8 , wherein the execution of the computer-readable instructions by the one or more processors cause the one or more processors to:

receive traffic flow data between devices of the enterprise network;

generate a weighted graph based on the traffic flow data; and

perform a hierarchical community detection on the weighted graph to identify the one or more communities of devices.

10. The non-transitory computer-readable storage media of claim 9 , wherein each identified community of devices is associated with one policy scope from among the policy scopes.

11. The non-transitory computer-readable media of claim 8 , wherein the one or more processors reside in an analytics engine of the enterprise network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2020
From: ZENG, WEIFEI; AVERINENI, SAI ANKITH; MADANI, OMID; MACH, PAUL; DOSHI, YASH VIPUL; EVURU, SASIDHAR; TASNIM, SAYEED MOHAMMED; LADIWALA, SAMEER SALIM MAHOMED ALI; VANGETI, CHAKRADHAR REDDY; NGUYEN, THANH NHAN; MALHOTRA, VARUN; GANDHAM, SHASHIDHAR; YADAV, NAVINDRA; NGO, THANH TRUNG; MECHANIC, MAXWELL AARON
To: CISCO TECHNOLOGY, INC.
Reel/Frame 053983/0760 →
Continuity (1)
Related Publication 20220109701A1 · Apr 7, 2022