IP Library Granted Patent US 11,405,296
Granted Patent B1
US 11,405,296 · App. 16/900,666 · Granted Aug 2, 2022

Automated validation of network matrices

Inventors: John William Evans (Frome, GB); Rama Subramanian Amaravathi Jayachandar (Seattle, WA); Fabrizio Scimia (Dublin, IE)
Assignee: Amazon Technologies, Inc.
H04L43/0882H04L43/0829H04L43/0888H04L43/106H04L43/16H04L45/123H04L45/50
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,405,296
App. No.
16/900,666
Granted
Aug 2, 2022
Kind
B1
Abstract

Passive monitoring by network devices can be used to validate a network traffic matrix, which aggregates end-to-end traffic demands between source-destination pairs in the network. Using information regarding the physical and logical topology of the network during the same time period as the traffic matrix, a model of the network is generated. Traffic load on each link between network devices in the network is predicted using the model and the traffic matrix. Actual traffic loads on each link are determined from the passive monitoring data from each network device. By comparing the predicted load with the actual load on each link, a measure of the validity or accuracy of the traffic matrix is obtained. The disclosed techniques can also be applied to validate a network loss matrix.

Claims (53)

1. A computer-implemented method comprising:

generating a traffic matrix that aggregates end-to-end traffic demands between respective source-destination pairs of network devices in a computer network during a first time period;

generating a model of the network based on physical and logical topologies of the network during the first time period;

for each link between network devices in the network, predicting traffic load on the link based on the traffic matrix and the model of the network;

from each network device, receiving first data of packet transmission measured during the first time period;

for each link between network devices in the network, determining traffic load on the link based on the first data; and

comparing the predicted traffic loads with the determined traffic loads for the links.

2. The method of claim 1 , wherein the traffic matrix is generated based on label-switched path statistics, IP tunnel statistics, network-device-based sampling of traffic flows, or estimation using data regarding traffic flows on the plurality of links.

3. The method of claim 1 , wherein:

the receiving first data from the network devices comprises communication according to simple network management protocol (SNMP) or streaming telemetry.

4. The method of claim 1 , wherein the comparing comprises:

determining a difference between the predicted traffic load and the determined traffic load for each link;

identifying each link that has a determined difference exceeding a threshold; and

based on the generated model, identifying each source-destination pair in the traffic matrix that has an end-to-end path including one or more of the identified links.

5. The method of claim 1 , wherein the comparing comprises:

determining a difference between the predicted traffic load and the determined traffic load for each link; and

generating an error report that indicates each link where the difference exceeds a threshold.

6. The method of claim 1 , further comprising:

adjusting the traffic matrix or a process used to generate the traffic matrix to reduce a difference between the predicted traffic loads and the determined traffic loads.

7. One or more non-transitory computer-readable storage media collectively storing computer-executable instructions that, when executed by one or more computer systems, configure the one or more computer systems to collectively perform operations comprising:

validating a network matrix based on traffic load or traffic loss for each link between network devices in a network, the traffic load or traffic loss being determined from measured data of packet transmission or packet loss from the network devices; and

adjusting the network matrix or a process used to generate the network matrix based on the validating.

8. The one or more non-transitory computer-readable storage media of claim 7 , wherein the network matrix corresponds to a time period, and the data of packet transmission or packet loss is measured for the same time period.

9. The one or more non-transitory computer-readable storage media of claim 7 , wherein the media collectively store additional computer-executable instructions that, when executed by the one or more computer systems, configure the one or more computer systems to collectively perform further operations comprising:

generating the network matrix as a traffic matrix that aggregates end-to-end traffic demands between respective source-destination pairs of network devices in the network,

wherein the validating is based on traffic load for each link determined from measured data of packet transmission from the network devices.

10. The one or more non-transitory computer-readable storage media of claim 9 , wherein the traffic matrix is generated based on label-switched path statistics, IP tunnel statistics, network-device-based sampling of traffic flows, or estimation using data regarding traffic flows on the plurality of links.

11. The one or more non-transitory computer-readable storage media of claim 7 , wherein the media collectively store additional computer-executable instructions that, when executed by the one or more computer systems, configure the one or more computer systems to collectively perform further operations comprising:

generating the network matrix as a loss matrix that aggregates end-to-end traffic loss between respective source-destination pairs of network devices in the network,

wherein the validating is based on traffic loss for each link determined from measured data of packet loss from the network devices.

12. The one or more non-transitory computer-readable storage media of claim 7 , wherein the media collectively store additional computer-executable instructions that, when executed by the one or more computer systems, configure the one or more computer systems to collectively perform further operations comprising:

generate a model of the network based on physical and logical topology of the network during a time period corresponding to that of the network matrix;

for each link between the network devices, predicting traffic load or traffic loss on the link based on the network matrix and the model of the network;

receiving the measured data of packet transmission or packet loss from the network devices; and

determining the traffic load or traffic loss on each link based on the measured data received from the network devices.

13. The one or more non-transitory computer-readable storage media of claim 12 , wherein the media collectively store additional computer-executable instructions that, when executed by the one or more computer systems, configure the one or more computer systems to collectively validate the network matrix by:

determining a difference between the predicted traffic load or traffic loss and the determined traffic load or traffic loss for each link;

identifying each link that has a determined difference exceeding a threshold; and

based on the generated model, identifying each source-destination pair in the network matrix that has an end-to-end path including one or more of the identified links.

14. The one or more non-transitory computer-readable storage media of claim 12 , wherein the media collectively store additional computer-executable instructions that, when executed by the one or more computer systems, configure the one or more computer systems to collectively validate the network matrix by:

determining a difference between the predicted traffic load or traffic loss and the determined traffic load or traffic loss for each link; and

identifying each link where the difference exceeds a threshold.

15. The one or more non-transitory computer-readable storage media of claim 12 , wherein the receiving the measured data from the network devices comprises communication according to simple network management protocol (SNMP) or streaming telemetry.

16. At least one hardware processor; a non-transitory computer-readable storage medium storing instructions, which, when executed by the at least one hardware processor, are configured to implement modules, comprising:

a validation module configured to validate a network matrix based on traffic load or traffic loss for each link between network devices in a network, the traffic load or traffic loss being determined from measured data of packet transmission or packet loss from the network devices;

a device monitoring module configured to receive measured data of packet transmission or packet loss from network devices in the network;

a network topology module configured to generate a model of the network based on physical and logical topology of the network; and

a network simulation module configured to predict traffic load or traffic loss on each link between the network devices in the network based on the network matrix and the model of the network.

17. The non-transitory computer-readable medium of claim 16 , further configured to implement modules, comprising:

a network matrix module configured to generate the network matrix as a traffic matrix, which aggregates end-to-end traffic demands between respective source-destination pairs of the network devices in the network, using label-switched path statistics, IP tunnel statistics, network-device-based sampling of traffic flows, or estimation using data regarding traffic flows on the plurality of links.

18. The non-transitory computer-readable medium of claim 17 , wherein the validation module is configured to:

determine a difference between the predicted traffic load and the determined traffic load for each link; and

identify each source-destination pair of the traffic matrix having an end-to-end path with at least one link whose determined difference exceeds a threshold, or identify each link whose determined difference exceeds the threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2020
From: EVANS, JOHN WILLIAM; AMARAVATHI JAYACHANDAR, RAMA SUBRAMANIAN; SCIMIA, FABRIZIO
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 052933/0604 →
Cited By (1)
US 12,463,895