TARGET PATH SELECTION FOR STORAGE CONTROLLERS
First Claim
Patent Images
1. A redundant array of independent disks (RAID) controller associated with a plurality of storage devices attached to said RAID controller, comprising:
- an initiator I/O module for receiving data storage commands;
a plurality of target ports for communicating with said plurality of storage devices;
a network discovery module configured to identify said storage devices;
a storage device interface communicating with one or more of said storage devices;
a RAID I/O module directing said data storage commands to said storage device interface;
a path collection module maintaining a set of active target paths available to said storage devices;
a path selection module operable to select desired target paths from one or more of said active target paths, wherein said path selection module is configured to automatically configure the desired target paths to individual storage devices as a function of characteristic parameters of said target paths; and
wherein said RAID controller generates one or more storage device I/O requests to said storage devices using one of the desired target paths determined by said path selection module.
1 Assignment
0 Petitions
Accused Products
Abstract
A RAID controller attached to a storage network can detect the presence of multiple pathways to the same physical storage device. A path collection module can dynamically maintain all valid pathways to all attached storage devices. A path selection module can automatically and dynamically balance and rebalance desired paths to each storage device so as to simultaneously optimize data flow and provide continuity of I/O service throughout the attached storage network.
-
Citations
15 Claims
-
1. A redundant array of independent disks (RAID) controller associated with a plurality of storage devices attached to said RAID controller, comprising:
-
an initiator I/O module for receiving data storage commands; a plurality of target ports for communicating with said plurality of storage devices; a network discovery module configured to identify said storage devices; a storage device interface communicating with one or more of said storage devices; a RAID I/O module directing said data storage commands to said storage device interface; a path collection module maintaining a set of active target paths available to said storage devices; a path selection module operable to select desired target paths from one or more of said active target paths, wherein said path selection module is configured to automatically configure the desired target paths to individual storage devices as a function of characteristic parameters of said target paths; and wherein said RAID controller generates one or more storage device I/O requests to said storage devices using one of the desired target paths determined by said path selection module. - View Dependent Claims (2, 3, 4)
-
-
5. A redundant array of independent disks (RAID) controller associated with a plurality of storage devices attached to said RAID controller, comprising:
-
an initiator I/O module for receiving data storage commands; a plurality of target ports for communicating with said plurality of storage devices, said plurality of storage devices comprising a RAID group; a network discovery module configured to identify said storage devices; a storage device interface communicating with one or more of said storage devices; a RAID I/O module directing said data storage commands to said storage device interface; a path collection module maintaining a set of active target paths to said RAID group; a RAID configuration module for maintaining characteristic parameters of said storage devices that comprise said RAID group; a path selection module operable to select desired target paths from one or more of said active target paths, wherein said path selection module is configured to automatically configure the desired target path to one of said storage devices in said RAID group based on said characteristic parameters of said storage devices; wherein said RAID controller generates one or more storage device I/O requests to said storage devices using one of the desired target paths determined by said path selection module. - View Dependent Claims (6, 7, 8)
-
-
9. A redundant array of independent disks (RAID) controller associated with a plurality of storage devices attached to said RAID controller, comprising:
-
an initiator I/O module for receiving data storage commands; a plurality of target ports for communicating with said plurality of storage devices, said plurality of storage devices comprising a RAID group; a network discovery module configured to identify said storage devices; a storage device interface communicating with one or more of said storage devices; a RAID I/O module directing said data storage commands to said storage device interface; a path collection module maintaining a set of active target paths to said RAID group; a RAID configuration module for maintaining characteristic parameters of said storage devices that comprise said RAID group; a path selection module operable to select desired target paths from one or more of said active target paths, wherein said path selection module is configured to dynamically reconfigure desired target paths to said storage devices as a function of a characteristic triggering event; and wherein said RAID controller generates one or more storage device I/O requests to said storage devices using one of the desired target paths determined by said path selection module. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A redundant array of independent disks (RAID) controller associated with a plurality of storage devices attached to said RAID controller, comprising:
-
an initiator I/O module for receiving data storage commands; a plurality of target ports for communicating with said plurality of storage devices, said plurality of storage devices comprising a collection of one or more RAID groups; a network discovery module configured to identify said storage devices; a storage device interface communicating with one or more of said storage devices; a RAID I/O module directing said data storage commands to said storage device interface; a path collection module maintaining a set of active target paths to said collection of RAID groups; a RAID configuration module for maintaining characteristic parameters of said storage devices that comprise said collection of RAID groups; a path selection module operable to select desired target paths from one or more of said active target paths, wherein said path selection module is configured to automatically configure desired target paths to said storage devices as a function of the collection of RAID groups and associated member paths; wherein said RAID controller generates one or more storage device I/O requests to said storage devices using one of the desired target paths determined by said path selection module.
-
Specification