System and method for implementing a clustered load balancer
First Claim
1. A method of load balancing connections between a plurality of servers and a plurality of clients, wherein a plurality of load balancers couple said plurality of servers and said plurality of clients, said method comprising:
- in response to a receiving load balancer out of said plurality of load balancers receiving a communication from at least one of said plurality of clients, determining a primary load balancer and a backup load balancer for handling said communication;
storing an identity of said primary load balancer and said backup load balancer corresponding to said communication in each of said plurality of load balancers;
forwarding said communication to said primary load balancer for transmission to at least one of said plurality of servers; and
in response to determining said primary load balancer is not available, forwarding said communication to said determined backup load balancer for transmission to at least one of said plurality of servers.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method of organizing a front-end load balancing function for implementing an Internet site so the transmission control protocol (TCP) connections, established between the front-end load balancing function and end-users, are spread over more than one individual load balancer (ILB). Each ILB consistently self-asserts a primary ILB owner for each one of the TCP connections. Hence, each ILB, for each delegated TCP connection can process each TCP connection on behalf of the load balancing function while handing off the other TCP connections to the corresponding ILB owners. Also, each ILB consistently self-asserts a backup ILB owner for each one of the TCP connections so the designated back up ILB owner takes over the processing of an ILB owned TCP connection should the ILB owner become incapable of processing the delegated TCP connection.
49 Citations
12 Claims
-
1. A method of load balancing connections between a plurality of servers and a plurality of clients, wherein a plurality of load balancers couple said plurality of servers and said plurality of clients, said method comprising:
-
in response to a receiving load balancer out of said plurality of load balancers receiving a communication from at least one of said plurality of clients, determining a primary load balancer and a backup load balancer for handling said communication; storing an identity of said primary load balancer and said backup load balancer corresponding to said communication in each of said plurality of load balancers; forwarding said communication to said primary load balancer for transmission to at least one of said plurality of servers; and in response to determining said primary load balancer is not available, forwarding said communication to said determined backup load balancer for transmission to at least one of said plurality of servers. - View Dependent Claims (2, 3)
-
-
4. A system for load balancing connections between a plurality of servers and a plurality of clients, said system comprising:
a plurality of load balancers, including a receiving load balancer, further including; means for receiving a communication from at least one of said plurality of clients; means for determining said primary load balancer and said backup load balancer for handling said communication; means for storing an identity of said primary load balancer and said backup load balancer corresponding to said communication in each of said plurality of load balancers; means for forwarding said communication to said primary load balancer for transmission to at least one of said plurality of servers; and means for forwarding said communication to said determined backup load balancer for transmission to at least one of said plurality of servers, in response to determining said primary load balancer is not available. - View Dependent Claims (5, 6)
-
7. A load balancer out of a plurality of load balancers for load balancing connections between a plurality of servers and a plurality of clients, said load balancer comprising:
-
means for receiving a communication from at least one of said plurality of clients; means for determining a primary load balancer and a backup load balancer for handing said communication; means for storing an identity of said primary load balancer and said backup load balancer corresponding to said communication in each of said plurality of load balancers; means for forwarding said communication to said primary load balancer for transmission to at least one of said plurality of servers; and means for forwarding said communication to said determined backup load balancer for transmission to at least one of said plurality of servers, in response to determining said primary load balancer is not available. - View Dependent Claims (8, 9)
-
-
10. A computer program product for load balancing connections between a plurality of servers and a plurality of clients, wherein a plurality of load balancers couple said plurality of servers and said plurality of clients, said computer program product comprising:
-
instructions, stored on computer-readable media, for determining a primary load balancer and a backup load balancer for handling said communication, in response to a receiving load balancer out of said plurality of load balancers receiving a communication from at least one of said plurality of clients; instructions, stored on computer-readable media, for storing an identity of said primary load balancer and said backup load balancer corresponding to said communication in each of said plurality of load balancers; instructions, stored on computer-readable media, for forwarding said communication to said primary load balancer for transmission to at least one of said plurality of servers; and instructions, stored on computer-readable media, for forwarding said communication to said determined backup load balancer for transmission to at least one of said plurality of servers, in response to determining said primary load balancer is not available. - View Dependent Claims (11, 12)
-
Specification