Multi-path management
First Claim
1. A multi-path management method of managing paths over which an IO is routed from a host to multiple logical volumes (LUNs) of a storage system, wherein the multiple LUNs of the storage system are mapped to the host, the method comprising:
- grouping LUNs with the same paths between the host and the storage system into a group of LUNs;
using one path selection thread for all LUNs in the group of LUNs to manage the same paths and;
identifying LUNs with the same paths between the host and the storage system by scanning at least some of the LUNs mapped to the host side, the identifying comprising;
sending a command to fiber channel switches through respective bus adapter HBA ports on the host respectively, to inquiry for port IDs of respective Fiber Channel (FC) adapter FC ports of the storage system accessible to the HBA ports;
receiving the port IDs of the respective FC ports accessible to the respective HBA ports returned from the fiber channel switches respectively;
sending a command to the respective accessible FC ports through the respective HBA ports to identify LUNs on different paths, if the respective HBA ports have established connections with the respective FC ports corresponding to the returned port IDs, wherein a path of an LUN is from a specific HBA port ID to a specific FC port ID; and
identifying the LUNs with the same paths between the host and the storage system according to the identified at least some of the LUNs mapped to the host side and LUNs on the different paths.
6 Assignments
0 Petitions
Accused Products
Abstract
The invention discloses a multi-path management method and system for managing paths over which an IO is routed from a host to multiple logical volumes (LUNs) of a storage system, wherein the multiple LUNs of the storage system are mapped to the host, and the method comprises: grouping LUNs with the same paths between the host and the storage system into a group of LUNs; and using one path selection thread for all of LUNs in the group of LUNs to manage the same paths. The method and system lower the amount of work for path management and the amount of required resources.
91 Citations
15 Claims
-
1. A multi-path management method of managing paths over which an IO is routed from a host to multiple logical volumes (LUNs) of a storage system, wherein the multiple LUNs of the storage system are mapped to the host, the method comprising:
-
grouping LUNs with the same paths between the host and the storage system into a group of LUNs; using one path selection thread for all LUNs in the group of LUNs to manage the same paths and; identifying LUNs with the same paths between the host and the storage system by scanning at least some of the LUNs mapped to the host side, the identifying comprising; sending a command to fiber channel switches through respective bus adapter HBA ports on the host respectively, to inquiry for port IDs of respective Fiber Channel (FC) adapter FC ports of the storage system accessible to the HBA ports; receiving the port IDs of the respective FC ports accessible to the respective HBA ports returned from the fiber channel switches respectively; sending a command to the respective accessible FC ports through the respective HBA ports to identify LUNs on different paths, if the respective HBA ports have established connections with the respective FC ports corresponding to the returned port IDs, wherein a path of an LUN is from a specific HBA port ID to a specific FC port ID; and identifying the LUNs with the same paths between the host and the storage system according to the identified at least some of the LUNs mapped to the host side and LUNs on the different paths. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A multi-path management system to manage paths over which an IO is routed from a host to multiple logical volumes (LUNs) of a storage system, wherein the multiple LUNs of the storage system are mapped to the host, comprising:
-
a grouping device, configured to group LUNs with the same paths between the host and the storage system into a group of LUNs; a path selecting device, configured to use one path selection thread for all LUNs in a group of LUNs to manage the same paths; and an identifying device, configured to identify the LUNs with the same paths between the host and the storage system, wherein the identifying device further comprises; an inquiring device, configured to send a command to fiber channel switches through respective bus adapter HBA ports on the host respectively, to inquire for port IDs of respective Fiber Channel (FC) adapter FC ports of the storage system accessible to the HBA ports; a receiving device, configured to receive the port IDs of the respective FC ports accessible to the respective HBA ports returned from the fiber channel switches respectively; an LUN on different path identifying device, configured to send a command to the respective accessible FC ports through the respective HBA ports to identify LUNs on different paths, if the respective HBA ports have established connections with the respective FC ports corresponding to the returned port IDs, wherein a path of an LUN is from a specific HBA port ID to a specific FC port ID; and an LUN on the same path identifying device, configured to identify the LUNs with the same paths between the host and the storage system according to the identified at least some of the LUNs mapped to the host side and LUNs on the different paths, wherein the identifying device comprises a scanning device, configured to scan at least some of the LUNs mapped to the host side. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A multi-path management method of managing paths over which an IO is routed from a host to multiple logical volumes (LUNs) of a storage system, wherein the multiple LUNs of the storage system are mapped to the host, the method comprising:
-
grouping LUNs with the same paths between the host and the storage system into a group of LUNs; using one path selection thread for all LUNs in the group of LUNs to manage the same paths comprising; maintaining for each path a path state of the path, wherein the path state is one of;
available, indicating that the path does not fail and can have an IO routed;
fail, indicating that the path fails and cannot have any IO routed; and
partly fail, indicating that the path can have an IO routed for some of the LUNs;receiving a request for routing an IO to an LUN; selecting a path with a path status of available or partly fail among the same paths by a path selection thread used for a group of LUNs which the LUN belongs to; and routing the IO to the LUN over the selected path; and determining whether the IO is routed successfully; if the IO is routed unsuccessfully; determining whether the path is a last path with a path state of available for the group of LUNs which the LUN belongs to; if the path is the last path with a path state of available for the group of LUNs which the LUN belongs to; setting the state of the path on the group of LUNs to Partly Fail; and setting a flag on the LUN to indicate that the LUN cannot have the IO routed over the path.
-
Specification