IP Library Granted Patent US 11,611,504
Granted Patent B2
US 11,611,504 · App. 17/173,766 · Granted Mar 21, 2023

Planning and managing network probes using centralized controller

Inventor: Nagaraja Manikkar Shenoy (Bangalore, IN)
Assignee: Juniper Networks, Inc.
H04L45/302H04L41/12H04L43/08H04L43/12H04L45/02H04L45/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,611,504
App. No.
17/173,766
Granted
Mar 21, 2023
Kind
B2
Abstract

In general, the disclosure describes techniques for measuring edge-based quality of experience (QoE) metrics. For instance, a network device may construct a topological representation of a network, including indications of nodes and links connecting the nodes within the network. For each of the links, the network device may select a node device of the two node devices connected by the respective link to measure one or more QoE metrics for the respective link, with the non-selected node device not measuring the QoE metrics. In response to selecting the selected node device, the network device may receive a set of one or more QoE metrics for the respective link for data flows flowing from the selected node device to the non-selected node device. The network device may store the QoE metrics and determine counter QoE metrics for data flows flowing from the non-selected node device to the selected node device.

Claims (68)

1. A method comprising:

selecting, by a controller and based on a topological representation of a network, a node device of two node devices connected by a link to measure one or more quality metrics for the link;

in response to selecting the selected node device to measure the one or more quality metrics for the link, receiving, by the controller and from the selected node device, a set of one or more quality metrics for the link, wherein the set of one or more quality metrics indicate quality metrics for data flows flowing from the selected node device to the non-selected node device of the two node devices;

storing, by the controller, the set of quality metrics for the link in a database; and

determining, by the controller and based on the set of one or more quality metrics for the link, a set of one or more counter quality metrics indicating quality metrics for data flows flowing from the non-selected node device to the selected node device.

2. The method of claim 1 , further comprising:

determining, by the controller, a path comprising a combination of a first link of a plurality of links and a second link of the plurality of links, wherein the first link connects a first node device of a plurality of node devices and a second node device of the plurality of node devices, wherein the second link connects the second node device of the plurality of node devices and a third node device of the plurality of node devices, and wherein the first node device of the plurality of node devices and the third node device of the plurality of node devices are not directly connected by any link of the plurality of links;

retrieving, by the controller, a set of one or more quality metrics for the first link and a set of one or more quality metrics for the second link; and

determining, by the controller and based on the set of one or more quality metrics for the first link and the set of one or more quality metrics for the second link, a set of one or more quality metrics for the path.

3. The method of claim 1 , further comprising:

for a first link of a plurality of links that connects a first node device of a plurality of node devices and a second node device of a plurality of node devices, determining, by the controller, and based on the set of one or more quality metrics for the first link stored in the database, a set of one or more quality metrics for a logical path connecting the first node device and the second node device, wherein the logical path is a different connection than the first link.

4. The method of claim 1 , the method further comprising:

for each link of a plurality of links of the network:

determining, by the controller, whether a second node device of a pair of node devices connected by the respective link is configured to probe a total number of links less than or equal to a total number of links being probed by a first node device of the pair of node devices; and

responsive to determining that the second node device is sending the total number of probes less than or equal to the total number of links being probed by the first node device, selecting, by the controller, the first node device to refrain from sending further probe packets to the second node device over the respective link.

5. The method of claim 4 , further comprising:

while there exist links in the plurality of links for which both node devices of a respective pair of node devices connected by a corresponding link is sending a probe packet over the corresponding link, selecting, by the controller, a singular node device of the respective pair of node devices connected by the corresponding link to refrain from probing the corresponding link based on the total number of links being probed by each node device connected by the corresponding link.

6. The method of claim 1 ,

wherein selecting the node device of the two node devices connected by the link comprises determining, based on an adjacency matrix that indicates which node devices of a plurality of node devices of the network are sending probe packets and a number of links for which each node device is measuring a respective set of one or more quality metrics, which node device of the two node devices is measuring the respective sets of one or more quality metrics for fewer links,

the method further comprising in response to selecting the selected node device to send to measure the one or more quality metrics for the link, updating, by the controller, the adjacency matrix.

7. The method of claim 1 , further comprising:

determining, by the controller, that a new node device has entered the network, wherein the new node device is connected to at least one node device of a plurality of node devices of the network via a new link;

determining, by the controller, whether the node device connected to the new node device by the new link is configured to probe a total number of links less than or equal to the total number of links being probed by the new node device;

responsive to determining that the node device connected to the new node device by the new link is probing the total number of links less than or equal to the total number of links being probed by the new node device, selecting, by the controller, the new node device to refrain from sending further probe packets to the node device connected to the new node device by the new link over the new link; and

responsive to determining that the node device connected to the new node device by the new link is probing the total number of links greater than the total number of links being probed by the new node device, selecting, by the controller, the node device connected to the new node device over the new link to refrain from sending further probe packets to the new node device over the new link.

8. The method of claim 1 , wherein selecting the node device of the two node devices connected by the link to measure the one or more quality metrics for the link comprises:

instructing, by the controller, the selected node device of the two node devices connected by the link to send one or more probe packets over the link.

9. The method of claim 1 , further comprising:

monitoring, by the controller, one or more probe packets sent over each of a plurality of links; and

constructing, by the controller, based on the one or more probe packets sent over each of the plurality of links, and using graph theory, the topological representation of the network.

10. A controller comprising:

a memory; and

one or more processors in communication with the memory, the one or more processors configured to:

select, based on a topological representation of a network, a node device of two node devices connected by a link to measure one or more quality metrics for the link;

