Dynamic load balancing of a network of client and server...

Electrical computers and digital processing systems: multicomput – Distributed data processing – Client/server

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S201000, C709S205000, C709S223000, C709S224000, C709S235000, C709S241000

Reexamination Certificate

active

06185601

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The field of the present invention relates generally to a system for distributing the I/O request load over the components of a network. More particularly, the field of the invention relates to distributing the responsibility for carrying out I/O requests among various servers on a network.
2. Related Art
For a number of decades, information has been shared among computers in many various forms. A popular form that has developed is the network file system which almost universally has four capabilities: (1) they share a view of a file system among multiple computers and allow normal file operations to be performed by them; (2) they have security to control who can do what to the file system; (3) they have byte-level file range locking which allows a method for multiple independent users of the file to coordinate changes to the file maintaining coherency, and; (4) they often are functional in a heterogeneous computing environment allowing different computers and different operating systems to share the same files system.
File and total data set sizes are increasing. Movement from analog to digital storage and manipulation of information and media continues to grow. Sustained bandwidth of storage is also increasing. Personal computers with enormous processing power are increasingly affordable.
Computer networks require file servers which frequently operate under the client/server paradigm. Under this paradigm, multiple clients make I/O requests which are directed to a particular resource on the network. A server on the network receives and carries out the I/O requests. Wien a server receives multiple I/O requests, the server queues them and then services them one at a time. Once a queue begins to accumulate, subsequent I/O requests must sit in the queue until the previous I/O requests are serviced. As a result the server can become a bottleneck in the network.
A single server in the network frequently manages the data structures lor files corresponding to a particular resource. This arrangement prevents modification of the files corresponding to a resource by multiple servers. Such a modification would cause the file system to become corrupt since there would be no means of maintaining the data structures in a logical and coherent manner. As a result, a single server receives the I/O requests for a particular resource. If that resource is being heavily used, the server can develop a substantial queue of I/O requests while other servers on the network remain idle.
The use of a single server for managing files for a resource can also create network problems when the single server crashes and is no longer active on the network. Some networks will lose access to the resource in response to the crash. Other networks include a back up server which becomes engaged to manage the files previously managed by the crashed server. The backup server may also be subject to crashing. Further, the backup server is required to manage the I/O requests of two servers increasing the opportunity for the backup server to create a bottleneck or crash.
What is needed is an improved system and method for distributed processing over a network. Such a system would remove the bottlenecks and disadvantages associated with current distributed networks while at the same time maintaining its advantages. Such a system would further allow the distribution of processes to function and be managed in a cross platform environment.
SUMMARY OF THE INVENTION
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 refers to the ability of a client, enabled with processes in accordance with the current invention, 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 emanating from an overloaded node, e.g. server. The embodiments disclosed allow more efficient, robust communication between a plurality of clients and a plurality of resources, via a plurality of nodes. Resources can include, but are not limited to, computers, memory devices, imaging devices, printers, and data sets. A data set can include a database or a file system.
In an embodiment of the invention, a method for load balancing on a network is disclosed. The network includes at least one client node coupled to a plurality of server nodes, and at least one resource coupled to at least a first and a second server node of the plurality of server nodes. The method comprises the acts of: (1) receiving, at a first server node among the plurality of server nodes, a request for at least one resource; (2) determining a utilization condition of the first server node; and (3) redirecting subsequent requests for at least one resource to a second server node among the plurality of server nodes in response to the determining act.
In another embodiment of the invention, the method comprises the acts of: (1) sending an I/O request from at least one client to the first server node for at least one resource; (2) determining, an I/O failure of the first server node; and (3) redirecting subsequent requests from at least one client for at least one resource to another among the plurality of server nodes, in response to the determining act.
In still another embodiment of the invention, a method for load balancing on a network is disclosed. The network includes at least one client node coupled to a plurality of server nodes, and at least a first and a second resource coupled to a first and a second server node among the plurality of server nodes. The method comprises the acts of: (1) receiving, at the first server node, a request from at least one client node for the first resource; (2) determining a utilization condition on the first of the plurality of server nodes; and (3) redirecting subsequent requests for the first resource to the second resource, via the second server node, based on a determination that the first and second resources offer similar features, and in response to the determining act.


REFERENCES:
patent: 5283897 (1994-02-01), Georgiadis et al.
patent: 5408663 (1995-04-01), Miller
patent: 5504894 (1996-04-01), Ferguson et al.
patent: 5537542 (1996-07-01), Eilert et al.
patent: 5539883 (1996-07-01), Allon et al.
patent: 5548724 (1996-08-01), Akizawa et al.
patent: 5603029 (1997-02-01), Aman et al.
patent: 5628005 (1997-05-01), Hurvig
patent: 5630129 (1997-05-01), Wheat
patent: 5706511 (1998-01-01), Tomoda
patent: 5774660 (1998-06-01), Brendel et al.
patent: 5898870 (1999-04-01), Okuda et al.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Dynamic load balancing of a network of client and server... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Dynamic load balancing of a network of client and server..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Dynamic load balancing of a network of client and server... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2576776

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.