System for I/O path load balancing and failure which can be ported to a plurality of operating environments
First Claim
1. A method for path management of a data processing system which can include a plurality of hosts;
- the plurality of hosts running multiple operating systems, the method comprising the steps of;
(a) providing a portable path management code;
(b) providing a plurality of control modules, each of the control modules having an area which can only be accessed by the portable path management code; and
(c) providing an interface to at least one device driver from the portable management code to allow the portable management code to control access to the plurality of paths to a plurality of storage subsystems by the at least one device driver.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system for path management of data processing in an environment which includes a plurality of hosts running multiple operating systems is disclosed. The method and system includes providing a portable path management code and providing a plurality of control modules. Each of the control modules has an area which can only be accessed by the portable path management code. The method and system also include providing an interface to at least one device driver from the portable management code to allow the portable management code to control access to plurality of paths to a plurality of storage subsystems by the at least one device driver. The method and system in accordance with the present invention can provide path load balancing and fail over for a plurality of paths to a plurality of storage subsystems. The path management code is portable and platform independent so that the functionality can be ported easily to each operating system in the multiple system environment.
66 Citations
13 Claims
-
1. A method for path management of a data processing system which can include a plurality of hosts;
- the plurality of hosts running multiple operating systems, the method comprising the steps of;
(a) providing a portable path management code;
(b) providing a plurality of control modules, each of the control modules having an area which can only be accessed by the portable path management code; and
(c) providing an interface to at least one device driver from the portable management code to allow the portable management code to control access to the plurality of paths to a plurality of storage subsystems by the at least one device driver. - View Dependent Claims (2, 3, 4)
(a1) providing a platform independent portable path management code.
- the plurality of hosts running multiple operating systems, the method comprising the steps of;
-
3. The method of claim 1 wherein the portable path management code controls access to the plurality of paths by selecting a path of the plurality of paths on a global round robin basis.
-
4. The method of claim 3 wherein the portable path management code further controls access to the plurality of paths by selecting a new path of the plurality of paths if the path fails.
-
5. A system for path management in a host including at least one device, at least one device driver for controlling the at least one device, and a plurality of paths between the at least one device and the at least one device driver, the system comprising:
-
a portable management code for managing the plurality of paths;
at least one control structure having at least one data structure accessible to the portable management code, the at least one data structure including information about the plurality of paths and the at least one device; and
at least one interface to the at least one device driver from the portable management code, the at least one interface allowing the portable management code to control access to plurality of paths to the at least one device by the at least one device driver. - View Dependent Claims (6, 7, 8, 9)
-
-
10. A computer-readable medium containing a program for servicing a request for at least one device, a plurality of paths being coupled to the at least one device, the program including instructions for:
-
(a) selecting a path of the plurality of paths; and
(b) providing the selected path to an interface, the interface for communicating with a device driver for servicing the request;
wherein the program is portable. - View Dependent Claims (11, 12, 13)
(a1) selecting the path on a global round robin basis.
-
-
12. The computer-readable medium of claim 10 wherein the program further includes instructions for:
(c) accounting for a failure of the selected path.
-
13. The computer-readable medium of claim 12 wherein the instruction for accounting for a failure of the selected path further includes instructions for:
-
(c1) selecting a new path of the plurality of paths; and
(c2) providing the new path to the interface.
-
Specification