Dynamic load balancing of a network of client and server computer
First Claim
1. A method for load balancing a network, the network comprising a number of server computers that serve I/O requests directed by a number of client computers to resources via the server computers, each server computer receiving I/O requests from client computers, the resources initially served by at least two server computers, each resource associated with an administrative server computer that carries out an administrative portion of each I/O request directed to the resource, the method comprising:
- receiving at a first server computer an I/O request directed to a resource;
carrying out the I/O request by the first server computer and, when the first server computer is not an administrative server computer for the resource, by an administrative computer assigned to the resource;
determining by the first server computer that the first server computer has exceeded a utilization threshold; and
re-directing by the first server computer subsequent I/O requests directed to the resource by at least one client computer to an alternate server computer that serves I/O requests for the resource, wherein the at least one client computer needs to send the subsequent I/O requests directly to the alternate server computer.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods for load rebalancing by clients in a network are disclosed. Client load rebalancing allows the clients to optimize throughput between themselves and the resources accessed by the nodes. A network, which implements this embodiment of the invention, can dynamically rebalance itself to optimize throughput by migrating client I/O requests from over_utilized pathways to under_utilized pathways. Client load rebalancing allows a client to re-map a path through a plurality of nodes to a resource. The re-mapping may take place in response to a redirection command from an overloaded node.
-
Citations
19 Claims
-
1. A method for load balancing a network, the network comprising a number of server computers that serve I/O requests directed by a number of client computers to resources via the server computers, each server computer receiving I/O requests from client computers, the resources initially served by at least two server computers, each resource associated with an administrative server computer that carries out an administrative portion of each I/O request directed to the resource, the method comprising:
-
receiving at a first server computer an I/O request directed to a resource;
carrying out the I/O request by the first server computer and, when the first server computer is not an administrative server computer for the resource, by an administrative computer assigned to the resource;
determining by the first server computer that the first server computer has exceeded a utilization threshold; and
re-directing by the first server computer subsequent I/O requests directed to the resource by at least one client computer to an alternate server computer that serves I/O requests for the resource, wherein the at least one client computer needs to send the subsequent I/O requests directly to the alternate server computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for recovering from server computer failures in a network, the network comprising a number of server computers that serve I/O requests directed by a number of client computers to resources via the server computers, the resources initially served by at least two server computers, each resource associated with an administrative server computer that carries out an administrative portion of each I/O request directed to the resource, the method comprising:
-
sending an I/O request directed to a resource from a client computer to a first server computer;
determining that an I/O failure occurred on the first server computer; and
re-directing subsequent I/O requests directed to the resource from the client computer to an alternate computer, wherein the client computer needs to send the subsequent I/O requests directly to the alternate computer. - View Dependent Claims (17, 18, 19)
-
Specification