IP Library Granted Patent US 12,683,904
Granted Patent B2
US 12,683,904 · App. 18/949,753 · Granted Jul 14, 2026

Application aware adaptive routing

Inventors: Arul Meiyappan Kannappan (Ottawa, CA); Shubham Soni (Rewa, IN); Pratik Soni (Bangalore, IN); Sharan Seshadri (Palo Alto, CA); Xin Kong (Milpitas, CA); Shivin Gopalani (Bangalore, IN)
Assignee: Hewlett Packard Enterprise Development LP
H04L47/2425H04L41/5019H04L47/2475
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,683,904
App. No.
18/949,753
Filed
Nov 15, 2024
Granted
Jul 14, 2026
Kind
B2
Art Unit
2459
USPC
709/238
Abstract

In general, this disclosure describes techniques for a computing system configured to obtain a plurality of records indicating historical traffic flows for an application having application instances executing at a plurality of data centers. The computing system may be configured to determine, based on the plurality of records, whether a current network configuration will satisfy service level expectations (SLEs) for the application, the current network configuration including first configuration information for a first set of links. The computing system may be configured to, based on determining the current network configurations will not satisfy the SLEs for the application: generate, based on the plurality of records and the SLEs, a new network configuration including second configuration information for a second set of links; provision, based on the new network configuration, the second set of links at the plurality of data centers to facilitate the traffic flows among the application instances.

Claims (37)

1 . A computing system comprising processing circuitry having access to a memory, the processing circuitry configured to:

obtain a plurality of records indicating historical traffic flows for an application having application instances executing at each of a plurality of data centers;

determine, based on the plurality of records, whether a current network configuration for connections among the plurality of data centers will satisfy one or more service level expectations (SLEs) for the application, the current network configuration including first configuration information for a first set of links that facilitate traffic flows among the application instances located in different data centers of the plurality of data centers; and

based on determining the current network configuration will not satisfy the one or more SLEs for the application: generate, based on the plurality of records and the one or more SLEs, a new network configuration including second configuration information for a second set of links, and provision, based on the new network configuration, the second set of links at the plurality of data centers to facilitate the traffic flows among the application instances located in different data centers of the plurality of data centers.

2 . The computing system of claim 1 , wherein the plurality of data centers includes at least two of: an on-premises data center, a colocation data center, and a cloud service provider.

3 . The computing system of claim 1 , wherein the new network configuration includes second configuration information indicating a policy defining respective time windows for creating, using, and decommissioning the second set of links, and wherein to provision the second set of links, the processing circuitry is configured to send the policy to routers interconnecting the plurality of data centers.

4 . The computing system of claim 1 , wherein the new network configuration includes second configuration information indicating respective link types for the second set of links.

5 . The computing system of claim 1 , wherein to generate the new network configuration, the processing circuitry is configured to:

determine, based on the plurality of records and for each link of the first set of links, a baseline bandwidth to facilitate the traffic flows of the application instances executing at the plurality of data centers; and

generate, using a machine learning model, the new network configuration based on the baseline bandwidth and the one or more SLEs for the application.

6 . The computing system of claim 1 , wherein to generate the new network configuration, the processing circuitry is further configured to: update the new network configuration based on cost information associated with executing the application instances at the plurality of data centers.

7 . The computing system of claim 1 , wherein to determine whether the current network configuration will satisfy the one or more SLEs for the application, the processing circuitry is configured to determine whether the current network configuration will satisfy the one or more SLEs during a time window associated with high network traffic associated with the application.

8 . The computing system of claim 1 , wherein to determine the current network configuration will satisfy the one or more SLEs for the application, the processing circuitry is configured to determine whether the current network configuration will satisfy the one or more SLEs during a time window associated with synchronizing data for the application at the plurality of data centers.

9 . The computing system of claim 1 , wherein to determine whether the current network configuration will satisfy the one or more SLEs for the application, the processing circuitry is configured to:

