US 11,757,982 B2
Performing load balancing self adjustment within an application environment
Raj Nair, Lexington, MA (US); Prabhudev Navali, Westford, MA (US); Sudhir Halbhavi, Bangalore (IN); and Chin-Cheng Wu, Carlisle, MA (US)
Assigned to Avesha, Inc., Chelmsford, MA (US)
Filed by Avesha, Inc., Bedford, MA (US)
Filed on Aug. 4, 2021, as Appl. No. 17/393,960.
Claims priority of provisional application 63/061,364, filed on Aug. 5, 2020.
Claims priority of provisional application 63/183,244, filed on May 3, 2021.
Prior Publication US 2022/0046083 A1, Feb. 10, 2022
Int. Cl. H04L 67/1001 (2022.01); G06N 20/00 (2019.01); H04L 41/0816 (2022.01); H04L 67/60 (2022.01); H04L 67/02 (2022.01); H04L 47/20 (2022.01); H04N 21/2187 (2011.01); H04N 21/422 (2011.01); H04N 21/431 (2011.01); H04N 21/433 (2011.01); H04N 21/466 (2011.01); H04N 21/472 (2011.01)
CPC H04L 67/1001 (2022.05) [G06N 20/00 (2019.01); H04L 41/0816 (2013.01); H04L 47/20 (2013.01); H04L 67/02 (2013.01); H04L 67/60 (2022.05); H04N 21/2187 (2013.01); H04N 21/42203 (2013.01); H04N 21/4312 (2013.01); H04N 21/4334 (2013.01); H04N 21/466 (2013.01); H04N 21/47217 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A method of performing load balancing self-adjustment within an application environment, the method comprising:
while nodes of the application environment load balance traffic among clusters that provide services for an application in accordance with a first load balancing configuration, sensing application environment metrics, the application environment metrics including network conditions and latency and cluster metrics from the clusters including throughput, resource utilization and cluster capacities of the clusters;
performing a self-adjustment operation that generates a second load balancing configuration based on the application environment metrics, the second load balancing configuration being different from the first load balancing configuration; and
deploying the second load balancing configuration among the nodes to enable the nodes to load balance the traffic among the clusters that provide the services for the application in accordance with the second load balancing configuration in place of the first load balancing configuration,
wherein the application environment metrics includes application environment state information, the application environment state information including network traffic conditions and latency, throughput, CPU and memory utilization, and current time, and wherein performing the self-adjustment operation includes entering the application environment state information into a policy engine constructed and arranged to generate load balancing configurations, the policy engine generating the second load balancing configuration based on the entered application environment state information,
and wherein performing the self-adjustment operation further includes:
calculating a sample timer value based on one or more metrics which indicate an amount of time required to compute the application environment state information across a set of load balancing sessions of the clusters;
starting a sample timer that is configured to expire after an amount of time corresponding to the sample timer value, the application environment state information being received into storage from the clusters after starting the sample timer and prior to expiration of the sample timer; and
entering the application environment state information from the storage into the policy engine upon expiration of the sample timer.