US9304695B2 - Access route switching method in disk array system - Google Patents
Access route switching method in disk array system Download PDFInfo
- Publication number
- US9304695B2 US9304695B2 US14/345,099 US201314345099A US9304695B2 US 9304695 B2 US9304695 B2 US 9304695B2 US 201314345099 A US201314345099 A US 201314345099A US 9304695 B2 US9304695 B2 US 9304695B2
- Authority
- US
- United States
- Prior art keywords
- expander
- route
- path
- disk array
- disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related, expires
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/37—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Definitions
- the present invention relates to an access route switching method in a disk array system.
- the present invention relates to an access route switching method for eliminating a bottleneck of a path to which an expander connected with a plurality of disk drives is connected in a daisy-chain fashion.
- PTL 1 discloses that, when a casing including an expander is newly added in such a system, Discovery Process of SAS (Serial Attached SCSI) is performed.
- SAS Serial Attached SCSI
- the present invention is applied to a disk array system where a plurality of expanders, each being connected with a plurality of disk drives, is connected in a daisy-chain fashion from an SAS controller within a disk array device connected to a host computer to configure one path.
- one expander is composed of two internal expanders connected to each other, and when the path falls in a bottleneck, the two internal expanders in a designated expander are disconnected from each other, and the internal expanders which have been disconnected are connected to a new path from the SAS controller, thereby performing switching of an access route to the disk drive.
- a device management table managing individual disk drives and a routing table managing an access route to each path are updated according to switching of the access route.
- an I/O bottleneck can be eliminated by changing a configuration of an expander connected with a plurality of disk drives belonging to respective paths without performing Discovery Process requiring a large amount of processing.
- FIG. 1 is a diagram showing a configuration of a disk array system
- FIG. 2 is a diagram showing a configuration of a disk array device
- FIG. 3 is a diagram showing a configuration of an expander
- FIG. 4A is a diagram showing a cable connection before route switching
- FIG. 4B is a diagram showing a cable connection after a route switching
- FIG. 5A is a diagram showing a routing table before route switching
- FIG. 5B is a diagram showing a routing table after route switching
- FIG. 6 is a diagram showing a device management table
- FIG. 7 is a diagram showing a relationship between a route switching process and Discovery Process
- FIG. 8 is a diagram showing a processing flow of a whole route switching process
- FIG. 9 is a diagram showing a detailed flow of the route switching process.
- FIG. 10 is a diagram showing a cable connection when an SAS controller has a dual configuration in Example 2.
- FIG. 11 is a diagram showing a belonging change of expanders in respective paths after route switching in Example 3.
- FIG. 1 A configuration of a disk array system in Example 1 is shown in FIG. 1 .
- a disk array device 20 is connected to a host computer 10 , and a plurality of expander casings 1 , 2 and 3 of a disk array device is further connected to the disk array device 20 in series.
- one expander is provided in each expander casing.
- the disk array device 20 has a host I/F 21 performing input and output (or I/O) control with the host computer 10 , an RAID (Redundant Array of Independent Disks) control unit 22 , and a backend I/F 23 performing input and output control with the expander casings, and the backend I/F 23 has an SAS controller performing input and output control to a path 0 and a path 1 .
- the expander casing 1 has a plurality of disk driving devices 251 a to 251 c and an expander 1 ( 31 a ).
- the expander 1 ( 31 a ) performs control of the respective disk driving devices 251 a to 251 c and input and output control with the disk array device 20 and the expander casing 1 .
- the expander casing 2 and the expander casing 3 also have a configuration similar to that of the expander casing 1 .
- connection from the expander casing 1 to the side of the disk array device 20 is called “upper” and connection from the expander casing 1 to the side of the expander casing 2 is called “lower”. This holds true for the expander casing 2 and the expander casing 3 .
- the RAID control unit 22 has a memory 221 , a CPU 222 , and a cache memory 223 .
- a device management table 224 (a routing table described later is also stored) and a route switching program 228 associating with route switching in this Example, an RAID control program 225 , an IO issuance program 226 , a device command issuance program 227 , and a device management program 229 are stored in the memory 221 , and the CPU 222 executes these programs.
- the device management program 229 includes a Discovery control program 2291 and a PHY control program 2292 .
- FIG. 3 A configuration of the expander 31 a in the expander casing 1 is shown in FIG. 3 .
- the expander 31 a has a device I/F 311 controlling input and output control with the disk driving devices 251 within the expander casing 1 , a switch function unit 312 controlling connection with an upper side device and a lower side device, a CPU 313 controlling the switch function unit 312 , and a memory 314 .
- the device I/F 311 includes PHY 3111 and PHY 3112 which are physical connections with respective disk driving devices 251 .
- An Expander Route Table 3122 managing connection with the upper side device and the lower side device is stored in a memory 3121 of the switch function unit 312 .
- the upper side device of the expander 31 a is the SAS controller 24 of the disk array device 20
- the lower side device of the expander 31 a is an expander 31 b within the expander casing 2
- the upper side device of the expander 31 b is the expander 31 a within the expander casing 1
- the lower side device of the expander 31 b is an expander 31 c within the expander casing 3 .
- a Phy connection management program 3143 and a Phy connection switching program 3144 which are associated with the route switching of this Example in the expander casing 1 are stored in the memory 314 , and a device I/F information 3142 , a device I/F control program 3142 , a broadcast issuance program 3145 , and a management command processing program 3146 which are associated with input and output control with the disk driving devices 251 within the expander casing 1 are further stored in the memory 314 .
- the expander 31 b within the expander casing 2 and the expander 31 c within the expander casing 3 also have a configuration similar to that shown in FIG. 3 .
- a path is set to a switching control mode different from an ordinary I/O control and a command for controlling connection within the expander 31 is sent to the expander 31 via a path from the SAS controller 24 .
- a connection control command is sent to the internal expanders 401 and 402 from the expander 31 .
- Routing tables for managing connection relationships of respective units in a route from the disk array device 20 shown in FIG. 1 to the expander casing 1 , the expander casing 2 , and the expander casing 3 , specifically, in a route from the SAS controller 24 to the expander 1 ( 31 a ), the expander 2 ( 31 b ), and the expander 3 ( 31 c ) are shown in FIG. 5A and FIG. 5B .
- FIG. 5A is a routing table before route switching in this Example
- FIG. 5B is a routing table after route switching in this Example.
- the routing tables are held by the RAID control unit 22 of the disk array device 20 , and information corresponding to cable connections before route switching shown in FIG. 4A is prepared by a user through a management terminal.
- the routing tables shown in FIG. 4A and FIG. 4B are also transferred to the respective expander casings 1 to 3 to be referred to in controls in the respective internal expanders ( 401 , 402 ).
- Each row of the routing tables corresponds to a route element constituting a route, and each route element is represented as a connection relationship between terminals of respective devices.
- No. ( 501 ) denotes the number of a route element and numbers are basically sequentially attached from an upper side route element, but when a new route element is added according to route switching, this general rule is not applied necessarily. Further, since a route element which has become unnecessary according to a route switching may be reused according to route switching performed thereafter, the route element is left it is.
- a path 502 is information for identifying an access path from the disk array device 20 to the disk driving devices 251 to 253 , and as the path, there are two paths of a path 1 and a path 2 in this Example.
- the path 502 indicating “-” shows that the route element is not used in any path (non-use). Specifically, the “-” shows a state that the route element has been physically cut off, or it is put in a physical connection state but a signal is not being transmitted through the route element.
- An upper side device 503 and a terminal 504 represent a contact point on the upper side of the route element, while a lower side device 505 and a terminal 506 represent a contact point on the lower side of the route element.
- the upper side device 503 and the lower side device 505 are identifiers of devices, for example, “EXP” represents the expander 31 , and “CTL” represents the SAS controller 24 .
- EXP represents the expander 31
- CTL represents the SAS controller 24 .
- an expander is abbreviated to “EXP”
- an SAS controller is abbreviated to “CTL”.
- the terminals 504 and 506 are each a number allocated to at least one terminal within each device in the upper side device 503 or the lower side device 505 .
- Each of the numbers of terminals 504 and 506 is not a number which has been actually allocated to an actual terminal of each device, but it is a virtual number which has been allocated for control for route switching in this Example, and even if a terminal is not present as an actual member, a number is allocated to a terminal virtually provided for defining a route element.
- Inside 507 is an internal route identifier for identifying whether the route element is positioned outside or inside the EXP 31 , and it distinguishes where the path 502 is changed.
- the route element is positioned outside the EXP 31
- the route element is positioned inside the EXP 31
- the mark “*” described in the path 502 in FIG. 5B shows change or addition performed by the route switching. That is, the mark “*” shows a change or addition part from the routing table before route switching, shown in FIG. 5A .
- connection relationship can be changed and a device associated with the change of the connection relationship can be specified for each route element constituting a route of each path.
- FIG. 6 A device management table which manages correspondence relationship between the disk driving devices 251 to 253 respectively controlled by the EXP 1 to EXP 3 ( 31 a to 31 c ) shown in FIG. 1 and the RAID group is shown in FIG. 6 .
- the table shown in FIG. 6 is composed of an RAID group # 601 , an identifier 602 of the EXP, a drive (disk driving device) # 603 , an SAS address 604 managed by the whole disk array system, and an affiliation path 605 for assessing the disk driving device.
- Unique numbers over the disk array system are allocated to the drive # 603 and the SAS address 604 .
- a row 610 in FIG. 6 shows that the SAS address of the RAID group # 1 belonging to the path 0 has been reset to the path 1 by connecting the SAS cable (inter-casing connection cable) to the side of the path 1 ( 620 ).
- FIG. 4A The case where the EXP 2 ( 31 b ) shown in FIG. 1 has a configuration where two internal EXPs 401 and 402 have been connected to each other in series in the EXP 2 ( 31 b ) is shown in FIG. 4A .
- An internal EXP 2 - a ( 401 ) controls the disk drive devices (drives 1 to m) of the RAID group # 0 via physical connections Phy 1 to m
- the internal EXP 2 - b ( 402 ) controls the disk driving devices (drives m+1 to n) via physical connections Phy m+1 to n.
- the EXP 2 ( 31 b ) is connected to the path 0 of the SAS controller 24 via the EXP 1 ( 31 a ).
- the EXP 1 ( 31 a ) and the EXP 3 ( 31 c ) each also have two internal EXPs like the EXP 2 ( 31 b ).
- the EXP 1 to EXP 3 ( 31 a to 31 c ), and internal EXP 2 - a ( 401 ) and EXP 2 - b ( 402 ) have terminals virtually provided for defining a route element, as described in the explanation about the routing tables shown in FIGS. 5A and 5B .
- These terminals shown by enclosing a number with a small rectangle correspond to terminals of cables or wires.
- the numbers of the above-described terminals in FIG. 4A are shown with a bracket [ ].
- a terminal [ 3 ] of the internal EXP 2 - a ( 401 ) and a terminal [ 1 ] of the internal EXP 2 - b ( 402 ) are connected to each other by a switch 403 , and the switch 403 is also a route element.
- the switch is not limited to a physical switch, but it may be configured to control current conduction and cutoff according to the Phy connection switching program 3144 .
- the above-described terminals include terminals which are connected to each other but are not used.
- the terminal [ 2 ] of the EXP 2 ( 31 b ) and the terminal [ 2 ] of the internal EXP 2 - b ( 402 ) are connected to each other but they are not used.
- the route of the path 0 shown in FIG. 4A becomes 1 - 2 - 3 - 4 - 6 - 9 - 10 - 15 - 17 using the route No. ( 501 ).
- the route of the path 0 can be obtained by exploring a route including an upper side device 503 and the terminal 504 having the same device identifier and terminal number as the lower side device 505 and the terminal 506 in FIG. 5A and having the same path as the path 502 and coupling the former No. ( 501 ) and the latter No. ( 501 ) to each other. At this time, the rows where the path is represented by “-” are eliminated from objects to be explored.
- FIG. 4B shows a configuration where because the path 0 includes a large I/O amount, the I/O amount is dispersed by adding an SAS cable 404 to provide a new path 1 extending from the CTL 24 .
- the switch 403 between the terminal [ 3 ] of the internal EXP 2 - a ( 401 ) and the internal EXP 2 - b ( 402 ) is set OFF, and the terminal [ 2 ] of the CTL 24 and the terminal [ 2 ] of the EXP 2 ( 31 b ) which is not used in the configuration shown in FIG. 4A are connected to each other by the added SAS cable 404 in the configuration shown in FIG. 4B .
- the EXP 2 - b ( 402 ) and the EXP 3 ( 31 c ) positioned on the lower side thereof are connected to the path 1 using a route element connecting the terminal [ 2 ] of the EXP 2 ( 31 b ) and the terminal [ 2 ] of the internal EXP 2 - b ( 402 ), the route element being not used in the configuration shown in FIG. 4A .
- the terminal [ 3 ] of the EXP 2 ( 31 b ) and the cable 406 are connected to configure a path 0 using a route element connecting the terminal [ 2 ] of the internal EXP 2 - a ( 401 ) and the terminal [ 3 ] of the EXP 2 ( 31 b ), the route element being not used in the configuration shown in FIG. 4A .
- the terminal [ 1 ] and the terminal [ 3 ] are connected to each other inside the internal EXP 2 - a ( 401 ) and the terminal [ 1 ] and the terminal [ 3 ] are connected to each other inside the internal EXP 2 - b ( 402 ).
- the terminal [ 1 ] and the terminal [ 2 ] are connected to each other inside the internal EXP 2 - a ( 401 ) and the terminal [ 2 ] and the terminal [ 3 ] are connected to each other inside the internal EXP 2 - b ( 402 ).
- FIG. 5B A routing table after the above-described route switching is shown in FIG. 5B .
- Data (row) changed or added by the route switching shown in FIG. 4B is shown by the mark “*” like FIG. 5B .
- the path of the route element “ 5 ” is changed from “non-use” to “ 0 ”
- the path of the route element “ 6 ” is changed from “ 0 ” to “non-use”
- each in the Inside 507 is “ 2 ”
- the internal expanders 401 and 402 get involved in this changing.
- the path of the route element “ 15 ” is changed from “ 0 ” to “ 1 ” and the Inside 507 is “ 1 ”
- the expander 31 gets involved in this changing.
- the route of the path 0 is represented as 1 - 2 - 3 - 4 - 5 - 8 - 19 using the No. ( 501 ), and the route of the path 1 is represented as 18 - 14 - 11 - 15 - 17 .
- FIG. 7 shows processing performed before a whole sequence of the route switching process described in the above-described item (3-1) is performed.
- a connection configuration of an expander belonging to a path is inputted by a user ( 701 ).
- information about whether or not a device (an expander, a disk driving device, or the like) is added or whether or not connection is changed without adding a device is inputted.
- whether or not expander information is included in the device management table ( FIG.
- the Discovery Process ( 704 to 709 ) is initial setting processing for performing route switching processing.
- FIG. 8 shows association of processing with a management terminal (not shown) of the host computer 10 or the disk array device 20 , a route switching program which is a micro-program, and programs (the Phy connection management program 3143 , the Phy connection switching program 3144 ) within the expander 31 . Processing corresponding to the route switching shown in FIG. 4A and FIG. 4B will be described below.
- route switching is instructed from the management terminal ( 801 ).
- the instruction for route switching is composed of a new path (path 1 ) and a connection position of a new cable (namely, the number of the upper side device and the connection terminal thereof, and the numbers of the lower side device and the connection terminal thereof) as alternative to the route of the original path (path 0 ).
- the route switching program 228 transmits an operation instruction of the Phy connection management program 3143 to the expander 31 based upon the instruction for route switching ( 802 ).
- the expander 31 cuts off the Phy connection between the internal expander 2 - a ( 401 ) and the internal expander 2 - b ( 402 ) according to the Phy connection management program 3143 and it provides cutoff completion of the Phy connection to the micro-program ( 803 ).
- the route switching program 228 provides cutoff completion of the Phy connection to the management terminal ( 804 ).
- the management terminal displays preparation completion of the SAS cable connection thereon ( 805 ).
- the route switching program 228 detects SAS cable connection to the path 1 to transfer drive management information (SAS address) 604 belonging to the path 0 to the path 1 ( 807 ).
- SAS address drive management information
- the device management table shown in FIG. 6 is updated according to the route switching program 228
- the routing table shown in FIG. 5A is updated to the routing table shown in FIG. 5B
- update completion of the device management table is then provided to the management terminal ( 808 ).
- the management terminal displays such a fact that the drive (the RAID group # 1 of the disk driving device 252 ) belonging to path 0 has been changed so as to belong to the path 1 based upon the notification of the update completion.
- FIG. 9 shows detailed processing of the route switching program 228 .
- route switching information that an expander 31 (EXP k) and the SAS controller 24 (CTL) are connected to each other by the path 1 is inputted ( 901 ).
- the information is specifically the route switching instruction described in the processing 801 shown in FIG. 8 .
- Connection terminals terminals 504 and 506 of the route element where the path 502 shown in FIG. 5A is changed from “-” to “0/1”
- cutoff terminals terminals 504 and 506 where the path 502 shown in FIG. 5A is changed from “0/1” to “-” associated with cutoff portions are acquired retrieving the routing table 5 A ( 902 ).
- the retrieval of the routing table is performed according to the following procedure, as described in the above item (3-1-1).
- route elements including the uppermost device (CTL) in the upper side devices of the routing table shown in FIG. 5A
- a row (a route element) including the same device as the lower side device 505 in the same row and having the same path as the path to be subjected to the route switching is retrieved.
- This retrieval processing is sequentially performed to determine whether or not the expander 31 (EXP k) (which may be the internal expander 401 or 402 ) to be subjected to the switching is included in the retrieved route, and when the expander (EXP k) is included in the retrieved route, the upper side or the lower side of the EXP k is designated as a cutoff portion, and a connection terminal and a cutoff terminal of the retrieved route are acquired.
- EXP k which may be the internal expander 401 or 402
- the above-described row further retrieved is a route element corresponding to a wire within the expander 31 (EXP k) to be subjected to switching.
- Change of cable connection between the SAS expander 24 and the expander 31 or within the expander 31 is performed by a user's manual operation ( 903 ).
- connection switching program 228 instructs control of current conduction or cutoff of a wire corresponding to a route element associated with the route switching in the expander 31 to the Phy connection switching program 3144 of the associated expander 31 based upon the routing table shown in FIG. 5A .
- the routing table before route switching shown in FIG. 5A is updated corresponding to the above processing 903 and 904 to create the routing table after route switching shown in FIG. 5B ( 905 ). Updating of the routing table is performed according to the following procedure, as described in the above item (3-1-2).
- the following processing is performed according to whether the expander 31 (EXP k) to be subjected to switching is positioned on the upper side or the lower side of the EXP k.
- a terminal of the expander 31 (EXP k) to be subjected to switching is represented as “P” or “P′” and a terminal of an upper side or lower side device of the EXP k is represented as “Q” or “Q′”.
- the path 0 may be represented as “original path” and the path 1 may be represented as “new path”.
- connection/cutoff of a cable is manually performed, and addition or change of information about the route element depending on the operation is performed by an upper side device.
- cutoff of a route element or connection change of a terminal is controlled by the EXP, and when Inside 507 is “2”, the expander instructs the internal expander included therein such that the internal expander controls cutoff of the route element or connection change of the terminal.
- An upper side device (EXP m) 503 connected to the upper of the EXP k and a terminal corresponding thereto are acquired retrieving the routing table shown in FIG. 5A to cut off connection between the terminal [Q] of the EXP m and the terminal [P] of the EXP k. That is, the path 502 of the route element corresponding to this connection is changed from “0” to “-” (non-use). Further, cutoff of connection between the terminal [Q] of the EXP m and the terminal [P] of the EXP k is performed by the EXP m which is the upper side device. (Detection of cutoff portion and cutoff)
- a cable or a wire constituting a route for a new path (path 1 ) is connected to a terminal [P′] on the upper side of the EXP k.
- a route element such as a route element “ 18 ” shown in FIG. 5B is newly added. Further, connection changing to change the terminal [P] of the EXP k to the terminal [P′] is performed. (Connection of new path)
- a new cable or a new wire is connected to a terminal [Q′] on the lower side of the EXP m cut off at the above step (A1) and a route element corresponding to the new connection such as a route element “ 19 ” shown in FIG. 5B is added. If a route element corresponding to the new connection is already present in the routing table and the path 502 is “-” (non-use), the path 502 is set to a path (path 0 ) to be subjected to route switching. Further, connection changing for changing the terminal [Q] of the EXP m to terminal [Q′] is performed by the EXP m.
- a lower side device (EXP n) 505 connected to the lower side of the EXP k and a terminal 506 corresponding thereto are acquired retrieving the routing table shown in FIG. 5A to cut off connection between the terminal [P] of the EXP k and the terminal [Q] of the EXP n. That is, the path 502 of the route element corresponding to this connection is changed from “0” to “-” (non-use). Further, cutoff of connection between the terminal [P] of the EXP k and the terminal [Q] of the EXP n is performed by the EXP k which is the upper side device. (Detection of cutoff portion and cutoff)
- a cable of a wire constituting a route of a path (path 0 ) to be subjected to route switching is connected to the terminal [P′] on the lower side of the EXP k.
- a route element such as a route element [ 18 ] shown in FIG. 5B is added. Further, connection switching to change the terminal [P] of the EXP k to terminal [P′] is performed. (Connection of original path)
- a switching operation of each device required at a route switching time of a path can be determined according to the above processing.
- Example 2 The case where one SAS controller 24 is used has been shown in Example 1, but a disk array system including two SAS controllers of an SAS controller 0 ( 24 a ) and an SAS controller 1 ( 24 b ), each having two paths of path 0 and path 1 , the two SAS controllers accessing the same disk driving device (drives 1 to m and m+1 to n) is shown in Example 2. That is, in Example 2, a plurality of expanders 31 which is serially connected from the disk array device 20 by other systems, each expander 31 accessing the same disk driving device, is provided and other SAS controllers are connected to the respective systems. A system configuration in Example 2 is shown in FIG. 10 . In Example 2, according to a dual configuration of the SAS controllers shown in FIG. 10 , even if one SAS controller 0 ( 24 a ) is in a route-switching state, access to a disk driving device can be continued using the other SAS controller 1 ( 24 b ). That is, route switching is possible during ON.
- a route switching processing in the SAS controller 0 ( 24 a ) is the same as shown in FIG. 4B .
- an expander connected to the SAS controller 0 ( 24 a ), which should be subjected to route switching is the expander 1 ( 31 b ).
- an expander connected to the SAS controller 1 ( 24 b ) is the expander 1 ( 31 b ), and connections of a cable and a wire are the same as those shown in FIG. 4A .
- a processing procedure for route switching during ON in the configuration shown in FIG. 10 is shown below.
- Example 2 the routing table is rewritten according to the route switching, as shown in FIG. 5A to FIG. 5B .
- the routing table an old table before updated and a new table after updated for the SAS controller 0 are included, and these tables are managed in a memory in a dual fashion, so that creation of a novel routing table (drive management information (SAS address 604 ) of the internal expander 0 - b belonging to the path 0 is transferred to the path 1 ) is performed using the new table.
- SAS address 604 drive management information
- the Phy connecting the expander 1 - a and the expander 1 - b inside the expander 1 is cut off like the above item (1).
- the expander 1 - a remains to belong to the path 0 and the terminal [ 2 ] of the SAS controller 1
- the terminal [ 2 ] of the expander 1 are connected to each other by a cable shown by a broken line
- the expander 1 - b is newly caused to belong to the path 1 of the SAS controller 1 , thereby performing re-creation of a routing table on the side of the SAS controller 1 .
- the side of the expander 1 is put in a closed state during creation of the routing table on the side of the SAS controller 1 .
- Example 2 during route switching of one of the expanders, the other expander uses the routing table before route switching to continue I/O to the disk drive, and during route switching of the other expander, the one expander performs I/O to the disk drive using the switched route. As a result, even during route switching, access to the disk driving device can be continued.
- Example 3 shows an example where affiliation of the (internal) expander is changed due to the route switching. Cable connection after route switching in Example 3 is shown in FIG. 11 .
- a different point of the cable connection shown in FIG. 11 from that shown in FIG. 4B lies in that the terminal [ 4 ] of the expander 2 ( 31 b ) is connected with the cable 406 instead of the terminal [ 1 ] of the expander 3 ( 31 c ), and the terminal [ 3 ] of the expander 2 ( 31 b ) is connected to the terminal [ 1 ] of the expander 3 ( 31 c ) instead of the cable 406 . That is, in FIG. 11 , the connection destinations of the terminals [ 3 ] and [ 4 ] of the expander 2 ( 31 b ) in FIG. 4B have been exchanged with each other. The Exchange of the cables is performed by a manual operation.
- the expander 1 ( 31 b ), the internal expander 2 - a ( 401 ), and the internal expander 3 ( 31 c ) are connected to the path 0 of the SAS controller 24 A, and only the internal expander 2 - b ( 402 ) is connected to the path 1 of the SAS controller 24 a . Therefore, regarding the internal expander 2 - b ( 402 ) in the routing table shown in FIG. 5A , the path 502 is changed but the other path 502 is not changed.
- loads acting on the disk driving devices in the RAID group having high I/O load can be dispersed by performing such route switching that only the internal expander controlling the disk driving devices of the RAID group having high I/O load is changed to a new path but the other routes are not changed.
- Example 4 a route switching place in a path where I/O performance falls in a bottleneck is determined based upon the I/O amount of a plurality of disks handled by each expander. That is, when a new path is added to perform route switching, a route switching place (route changing point) is determined such that the total I/O amount associated with the original path (path 0 ) and the total I/O amount associated with the new path (path 1 ) are approximately equal to each other. As a result, each of the original path (path 0 ) and the new path (path 1 ) handles approximately a half of the total I/O amount, so that load dispersion of the I/O amount is performed to the respective paths approximately equally.
- EXP k satisfying that the partial sum of the I/O amounts before addition of X k is equal to or less than a half of the total sum S but the partial sum of the I/O amounts after addition of X k becomes more than the half of the total sum S is detected.
- EXP k (2-1) If S A ⁇ S B is satisfied, the lower side of EXP k is set as the route switching place. That is, EXP 1 to EXP (K ⁇ 1) belong to the path 0 , while EXP (k ⁇ 1) to EXP n belong to the path 1 . At this time, since
- a difference between the partial sums of the I/O amounts of the path 0 and the path 1 after route switching becomes minimum. That is, the partial sums of the I/O amounts of the respective path 0 and path 1 are approximately equal to each other.
- the disk array device 20 performs calculation of the route switching point based upon the accumulation value of the above-described I/O amounts to automatically determine the route switching point, thereby performing route switching, or a method where a calculation result of a route switching point is displayed on a management terminal and a user makes determination based upon the displayed result to determine a route switching point.
- the I/O amounts of the respective paths before and after route switching are displayed on the management terminal and the user determines the route switching point while referring to the displayed result.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
-
- 10 . . . host computer,
- 20 . . . disk array device,
- 21 . . . host I/F,
- 22 . . . RAID control unit,
- 23 . . . backend I/F,
- 24 . . . SAS controller,
- 25, 251 to 253 . . . disk driving device,
- 228 . . . route switching program,
- 31 . . . expander,
- 3143 . . . Phy connection management program,
- 3144 . . . Phy connection switching program,
- 401, 402 . . . internal expander,
- 403 . . . switch,
- 404 . . . SAS cable,
- 501 . . . (route element) No.,
- 502 . . . path,
- 503 . . . upper side device,
- 504, 506 . . . terminal,
- 505 . . . lower side device,
- 507 . . . Inside
Claims (8)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/060233 WO2014162541A1 (en) | 2013-04-03 | 2013-04-03 | Method for changing access routes in disk-array system |
Publications (2)
Publication Number | Publication Date |
---|---|
US20160011796A1 US20160011796A1 (en) | 2016-01-14 |
US9304695B2 true US9304695B2 (en) | 2016-04-05 |
Family
ID=51657873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/345,099 Expired - Fee Related US9304695B2 (en) | 2013-04-03 | 2013-04-03 | Access route switching method in disk array system |
Country Status (2)
Country | Link |
---|---|
US (1) | US9304695B2 (en) |
WO (1) | WO2014162541A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9569136B2 (en) * | 2015-04-29 | 2017-02-14 | International Business Machines Corporation | Smart load balancing replication when adding or removing storage disks in a distributed storage system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010007124A1 (en) * | 1999-12-24 | 2001-07-05 | Matsushita Electric Industrial Co., Ltd. | Program modification device |
US20050102603A1 (en) * | 2003-11-07 | 2005-05-12 | Gunnar Tapper | In-service raid mirror reconfiguring |
US20070220204A1 (en) | 2006-03-20 | 2007-09-20 | Hitachi, Ltd. | Computer system for controlling allocation of physical links and method thereof |
JP2008242872A (en) | 2007-03-28 | 2008-10-09 | Hitachi Ltd | Storage system |
JP2008269385A (en) | 2007-04-23 | 2008-11-06 | Fujitsu Ltd | Disk mounting system |
US7587429B2 (en) * | 2004-05-24 | 2009-09-08 | Solid Information Technology Oy | Method for checkpointing a main-memory database |
US20090259791A1 (en) | 2008-04-14 | 2009-10-15 | Hitachi, Ltd. | Adjustment number of expanders in storage system |
-
2013
- 2013-04-03 US US14/345,099 patent/US9304695B2/en not_active Expired - Fee Related
- 2013-04-03 WO PCT/JP2013/060233 patent/WO2014162541A1/en active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010007124A1 (en) * | 1999-12-24 | 2001-07-05 | Matsushita Electric Industrial Co., Ltd. | Program modification device |
US20050102603A1 (en) * | 2003-11-07 | 2005-05-12 | Gunnar Tapper | In-service raid mirror reconfiguring |
US7587429B2 (en) * | 2004-05-24 | 2009-09-08 | Solid Information Technology Oy | Method for checkpointing a main-memory database |
US20070220204A1 (en) | 2006-03-20 | 2007-09-20 | Hitachi, Ltd. | Computer system for controlling allocation of physical links and method thereof |
JP2007256993A (en) | 2006-03-20 | 2007-10-04 | Hitachi Ltd | Computer system and method for controlling allocation of physical links |
JP2008242872A (en) | 2007-03-28 | 2008-10-09 | Hitachi Ltd | Storage system |
US20110125943A1 (en) | 2007-03-28 | 2011-05-26 | Hitachi, Ltd. | Data storage using multiple protocols |
JP2008269385A (en) | 2007-04-23 | 2008-11-06 | Fujitsu Ltd | Disk mounting system |
US20090259791A1 (en) | 2008-04-14 | 2009-10-15 | Hitachi, Ltd. | Adjustment number of expanders in storage system |
JP2009258841A (en) | 2008-04-14 | 2009-11-05 | Hitachi Ltd | Storage system |
Also Published As
Publication number | Publication date |
---|---|
WO2014162541A1 (en) | 2014-10-09 |
US20160011796A1 (en) | 2016-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8850152B2 (en) | Method of data migration and information storage system | |
US8977781B1 (en) | Computer system | |
CN102760046B (en) | Use multichannel I/O camouflage in coil of wire moving method and system | |
US9015519B2 (en) | Method and system for cluster wide adaptive I/O scheduling by a multipathing driver | |
US9329938B2 (en) | Essential metadata replication | |
US20070180168A1 (en) | Storage system, data processing method and storage apparatus | |
US9509771B2 (en) | Prioritizing storage array management commands | |
US11012510B2 (en) | Host device with multi-path layer configured for detecting target failure status and updating path availability | |
US8589651B2 (en) | Method for supporting migration destination decision and management system | |
US20120317357A1 (en) | System And Method For Identifying Location Of A Disk Drive In A SAS Storage System | |
US9940019B2 (en) | Online migration of a logical volume between storage systems | |
US9891992B2 (en) | Information processing apparatus, information processing method, storage system and non-transitory computer readable storage media | |
JP2015532734A (en) | Management system for managing physical storage system, method for determining resource migration destination of physical storage system, and storage medium | |
US11137927B2 (en) | Storage mirroring decision by capability sets | |
US20100057989A1 (en) | Method of moving data in logical volume, storage system, and administrative computer | |
US8312234B2 (en) | Storage system configured from plurality of storage modules and method for switching coupling configuration of storage modules | |
US9304695B2 (en) | Access route switching method in disk array system | |
JP5272185B2 (en) | Computer system and storage system | |
CN107526538B (en) | Method and system for transferring messages in a storage system | |
CN110663034A (en) | Method for improved data replication in cloud environment and apparatus therefor | |
US10079729B2 (en) | Adaptive storage-aware multipath management | |
US10732872B2 (en) | Storage system and storage control method | |
US11461032B1 (en) | Storage controller replacement and firmware upgrade without service interruption | |
US11102300B2 (en) | SAN advisory based on latency | |
US20180074749A1 (en) | Storage device, management device, storage system, data migration method, and computer-readable recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HITACHI, LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FUJII, SUSUMI;MIMATA, YOSHIFUMI;ITOYAMA, TAKASHI;REEL/FRAME:032446/0097 Effective date: 20140225 |
|
ZAAA | Notice of allowance and fees due |
Free format text: ORIGINAL CODE: NOA |
|
ZAAB | Notice of allowance mailed |
Free format text: ORIGINAL CODE: MN/=. |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20240405 |