determine, based on the plurality of records, traffic metrics associated with the application; and

determine, based on the traffic metrics, whether the current network configuration will satisfy the one or more SLEs for the application.

10 . The computing system of claim 9 , wherein:

the traffic metrics include one or more of: bandwidth, jitter, latency, packet loss, and throughput associated with the traffic flows among the application instances; and

the one or more SLEs for the application includes one or more of: a service availability threshold, performance indicator conditions, user experience criteria, a number of allowable packet drops, bandwidth thresholds, and latency thresholds.

11 . A method comprising:

obtaining, by a cloud management system, a plurality of records indicating historical traffic flows for an application having application instances executing at each of a plurality of data centers;

determining, by the cloud management system and based on the plurality of records, whether a current network configuration for connections among the plurality of data centers will satisfy one or more service level expectations (SLEs) for the application, the current network configuration including first configuration information for a first set of links that facilitate traffic flows among the application instances located in different data centers of the plurality of data centers; and

based on determining the current network configuration will not satisfy the one or more SLEs for the application: generating, by the cloud management system and based on the plurality of records and the one or more SLEs, a new network configuration including second configuration information for a second set of links, and provisioning, by the cloud management system and based on the new network configuration, the second set of links at the plurality of data centers to facilitate the traffic flows among the application instances located in different data centers of the plurality of data centers.

12 . The method of claim 11 , wherein the plurality of data centers includes at least two of: an on-premises data center, a colocation data center, and a cloud service provider.

13 . The method of claim 11 , wherein the new network configuration includes second configuration information indicating a policy defining respective time windows for creating, using, and decommissioning the second set of links, and wherein provisioning the second set of links comprises sending the policy to routers interconnecting the plurality of data centers.

14 . The method of claim 11 , wherein generating the new network configuration comprises:

determining, based on the plurality of records and for each link of the first set of links, a baseline bandwidth to facilitate the traffic flows of the application instances executing at the plurality of data centers; and

generating, using a machine learning model, the new network configuration based on the baseline bandwidth and the one or more SLEs for the application.

15 . The method of claim 11 , wherein generating the new network configuration further comprises: updating the new network configuration based on cost information associated with executing the application instances at the plurality of data centers.

16 . The method of claim 11 , wherein determining whether the current network configuration will satisfy the one or more SLEs for the application comprises: determining whether the current network configuration will satisfy the one or more SLEs during a time window associated with high network traffic associated with the application.

17 . The method of claim 11 , wherein determining whether the current network configuration will satisfy the one or more SLEs for the application comprises: determining whether the current network configuration will satisfy the one or more SLEs during a time window associated with synchronizing data for the application at the plurality of data centers.

18 . Non-transitory computer-readable storage media, storing instructions, that when executed by processing circuitry, cause the processing circuitry to:

obtain a plurality of records indicating historical traffic flows for an application having application instances executing at each of a plurality of data centers;

determine, based on the plurality of records, whether a current network configuration for connections among the plurality of data centers will satisfy one or more service level expectations (SLEs) for the application, the current network configuration including first configuration information for a first set of links that facilitate traffic flows among the application instances located in different data centers of the plurality of data centers; and

based on determining the current network configuration will not satisfy the one or more SLEs for the application: generate, based on the plurality of records and the one or more SLEs, a new network configuration including second configuration information for a second set of links, and provision, based on the new network configuration, the second set of links at the plurality of data centers to facilitate the traffic flows among the application instances located in different data centers of the plurality of data centers.

19 . The non-transitory computer-readable storage media of claim 18 , wherein the plurality of data centers includes at least two of: an on-premises data center, a colocation data center, and a cloud service provider.

20 . The non-transitory computer-readable storage media of claim 18 , wherein the new network configuration includes second configuration information indicating a policy defining respective time windows for creating, using, and decommissioning the second set of links, and wherein to provision the second set of links, the processing circuitry is configured to send the policy to routers interconnecting the plurality of data centers.