IP Library › Granted Patent US 12,432,138
Granted Patent B2
US 12,432,138 · App. 17/538,194 · Granted Sep 30, 2025

Selecting paths for high predictability using clustering

Inventors: Mukund Yelahanka Raghuprasad (San Jose, CA); Jean-Philippe Vasseur (Saint Martin d'Uriage, FR); Vinay Kumar Kolar (San Jose, CA)
Assignee: Cisco Technology, Inc.
H04L45/46H04L41/147H04L45/08
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 12,432,138
App. No.
17/538,194
Granted
Sep 30, 2025
Kind
B2
Abstract

In one embodiment, a device forms a plurality of clusters of network paths used to convey traffic for an online application by applying clustering to telemetry data for those network paths. The device determines a predictability metric for a particular cluster in the plurality of clusters. The device provides an indication of the predictability metric for the particular cluster for display. The device enables, based in part on the predictability metric, predictive routing for the network paths in the particular cluster.

Claims (39)

1. A method comprising:

forming, by a device, a plurality of clusters of network paths used to convey traffic for an online application by applying clustering to telemetry data for those network paths;

determining, by the device, a predictability metric for a particular cluster of network paths in the plurality of clusters of network paths, wherein the predictability metric indicates how accurately behavior of given network paths in the particular cluster of network paths is able to be predicted for two or more forecasting models;

presenting, by the device and to a display via a user interface, an indication of the predictability metric for the particular cluster of network paths; and

enabling, by the device and after presenting the predictability metric, predictive routing for the particular cluster of network paths based on receiving an instruction to enable the predictive routing, wherein the instruction is obtained from a user via the user interface.

2. The method as in claim 1 , wherein the telemetry data comprises at least one of: packet loss, delay, or jitter.

3. The method as in claim 1 , wherein the telemetry data is indicative of user satisfaction ratings for the online application.

4. The method as in claim 1 , wherein the device enables predictive routing for the particular cluster of network paths, based in part on a comparison between a policy and at least one of: a criticality associated with the online application, a type of network paths in the particular cluster of network paths, or a traffic volume associated with the particular cluster of network paths.

5. The method as in claim 1 , wherein determining the predictability metric for the particular cluster of network paths comprises:

determining how well each of a set of forecasting models are able to make predictions for the particular cluster of network paths.

6. The method as in claim 5 , wherein enabling predictive routing for the particular cluster of network paths comprises:

selecting one of the set of forecasting models to make predictions for the predictive routing, based in part on a resource consumption associated with that forecasting model.

7. The method as in claim 1 , further comprising:

disabling predictive routing for the particular cluster of network paths, based in part on a determination that the predictability metric for the particular cluster of network paths has changed.

8. The method as in claim 1 , wherein the predictability metric is based on a precision or recall metric.

9. The method as in claim 1 , wherein the online application is a software-as-a-service (SaaS) application.

10. 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:

form a plurality of clusters of network paths used to convey traffic for an online application by applying clustering to telemetry data for those network paths;

determine a predictability metric for a particular cluster of network paths in the plurality of clusters of network paths, wherein the predictability metric indicates how accurately behavior of given network paths in the particular cluster of network paths is able to be predicted for two or more forecasting models;

provide, to a display via a user interface, an indication of the predictability metric for the particular cluster of network paths; and

enable, after presenting the predictability metric, predictive routing for the particular cluster of network paths based on receiving an instruction to enable the predictive routing, wherein the instruction is obtained from a user via the user interface.

11. The apparatus as in claim 10 , wherein the telemetry data comprises at least one of: packet loss, delay, or jitter.

12. The apparatus as in claim 10 , wherein the telemetry data is indicative of user satisfaction ratings for the online application.

13. The apparatus as in claim 10 , wherein the apparatus enables predictive routing for the particular cluster of network paths, based in part on a comparison between a policy and at least one of: a criticality associated with the online application, a type of network paths in the particular cluster of network paths, or a traffic volume associated with the particular cluster of network paths.

14. The apparatus as in claim 10 , wherein the apparatus determines the predictability metric for the particular cluster of network paths by:

determining how well each of a set of forecasting models are able to make predictions for the particular cluster of network paths.

15. The apparatus as in claim 14 , wherein the apparatus enables predictive routing for the particular cluster of network paths by:

selecting one of the set of forecasting models to make predictions for the predictive routing, based in part on a resource consumption associated with that forecasting model.

16. The apparatus as in claim 10 , wherein the process when executed is further configured to:

disable predictive routing for the particular cluster of network paths, based in part on a determination that the predictability metric for the particular cluster of network paths has changed.

17. The apparatus as in claim 10 , wherein the predictability metric is based on a precision or recall metric.

18. A tangible, non-transitory, computer-readable medium storing program instructions that cause a device to execute a process comprising:

forming, by the device, a plurality of clusters of network paths used to convey traffic for an online application by applying clustering to telemetry data for those network paths;

determining, by the device, a predictability metric for a particular cluster of network paths in the plurality of clusters of network paths, wherein the predictability metric indicates how accurately behavior of given network paths in the particular cluster of network paths is able to be predicted for two or more forecasting models;

presenting, by the device and to a display via a user interface, an indication of the predictability metric for the particular cluster of network paths; and

enabling, by the device and after presenting the predictability metric, predictive routing for the particular cluster of network paths based on receiving an instruction to enable the predictive routing, wherein the instruction is obtained from a user via the user interface.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2021
From: YELAHANKA RAGHUPRASAD, MUKUND; VASSEUR, JEAN-PHILIPPE; KOLAR, VINAY KUMAR
To: CISCO TECHNOLOGY, INC.
Reel/Frame 058243/0918 →
Continuity (1)
Related Publication 20230171186A1 · Jun 1, 2023
References Cited (14)
US 8578465B2 · Xiao · 2013 [cited by examiner]
US 9736056B2 · Vasseur et al. · 2017 [cited by applicant]
US 10282458B2 · Gupta et al. · 2019 [cited by applicant]
US 10735273B2 · Kaplunov et al. · 2020 [cited by applicant]
US 10742673B2 · Tiagi et al. · 2020 [cited by applicant]
US 11151457B1 · Dawn · 2021 [cited by examiner]
US 20080103847A1 · Sayal · 2008 [cited by examiner]
US 20150369705A1 · Kruglick · 2015 [cited by examiner]
US 20160028637A1 · Vasseur · 2016 [cited by examiner]
US 20170213227A1 · Johnson · 2017 [cited by examiner]
US 20190180141A1 · Tiagi et al. · 2019 [cited by applicant]
US 20200145325A1 · LaVigne · 2020 [cited by examiner]
US 20200201646A1 · Thompto · 2020 [cited by examiner]
US 20210103830A1 · Liu et al. · 2021 [cited by applicant]