# US 11,909,618 B2 · Actively learning PoPs to probe and probing frequency to maximize application experience predictions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,909,618 B2
- Document ID: US11909618B2
- Status: Granted
- Kind: B2
- Application number: 17/714,483
- Filed: 2022-04-06
- Published: 2023-10-12
- Granted: 2024-02-20
- Earliest claimed: 2022-04-06
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Vinay Kumar Kolar; Jean-Philippe Vasseur; Michal Wladyslaw Garcarz
- Web page: https://patentgrep.com/patent/US11909618B2

## CPC

- H04L 43/12: Network monitoring probes
- H04L 43/50: Testing arrangements
- H04L 47/2475: for supporting traffic characterised by the type of applications
- H04L 41/16: using machine learning or artificial intelligence
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In one embodiment, a device computes, for each of a set of points of presence (PoPs) via which traffic for an online application can be sent from a location, application experience metrics predicted for the application over time. The device assigns, for each of the set of PoPs, weights to different time periods, based on measures of uncertainty associated with the predicted application experience metrics. The device generates, based on the weights assigned to the different time periods for each of the set of PoPs, schedules for probing network paths connecting the location to the online application via those PoPs. The device causes the network paths to be probed in accordance with their schedules. Results of this probing are used to select a particular PoP from among the set of PoPs via which traffic for the online application should be sent from the location during a certain time period.

## Claims

### Claim 1

A method comprising:
computing, by a device and for each of a set of points of presence via which traffic for an online application can be sent from a location, application experience metrics predicted for the online application over time;
assigning, by the device and for each of the set of points of presence, weights to different time periods, based on measures of uncertainty associated with the application experience metrics predicted for the online application over time;
generating, by the device and based on the weights assigned to the different time periods for each of the set of points of presence, schedules for probing network paths connecting the location to the online application via the set of points of presence, wherein the schedules allocate probing across the different time periods and network paths, to maximize their corresponding weights, given one or more probe quotas specified via a user interface; and
causing, by the device, the network paths to be probed in accordance with their schedules, wherein results of this probing are used to select a particular point of presence from among the set of points of presence via which traffic for the online application should be sent from the location during a certain time period.

### Claim 2 (depends on 1)

The method as in claim 1, wherein the application experience metrics comprise at least one of: a transaction time for the online application, a mean opinion score (MOS) for the online application, or satisfaction ratings provided by users of the online application.

### Claim 3 (depends on 1)

The method as in claim 1, wherein the application experience metrics are predicted based on path metrics obtained from the network paths, and wherein the schedules exclude probing of at least one of the network paths whose path metrics have low predictive power scores for the application experience metrics.

### Claim 4 (depends on 1)

The method as in claim 1, wherein the device assigns the weights based in part on a number of sessions or traffic volume for the online application.

### Claim 5 (depends on 1)

The method as in claim 1, wherein the one or more probe quotas specify a number of probes that can be sent during a specified timespan.

### Claim 6 (depends on 1)

The method as in claim 1, wherein the one or more probe quotas include per-path quotas for the network paths.

### Claim 7 (depends on 1)

The method as in claim 1, further comprising:
adjusting, by the device, one of the schedules for probing a particular one of the network paths, in response to detecting a change in the application experience metrics for that path.

### Claim 8 (depends on 1)

The method as in claim 1, wherein the schedules for probing the network paths include at least some randomly-scheduled probes.

### Claim 9

An apparatus, comprising:
one or more network interfaces;
a processor coupled to the one or more network interfaces and configured to execute one or more processes; and
a memory configured to store a process that is executable by the processor, the process when executed configured to:
compute, and for each of a set of points of presence via which traffic for an online application can be sent from a location, application experience metrics predicted for the online application over time;
assign, for each of the set of points of presence, weights to different time periods, based on measures of uncertainty associated with the application experience metrics predicted for the online application over time;
generate, based on the weights assigned to the different time periods for each of the set of points of presence, schedules for probing network paths connecting the location to the online application via the set of points of presence, wherein the schedules allocate probing across the different time periods and network paths, to maximize their corresponding weights, given one or more probe quotas specified via a user interface; and
cause the network paths to be probed in accordance with their schedules, wherein results of this probing are used to select a particular point of presence from among the set of points of presence via which traffic for the online application should be sent from the location during a certain time period.

### Claim 10 (depends on 9)

The apparatus as in claim 9, wherein the particular point of presence is selected from among the set of points of presence to maximize an application experience of the online application.

### Claim 11 (depends on 9)

The apparatus as in claim 9, wherein the application experience metrics are predicted using a machine learning or statistical model.

### Claim 12 (depends on 9)

The apparatus as in claim 9, wherein the apparatus assigns the weights based in part on a number of sessions or traffic volume for the online application.

### Claim 13 (depends on 11)

The apparatus as in claim 11, wherein the one or more probe quotas specify a number of probes that can be sent during a specified timespan.

### Claim 14 (depends on 9)

The apparatus as in claim 9, wherein the one or more probe quotas include per-path quotas for the network paths.

### Claim 15 (depends on 9)

The apparatus as in claim 9, wherein the process when executed is further configured to:
adjust one of the schedules for probing a particular one of the network paths, in response to detecting a change in the application experience metrics for that path.

### Claim 16

A tangible, non-transitory, computer-readable medium storing program instructions that cause a device to execute a process comprising:
computing, by the device and for each of a set of points of presence via which traffic for an online application can be sent from a location, application experience metrics predicted for the online application over time;
assigning, by the device and for each of the set of points of presence, weights to different time periods, based on measures of uncertainty associated with the application experience metrics predicted for the online application over time;
generating, by the device and based on the weights assigned to the different time periods for each of the set of points of presence, schedules for probing network paths connecting the location to the online application via the set of points of presence, wherein the schedules allocate probing across the different time periods and network paths, to maximize their corresponding weights, given one or more probe quotas specified via a user interface; and
causing, by the device, the network paths to be probed in accordance with their schedules, wherein results of this probing are used to select a particular point of presence from among the set of points of presence via which traffic for the online application should be sent from the location during a certain time period.
