FAILOVER AND LOAD BALANCING
First Claim
1. A method for static load balancing implemented in a filter driver, wherein the filter driver performs:
- determining a data quota for each of multiple data paths;
identifying a maximum number of commands for a target logical unit; and
selecting a data path on which to send a packet based on the data quota and the maximum number of commands.
0 Assignments
0 Petitions
Accused Products
Abstract
Provided are techniques for static load balancing implemented in a filter driver. The filter driver determines a data quota for each of multiple data paths. The filter driver identifies a maximum number of commands for a target logical unit. The filter driver selects a data path on which to send a packet based on the data quota and the maximum number of commands. Also, provided are techniques for dynamic load balancing implemented in a filter driver. The filter driver determines a data transfer speed for each of multiple data paths. The filter driver updates a load balancing share for each of the multiple data paths based on the data transfer speed of each of the multiple data paths. The filter driver selects a data path on which to send a packet based on the load balancing share of each of the multiple data paths.
-
Citations
18 Claims
-
1. A method for static load balancing implemented in a filter driver, wherein the filter driver performs:
-
determining a data quota for each of multiple data paths; identifying a maximum number of commands for a target logical unit; and selecting a data path on which to send a packet based on the data quota and the maximum number of commands. - View Dependent Claims (2, 3)
-
-
4. A method for dynamic load balancing implemented in a filter driver, wherein the filter driver performs:
-
determining a data transfer speed for each of multiple data paths; updating a load balancing share for each of the multiple data paths based on the data transfer speed of each of the multiple data paths; and selecting a data path on which to send a packet based on the load balancing share of each of the multiple data paths. - View Dependent Claims (5, 6)
-
-
7. A system coupled to a network and data storage, comprising:
-
a host computer; a storage controller managing Input/Output (I/O) access to the data storage, wherein the storage controller is coupled to the host computer; and a filter driver capable of determining a data quota for each of multiple data paths, identifying a maximum number of commands for a target logical unit, and selecting a data path on which to send a packet based on the data quota and the maximum number of commands. - View Dependent Claims (8, 9)
-
-
10. A system coupled to a network and data storage, comprising:
-
a host computer; a storage controller managing Input/Output (I/O) access to the data storage, wherein the storage controller is coupled to the host computer; and a filter driver capable of determining a data transfer speed for each of multiple data paths, updating a load balancing share for each of the multiple data paths based on the data transfer speed of each of the multiple data paths, and selecting a data path on which to send a packet based on the load balancing share of each of the multiple data paths. - View Dependent Claims (11, 12)
-
-
13. An article of manufacture comprising a storage medium having stored therein instructions that when executed by a computing device results in the following:
-
determining a data quota for each of multiple data paths; identifying a maximum number of commands for a target logical unit; and selecting a data path on which to send a packet based on the data quota and the maximum number of commands. - View Dependent Claims (14, 15)
-
-
16. An article of manufacture comprising a storage medium having stored therein instructions that when executed by a computing device results in the following:
-
determining a data transfer speed for each of multiple data paths; updating a load balancing share for each of the multiple data paths based on the data transfer speed of each of the multiple data paths; and selecting a data path on which to send a packet based on the load balancing share of each of the multiple data paths. - View Dependent Claims (17, 18)
-
Specification