in response to selecting the selected node device to measure the one or more quality metrics for the link, receive, from the selected node device, a set of one or more quality metrics for the link, wherein the set of one or more quality metrics indicate quality metrics for data flows flowing from the selected node device to the non-selected node device;

store the set of quality metrics for the link in a database; and

determine, based on the set of one or more quality metrics for the link, a set of one or more counter quality metrics indicating quality metrics for data flows flowing from the non-selected node device to the selected node device.

11. The controller of claim 10 , wherein the one or more processors are further configured to:

determine a path comprising a combination of a first link of a plurality of links and a second link of the plurality of links, wherein the first link connects a first node device of a plurality of node devices and a second node device of the plurality of node devices, wherein the second link connects the second node device of the plurality of node devices and a third node device of the plurality of node devices, and wherein the first node device of the plurality of node devices and the third node device of the plurality of node devices are not directly connected by any link of the plurality of links;

retrieve a set of one or more quality metrics for the first link and a set of one or more quality metrics for the second link; and

determine, based on the set of one or more quality metrics for the first link and the set of one or more quality metrics for the second link, a set of one or more quality metrics for the path.

12. The controller of claim 10 , wherein the one or more processors are further configured to:

for a first link of a plurality of links that connects a first node device of a plurality of node devices and a second node device of a plurality of node devices, determine, based on the set of one or more quality metrics for the first link stored in the database, a set of one or more quality metrics for a logical path connecting the first node device and the second node device, wherein the logical path is a different connection than the first link.

13. The controller of claim 10 , wherein the one or more processors are further configured to, for each link of a plurality of links of the network:

determine whether a second node device of a pair of node devices connected by the respective link is configured to probe a total number of links less than or equal to a total number of links being probed by a first node device of the pair of node devices; and

responsive to the determination that the second node device is sending the total number of probes less than or equal to the total number of links being probed by the first node device, select the first node device to refrain from sending further probe packets to the second node device over the respective link.

14. The controller of claim 13 , wherein the one or more processors are further configured to:

while there exist links in the plurality of links for which both node devices of a respective pair of node devices connected by a corresponding link is sending a probe packet over the corresponding link, select a singular node device of the respective pair of node devices connected by the corresponding link to refrain from probing the corresponding link based on the total number of links being probed by each node device connected by the corresponding link.

15. The controller of claim 10 , wherein the one or more processors being configured to select the node device of the two node devices connected by the link comprises the one or more processors being configured to determine, based on an adjacency matrix that indicates which node devices of a plurality of node devices of the network are sending probe packets and how many links each node device is measuring a respective set of one or more quality metrics for, which node device of the two node devices is measuring the respective sets of one or more quality metrics for fewer links,

wherein the one or more processors are further configured to:

in response to selection of the selected node device to send to measure the one or more quality metrics for the link, update the adjacency matrix.

16. The controller of claim 10 , wherein the one or more processors are further configured to:

determine that a new node device has entered the network, wherein the new node device is connected to at least one node device of a plurality of node devices of the network via at least one new link;

determine whether the node device connected to the new node device by the new link is configured to probe a total number of links less than or equal to the total number of links being probed by the new node device;

responsive to the determination that the node device connected to the new node device by the new link is probing the total number of links less than or equal to the total number of links being probed by the new node device, selecting, by the controller, the new node device to refrain from sending further probe packets to the node device connected to the new node device by the new link over the new link; and

responsive to the determination that the node device connected to the new node device by the new link is probing the total number of links greater than the total number of links being probed by the new node device, select the node device connected to the new node device over the new link to refrain from sending further probe packets to the new node device over the new link.

17. The controller of claim 10 , wherein the one or more processors being configured to select the node device of the two node devices connected by the link to measure the one or more quality metrics for the link comprises the one or more processors being configured to instruct the selected node device of the two node devices connected by the link to send one or more probe packets over the link.

18. The controller of claim 10 , wherein the one or more processors are further configured to:

monitor one or more probe packets sent over each of a plurality of links; and

construct, based on the one or more probe packets sent over each of the plurality of links, and using graph theory, the topological representation of the network.

19. A non-transitory computer-readable storage medium storing instructions thereon that when executed cause one or more processors of a controller to:

select, based on a topological representation of a network, a node device of two node devices connected by a link to measure one or more quality metrics for the link;

in response to selecting the selected node device to measure the one or more quality metrics for the link, receive, from the selected node device, a set of one or more quality metrics for the link, wherein the set of one or more quality metrics indicate quality metrics for data flows flowing from the selected node device to the non-selected node device;

store the set of quality metrics for the link in a database; and

determine, based on the set of one or more quality metrics for the link, a set of one or more counter quality metrics indicating quality metrics for data flows flowing from the non-selected node device to the selected node device.

20. The non-transitory computer-readable storage medium of claim 19 , the instructions further comprising instructions that when executed cause one or more processors of a controller to, for each link of a plurality of links of the network:

determine whether a second node device of a pair of node devices connected by the respective link is configured to probe a total number of links less than or equal to a total number of links being probed by a first node device of the pair of node devices; and

responsive to the determination that the second node device is sending the total number of probes less than or equal to the total number of links being probed by the first node device, select the first node device to refrain from sending further probe packets to the second node device over the respective link.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2023
From: SHENOY, NAGARAJA MANIKKAR
To: JUNIPER NETWORKS, INC.
Reel/Frame 064744/0515 →
Continuity (2)
Continuation 16354402 · Mar 15, 2019
Related Publication 20210168068A1 · Jun 3, 2021
Cited By (3)
US 12,192,304 US 12,627,523 US 12,652,247