Scalable network route analysis
First Claim
1. A method for analyzing a network for abnormalities, comprising:
- receiving routing information from a plurality of switches within a network, the routing information including forwarding tables that list forwarding rules for forwarding packets within the network;
splitting the received routing information into N portions;
processing each of the N portions by identifying forwarding rules that pertain to each of M subnets belonging to the network, wherein a forwarding rule pertains to an Mth subnet if a prefix representing the Mth subnet can be fully included within a prefix associated with the forwarding rule;
forming M groups of forwarding rules such that each group only includes forwarding rules that pertain to the same Mth subnet;
generating M forwarding graphs for the M subnets, each of the M forwarding graphs being generated using the corresponding Mth group of forwarding rules;
identifying graph properties representative of network abnormalities in any of the M forwarding graphs; and
indicating network abnormalities identified in any of the M forwarding graphs, wherein M and N are integers greater than 1.
2 Assignments
0 Petitions
Accused Products
Abstract
This disclosure provides systems, methods and apparatus for providing a network verification system (NVS) to analyze and detect anomalies and errors within a network. The NVS requests forwarding tables from each of the switches within the network being analyzed, and generates directed forwarding graphs for each subnet within the network. Certain graph properties of the directed forwarding graphs are analyzed to detect anomalies or errors in the subnets represented by the directed forwarding graphs. In some implementations, the NVS can execute the generation of the directed forwarding graphs in parallel. In some implementations, the NVS can be implemented on a MapReduce system.
-
Citations
19 Claims
-
1. A method for analyzing a network for abnormalities, comprising:
-
receiving routing information from a plurality of switches within a network, the routing information including forwarding tables that list forwarding rules for forwarding packets within the network; splitting the received routing information into N portions; processing each of the N portions by identifying forwarding rules that pertain to each of M subnets belonging to the network, wherein a forwarding rule pertains to an Mth subnet if a prefix representing the Mth subnet can be fully included within a prefix associated with the forwarding rule; forming M groups of forwarding rules such that each group only includes forwarding rules that pertain to the same Mth subnet; generating M forwarding graphs for the M subnets, each of the M forwarding graphs being generated using the corresponding Mth group of forwarding rules; identifying graph properties representative of network abnormalities in any of the M forwarding graphs; and indicating network abnormalities identified in any of the M forwarding graphs, wherein M and N are integers greater than 1. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for detecting network anomalies within a network comprising one or more processors executing:
-
a route dumper module configured to receive routing information from a plurality of switches within a network, the routing information including forwarding tables that list forwarding rules for forwarding packets within the network; a forwarding rules splitting module configured to split the received routing information into N portions; N match modules, each of the N match modules configured to process one of the N portions by identifying forwarding rules that pertain to each of M subnets belonging to the network, wherein a forwarding rule pertains to an Mth subnet if a prefix representing the Mth subnet can be fully included within a prefix associated with the forwarding rule; a grouping module configured to form M groups of forwarding rules such that each group only includes forwarding rules that pertain to the same Mth subnet; and M graphing modules, each of the M graphing modules configured to generate M forwarding graphs for the M subnets, each of the M forwarding graphs being generated using the corresponding Mth group of forwarding rules, wherein M and N are integers greater than 1. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
Specification