IP Library › Granted Patent US 11,381,460
Granted Patent B1
US 11,381,460 · App. 17/117,376 · Granted Jul 5, 2022

Network reachability impact analysis

Inventors: Hongkun Yang (San Jose, CA); Hui Liu (San Ramon, CA); Gargi Adhav (San Jose, CA); Alan Tang (Los Angeles, CA)
Assignee: Google LLC
H04L41/12H04L41/082H04L41/0846H04L43/045
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,381,460
App. No.
17/117,376
Granted
Jul 5, 2022
Kind
B1
Abstract

A method includes receiving a plurality of network configuration snapshots for a network and determining whether a first data plane model protocol of a first snapshot is the same as a second data plane model protocol of a second snapshot consecutive with the first snapshot. When the snapshots are the same, the method includes determining whether a third snapshot is the same as the second snapshot. When the snapshots are different, the method includes selecting the first snapshot and the second snapshot. The method includes generating a first reachability graph representing packet reachability of the network for the first snapshot and generating a second reachability graph representing packet reachability of the network for the second snapshot. The method includes computing a reachability differentiation graph identifying a net change to reachability from the first reachability graph to the second reachability graph and generating a report of the net change to reachability.

Claims (42)

1. A method of network reachability impact analysis, the method comprising:

receiving, at data processing hardware, a stream of consecutive network configuration snapshots for a network;

determining whether a first data plane model protocol of a first network configuration snapshot of the network from the stream of consecutive network configuration snapshots for the network is the same as a second data plane model protocol of a second network configuration snapshot of the network from the stream of consecutive network configuration snapshots for the network, the second network configuration snapshot of the network consecutive with the first network configuration snapshot in the stream of consecutive network configuration snapshots for the network;

when the first data plane model protocol and the second data plane model protocol are the same, determining whether the second data plane model protocol of the second network configuration snapshot of the network is the same as a third data plane model protocol of a third network configuration snapshot of the network from the stream of consecutive network configuration snapshots for the network, the third network configuration snapshot of the network consecutive with the second network configuration snapshot in the stream of consecutive network configuration snapshots for the network;

when the first data plane model protocol and the second data plane model protocol are not the same:

selecting, by the data processing hardware, the first network configuration snapshot of the network and the second network configuration snapshot of the network;

generating, by the data processing hardware, a first reachability graph representing packet reachability of the network for the first network configuration snapshot;

generating, by the data processing hardware, a second reachability graph representing packet reachability of the network for the second network configuration snapshot;

computing, by the data processing hardware, a reachability differentiation graph identifying a net change to reachability from the first reachability graph to the second reachability graph; and

generating, by the data processing hardware, a reachability differentiation report including a human-interpretable output of the net change to reachability.

2. The method of claim 1 , wherein generating the reachability differentiation report further comprises translating, by the data processing hardware the reachability differentiation graph from a computer-interpretable format to the human-interpretable output.

3. The method of claim 1 , wherein each network configuration snapshot of the stream of consecutive network configuration snapshots includes a data plane model protocol taken at a respective time instance.

4. The method of claim 1 , wherein, when the first data plane model protocol and the second data plane model protocol are the same, the network is unchanged between the first network configuration snapshot and the second network configuration snapshot.

5. The method of claim 1 , further comprising computing, by the data processing hardware, one or more packet equivalence classes for the first network configuration snapshot and the second network configuration snapshot, each of the one or more packet equivalence classes including a set of packets having the same forwarding behavior.

6. The method of claim 5 , further comprising:

assigning, by the data processing hardware, the one or more packet equivalence classes to the first reachability graph; and

assigning, by the data processing hardware, the one or more packet equivalence classes to the second reachability graph.

7. The method of claim 6 , wherein computing the reachability differentiation graph includes identifying a net change to network equivalence classes from the first reachability graph to the second reachability graph.

8. The method of claim 1 , wherein generating the first reachability graph and the second reachability graph includes generating, by the data processing hardware, a directed graph including two or more nodes and one or more edges connecting each of the two or more nodes.

9. The method of claim 8 , wherein generating the directed graph includes associating, by the data processing hardware, each of the two or more nodes to a network endpoint and associating each of the one or more edges to a network forwarding route from one network endpoint to another network endpoint.

10. A system comprising:

data processing hardware; and

memory hardware in communication with the data processing hardware, the memory hardware storing instructions that when executed on the data processing hardware cause the data processing hardware to perform operations comprising:

receiving a stream of consecutive network configuration snapshots for a network;

determining whether a first data plane model protocol of a first network configuration snapshot of the network from the stream of consecutive network configuration snapshots for the network is the same as a second data plane model protocol of a second network configuration snapshot of the network from the stream of consecutive network configuration snapshots for the network, the second network configuration snapshot of the network consecutive with the first network configuration snapshot in the stream of consecutive network configuration snapshots for the network;

when the first data plane model protocol and the second data plane model protocol are the same, determining whether the second data plane model protocol of the second network configuration snapshot of the network is the same as a third data plane model protocol of a third network configuration snapshot of the network from the stream of consecutive network configuration snapshots for the network, the third network configuration snapshot of the network consecutive with the second network configuration snapshot in the stream of consecutive network configuration snapshots for the network;

when the first data plane model protocol and the second data plane model protocol are not the same:

selecting a first network configuration snapshot of the network and a second network configuration snapshot of the network;

generating a first reachability graph representing packet reachability of the network for the first network configuration snapshot;

generating a second reachability graph representing packet reachability of the network for the second network configuration snapshot;

computing a reachability differentiation graph identifying a net change to reachability from the first reachability graph to the second reachability graph; and

generating a reachability differentiation report including a human-interpretable output of the net change to reachability.

11. The system of claim 10 , wherein generating the reachability differentiation report further comprises translating the reachability differentiation graph from a computer-interpretable format to the human-interpretable output.

12. The system of claim 10 , wherein each network configuration snapshot of the stream of consecutive network configuration snapshots includes a data plane model protocol taken at a respective time instance.

13. The system of claim 10 , wherein when the first data plane model protocol and the second data plane model protocol are the same, the network is unchanged between the first network configuration snapshot and the second network configuration snapshot.

14. The system of claim 10 , wherein the operations further comprise computing one or more packet equivalence classes for the first network configuration snapshot and the second network configuration snapshot, each of the one or more packet equivalence classes including a set of packets having the same forwarding behavior.

15. The system of claim 14 , wherein the operations further comprise:

assigning the one or more packet equivalence classes to the first reachability graph; and

assigning the one or more packet equivalence classes to the second reachability graph.

16. The system of claim 15 , wherein computing the reachability differentiation graph comprises identifying a net change to network equivalence classes from the first reachability graph to the second reachability graph.

17. The system of claim 10 , wherein generating the first reachability graph and the second reachability graph includes generating a directed graph including two or more nodes and one or more edges connecting each of the two or more nodes.

18. The system of claim 17 , wherein generating the directed graph includes associating each of the two or more nodes to a network endpoint and associating each of the one or more edges to a network forwarding route from one network endpoint to another network endpoint.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2020
From: YANG, HONGKUN; LIU, HUI; ADHAV, GARGI; TANG, ALAN
To: GOOGLE LLC
Reel/Frame 054675/0231 →