Method and system for wide area network load balancing
First Claim
1. A method of load balancing for a network, the network having a plurality of client systems and a plurality of servers, comprising:
- receiving a client request for a server from a client system;
resolving the destination point of the client request;
sending the client request to a load balancing server based on the resolved destination point;
selecting one server out of a subset of the plurality of servers based on a predetermined criteria;
providing a conduit to the client system and the selected server for transmission of the client request;
receiving network measurements, the network measurements being a total amount of bytes of data received by each of the subset of the plurality of servers from the plurality of client systems and a total amount of bytes of data sent by each of the subset of the plurality of servers to the plurality of client systems over a predetermined time period and the network measurements received is the predetermined criteria; and
dynamically switching between one of two modes based on load experienced by the load balancing server, a first mode being macro-mode and a second mode being micro-mode; and
wherein the load balancing server, in micro-mode, monitors each request from the plurality of client systems and, in macro-mode, causes requests from the plurality of client systems to bypass the load balancing server and be sent directly from the plurality of client systems to the selected server.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method of load balancing a network having a plurality of client systems and servers. The load balancing system and method distributes requests from the client systems to different servers on a wide area network by selecting the most optimal server for a specific client request. The client request for a server is received from a client system and the destination point of the client request is resolved in part by a load balancing server selector. The client request is sent to a load balancing server based on the resolved destination point and one server out of a subset of the plurality of servers is selected based on a predetermined criteria, such as network traffic congestion or server load, and a conduit to the client system and the selected server for transmission of the client request is provided.
-
Citations
34 Claims
-
1. A method of load balancing for a network, the network having a plurality of client systems and a plurality of servers, comprising:
-
receiving a client request for a server from a client system;
resolving the destination point of the client request;
sending the client request to a load balancing server based on the resolved destination point;
selecting one server out of a subset of the plurality of servers based on a predetermined criteria;
providing a conduit to the client system and the selected server for transmission of the client request;
receiving network measurements, the network measurements being a total amount of bytes of data received by each of the subset of the plurality of servers from the plurality of client systems and a total amount of bytes of data sent by each of the subset of the plurality of servers to the plurality of client systems over a predetermined time period and the network measurements received is the predetermined criteria; and
dynamically switching between one of two modes based on load experienced by the load balancing server, a first mode being macro-mode and a second mode being micro-mode; and
wherein the load balancing server, in micro-mode, monitors each request from the plurality of client systems and, in macro-mode, causes requests from the plurality of client systems to bypass the load balancing server and be sent directly from the plurality of client systems to the selected server. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A load balancing system for a network, the network having a plurality of client systems and a plurality of servers, comprising:
-
at least one load balancing server adapted to be coupled with the network; and
at least one load balancing server selector coupled with the at least one load balancing server, the load balancing server selector adapted to receive requests from the client systems and to forward the requests to the at least one load balancing server, the at least one load balancing server selecting one server out of a subset of the plurality of servers based on a predetermined criteria and the requests from the client systems;
wherein the at least one load balancing server is further configured to operate in one of two modes, a first mode being macro-mode and a second mode being micro-mode and the at least one load balancing server in micro-mode monitors the requests from the client systems and a portion of the requests are session specific. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
the predetermined condition is a determination of whether the request from the client system is to a server that is not a member of the domain or not.
-
-
18. The load balancing system of claim 16 wherein the predetermined condition is a determination whether the client domain name server is able to resolve the requests from the client systems.
-
19. A load balancing server for a network, the network having a plurality of client systems and a plurality of servers, comprising:
-
a processor configured to select one server out of a subset of the plurality of servers based on a predetermined criteria and requests from the client systems;
a network interface adapted to be coupled with the network and the processor;
wherein the network interface receives network measurements, the network measurements being a total amount of bytes of data received by each of the subset of the plurality of servers from the plurality of client systems and a total amount of bytes of data sent by each of the subset of the plurality of servers to the plurality of client systems over a predetermined time period and the network measurements received is the predetermined criteria used by the processor; and
wherein the processor is further configured to operate in one of two modes, a first mode being macro-mode and a second mode being micro-mode and the processor in micro-mode monitors the requests from the plurality of client systems and a portion of the requests are session specific. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A load balancing system for a network, the network having client systems and servers, the system comprising:
-
at least one load balancing server adapted to be coupled with the network;
at least one load balancing server selector coupled with the at least one load balancing server, the load balancing server selector adapted to receive requests from the client systems and to forward the requests to the at least one load balancing server, the at least one load balancing server selecting one server out of a subset of the servers based on a predetermined criteria and the requests from the client systems;
wherein the at least one load balancing server is configured to dynamically switch between one of two modes based on load experienced by the at least one load balancing server, a first mode being macro-mode and a second mode being micro-mode; and
wherein the at least one load balancing server, in micro-mode, monitors each request from the client systems and, in macro-mode, causes requests from the client systems to bypass the load balancing server and be sent directly from the client systems to the selected server. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34)
-
Specification