Dynamically adjusting load balancing
First Claim
1. A method for managing load balancers that load balance data messages that source compute nodes (SCNs) send to at least one group of destination compute nodes (DCNs), the load balancers and SCNs executing on host computers, the method comprising:
- collecting message traffic statistics relating to data message flows that the load balancers on the host computers distribute to the DCNs of the DCN group based on a set of load balancing criteria;
generating aggregated message traffic statistics from the collected message traffic statistics;
from the generated aggregated message traffic statistics, computing a set of adjusted load balancing criteria for adjusting distribution of data message flows to the DCNs of the same DCN group; and
distributing the set of adjusted load balancing criteria to at least a subset of the load balancers for the subset of the load balancers to use to adjust how they distribute new data message flows to the DCNs of the same DCN group.
1 Assignment
0 Petitions
Accused Products
Abstract
Some embodiments provide a novel method for load balancing data messages that are sent by a source compute node (SCN) to one or more different groups of destination compute nodes (DCNs). In some embodiments, the method deploys a load balancer in the source compute node'"'"'s egress datapath. This load balancer receives each data message sent from the source compute node, and determines whether the data message is addressed to one of the DCN groups for which the load balancer spreads the data traffic to balance the load across (e.g., data traffic directed to) the DCNs in the group. When the received data message is not addressed to one of the load balanced DCN groups, the load balancer forwards the received data message to its addressed destination. On the other hand, when the received data message is addressed to one of load balancer'"'"'s DCN groups, the load balancer identifies a DCN in the addressed DCN group that should receive the data message, and directs the data message to the identified DCN. To direct the data message to the identified DCN, the load balancer in some embodiments changes the destination address (e.g., the destination IP address, destination port, destination MAC address, etc.) in the data message from the address of the identified DCN group to the address (e.g., the destination IP address) of the identified DCN.
235 Citations
26 Claims
-
1. A method for managing load balancers that load balance data messages that source compute nodes (SCNs) send to at least one group of destination compute nodes (DCNs), the load balancers and SCNs executing on host computers, the method comprising:
-
collecting message traffic statistics relating to data message flows that the load balancers on the host computers distribute to the DCNs of the DCN group based on a set of load balancing criteria; generating aggregated message traffic statistics from the collected message traffic statistics; from the generated aggregated message traffic statistics, computing a set of adjusted load balancing criteria for adjusting distribution of data message flows to the DCNs of the same DCN group; and distributing the set of adjusted load balancing criteria to at least a subset of the load balancers for the subset of the load balancers to use to adjust how they distribute new data message flows to the DCNs of the same DCN group. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A non-transitory machine readable medium storing a program for managing load balancers that load balance data messages that source compute nodes send to at least one group of destination compute nodes (DCNs), the load balancers and SCNs executing on host computers, the program comprising sets of instructions for:
-
collecting sets of message traffic statistics relating to data message flows that the load balancers distribute to the DCNs of the DCN group based on a set of load balancing criteria, each traffic-statistics set expressing data-message processing load on the DCNs based on the data message flows distributed by one load balancer; generating aggregated message traffic statistics from the collected sets of message traffic statistics in order to quantify an overall data-message processing load on the DCNs; from the generated aggregated message traffic statistics, computing a set of adjusted load balancing criteria for adjusting distribution of data message flows to the DCNs of the same DCN group; and distributing the set of adjusted load balancing criteria to at least a subset of the load balancers for the subset of the load balancers to use to adjust how they distribute new data message flows to the DCNs of the same DCN group. - View Dependent Claims (23, 24)
-
-
25. A controller computer comprising:
-
at least one processing unit; a non-transitory machine readable medium storing a program executing on the at least one processing unit for managing load balancers that load balance data messages that source compute nodes send to at least one group of destination compute nodes (DCNs), the load balancers and SCNs executing on host computers, the program comprising sets of instructions for; collecting message traffic statistics relating to data message flows that the load balancers distribute to the DCNs of the DCN group based on a set of load balancing criteria; generating aggregated message traffic statistics from the collected message traffic statistics; from the generated aggregated message traffic data, computing a set of adjusted load balancing criteria for adjusting distribution of data message flows to the DCNs of the same DCN group; and distributing the set of adjusted load balancing criteria to at least a subset of the load balancers for the subset of the load balancers to use to adjust how they distribute new data message flows to the DCNs of the same DCN group. - View Dependent Claims (26)
-
Specification