Load balancing
DCFirst Claim
1. A method for non-geographical load balancing requests on a network, the method comprising:
- determining the network proximity of a requestor with respect to each of at least two servers located at different geographical locations;
designating a closest one of said at least two servers by ranking said at least two servers by network proximity; and
directing requests from said requestor to one of said at least two servers having greatest network proximity, said network proximity being determined by at least one of latency and number of hops between said requestor and each of said at least two servers, wherein said determining step comprises polling said requestor to yield at least two attributes selected from the group consisting of;
latency, relative TTL and number of hops to requestor.
0 Assignments
Litigations
0 Petitions
Reexamination
Accused Products
Abstract
A method for load balancing requests on a network, the method including receiving a request from a requestor having a requestor network address at a first load balancer having a first load balancer network address, the request having a source address indicating the requestor network address and a destination address indicating the first load balancer network address, forwarding the request from the first load balancer to a second load balancer at a triangulation network address, the request source address indicating the requestor network address and the destination address indicating the triangulation network address, the triangulation network address being associated with the first load balancer network address, and sending a response from the second load balancer to the requestor at the requestor network address, the response having a source address indicating the first load balancer network address associated with the triangulation network address and a destination address indicating the first requestor network address.
149 Citations
4 Claims
-
1. A method for non-geographical load balancing requests on a network, the method comprising:
-
determining the network proximity of a requestor with respect to each of at least two servers located at different geographical locations;
designating a closest one of said at least two servers by ranking said at least two servers by network proximity; and
directing requests from said requestor to one of said at least two servers having greatest network proximity, said network proximity being determined by at least one of latency and number of hops between said requestor and each of said at least two servers, wherein said determining step comprises polling said requestor to yield at least two attributes selected from the group consisting of;
latency, relative TTL and number of hops to requestor.
-
-
2. A method for non-geographical load balancing requests on a network, the method comprising:
-
determining the network proximity of a requestor with respect to each of at least two servers located at different geographical locations;
designating a closest one of said at least two servers by ranking said at least two servers by network proximity; and
directing requests from said requestor to one of said at least two servers having greatest network proximity, said network proximity being determined by at least one of latency and number of hops between said requestor and each of said at least two servers, wherein said determining step comprises polling said requestor using at least two polling methods selected from the group consisting of;
pinging, sending a TCP ACK message to said requestor'"'"'s source address and port, sending a TCP ACK message to said requestor'"'"'s source address and port 80, and sending a UDP request to a sufficiently high port number as to elicit an “
ICMP port unreachable”
reply.
-
-
3. A network non-geographical load balancing system comprising:
-
a network;
at least two servers connected to said network;
at least two load balancers connected to said network; and
a requestor connected to said network;
wherein each of said at least two load balancers is operative to determine the network proximity of said requestor, and wherein at least one of said load balancers is operative to designate a closest one of said at least two servers by ranking said at least two servers by network proximity and to direct requests from either of said requestor and a subnet of said requestor to said closest server, wherein said network proximity is determined by at least two of latency, number of hops between said requestor and each of said at least two servers and said server processing capacity of each of said at least two servers;
wherein said load balancers are operative to poll said requestor using at least two polling methods selected from the group consisting of;
pinging, sending a TCP ACK message to said requestor'"'"'s source address and port, sending a TCP ACK message to said requestor'"'"'s source address and port 80, and sending a UDP request to a sufficiently high port number as to elicit an “
ICMP port unreachable”
reply.
-
-
4. A method for determining network proximity, the method comprising:
-
sending from each of at least two servers a UDP request having a starting TTL value to a client at a sufficiently high port number as to elicit an “
ICMP port unreachable”
reply message to at least one determining one of said servers indicating said UDP request'"'"'s TTL value on arrival at said client;
determining a number of hops from each of said servers to said client by subtracting said starting TTL value from said TTL value on arrival for each of said servers; and
determining which of said servers has fewer hops of said client; and
designating said server having fewer hops as being closer to said client than the other of said servers.
-
Specification