WO2012032607A1 - Storage system, storage apparatus, and controller - Google Patents

Storage system, storage apparatus, and controller Download PDF

Info

Publication number
WO2012032607A1
WO2012032607A1 PCT/JP2010/065317 JP2010065317W WO2012032607A1 WO 2012032607 A1 WO2012032607 A1 WO 2012032607A1 JP 2010065317 W JP2010065317 W JP 2010065317W WO 2012032607 A1 WO2012032607 A1 WO 2012032607A1
Authority
WO
WIPO (PCT)
Prior art keywords
data transmission
transmission path
expander
controller
relay
Prior art date
Application number
PCT/JP2010/065317
Other languages
French (fr)
Japanese (ja)
Inventor
振一郎 松村
中嶋 一雄
政宣 伊藤
Original Assignee
富士通株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 富士通株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2010/065317 priority Critical patent/WO2012032607A1/en
Publication of WO2012032607A1 publication Critical patent/WO2012032607A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • G06F11/201Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media between storage system components

Definitions

  • the present invention relates to a storage system, a storage apparatus, and a controller that process data.
  • the storage system has a storage device that stores data, and a controller that controls writing of data to the storage device or reading of data from the storage device.
  • a storage system connected from a controller to a storage device through a redundant path.
  • the storage system having a redundant path has a first data transmission path and a second data transmission path for transmitting data between the storage device and the controller.
  • Some storage systems having redundant paths have a plurality of relay devices connected in series to each of the first data transmission path and the second data transmission path.
  • the controller In a storage system having a redundant path, even if a failure or the like occurs in either the first or second data transmission path due to an abnormality in the relay device, the controller is connected via the data transmission path that has not failed. Can access data to the storage device.
  • a controller and one or more switch devices are made redundant, the redundant switch devices are connected, and a request interface and a monitoring control unit are connected to each of the redundant switch devices.
  • control unit includes an abnormality detection unit that detects that an abnormality has occurred in the first route among the plurality of routes, and a communication unit that communicates with other control units when an abnormality is detected. There is technology to prepare.
  • the control unit further includes an access unit that performs access to the storage device using the second path among the plurality of paths based on the communication result.
  • an object of the present invention is to provide a storage system, a storage device, and a controller that improve the reliability of data access to a storage device.
  • This storage system is connected to a storage device and a first data transmission path, and is connected to a first relay device that relays data access to the storage device and a second data transmission path, and receives an instruction from the outside.
  • a plurality of storage devices each having a second relay device that is connected to the first relay device via a third data transmission path that is controlled to open and close and relays data access to the storage device; and a plurality of storage devices A first data transmission path in which the first relay devices of the respective devices are connected in series, and a second data transmission path in which the second relay devices of the plurality of storage devices are connected in series;
  • the communication via the third data transmission path of each storage apparatus is blocked, the connection status to the storage device via the first and second data transmission paths is monitored, and the first And upon detecting a data inaccessible storage device from any of the second data transmission path includes a controller for transmitting the opening instruction communication via the third data transmission path of at least one storage device.
  • FIG. 1 is a diagram illustrating an example of a storage system according to a first embodiment.
  • FIG. It is a figure which shows an example of the storage system which concerns on 2nd Embodiment.
  • It is a figure which shows an example of the hardware of the control module which concerns on 2nd Embodiment.
  • FIG. 1 is a diagram illustrating an example of a storage system according to the first embodiment.
  • the storage system 10 includes a plurality of storage devices 18a, 18b, 18c, a controller 12, and two data transmission paths 13, 14.
  • the storage device 18a includes a storage device 11a, two relay devices 15a and 16a, and a data transmission path 17a.
  • the relay device 15 a is connected to the data transmission path 13 in series. Further, the relay device 15a is connected to the storage device 11a and relays data access to the storage device 11a.
  • the relay device 16a is connected to the data transmission path 14 in series. Further, the relay device 16a is connected to the storage device 11a and relays data access to the storage device 11a. Further, the relay device 15a and the relay device 16a are connected by a data transmission path 17a. The data transmission path 17a is controlled to open and close according to an instruction from the outside.
  • the storage device 18b includes a storage device 11b, two relay devices 15b and 16b, and a data transmission path 17b.
  • the relay device 15 b is connected in series to the data transmission path 13. Further, the relay device 15b is connected to the storage device 11b and relays data access to the storage device 11b.
  • the relay device 16b is connected to the data transmission path 14 in series. Further, the relay device 16b is connected to the storage device 11b and relays data access to the storage device 11b. Further, the relay device 15b and the relay device 16b are connected by a data transmission path 17b. The data transmission path 17b is controlled to open and close according to an instruction from the outside.
  • the storage device 18c includes a storage device 11c, two relay devices 15c and 16c, and a data transmission path 17c.
  • the relay device 15 c is connected in series to the data transmission path 13. Further, the relay device 15c is connected to the storage device 11c and relays data access to the storage device 11c.
  • the relay device 16c is connected to the data transmission path 14 in series. Further, the relay device 16c is connected to the storage device 11c and relays data access to the storage device 11c. Further, the relay device 15c and the relay device 16c are connected by a data transmission path 17c. The data transmission path 17c is controlled to open and close according to an instruction from the outside.
  • the controller 12 is connected to the data transmission path 13 and the data transmission path 14.
  • the controller 12 writes data to the storage devices 11a to 11c or reads data from the storage devices 11a to 11c.
  • the controller 12 performs data access to each of the storage devices 11a to 11c via the data transmission path 13 or the data transmission path 14 when there is no failure in the data transmission path 13 and the data transmission path 14.
  • controller 12 blocks or opens communication via the data transmission paths 17a to 17c of the storage devices 18a to 18c. Furthermore, the controller 12 monitors the connection status to the storage devices 11a to 11c via the data transmission path 13 and the data transmission path 14.
  • the controller 12 determines whether there is any storage device that cannot access data from either the data transmission path 13 or the data transmission path 14 among the storage devices 11a to 11c. Determine.
  • the controller 12 transmits a communication opening instruction via at least one of the data transmission paths 17a to 17c.
  • the case where there is a storage device inaccessible to data means that communication with at least one of the relay devices 15a to 15c is interrupted and communication with at least one of the relay devices 16a to 16c is performed. This is the case when it is interrupted.
  • the controller 12 may open the data transmission paths 17a to 17c one by one in order. Alternatively, after the controller 12 has opened all the data transmission paths 17a to 17c, the controller 12 may leave one and close the other.
  • the controller 12 detects the farthest end storage device that can communicate via either the data transmission path 13 or the data transmission path 14, and the data transmission of the detected storage apparatus among the data transmission paths 17a to 17c. You may make it open a path
  • the farthest end storage device refers to a storage device having the largest number of stages from the controller 12.
  • the data transmission path of the farthest end storage device By opening the data transmission path of the farthest end storage device among the data transmission paths 17a to 17c, the data transmission path to the communicable portion of the data transmission path 13 or the data transmission path 14 can be used to the maximum extent. This makes it possible to efficiently select a data transmission path to be opened.
  • the controller 12 performs data access to the storage device determined to be inaccessible via the opened data transmission path among the data transmission paths 17a to 17c. That is, the controller 12 accesses the storage device through a part of the data transmission path 13, the opened data transmission path among the data transmission paths 17a to 17c, and a part of the data transmission path 14.
  • the data transmission path 17b of the storage device 18b is opened. Then, the controller 12 performs data access to the storage device 11c via the opened data transmission path 17b. That is, the controller 12 accesses the storage device 11c via the data transmission path 19 passing through the relay apparatuses 15a and 15b, the data transmission path 17b, and the relay apparatuses 16b and 16c.
  • the controller 12 when the controller 12 detects a storage device that is inaccessible to data from either the data transmission path 13 or the data transmission path 14, the following processing is executed. That is, the controller 12 transmits a communication opening instruction via at least one of the data transmission paths 17a to 17c.
  • the data transmission paths 17 a to 17 c are controlled to be opened / closed according to instructions from the controller 12. Thereby, it can suppress that the data transmission path
  • the data transmission paths 17a to 17c are not controlled to be opened but all are always open.
  • a data transmission path in a loop state via the relay apparatus 15b, the relay apparatus 15c, the data transmission path 17c, the relay apparatus 16c, the relay apparatus 16b, and the data transmission path 17b is generated.
  • only the data transmission path 17b can be opened and the remaining data transmission paths 17a and 17c can be blocked, so that the occurrence of a looped data transmission path is suppressed. it can.
  • the storage system 10 can improve the reliability of data access to the storage devices 11a to 11c.
  • the storage system 10 can improve the reliability of data access to the storage devices 11a to 11c.
  • FIG. 2 is a diagram illustrating an example of a storage system according to the second embodiment.
  • the storage system 100 includes a controller enclosure (CE) 110 that includes two controllers 114 and 117.
  • the storage system 100 further includes a plurality of drive enclosures (DE) 150a, 150b, and 150c.
  • CE controller enclosure
  • DE drive enclosures
  • the drive enclosures 150a to 150c are identified in the storage system 100 by identifiers “1”, “2”, and “3”, respectively.
  • the controller enclosure 110 and the drive enclosures 150a to 150c have storage devices 113, 155a, 155b, and 155c, respectively.
  • each drive enclosure 150a to 150c corresponds to a storage device.
  • the storage devices 113 and 155a to 155c are identified in the storage system 100 by identifiers “A”, “B”, “C”, and “D”, respectively.
  • the drive enclosures 150a to 150c are connected in series to two data transmission paths 121 and 122 connected to the controllers 114 and 117, respectively.
  • data transmission paths 121 and 122 for example, SAS (Serial Attached SCSI) is used.
  • SAS Serial Attached SCSI
  • the number of drive enclosures 150a to 150c is not limited to three, and may be appropriately set according to the required storage capacity, for example.
  • the drive enclosure 150a includes an expander (EXP) 151a including a memory 152a, an expander 153a including a memory 154a, and a storage device 155a that stores data.
  • the expanders 151a and 153a are identified in the drive enclosure 150a by identifiers “0” and “1”, respectively.
  • a magnetic disk HDD: Hard Disk Drive
  • SSD Solid State Drive
  • the expanders 151a and 153a are each connected to the storage device 155a through a data transmission path such as SAS.
  • the expander 151 a is connected in series to the data transmission path 121, and the expander 153 a is connected in series to the data transmission path 122.
  • the expanders 151a and 153a relay data access from the controller 114 or the controller 117 to the storage device 155a, respectively.
  • a communication path 159a is provided between the expander 151a and the expander 153a.
  • I 2 C trademark
  • Ethernet registered trademark
  • the expander 151a is provided with an inter-expander port 156a
  • the expander 153a is provided with an inter-expander port 157a.
  • an inter-expander data transmission path 158a that is connected to the inter-expander port 156a and the inter-expander port 157a is provided.
  • SAS or the like is used for the inter-expander data transmission path 158a.
  • the inter-expander port 156a and the inter-expander port 157a are both disabled, and the inter-expander data transmission path 158a is closed.
  • the inter-expander port 156a and the inter-expander port 157a are both enabled, the inter-expander data transmission path 158a is opened.
  • the memory 152a stores a control table in which a connection state between the expander 151a and the controller 114 or the controller 117 and a connection state between the expander 151a and the storage device 155a are stored. Further, this control table stores a connection state between the expander 153a and the expander 151a and a connection state between the expander 153a and the storage device 155a. Further, this control table includes a control table possessed by a lower expander connected to the expander 151a.
  • the memory 154a stores a control table in which a connection state between the expander 153a and the controller 114 or the controller 117 and a connection state between the expander 153a and the storage device 155a are stored. Further, this control table stores a connection state between the expander 151a and the expander 153a and a connection state between the expander 151a and the storage device 155a. Further, this control table includes a control table possessed by a lower expander connected to the expander 153a.
  • the expander 151a monitors the connection state between the storage device 155a and the lower expander connected to the data transmission path 121, and detects this when a change occurs in the connection state.
  • the expander 151a notifies the controller 114 or the controller 117 of the change in the connection state via the data transmission path 121.
  • the expander 151a updates the control table stored in the memory 152a in accordance with an instruction from the controller 114 or the controller 117. Further, the expander 151a notifies the controller 114 or the controller 117 of the updated control table.
  • the expander 151a opens or closes the inter-expander data transmission path 158a in accordance with an instruction from the controller 114 or the controller 117. For example, when opening, the expander 151a instructs the inter-expander port 156a and instructs the expander 153a to enable the inter-expander port 157a via the communication path 159a. As a result, the inter-expander data transmission path 158a is opened.
  • the expander 151a notifies the controller 114 or the controller 117 of the result of the opening process of the inter-expander data transmission path 158a via the data transmission path 121.
  • the expander 153a monitors a connection state between the storage device 155a and a lower expander connected to the data transmission path 122, and detects a change in the connection state when a change occurs in the connection state.
  • the expander 153a notifies the controller 114 or the controller 117 of the detected connection state change via the data transmission path 122.
  • the expander 153a updates the control table stored in the memory 154a in accordance with an instruction from the controller 114 or the controller 117. Furthermore, the expander 153a notifies the controller 114 or the controller 117 of the updated control table.
  • the expander 153a opens or closes the inter-expander data transmission path 158a in accordance with an instruction from the controller 114 or the controller 117. For example, when opening, the expander 153a instructs the inter-expander port 157a and instructs the expander 151a via the communication path 159a to enable the inter-expander port 156a. As a result, the inter-expander data transmission path 158a is opened.
  • the expander 153a notifies the controller 114 or the controller 117 of the result of the opening process of the inter-expander data transmission path 158a via the data transmission path 122.
  • the drive enclosure 150b includes an expander 151b including a memory 152b, an expander 153b including a memory 154b, and a storage device 155b that stores data.
  • the expanders 151b and 153b are identified in the drive enclosure 150b by identifiers “0” and “1”, respectively.
  • As the storage device 155b for example, a magnetic disk or a solid state drive is used.
  • the expanders 151b and 153b are connected to the storage device 155b through a data transmission path such as SAS.
  • the expander 151 b is connected in series to the data transmission path 121, and the expander 153 b is connected in series to the data transmission path 122.
  • the expanders 151b and 153b relay data access from the controller 114 or the controller 117 to the storage device 155b, respectively.
  • a communication path 159b is provided between the expander 151b and the expander 153b.
  • I 2 C trademark
  • Ethernet registered trademark
  • the expander 151b is provided with an inter-expander port 156b
  • the expander 153b is provided with an inter-expander port 157b.
  • an inter-expander data transmission path 158b that is connected to the inter-expander port 156b and the inter-expander port 157b is provided.
  • SAS is used for the inter-expander data transmission path 158b.
  • the inter-expander port 156b and the inter-expander port 157b are both disabled, and the inter-expander data transmission path 158b is closed.
  • the inter-expander port 156b and the inter-expander port 157b are both enabled, the inter-expander data transmission path 158b is opened.
  • the memory 152b stores a control table in which a connection state between the expander 151b and the controller 114 or the controller 117 and a connection state between the expander 151b and the storage device 155b are stored. Further, this control table stores a connection state between the expander 153b and the expander 151b and a connection state between the expander 153b and the storage device 155b. Further, this control table includes a control table possessed by a lower expander connected to the expander 151b.
  • the memory 154b stores a control table in which a connection state between the expander 153b and the controller 114 or the controller 117 and a connection state between the expander 153b and the storage device 155b are stored. Further, this control table stores a connection state between the expander 151b and the expander 153b and a connection state between the expander 151b and the storage device 155b. Further, this control table includes a control table possessed by a lower expander connected to the expander 153b.
  • the function of the expander 151b is the same as that of the expander 151a of the drive enclosure 150a.
  • the function of the expander 153b is the same as that of the expander 153a of the drive enclosure 150a.
  • the drive enclosure 150c includes an expander 151c including a memory 152c, an expander 153c including a memory 154c, and a storage device 155c that stores data.
  • the expanders 151c and 153c are identified in the drive enclosure 150c by identifiers “0” and “1”, respectively.
  • As the storage device 155c for example, a magnetic disk or a solid state drive is used.
  • the expanders 151c and 153c are connected to the storage device 155c through a data transmission path such as SAS.
  • the expander 151 c is connected in series to the data transmission path 121, and the expander 153 c is connected in series to the data transmission path 122.
  • the expanders 151c and 153c relay data access from the controller 114 or the controller 117 to the storage device 155c, respectively.
  • a communication path 159c is provided between the expander 151c and the expander 153c.
  • I 2 C trademark
  • Ethernet registered trademark
  • the expander 151c is provided with an inter-expander port 156c
  • the expander 153c is provided with an inter-expander port 157c.
  • an inter-expander data transmission path 158c connected to the inter-expander port 156c and the inter-expander port 157c is provided.
  • SAS is used for the inter-expander data transmission path 158c.
  • the inter-expander port 156c and the inter-expander port 157c are both disabled, and the inter-expander data transmission path 158c is blocked.
  • the inter-expander port 156c and the inter-expander port 157c are both enabled, the inter-expander data transmission path 158c is opened.
  • the memory 152c stores a control table in which a connection state between the expander 151c and the controller 114 or the controller 117 and a connection state between the expander 151c and the storage device 155c are stored. Further, the control table stores a connection state between the expander 153c and the expander 151c and a connection state between the expander 153c and the storage device 155c.
  • the memory 154c stores a control table in which a connection state between the expander 153c and the controller 114 or the controller 117 and a connection state between the expander 153c and the storage device 155c are stored. Further, this control table stores a connection state between the expander 151c and the expander 153c and a connection state between the expander 151c and the storage device 155c.
  • the function of the expander 151c is the same as that of the expander 151a of the drive enclosure 150a.
  • the function of the expander 153c is the same as that of the expander 153a of the drive enclosure 150a.
  • the controller enclosure 110 includes control modules (CMs) 111 and 112 and a storage device 113 that stores data.
  • the control modules 111 and 112 are identified in the controller enclosure 110 by identifiers “0” and “1”, respectively. Further, for example, a magnetic disk or a solid state drive is used for the storage device 113.
  • the control module 111 includes a controller 114 and an expander 115 including a memory 116.
  • the control module 112 includes a controller 117 and an expander 118 including a memory 119.
  • the controller 114 and the expander 115 are connected to the data transmission path 121, and the controller 117 and the expander 118 are connected to the data transmission path 122. Further, the controller 114 is connected to the expander 118 through a data transmission path such as SAS. The controller 117 is connected to the expander 115 via a data transmission path such as SAS.
  • the expander 115 and the expander 118 are connected to the storage device 113 through a data transmission path such as SAS.
  • the expanders 115 and 118 relay data transmission between the storage device 113 and the controller 114 or the controller 117.
  • the memory 116 stores a control table in which a connection state between the expander 115 and the controller 114 or the controller 117 and a connection state between the expander 115 and the storage device 113 are stored. Further, this control table includes a control table included in the lower expander 151 a connected to the data transmission path 121.
  • the memory 119 stores a control table in which a connection state between the expander 118 and the controller 114 or the controller 117 and a connection state between the expander 118 and the storage device 113 are stored. Further, this control table includes a control table included in the lower expander 153 a connected to the data transmission path 122.
  • the expander 115 updates the control table stored in the memory 116 in accordance with an instruction from the controller 114 or the controller 117. Further, the expander 115 notifies the controller 114 or the controller 117 of the updated control table.
  • the expander 115 monitors the connection state between the storage device 113 and the lower expander 151a connected to the data transmission path 121, and detects this when a change occurs in the connection state. Then, the expander 115 notifies the controller 114 or the controller 117 of the change in the connection state.
  • the expander 118 updates the control table stored in the memory 119 in accordance with an instruction from the controller 114 or the controller 117. Further, the expander 118 notifies the controller 114 or the controller 117 of the updated control table.
  • the expander 118 monitors the connection state between the storage device 113 and the lower expander 153a connected to the data transmission path 122, and detects this when a change occurs in the connection state. Then, the expander 118 notifies the controller 114 or the controller 117 of the change in the connection state.
  • the controller 114 includes a control circuit 160, a memory 161, and a communication port 162. Processing by the controller 114 is executed by the control circuit 160. A data transmission path 121 is connected to the communication port 162.
  • the controller 117 includes a control circuit 163, a memory 164, and a communication port 165. Processing by the controller 117 is executed by the control circuit 163. A data transmission path 122 is connected to the communication port 165.
  • the controllers 114 and 117 perform the following processing through data transmission paths that pass through some of the expanders 115, 118, 151a to 151c, and 153a to 153c, respectively. That is, the controllers 114 and 117 respectively write data to the storage devices 113 and 155a to 155c, or read data from the storage devices 113 and 155a to 155c. This process is performed, for example, according to an instruction from a host device (not shown).
  • controllers 114 and 117 when the controllers 114 and 117 receive notification of connection state change from any one of the expanders 115, 118, 151a to 151c, and 153a to 153c, they perform the following processing. That is, the controllers 114 and 117 instruct the expanders 115, 118, 151a to 151c, and 153a to 153c, respectively, to update the control table.
  • controllers 114 and 117 collect all the control tables of the expanders 115, 118, 151a to 151c, and 153a to 153c, respectively.
  • the collected control tables are stored in the memories 161 and 164.
  • the controllers 114 and 117 refer to the collected control tables stored in the memories 161 and 164 and monitor the connection status to the storage devices 113 and 155a to 155c via the data transmission path 121 and the data transmission path 122. To do.
  • controllers 114 and 117 block or open communication via the inter-expander data transmission paths 158a to 158c of the drive enclosures 150a to 150c.
  • control module 111 will be described as a representative here.
  • FIG. 3 is a diagram illustrating an example of hardware of the control module according to the second embodiment.
  • the control module 111 includes a controller 301. Ports 302 and 303 are connected to the controller 301 via a bus. The ports 302 and 303 are connected to an external host device.
  • a RAM (Random Access Memory) 304 is connected to the controller 301 via a bus.
  • a real time clock (RTC: Real Time Clock) 305 is connected between the controller 301 and the RAM 304.
  • a LAN (Local Area Network) controller 306 is connected to the controller 301 via a bus.
  • LAN ports 307 and 308 are connected to the LAN controller 306 via a bus.
  • a ROM (Read Only Memory) 309 is connected to the LAN controller 306.
  • a data management circuit 310 is connected between the controller 301 and the LAN controller 306.
  • a flash memory 311 is connected to the data management circuit 310. Data stored in the flash memory 311 is managed by the data management circuit 310.
  • a driver (DRV: Driver) 312 is connected to the controller 301 via a bus.
  • a debug port 313 is connected to the driver 312 via a bus.
  • a driver 314 is connected to the controller 301 via a bus.
  • a debug port 315 is connected to the driver 314 via a bus.
  • a flash memory 316 is connected to the controller 301 via a bus.
  • a system controller 317 is connected between the controller 301 and the flash memory 316.
  • a RAM 318 is connected to the system controller 317 via a bus.
  • a bus 319 is connected to the controller 301.
  • the bus 319 is connected to an external control module.
  • a switch (SW) 320 is connected to the controller 301 via a bus.
  • An electrical double layer capacitor unit (SCU) 321 that is a backup power source is connected to the switch 320 via a bus.
  • buses 322 and 323 are connected to the switch 320.
  • the bus 322 is connected to an external system ID (Identity) ROM.
  • the bus 323 is connected to an external control module.
  • I 2 C (trademark) is used for the bus 323.
  • a bus 324 is connected to the controller 301.
  • the bus 324 is connected to an external control module.
  • I 2 C (trademark) is used for the bus 324.
  • SAS buses 325 and 326 are connected to the controller 301.
  • the buses 325 and 326 are connected to an expander in an external control module.
  • an expander 329 is connected to the controller 301 via buses 327 and 328 configured by SAS.
  • a SAS port 330 is connected to the expander 329 via a bus.
  • the SAS port 330 is composed of, for example, four ports.
  • the expander 329 is connected to a bus group 331 configured by SAS.
  • the bus group 331 is composed of, for example, 12 buses.
  • Each bus group 331 is connected to a hard disk drive (HDD).
  • buses 332 and 333 configured by SAS are connected to the expander 329.
  • the buses 332 and 333 are connected to a controller in an external control module.
  • buses 334 and 335 are connected to the expander 329.
  • Buses 334 and 335 are connected to an external expander.
  • I 2 C (trademark) is used for the buses 334 and 335.
  • an EEPROM (Electrically Erasable Programmable ROM) 336 is connected to the expander 329 via a bus.
  • a switch 337 is connected between the expander 329 and the EEPROM 336. Buses 338 and 339 are connected to the switch 337. Buses 338 and 339 are connected to an external power supply unit. Further, a voltage / temperature detector 340 is connected to the switch 337 via a bus.
  • a driver 341 is connected to the expander 329 via a bus.
  • a debug port 342 is connected to the driver 341 via a bus.
  • a flash memory 343 is connected to the expander 329 via a bus.
  • a system controller 317 is connected between the expander 329 and the flash memory 343.
  • the hardware of the drive enclosures 150a to 150c will be described. Since the drive enclosures 150a to 150c have the same configuration, the drive enclosure 150a will be described as a representative here.
  • FIG. 4 is a diagram illustrating an example of hardware of the drive enclosure according to the second embodiment.
  • the drive enclosure 150a includes an expander 400, an expander 410, and a back panel 420.
  • the back panel 420 includes a hard disk drive group 421.
  • the hard disk drive group 421 includes, for example, 24 hard disk drives.
  • the expander 400 has an expander circuit 401.
  • the expander circuit 401 is connected to a multiplexer 402 through a bus.
  • a SAS port 403 is connected to the multiplexer 402 via a bus.
  • the SAS port 403 is composed of, for example, four ports.
  • the SAS port 403 is connected to an external control module.
  • a SAS port 404 is connected to the expander circuit 401.
  • the SAS port 404 is composed of, for example, four ports.
  • the SAS port 404 is connected to an external drive enclosure.
  • a ROM 405, a flash memory 406, and a controller 407 are connected to the expander circuit 401 via a bus. Further, the expander circuit 401 is connected to each hard disk drive of the hard disk drive group 421 via a bus.
  • the expander 410 has an expander circuit 411.
  • a multiplexer 412 is connected to the expander circuit 411 via a bus.
  • a SAS port 413 is connected to the multiplexer 412 via a bus.
  • the SAS port 413 is composed of, for example, four ports.
  • the SAS port 413 is connected to an external control module.
  • a SAS port 414 is connected to the expander circuit 411.
  • the SAS port 414 is configured by, for example, four ports.
  • the SAS port 414 is connected to an external drive enclosure.
  • a ROM 415, a flash memory 416, and a controller 417 are connected to the expander circuit 411 via a bus. Further, the expander circuit 411 is connected to each hard disk drive of the hard disk drive group 421 via a bus.
  • the expander circuit 401 and the expander circuit 411 are connected by a bus 430 and a bus 431 configured by SAS.
  • a bus 430 and a bus 431 configured by SAS.
  • I 2 C trademark
  • Ethernet registered trademark
  • the drive enclosure 150a is provided with power supply units (PSU: 440, 441).
  • FIG. 5 is a diagram illustrating an example of data transmission of the storage system according to the second embodiment.
  • data transmission between the controller 114 and each of the storage devices 113 and 155a to 155c is performed via the following data transmission path. That is, data transmission is performed via the data transmission path 131 that passes through all or part of the expanders 115 and 151a to 151c.
  • data transmission between the controller 117 and each of the storage devices 113, 155a to 155c is performed via a data transmission path 132 that passes through all or part of the expanders 118, 153a to 153c.
  • each of the expanders 151a to 151c in FIG. 5 is realized by, for example, the expander 400 in FIG. 4, and each of the expanders 153a to 153c in FIG. 5 is realized by, for example, the expander 410 in FIG.
  • each of the storage devices 155a to 155c in FIG. 5 is realized by, for example, the hard disk drive group 421 in FIG.
  • FIG. 6 is a diagram illustrating a comparative example of storage systems.
  • FIG. 6 is a diagram illustrating an example of data transmission in a storage system in which all the inter-expander data transmission paths 158a to 158c are not blocked.
  • a data transmission path 133 in a loop state is generated.
  • a SAS protocol violation occurs.
  • the inter-expander data transmission paths 158a to 158c are all blocked, so that it is possible to suppress the occurrence of a loop data transmission path.
  • FIG. 7 is a diagram illustrating an example of a control table according to the second embodiment.
  • FIG. 7A shows a control table 171 stored in the memory 116.
  • FIG. 7B shows a control table 172 stored in the memory 119.
  • FIG. 7C shows a control table 173 stored in the memory 152a.
  • FIG. 7D is a control table 174 stored in the memory 154a.
  • FIG. 7E shows a control table 175 stored in the memory 152b.
  • FIG. 7F is a control table 176 stored in the memory 154b.
  • FIG. 7G shows a control table 177 stored in the memory 152c.
  • FIG. 7H is a control table 178 stored in the memory 154c.
  • a case where no abnormality has occurred in the storage system 100 as shown in FIG. 5 is taken as an example.
  • control tables 171 to 178 “state (1)” indicating a “port” that identifies the expander, a connection state between the expander and the controller 114 or the controller 117, or a connection state between the expanders. Is memorized. Furthermore, in each of the control tables 171 to 178, “Disk” for specifying the storage device and “State (2)” indicating the connection state between the expander and the storage device are stored.
  • Each of the control tables 173, 175, and 177 stores a connection state between the corresponding expander and the controller 114 or the controller 117, and a connection state between the corresponding expander and the storage device. Further, each of the control tables 173, 175, and 177 includes a connection state between the corresponding expander and the opposite expander in the same drive enclosure, and a connection state between the opposite expander and the storage device.
  • connection state between the corresponding expander and the opposite expander in the same drive enclosure is detected, for example, by the corresponding expander monitoring the open state of the data transmission path between the connected expanders. Is done.
  • the corresponding expander is detected by communicating with the opposite expander via the communication path.
  • this control table includes a control table possessed by a lower expander connected to the corresponding expander.
  • a control table possessed by a lower expander connected to the corresponding expander.
  • the expander 151a and the controller 114 are connected, and the expander 151a and the storage device 155a are connected.
  • the inter-expander data transmission path 158a is closed, and the expander 153a and the expander 151a are not connected. Therefore, in the control table 173, “state (1)” becomes “Disable” with respect to “DE (1) EXP (1)” indicating the expander 153a.
  • control table 173 also stores a control table 175 included in the lower expander 151b connected to the expander 151a. That is, in the control table 173, the rows “DE (2) EXP (0)” to “DE (3) EXP (1)” correspond to the control table 175.
  • Each of the control tables 174, 176, and 178 stores a connection state between the corresponding expander and the controller 114 or the controller 117, and a connection state between the expander and the storage device. Further, each of the control tables 174, 176, and 178 includes a connection state between the corresponding expander and the opposite expander in the same drive enclosure, and a connection state between the opposite expander and the storage device.
  • connection state between the corresponding expander and the opposite expander in the same drive enclosure is detected, for example, by the corresponding expander monitoring the open state of the data transmission path between the connected expanders. Is done.
  • the corresponding expander is detected by communicating with the opposite expander via the communication path.
  • this control table includes a control table possessed by a lower expander connected to the expander.
  • a control table possessed by a lower expander connected to the expander.
  • the expander 153a and the controller 117 are connected, and the expander 153a and the storage device 155a are connected.
  • the inter-expander data transmission path 158a is closed, and the expander 151a and the expander 153a are not connected. Therefore, “state (1)” becomes “Disable” with respect to “DE (1) EXP (0)” indicating the expander 151a.
  • control table 174 also stores a control table 176 included in the lower expander 153b connected to the expander 153a. That is, in the control table 174, the lines “DE (2) EXP (1)” to “DE (3) EXP (0)” correspond to the control table 176.
  • the control table 171 stores a connection state between the expander 115 and the controller 114 or the controller 117 and a connection state between the expander 115 and the storage device 113. Further, the control table 171 includes a control table 173 included in a lower expander 151 a connected to the expander 115.
  • the expander 115 and the controller 114 are connected, and the expander 115 and the storage device 113 are connected. Therefore, in the control table 171 stored in the expander 115, “status (1)” becomes “Enable” and “Disk” becomes “A” for “CM (0) EXP” indicating the expander 115. “Status (2)” becomes “Enable”. Further, the control table 171 also stores a control table 173 included in the lower expander 151 a connected to the expander 115. That is, in the control table 171, the lines “DE (1) EXP (0)” to “DE (3) EXP (1)” correspond to the control table 173.
  • the control table 172 stores a connection state between the expander 118 and the controller 114 or the controller 117 and a connection state between the expander 118 and the storage device 113. Further, the control table 172 includes a control table 174 included in the lower expander 153 a connected to the expander 118.
  • the expander 118 and the controller 117 are connected, and the expander 118 and the storage device 113 are connected. Therefore, in the control table 172 stored in the expander 118, “status (1)” becomes “Enable” and “Disk” becomes “A” for “CM (1) EXP” indicating the expander 118. “Status (2)” becomes “Enable”. Further, the control table 172 also stores a control table 174 included in the lower expander 153 a connected to the expander 118. That is, in the control table 172, the lines “DE (1) EXP (1)” to “DE (3) EXP (0)” correspond to the control table 174.
  • FIG. 8 is a flowchart illustrating an example of a processing procedure of the controller according to the second embodiment.
  • 9, 11, 13, and 15 are diagrams illustrating an example of the state of the storage system according to the second embodiment.
  • 10, FIG. 12, and FIG. 14 are diagrams illustrating an example of a control table according to the second embodiment.
  • the processing procedure will be described below with reference to FIGS. 9 to 15 along the flowchart of FIG.
  • the processing shown below is started when the controller 114 or the controller 117 receives a notification of a connection state change from any one of the expanders 115, 118, 151a to 151c, and 153a to 153c.
  • controllers 114 and 117 perform the same processing, the case where the controller 114 mainly performs processing will be described here as a representative. Further, as an initial state, it is assumed that the inter-expander data transmission paths 158a to 158c are all closed and the controller 114 has collected all the control tables 171 to 178 in advance.
  • Step S100 The controller 114 updates the control table for all the expanders connected to the data transmission path to which the expander that has been notified of the connection state change is connected among the data transmission paths 121 and 122. Instruct.
  • the controller 114 receives the notification of the connection state change from the expander 151b and the expander 118, and next Perform the process.
  • the controller 117 also receives a notification of a connection state change from the expander 151b and the expander 118.
  • the controller 114 instructs the expanders 115, 151a to 151c connected to the data transmission path 121 to update the control tables 171, 173, 175, 177. Further, the controller 114 instructs the expanders 118, 153a to 153c connected to the data transmission path 122 to update the control tables 172, 174, 176, and 178.
  • FIG. 10 is an example of the updated control tables 171 to 178.
  • FIG. 10A shows the control table 171.
  • FIG. 10B shows the control table 172.
  • FIG. 10C shows the control table 173.
  • FIG. 10D shows the control table 174.
  • FIG. 10E shows the control table 175.
  • FIG. 10F is a control table 176.
  • FIG. 10G shows the control table 177.
  • FIG. 10H shows the control table 178.
  • each of the expanders 115, 118, 151a to 151c, 153a to 153c receives an update instruction for the control tables 171 to 178 from the controller 114, for example, the data stored in the control tables 171 to 178 are deleted. Thereafter, each of the expanders 115, 118, 151a to 151c, and 153a to 153c detects a new connection state, and stores the detected connection state in each of the control tables 171 to 178.
  • the update instruction of each control table 171 to 178 from the controller 114 to each expander 115, 118, 151a to 151c, 153a to 153c is, for example, an instruction path provided separately from the data transmission paths 121 and 122. Done with.
  • each control table 174, 176, 177, 178 may store data indicating that the connection state is invalid after the stored data is deleted.
  • Step S101 The controller 114 collects all the control tables updated in step S100.
  • the collected control table is stored in the memory 161.
  • Step S102 The controller 114 refers to the collected control tables 171 to 178, and among the storage devices 113 and 155a to 155c, there is a storage device that cannot access data from either the data transmission path 121 or the data transmission path 122. It is determined whether or not to do. If it exists, the controller 114 proceeds with the process to step S103. If not, the controller 114 ends the process.
  • the controller 114 refers to the control tables 171 to 178 shown in FIG. 10, and determines that the data access from the controller 114 is impossible for the storage device 155c.
  • controller 114 since the controller 114 has lost communication with the expander 151c for the data transmission path 121 and has lost communication with the expander 153b for the data transmission path 122, data cannot be accessed for the storage device 155c. Is determined.
  • Step S103 If it is determined that there is a storage device inaccessible to data, the controller 114 refers to the collected control tables 171 to 178 and refers to the collected data in the data transmission path 121 or the data transmission path 122. Detect pandas.
  • the controller 114 refers to the control tables 171 to 178 shown in FIG. 10, and among the “ports” whose “state (1)” is “Enable”, “ DE (2) EXP (0) "is detected. Thus, the controller 114 detects the expander 151b as the farthest expander that can communicate.
  • Step S104 The controller 114 instructs the expander at the farthest end detected in Step S103 to open the connected inter-expander data transmission path. As a result, the inter-expander data transmission path connected to the expander at the farthest end is opened.
  • the controller 114 instructs the expander 151b to open the inter-expander data transmission path 158b.
  • the opening instruction is performed, for example, through the data transmission path 121 or an instruction path provided elsewhere.
  • the inter-expander data transmission path 158b is opened as shown in FIG.
  • the expanders 153b and 153c and the controller 114 can communicate with each other via the inter-expander data transmission path 158b.
  • Step S105 The controller 114 instructs the expanders 115, 118, 151a to 151c, and 153a to 153c to update the control tables 171 to 178.
  • FIG. 12 is an example of the control tables 171 to 178 updated based on the instruction in step S105 in the state shown in FIG.
  • FIG. 12A shows the control table 171.
  • FIG. 12B shows the control table 172.
  • FIG. 12C shows the control table 173.
  • FIG. 12D shows the control table 174.
  • FIG. 12E shows the control table 175.
  • FIG. 12F shows the control table 176.
  • FIG. 12G shows the control table 177.
  • FIG. 12H shows the control table 178.
  • the control table 175 is updated as follows. That is, in the control table 175, the “state (1)” of “DE (2) EXP (1)” that is “Disable” in FIG. 10 becomes “Enable”. Further, since communication between the expanders 153b and 153c and the controller 114 becomes possible, the new connection state is stored in the control tables 176 and 178, in which data is not stored in FIG.
  • the controller 114 collects all the control tables 171 to 178.
  • the collected control tables 171 to 178 are stored in the memory 161.
  • the controller 114 refers to the collected control tables 171 to 178, and determines whether or not there is one data transmission path between the storage device and the controller 114 for each of the storage devices 113 and 155a to 155c. Determine. If there is one data transmission path, the controller 114 ends the process. When the number of data transmission paths is not one, that is, when the data transmission paths for the same storage device overlap, the controller 114 proceeds with the process to step S108.
  • the controller 114 refers to the control tables 171 to 178 shown in FIG.
  • the controller 114 sets “Disk” to “C” for “DE (2) EXP (0)” and “DE (2) EXP (1)”, and “Status (2 ) ”Are both“ Enable ”.
  • the controller 114 determines that the data transmission path via the expander 151b and the data transmission path via the expander 153b overlap with the storage device 155b.
  • Step S108 The controller 114 blocks the data transmission path that passes through the distant expander among the overlapping data transmission paths to the storage device.
  • the far expander refers to an expander having a larger number of stages from the controller 114.
  • the expander 153b (fourth stage) is farther than the expander 151b (third stage), that is, the number of stages from the controller 114 is larger. For this reason, the controller 114 blocks the data transmission path to the storage device 155b via the expander 153b as shown in FIG. That is, the controller 114 closes the data transmission path between the expander 153b and the storage device 155b.
  • Step S109 The controller 114 instructs the expanders 115, 118, 151a to 151c, and 153a to 153c to update the control tables 171 to 178, and ends the processing.
  • FIG. 14 is an example of the control tables 171 to 178 updated in the state shown in FIG.
  • FIG. 14A shows the control table 171.
  • FIG. 14B shows the control table 172.
  • FIG. 14C shows the control table 173.
  • FIG. 14D shows the control table 174.
  • FIG. 14E shows the control table 175.
  • FIG. 14F is a control table 176.
  • FIG. 14G shows the control table 177.
  • FIG. 14H is the control table 178.
  • the controller 114 accesses the storage devices 113 and 155a to 155c as shown in FIG. be able to.
  • data transmission between the controller 114 and each of the storage devices 113 and 155a to 155c is performed via the data transmission path 141. That is, the storage device 155c is accessed through the expander 152b, the inter-expander data transmission path 158b, the expander 153b, and the expander 153c. Similarly, data transmission between the controller 117 and each of the storage devices 113 and 155a to 155c is performed via the data transmission path 142. In other words, the controller 117 performs the storage device 155a to 155c via the expander 115 without passing through the expander 153a in which an abnormality has occurred.
  • FIG. 16 is a flowchart illustrating an example of an expander processing procedure according to the second embodiment.
  • the processing shown below is started when each of the expanders 151a to 151c and 153a to 153c detects an instruction to open an inter-expander data transmission path from the controller 114 or the controller 117.
  • the expander 151a performs processing for enabling the inter-expander port 156a of its own apparatus.
  • Step S201 The expander 151a determines whether or not the processing for enabling the inter-expander port 156a of its own device has succeeded. If the process is successful, the expander 151a advances the process to step S202. If the process is not successful, the expander 151a advances the process to step S206.
  • Step S202 The expander 151a prepares for communication with the expander 153a, which is the opposite device, via the communication path 159a.
  • Step S203 The expander 151a performs processing for enabling the inter-expander port 157a of the expander 153a, which is the opposite device, via the communication path 159a.
  • the expander 153a enables the inter-expander port 157a, the inter-expander data transmission path 158a is opened.
  • Step S204 The expander 151a determines whether the opening process of the inter-expander data transmission path 158a is successful. When the opening process of the inter-expander data transmission path 158a is successful, the expander 151a advances the process to step S205. When the opening process of the inter-expander data transmission path 158a is not successful, the expander 151a advances the process to step S206.
  • Step S205 The expander 151a notifies the controller 114 or the controller 117 of the success of the opening process of the inter-expander data transmission path 158a and ends the process.
  • Step S206 The expander 151a notifies the controller 114 or the controller 117 of the failure of the opening process of the inter-expander data transmission path 158a and ends the processing.
  • FIG. 17 is a sequence diagram illustrating an example of a procedure for opening an inter-expander data transmission path according to the second embodiment.
  • the following processing is started when each of the expanders 151a to 151c and 153a to 153c detects a change in the connection state.
  • a change in the connection state it is assumed that any of the expanders 151a to 151c connected to the data transmission path 121 has detected a change in the connection state. It is assumed that the expanders 153a to 153c connected to the data transmission path 122 have not detected a change in connection state.
  • the inter-expander data transmission paths 158a to 158c are all blocked. Further, since the controllers 114 and 117 perform the same processing, here, a case where the controller 114 mainly performs processing will be described as a representative.
  • Step S300 Among the expanders 151a to 151c, the expander that has detected the change in the connection state notifies the controller 114 of the change in the connection state.
  • Step S301 The controller 114 instructs the expanders 151a to 151c to update the control table.
  • Each of the expanders 151a to 151c updates the control tables 173, 175, and 177.
  • the expanders 151a to 151c notify the controller 114 of the data in the control tables 173, 175, and 177.
  • Step S304 The controller 114 requests the expander at the farthest end capable of communication (hereinafter referred to as the farthest end expander) to open the connected inter-expander data transmission path.
  • the farthest end expander any of the expanders 151a to 151c is assumed to be the farthest end expander.
  • Step S305 Upon receiving a request from the controller 114, the farthest end expander validates the inter-expander port of its own device.
  • the farthest end expander requests a corresponding expander (hereinafter referred to as a counter device) among the expanders 153a to 153c to validate the inter-expander port.
  • Step S307 The opposing device validates the inter-expander port of its own device.
  • Step S308 The opposite device notifies the farthest end expander of the completion of the process of enabling the inter-expander port of the own device.
  • Step S309 The farthest end expander notifies the controller 114 that the inter-expander data transmission path has been successfully opened.
  • Step S310 In accordance with the opening process of the inter-expander data transmission path, the expander that detects the change in the connection state among the expanders 151a to 151c and 153a to 153c notifies the controller 114 of the change in the connection state.
  • Step S311 In response to the notification of the connection state change, the controller 114 instructs the expanders 151a to 151c and 153a to 153c to update the control tables 173 to 178.
  • Step S312 The expanders 151a to 151c and 153a to 153c update the control tables 173 to 178.
  • Step S313 The expanders 151a to 151c and 153a to 153c notify the controller 114 of the control tables 173 to 178.
  • the controller 114 or the controller 117 detects a storage device that cannot access data from either the data transmission path 121 or the data transmission path 122, the following processing is executed.
  • the storage system 100 even if the storage device itself has failed, the storage device itself has failed or the data transmission path between the expander and the storage device has been interrupted. Since it is not possible to determine whether or not, the following processing is executed.
  • the controller 114 or the controller 117 transmits a communication opening instruction via at least one data transmission path among the inter-expander data transmission paths 158a to 158c to any one of the expanders 151a to 151c and 153a to 153c. To do.
  • the inter-expander data transmission paths 158a to 158c are controlled to open and close in accordance with an instruction from the controller 114 or the controller 117. Thereby, it can suppress that the data transmission path
  • the controller 114 or the controller 117 selects the inter-expander data transmission path connected to the farthest expander that can communicate among the plurality of inter-expander data transmission paths 158a to 158c. Open.
  • the expander at the farthest end is detected by the controller 114 or the controller 117 referring to the control tables 171 to 178 and specifying the expander having the largest number of stages from the controller 114 or the controller 117.
  • the data transmission path to the communicable part of the data transmission path 121 or the data transmission path 122 can be used to the maximum extent. Thereby, it is possible to efficiently generate a data access path from the controller 114 or the controller 117 to each of the storage devices 113 and 155a to 155c.
  • FIG. 18 and 19 are diagrams illustrating an example of the state of the storage system according to the second embodiment.
  • an abnormality occurs in the data transmission path 121, the expander 151c, and the expander 153c between the controller 114 and the expander 115. Of these, maintenance of the expander 151c is performed. Is going.
  • the controller 114 can access the storage devices 113, 155a, and 155b via the data transmission path 134, but cannot access the storage device 155c.
  • the inter-expander data transmission path 158b connected to the farthest expander 153b that can communicate in the data transmission path 122 is opened. For this reason, as shown in FIG. 19, the controller 114 can access the storage device 155 c via the data transmission path 135.
  • FIG. 20 is a diagram illustrating an example of a drive enclosure according to the third embodiment.
  • the drive enclosure 200 includes an expander 201 connected to the data transmission path 121, an expander 202 connected to the data transmission path 122, and inter-expander data transmission paths 203 and 204.
  • the drive enclosure 200 differs from the drive enclosures 150a to 150c of the second embodiment shown in FIG. 2 in the following three points.
  • the first point is that there are two inter-expander data transmission paths 203 and 204.
  • the second point is that no communication path is provided.
  • the third point is that it has four inter-expander ports 205, 206, 207, 208.
  • Other configurations of the drive enclosure 200 are the same as those of the drive enclosures 150a to 150c. That is, each expander 201, 202 has memories 209, 210, and a storage device 211 is connected to each expander 201, 202.
  • the expander 201 has inter-expander ports 205 and 206, and the expander 202 has inter-expander ports 207 and 208.
  • the expander 201 can independently control the process of disabling and enabling the inter-expander ports 205 and 206 between the inter-expander ports 205 and 206.
  • the expander 202 can independently control the inter-expander ports 207 and 208 to disable and enable the inter-expander ports 207 and 208.
  • SAS is used for the inter-expander data transmission paths 203 and 204.
  • the inter-expander data transmission path 203 is connected to the inter-expander port 205 and the inter-expander port 207
  • the inter-expander data transmission path 204 is connected to the inter-expander port 206 and the inter-expander port 208.
  • the inter-expander ports 205 and 208 are valid, and the inter-expander ports 206 and 207 are invalid. That is, in the initial state, the inter-expander data transmission path 203 is valid between the expander 201 and invalid between the expander 202.
  • the inter-expander data transmission path 204 is in an invalid state between the expander 201 and the expander 202 in an initial state. That is, the inter-expander data transmission paths 203 and 204 are both closed in the initial state.
  • FIG. 21 is a flowchart illustrating an example of an expander processing procedure according to the third embodiment. The processing shown below is started when the expander 201 detects an instruction to open an inter-expander data transmission path from the controller 114 or the controller 117. The case where the opening instruction is detected from the controller 117 means that the controller 117 is connected to the data transmission path 121 via the expander 115.
  • Step S400 In response to the opening instruction from the controller 114 or the controller 117, the expander 201 enables the inter-expander port 206 that is in an invalid state of its own apparatus. As a result, the inter-expander data transmission path 204 is opened.
  • Step S401 The expander 201 determines whether or not the process of enabling the inter-expander port 206 of its own device has succeeded. If the process is successful, the expander 201 advances the process to step S402. In this case, the inter-expander data transmission path 204 is open. If the process is not successful, the expander 201 advances the process to step S405.
  • Step S402 The expander 201 performs a process of enabling the inter-expander port 207 of the expander 202 which is the opposite device via the opened inter-expander data transmission path 204. As a result, the inter-expander data transmission path 203 is opened.
  • Step S403 The expander 201 determines whether the opening process of the inter-expander data transmission path 203 is successful. If successful, the expander 201 advances the process to step S404. If unsuccessful, the expander 201 advances the process to step S405.
  • Step S404 The expander 201 notifies the controller 114 or 117 of the success of the opening process and ends the process.
  • Step S405 The expander 201 notifies the controller 114 or 117 of the failure of the opening process and ends the process.
  • the inter-expander data transmission path 203 is in the valid state between the expander 201 and the inter-expander data transmission path 203 in the invalid state with the expander 202 in the initial state.
  • the inter-expander data transmission path includes an inter-expander data transmission path 204 that is in a valid state with the expander 202 and in an invalid state with the expander 201 in the initial state.
  • each of the expanders 201 and 202 opens the inter-expander data transmission path by enabling the inter-expander data transmission paths 203 and 204 with the expander in the invalid state.
  • a data transmission path between the expanders can be opened without providing a communication path for transmitting a signal for opening processing between the expander 201 and the expander 202.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The reliability of data access to a storage unit can be improved. A storage system (10) comprises: a plurality of storage apparatuses (18a to 18c) each of which has a storage unit, a first relay unit connected in series to a data transmission path (13) for relaying the data access to the storage unit, and a second relay unit connected in series to a data transmission path (14) and also connected to the first relay unit via a third data transmission path, the opening/closing of which is controlled in accordance with an external instruction, for relaying the data access to the storage unit; and a controller (12) that disables a communication using the third data transmission path of each of the plurality of storage apparatuses (18a to 18c), thereby monitoring the statuses of the connections to the storage unit via the data transmission paths (13, 14) and that, when having detected any storage unit the data access to which cannot be performed via any of the data transmission paths (13, 14), transmits an instruction to enable a communication using the third data transmission path of at least one of the storage apparatuses.

Description

ストレージシステム、ストレージ装置、および、コントローラStorage system, storage device, and controller
 本発明は、データを処理するストレージシステム、ストレージ装置、および、コントローラに関する。 The present invention relates to a storage system, a storage apparatus, and a controller that process data.
 ストレージシステムは、データを記憶する記憶装置と、記憶装置へのデータの書き込み、または、記憶装置からのデータの読み出しを制御するコントローラとを有する。そして、ストレージシステムの1つとして、コントローラから記憶装置へ冗長経路で接続したものがある。 The storage system has a storage device that stores data, and a controller that controls writing of data to the storage device or reading of data from the storage device. As one of storage systems, there is a storage system connected from a controller to a storage device through a redundant path.
 冗長経路を有するストレージシステムは、記憶装置とコントローラとの間でデータを伝送する第1のデータ伝送経路と第2のデータ伝送経路とを有する。冗長経路を有するストレージシステムには、第1のデータ伝送経路および第2のデータ伝送経路のそれぞれに、複数の中継装置が直列に接続されているものが存在する。 The storage system having a redundant path has a first data transmission path and a second data transmission path for transmitting data between the storage device and the controller. Some storage systems having redundant paths have a plurality of relay devices connected in series to each of the first data transmission path and the second data transmission path.
 冗長経路を有するストレージシステムでは、中継装置の異常により第1または第2のデータ伝送経路のどちらかに障害等が発生した場合でも、障害が発生していない方のデータ伝送経路を介して、コントローラから記憶装置へのデータアクセスを行うことができる。 In a storage system having a redundant path, even if a failure or the like occurs in either the first or second data transmission path due to an abnormality in the relay device, the controller is connected via the data transmission path that has not failed. Can access data to the storage device.
 また、ストレージシステムの1つとして、コントローラおよび1以上のスイッチデバイスを冗長化し、冗長化されているスイッチデバイス間を接続し、冗長化されているスイッチデバイスの各々に、要求インタフェースと、監視制御部とを備える技術が存在する。 Further, as one storage system, a controller and one or more switch devices are made redundant, the redundant switch devices are connected, and a request interface and a monitoring control unit are connected to each of the redundant switch devices. There is a technology with
 また、複数のカスケードの一端がカスケード間リンクにより接続され、カスケード間リンクは、論理的な接続状態および切断状態を持つ技術が存在する。
 また、制御部が、複数の経路のうち第1の経路に異常が発生したことを検出する異常検出部と、異常が検出されたときに他の制御部に対して通信を行う通信部とを備える技術が存在する。この制御部は、さらに、通信結果に基づいて、複数の経路のうち第2の経路を用いて記憶装置に対してアクセスを実行するアクセス部を備える。
In addition, there is a technology in which one end of a plurality of cascades is connected by an inter-cascade link, and the inter-cascade link has a logical connection state and a disconnection state.
In addition, the control unit includes an abnormality detection unit that detects that an abnormality has occurred in the first route among the plurality of routes, and a communication unit that communicates with other control units when an abnormality is detected. There is technology to prepare. The control unit further includes an access unit that performs access to the storage device using the second path among the plurality of paths based on the communication result.
特開2008-242872号公報JP 2008-242872 A 特開2009-211140号公報JP 2009-211140 A 特開2009-157859号公報JP 2009-157859 A
 しかしながら、第1および第2のデータ伝送経路を有するストレージシステムであっても、複数の中継装置の異常により両方のデータ伝送経路に障害等が発生してしまった場合、コントローラからデータアクセス不能な記憶装置が生じ得る。 However, even in a storage system having the first and second data transmission paths, if a failure or the like occurs in both data transmission paths due to an abnormality in a plurality of relay devices, the memory that cannot be accessed by the controller A device can arise.
 この場合、第1のデータ伝送経路と第2のデータ伝送経路との間を開通させ、障害等が発生している箇所を避けて、記憶装置へのデータアクセスを試みることが考えられる。しかしながら、単に、第1のデータ伝送経路と第2のデータ伝送経路との間を開通させただけでは、ループ状態のデータ伝送経路が生じてしまい、コントローラから記憶装置へ正しくデータアクセスできない可能性がある。 In this case, it is conceivable to open data between the first data transmission path and the second data transmission path and to try to access the storage device while avoiding a location where a failure or the like has occurred. However, simply by opening the first data transmission path and the second data transmission path, a data transmission path in a loop state is generated, and there is a possibility that data cannot be correctly accessed from the controller to the storage device. is there.
 このような点に鑑み、記憶装置へのデータアクセスの信頼性を向上させたストレージシステム、ストレージ装置、および、コントローラを提供することを目的とする。 In view of the above, an object of the present invention is to provide a storage system, a storage device, and a controller that improve the reliability of data access to a storage device.
 上記目的を達成するために以下のようなストレージシステムが提供される。
 このストレージシステムは、記憶装置と、第1のデータ伝送経路に接続され、記憶装置へのデータアクセスを中継する第1の中継装置と、第2のデータ伝送経路に接続され、外部からの指示に応じて開閉制御される第3のデータ伝送経路で第1の中継装置に接続され、記憶装置へのデータアクセスを中継する第2の中継装置とをそれぞれが有する複数のストレージ装置と、複数のストレージ装置それぞれの第1の中継装置を直列に接続した第1のデータ伝送経路、および複数のストレージ装置それぞれの第2の中継装置を直列に接続した第2のデータ伝送経路に接続されており、複数のストレージ装置それぞれの第3のデータ伝送経路を介した通信を閉塞させて、第1および第2のデータ伝送経路を介した記憶装置への接続状況を監視し、第1および第2のデータ伝送経路のいずれからもデータアクセス不能な記憶装置を検出すると、少なくとも1つのストレージ装置の第3のデータ伝送経路を介した通信の開通指示を送信するコントローラと、を有する。
In order to achieve the above object, the following storage system is provided.
This storage system is connected to a storage device and a first data transmission path, and is connected to a first relay device that relays data access to the storage device and a second data transmission path, and receives an instruction from the outside. A plurality of storage devices each having a second relay device that is connected to the first relay device via a third data transmission path that is controlled to open and close and relays data access to the storage device; and a plurality of storage devices A first data transmission path in which the first relay devices of the respective devices are connected in series, and a second data transmission path in which the second relay devices of the plurality of storage devices are connected in series; The communication via the third data transmission path of each storage apparatus is blocked, the connection status to the storage device via the first and second data transmission paths is monitored, and the first And upon detecting a data inaccessible storage device from any of the second data transmission path includes a controller for transmitting the opening instruction communication via the third data transmission path of at least one storage device.
 記憶装置へのデータアクセスの信頼性を向上させることが可能となる。
 本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
The reliability of data access to the storage device can be improved.
These and other objects, features and advantages of the present invention will become apparent from the following description taken in conjunction with the accompanying drawings which illustrate preferred embodiments by way of example of the present invention.
第1の実施の形態に係るストレージシステムの一例を示す図である。1 is a diagram illustrating an example of a storage system according to a first embodiment. FIG. 第2の実施の形態に係るストレージシステムの一例を示す図である。It is a figure which shows an example of the storage system which concerns on 2nd Embodiment. 第2の実施の形態に係るコントロールモジュールのハードウェアの一例を示す図である。It is a figure which shows an example of the hardware of the control module which concerns on 2nd Embodiment. 第2の実施の形態に係るドライブエンクロージャのハードウェアの一例を示す図である。It is a figure which shows an example of the hardware of the drive enclosure which concerns on 2nd Embodiment. 第2の実施の形態に係るストレージシステムのデータ伝送の一例を示す図である。It is a figure which shows an example of the data transmission of the storage system which concerns on 2nd Embodiment. ストレージシステムの比較例を示す図である。It is a figure which shows the comparative example of a storage system. 第2の実施の形態に係る制御テーブルの一例を示す図である。It is a figure which shows an example of the control table which concerns on 2nd Embodiment. 第2の実施の形態に係るコントローラの処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the process sequence of the controller which concerns on 2nd Embodiment. 第2の実施の形態に係るストレージシステムの状態の一例を示す図である。It is a figure which shows an example of the state of the storage system which concerns on 2nd Embodiment. 第2の実施の形態に係る制御テーブルの一例を示す図である。It is a figure which shows an example of the control table which concerns on 2nd Embodiment. 第2の実施の形態に係るストレージシステムの状態の一例を示す図である。It is a figure which shows an example of the state of the storage system which concerns on 2nd Embodiment. 第2の実施の形態に係る制御テーブルの一例を示す図である。It is a figure which shows an example of the control table which concerns on 2nd Embodiment. 第2の実施の形態に係るストレージシステムの状態の一例を示す図である。It is a figure which shows an example of the state of the storage system which concerns on 2nd Embodiment. 第2の実施の形態に係る制御テーブルの一例を示す図である。It is a figure which shows an example of the control table which concerns on 2nd Embodiment. 第2の実施の形態に係るストレージシステムの状態の一例を示す図である。It is a figure which shows an example of the state of the storage system which concerns on 2nd Embodiment. 第2の実施の形態に係るエクスパンダの処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the process sequence of the expander which concerns on 2nd Embodiment. 第2の実施の形態に係るエクスパンダ間データ伝送経路の開通処理の手順の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the procedure of the opening process of the data transmission path between the expanders which concerns on 2nd Embodiment. 第2の実施の形態に係るストレージシステムの状態の一例を示す図である。It is a figure which shows an example of the state of the storage system which concerns on 2nd Embodiment. 第2の実施の形態に係るストレージシステムの状態の一例を示す図である。It is a figure which shows an example of the state of the storage system which concerns on 2nd Embodiment. 第3の実施の形態に係るドライブエンクロージャの一例を示す図である。It is a figure which shows an example of the drive enclosure which concerns on 3rd Embodiment. 第3の実施の形態に係るエクスパンダの処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the process sequence of the expander which concerns on 3rd Embodiment.
 以下、実施の形態を図面を参照して説明する。
 [第1の実施の形態]
 図1は、第1の実施の形態に係るストレージシステムの一例を示す図である。
Hereinafter, embodiments will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a diagram illustrating an example of a storage system according to the first embodiment.
 ストレージシステム10は、複数のストレージ装置18a,18b,18cと、コントローラ12と、2つのデータ伝送経路13,14とを有する。
 ストレージ装置18aは、記憶装置11aと、2つの中継装置15a,16aと、データ伝送経路17aとを有する。中継装置15aは、データ伝送経路13に直列接続されている。さらに、中継装置15aは、記憶装置11aと接続され、記憶装置11aへのデータアクセスを中継する。
The storage system 10 includes a plurality of storage devices 18a, 18b, 18c, a controller 12, and two data transmission paths 13, 14.
The storage device 18a includes a storage device 11a, two relay devices 15a and 16a, and a data transmission path 17a. The relay device 15 a is connected to the data transmission path 13 in series. Further, the relay device 15a is connected to the storage device 11a and relays data access to the storage device 11a.
 中継装置16aは、データ伝送経路14に直列接続されている。さらに、中継装置16aは、記憶装置11aと接続され、記憶装置11aへのデータアクセスを中継する。さらに、中継装置15aと中継装置16aとは、データ伝送経路17aにより接続されている。データ伝送経路17aは、外部からの指示に応じて開閉制御される。 The relay device 16a is connected to the data transmission path 14 in series. Further, the relay device 16a is connected to the storage device 11a and relays data access to the storage device 11a. Further, the relay device 15a and the relay device 16a are connected by a data transmission path 17a. The data transmission path 17a is controlled to open and close according to an instruction from the outside.
 ストレージ装置18bは、記憶装置11bと、2つの中継装置15b,16bと、データ伝送経路17bとを有する。中継装置15bは、データ伝送経路13に直列接続されている。さらに、中継装置15bは、記憶装置11bと接続され、記憶装置11bへのデータアクセスを中継する。 The storage device 18b includes a storage device 11b, two relay devices 15b and 16b, and a data transmission path 17b. The relay device 15 b is connected in series to the data transmission path 13. Further, the relay device 15b is connected to the storage device 11b and relays data access to the storage device 11b.
 中継装置16bは、データ伝送経路14に直列接続されている。さらに、中継装置16bは、記憶装置11bと接続され、記憶装置11bへのデータアクセスを中継する。さらに、中継装置15bと中継装置16bとは、データ伝送経路17bにより接続されている。データ伝送経路17bは、外部からの指示に応じて開閉制御される。 The relay device 16b is connected to the data transmission path 14 in series. Further, the relay device 16b is connected to the storage device 11b and relays data access to the storage device 11b. Further, the relay device 15b and the relay device 16b are connected by a data transmission path 17b. The data transmission path 17b is controlled to open and close according to an instruction from the outside.
 ストレージ装置18cは、記憶装置11cと、2つの中継装置15c,16cと、データ伝送経路17cとを有する。中継装置15cは、データ伝送経路13に直列接続されている。さらに、中継装置15cは、記憶装置11cと接続され、記憶装置11cへのデータアクセスを中継する。 The storage device 18c includes a storage device 11c, two relay devices 15c and 16c, and a data transmission path 17c. The relay device 15 c is connected in series to the data transmission path 13. Further, the relay device 15c is connected to the storage device 11c and relays data access to the storage device 11c.
 中継装置16cは、データ伝送経路14に直列接続されている。さらに、中継装置16cは、記憶装置11cと接続され、記憶装置11cへのデータアクセスを中継する。さらに、中継装置15cと中継装置16cとは、データ伝送経路17cにより接続されている。データ伝送経路17cは、外部からの指示に応じて開閉制御される。 The relay device 16c is connected to the data transmission path 14 in series. Further, the relay device 16c is connected to the storage device 11c and relays data access to the storage device 11c. Further, the relay device 15c and the relay device 16c are connected by a data transmission path 17c. The data transmission path 17c is controlled to open and close according to an instruction from the outside.
 コントローラ12は、データ伝送経路13およびデータ伝送経路14に接続されている。コントローラ12は、各記憶装置11a~11cへのデータの書き込み、または、各記憶装置11a~11cからのデータの読み出しを行う。コントローラ12は、データ伝送経路13およびデータ伝送経路14に障害等が発生していない場合、データ伝送経路13またはデータ伝送経路14を介して、各記憶装置11a~11cへのデータアクセスを行う。 The controller 12 is connected to the data transmission path 13 and the data transmission path 14. The controller 12 writes data to the storage devices 11a to 11c or reads data from the storage devices 11a to 11c. The controller 12 performs data access to each of the storage devices 11a to 11c via the data transmission path 13 or the data transmission path 14 when there is no failure in the data transmission path 13 and the data transmission path 14.
 さらに、コントローラ12は、ストレージ装置18a~18cそれぞれのデータ伝送経路17a~17cを介した通信を閉塞または開通させる。さらに、コントローラ12は、データ伝送経路13およびデータ伝送経路14を介した各記憶装置11a~11cへの接続状況を監視する。 Furthermore, the controller 12 blocks or opens communication via the data transmission paths 17a to 17c of the storage devices 18a to 18c. Furthermore, the controller 12 monitors the connection status to the storage devices 11a to 11c via the data transmission path 13 and the data transmission path 14.
 次に、データ伝送経路17a~17cの開通処理の手順について説明する。
 初期状態として、データ伝送経路17a~17cは全て閉塞している。
 データ伝送経路13またはデータ伝送経路14に障害等が発生すると、コントローラ12が、記憶装置11a~11cのうち、データ伝送経路13およびデータ伝送経路14のいずれからもデータアクセス不能な記憶装置がないかを判定する。
Next, a procedure for opening the data transmission paths 17a to 17c will be described.
As an initial state, the data transmission paths 17a to 17c are all blocked.
When a failure or the like occurs in the data transmission path 13 or the data transmission path 14, the controller 12 determines whether there is any storage device that cannot access data from either the data transmission path 13 or the data transmission path 14 among the storage devices 11a to 11c. Determine.
 データアクセス不能な記憶装置がある場合、コントローラ12は、データ伝送経路17a~17cのうち少なくとも1つのデータ伝送経路を介した通信の開通指示を送信する。ここで、データアクセス不能な記憶装置がある場合とは、すなわち、中継装置15a~15cのうちの少なくとも1つとの通信が途絶し、かつ、中継装置16a~16cのうちの少なくとも1つとの通信が途絶した場合である。 If there is a storage device inaccessible to data, the controller 12 transmits a communication opening instruction via at least one of the data transmission paths 17a to 17c. Here, the case where there is a storage device inaccessible to data means that communication with at least one of the relay devices 15a to 15c is interrupted and communication with at least one of the relay devices 16a to 16c is performed. This is the case when it is interrupted.
 このとき、例えば、コントローラ12は、データ伝送経路17a~17cを1つずつ順番に開通させるようにしてもよい。または、コントローラ12は、データ伝送経路17a~17cを全て開通させた後、1つを残して他を閉塞させるようにしてもよい。 At this time, for example, the controller 12 may open the data transmission paths 17a to 17c one by one in order. Alternatively, after the controller 12 has opened all the data transmission paths 17a to 17c, the controller 12 may leave one and close the other.
 または、コントローラ12は、データ伝送経路13およびデータ伝送経路14のいずれかを介して通信可能な最遠端のストレージ装置を検出し、データ伝送経路17a~17cのうち、検出したストレージ装置のデータ伝送経路を開通させるようにしてもよい。ここで、最遠端のストレージ装置とは、コントローラ12からの段数が最も多いストレージ装置を指す。 Alternatively, the controller 12 detects the farthest end storage device that can communicate via either the data transmission path 13 or the data transmission path 14, and the data transmission of the detected storage apparatus among the data transmission paths 17a to 17c. You may make it open a path | route. Here, the farthest end storage device refers to a storage device having the largest number of stages from the controller 12.
 データ伝送経路17a~17cのうち最遠端のストレージ装置のデータ伝送経路を開通させることで、データ伝送経路13またはデータ伝送経路14のうち通信可能な箇所までのデータ伝送経路を最大限使用できる。これにより、開通させるデータ伝送経路を効率的に選択することが可能となる。 By opening the data transmission path of the farthest end storage device among the data transmission paths 17a to 17c, the data transmission path to the communicable portion of the data transmission path 13 or the data transmission path 14 can be used to the maximum extent. This makes it possible to efficiently select a data transmission path to be opened.
 そして、コントローラ12は、データ伝送経路17a~17cのうち開通したデータ伝送経路を介して、データアクセス不能と判定した記憶装置へのデータアクセスを行う。すなわち、コントローラ12は、データ伝送経路13の一部と、データ伝送経路17a~17cのうち開通したデータ伝送経路と、データ伝送経路14の一部とを介して、記憶装置にデータアクセスする。 Then, the controller 12 performs data access to the storage device determined to be inaccessible via the opened data transmission path among the data transmission paths 17a to 17c. That is, the controller 12 accesses the storage device through a part of the data transmission path 13, the opened data transmission path among the data transmission paths 17a to 17c, and a part of the data transmission path 14.
 例えば、中継装置15cに異常が発生してコントローラ12と中継装置15cとの通信が途絶し、中継装置16aに異常が発生してコントローラ12と中継装置16aとの通信が途絶した場合、このままでは、コントローラ12から記憶装置11cにデータアクセスすることはできない。 For example, if an error occurs in the relay device 15c and communication between the controller 12 and the relay device 15c is interrupted, an error occurs in the relay device 16a and communication between the controller 12 and the relay device 16a is interrupted, Data cannot be accessed from the controller 12 to the storage device 11c.
 ストレージシステム10では、この場合、ストレージ装置18bのデータ伝送経路17bが開通する。そして、コントローラ12は、開通したデータ伝送経路17bを介して記憶装置11cへのデータアクセスを行う。すなわち、コントローラ12は、中継装置15a,15bと、データ伝送経路17bと、中継装置16b,16cとを通るデータ伝送経路19を介して、記憶装置11cにデータアクセスする。 In this case, in the storage system 10, the data transmission path 17b of the storage device 18b is opened. Then, the controller 12 performs data access to the storage device 11c via the opened data transmission path 17b. That is, the controller 12 accesses the storage device 11c via the data transmission path 19 passing through the relay apparatuses 15a and 15b, the data transmission path 17b, and the relay apparatuses 16b and 16c.
 このように、ストレージシステム10では、コントローラ12が、データ伝送経路13およびデータ伝送経路14のいずれからもデータアクセス不能な記憶装置を検出すると、次の処理を実行する。すなわち、コントローラ12は、データ伝送経路17a~17cのうち少なくとも1つのデータ伝送経路を介した通信の開通指示を送信する。 As described above, in the storage system 10, when the controller 12 detects a storage device that is inaccessible to data from either the data transmission path 13 or the data transmission path 14, the following processing is executed. That is, the controller 12 transmits a communication opening instruction via at least one of the data transmission paths 17a to 17c.
 これにより、複数の中継装置の異常によりデータ伝送経路13およびデータ伝送経路14に障害等が発生してしまった場合でも、コントローラ12から各記憶装置11a~11cへのデータアクセスが可能となる。 Thus, even when a failure or the like occurs in the data transmission path 13 and the data transmission path 14 due to an abnormality in a plurality of relay apparatuses, data access from the controller 12 to each of the storage devices 11a to 11c becomes possible.
 また、ストレージシステム10では、データ伝送経路17a~17cは、コントローラ12からの指示に応じて開閉制御される。これにより、ループ状態のデータ伝送経路が生じてしまうことを抑制できる。 In the storage system 10, the data transmission paths 17 a to 17 c are controlled to be opened / closed according to instructions from the controller 12. Thereby, it can suppress that the data transmission path | route of a loop state arises.
 例えば、データ伝送経路17a~17cが、開通制御されるものではなく、全てが常時開通している場合を想定する。この場合、例えば、中継装置15b、中継装置15c、データ伝送経路17c、中継装置16c、中継装置16b、データ伝送経路17bを経由するループ状態のデータ伝送経路が生じてしまう。 For example, it is assumed that the data transmission paths 17a to 17c are not controlled to be opened but all are always open. In this case, for example, a data transmission path in a loop state via the relay apparatus 15b, the relay apparatus 15c, the data transmission path 17c, the relay apparatus 16c, the relay apparatus 16b, and the data transmission path 17b is generated.
 図1のストレージシステム10では、例えば、データ伝送経路17bのみを開通させ、残りのデータ伝送経路17a,17cを閉塞させることが可能となるため、ループ状態のデータ伝送経路が生じてしまうことを抑制できる。 In the storage system 10 of FIG. 1, for example, only the data transmission path 17b can be opened and the remaining data transmission paths 17a and 17c can be blocked, so that the occurrence of a looped data transmission path is suppressed. it can.
 このようにして、ストレージシステム10では、各記憶装置11a~11cへのデータアクセスの信頼性を向上させることが可能となる。
 [第2の実施の形態]
 次に、ストレージシステム10をより具体的にした実施の形態を、第2の実施の形態として説明する。
In this way, the storage system 10 can improve the reliability of data access to the storage devices 11a to 11c.
[Second Embodiment]
Next, a more specific embodiment of the storage system 10 will be described as a second embodiment.
 図2は、第2の実施の形態に係るストレージシステムの一例を示す図である。
 ストレージシステム100は、2つのコントローラ114,117を備えるコントローラエンクロージャ(CE:Controller Enclosure)110を有する。さらに、ストレージシステム100は、複数のドライブエンクロージャ(DE:Drive Enclosure)150a,150b,150cを有する。
FIG. 2 is a diagram illustrating an example of a storage system according to the second embodiment.
The storage system 100 includes a controller enclosure (CE) 110 that includes two controllers 114 and 117. The storage system 100 further includes a plurality of drive enclosures (DE) 150a, 150b, and 150c.
 ドライブエンクロージャ150a~150cはそれぞれ、「1」、「2」、「3」の識別子によって、ストレージシステム100内で識別される。コントローラエンクロージャ110と各ドライブエンクロージャ150a~150cとは、それぞれ、記憶装置113,155a,155b,155cを有する。 The drive enclosures 150a to 150c are identified in the storage system 100 by identifiers “1”, “2”, and “3”, respectively. The controller enclosure 110 and the drive enclosures 150a to 150c have storage devices 113, 155a, 155b, and 155c, respectively.
 すなわち、各ドライブエンクロージャ150a~150cは、ストレージ装置に相当する。記憶装置113,155a~155cはそれぞれ、「A」、「B」、「C」、「D」の識別子によって、ストレージシステム100内で識別される。 That is, each drive enclosure 150a to 150c corresponds to a storage device. The storage devices 113 and 155a to 155c are identified in the storage system 100 by identifiers “A”, “B”, “C”, and “D”, respectively.
 ドライブエンクロージャ150a~150cは、コントローラ114,117のそれぞれに接続された2つのデータ伝送経路121,122に直列に接続されている。データ伝送経路121,122には、例えば、SAS(Serial Attached SCSI)が用いられている。ここで、ドライブエンクロージャ150a~150cの数は、3つに限定されるものではなく、例えば、必要とする記憶容量に応じて適宜設定される。 The drive enclosures 150a to 150c are connected in series to two data transmission paths 121 and 122 connected to the controllers 114 and 117, respectively. For the data transmission paths 121 and 122, for example, SAS (Serial Attached SCSI) is used. Here, the number of drive enclosures 150a to 150c is not limited to three, and may be appropriately set according to the required storage capacity, for example.
 まず、ドライブエンクロージャ150aについて説明する。
 ドライブエンクロージャ150aは、メモリ152aを備えるエクスパンダ(EXP:Expander)151aと、メモリ154aを備えるエクスパンダ153aと、データを記憶する記憶装置155aとを有する。エクスパンダ151a,153aはそれぞれ、「0」、「1」の識別子によってドライブエンクロージャ150a内で識別される。記憶装置155aには、例えば、磁気ディスク(HDD:Hard Disk Drive)やソリッドステートドライブ(SSD:Solid State Drive)が用いられている。
First, the drive enclosure 150a will be described.
The drive enclosure 150a includes an expander (EXP) 151a including a memory 152a, an expander 153a including a memory 154a, and a storage device 155a that stores data. The expanders 151a and 153a are identified in the drive enclosure 150a by identifiers “0” and “1”, respectively. For example, a magnetic disk (HDD: Hard Disk Drive) or a solid state drive (SSD: Solid State Drive) is used as the storage device 155a.
 エクスパンダ151a,153aはそれぞれ、SAS等のデータ伝送経路により、記憶装置155aと接続されている。エクスパンダ151aは、データ伝送経路121に直列接続され、エクスパンダ153aは、データ伝送経路122に直列接続されている。エクスパンダ151a,153aはそれぞれ、コントローラ114またはコントローラ117から記憶装置155aへのデータアクセスを中継する。 The expanders 151a and 153a are each connected to the storage device 155a through a data transmission path such as SAS. The expander 151 a is connected in series to the data transmission path 121, and the expander 153 a is connected in series to the data transmission path 122. The expanders 151a and 153a relay data access from the controller 114 or the controller 117 to the storage device 155a, respectively.
 エクスパンダ151aとエクスパンダ153aとの間には、通信経路159aが設けられている。通信経路159aには、例えば、I2C(商標)やEthernet(登録商標)等が用いられている。さらに、エクスパンダ151aには、エクスパンダ間ポート156aが設けられ、エクスパンダ153aには、エクスパンダ間ポート157aが設けられている。 A communication path 159a is provided between the expander 151a and the expander 153a. For example, I 2 C (trademark), Ethernet (registered trademark), or the like is used for the communication path 159a. Further, the expander 151a is provided with an inter-expander port 156a, and the expander 153a is provided with an inter-expander port 157a.
 そして、エクスパンダ151aとエクスパンダ153aとの間には、エクスパンダ間ポート156aとエクスパンダ間ポート157aとに接続された、開閉制御可能なエクスパンダ間データ伝送経路158aが設けられている。エクスパンダ間データ伝送経路158aには、例えば、SAS等が用いられている。 Between the expander 151a and the expander 153a, an inter-expander data transmission path 158a that is connected to the inter-expander port 156a and the inter-expander port 157a is provided. For example, SAS or the like is used for the inter-expander data transmission path 158a.
 なお、初期状態において、エクスパンダ間ポート156aおよびエクスパンダ間ポート157aは共に無効とされ、エクスパンダ間データ伝送経路158aは閉塞している。また、エクスパンダ間ポート156aおよびエクスパンダ間ポート157aを共に有効にすると、エクスパンダ間データ伝送経路158aは開通する。 In the initial state, the inter-expander port 156a and the inter-expander port 157a are both disabled, and the inter-expander data transmission path 158a is closed. When the inter-expander port 156a and the inter-expander port 157a are both enabled, the inter-expander data transmission path 158a is opened.
 メモリ152aには、エクスパンダ151aとコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ151aと記憶装置155aとの間の接続状態とが記憶される制御テーブルが格納される。さらに、この制御テーブルには、エクスパンダ153aとエクスパンダ151aとの間の接続状態と、エクスパンダ153aと記憶装置155aとの間の接続状態とが記憶される。さらに、この制御テーブルには、エクスパンダ151aに接続された下位のエクスパンダが有する制御テーブルも含まれる。 The memory 152a stores a control table in which a connection state between the expander 151a and the controller 114 or the controller 117 and a connection state between the expander 151a and the storage device 155a are stored. Further, this control table stores a connection state between the expander 153a and the expander 151a and a connection state between the expander 153a and the storage device 155a. Further, this control table includes a control table possessed by a lower expander connected to the expander 151a.
 メモリ154aには、エクスパンダ153aとコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ153aと記憶装置155aとの間の接続状態が記憶される制御テーブルが格納される。さらに、この制御テーブルには、エクスパンダ151aとエクスパンダ153aとの間の接続状態と、エクスパンダ151aと記憶装置155aとの間の接続状態とが記憶される。さらに、この制御テーブルには、エクスパンダ153aに接続された下位のエクスパンダが有する制御テーブルも含まれる。 The memory 154a stores a control table in which a connection state between the expander 153a and the controller 114 or the controller 117 and a connection state between the expander 153a and the storage device 155a are stored. Further, this control table stores a connection state between the expander 151a and the expander 153a and a connection state between the expander 151a and the storage device 155a. Further, this control table includes a control table possessed by a lower expander connected to the expander 153a.
 エクスパンダ151aは、記憶装置155a、および、データ伝送経路121に接続された下位のエクスパンダとの間の接続状態を監視し、この接続状態に変化が生じると、これを検出する。そして、エクスパンダ151aは、この接続状態の変化をデータ伝送経路121を介してコントローラ114またはコントローラ117に通知する。 The expander 151a monitors the connection state between the storage device 155a and the lower expander connected to the data transmission path 121, and detects this when a change occurs in the connection state. The expander 151a notifies the controller 114 or the controller 117 of the change in the connection state via the data transmission path 121.
 さらに、エクスパンダ151aは、コントローラ114またはコントローラ117からの指示に従って、メモリ152aに格納された制御テーブルを更新する。さらに、エクスパンダ151aは、更新した制御テーブルをコントローラ114またはコントローラ117に通知する。 Further, the expander 151a updates the control table stored in the memory 152a in accordance with an instruction from the controller 114 or the controller 117. Further, the expander 151a notifies the controller 114 or the controller 117 of the updated control table.
 さらに、エクスパンダ151aは、コントローラ114またはコントローラ117からの指示に従って、エクスパンダ間データ伝送経路158aを開通または閉塞させる。例えば、開通させる場合は、エクスパンダ151aが、エクスパンダ間ポート156aを有効にし、エクスパンダ153aにエクスパンダ間ポート157aを有効にするよう通信経路159aを介して指示する。これにより、エクスパンダ間データ伝送経路158aは開通する。 Further, the expander 151a opens or closes the inter-expander data transmission path 158a in accordance with an instruction from the controller 114 or the controller 117. For example, when opening, the expander 151a instructs the inter-expander port 156a and instructs the expander 153a to enable the inter-expander port 157a via the communication path 159a. As a result, the inter-expander data transmission path 158a is opened.
 さらに、エクスパンダ151aは、エクスパンダ間データ伝送経路158aの開通処理の結果を、コントローラ114またはコントローラ117にデータ伝送経路121を介して通知する。 Further, the expander 151a notifies the controller 114 or the controller 117 of the result of the opening process of the inter-expander data transmission path 158a via the data transmission path 121.
 エクスパンダ153aは、記憶装置155a、および、データ伝送経路122に接続された下位のエクスパンダとの間の接続状態を監視し、この接続状態に変化が生じると、接続状態の変化を検出する。そして、エクスパンダ153aは、検出した接続状態の変化をデータ伝送経路122を介してコントローラ114またはコントローラ117に通知する。 The expander 153a monitors a connection state between the storage device 155a and a lower expander connected to the data transmission path 122, and detects a change in the connection state when a change occurs in the connection state. The expander 153a notifies the controller 114 or the controller 117 of the detected connection state change via the data transmission path 122.
 さらに、エクスパンダ153aは、コントローラ114またはコントローラ117からの指示に従って、メモリ154aに格納された制御テーブルを更新する。さらに、エクスパンダ153aは、更新した制御テーブルをコントローラ114またはコントローラ117に通知する。 Further, the expander 153a updates the control table stored in the memory 154a in accordance with an instruction from the controller 114 or the controller 117. Furthermore, the expander 153a notifies the controller 114 or the controller 117 of the updated control table.
 さらに、エクスパンダ153aは、コントローラ114またはコントローラ117からの指示に従って、エクスパンダ間データ伝送経路158aを開通または閉塞させる。例えば、開通させる場合は、エクスパンダ153aが、エクスパンダ間ポート157aを有効にし、エクスパンダ151aにエクスパンダ間ポート156aを有効にするよう通信経路159aを介して指示する。これにより、エクスパンダ間データ伝送経路158aは開通する。 Further, the expander 153a opens or closes the inter-expander data transmission path 158a in accordance with an instruction from the controller 114 or the controller 117. For example, when opening, the expander 153a instructs the inter-expander port 157a and instructs the expander 151a via the communication path 159a to enable the inter-expander port 156a. As a result, the inter-expander data transmission path 158a is opened.
 さらに、エクスパンダ153aは、エクスパンダ間データ伝送経路158aの開通処理の結果を、コントローラ114またはコントローラ117にデータ伝送経路122を介して通知する。 Further, the expander 153a notifies the controller 114 or the controller 117 of the result of the opening process of the inter-expander data transmission path 158a via the data transmission path 122.
 次に、ドライブエンクロージャ150bについて説明する。
 ドライブエンクロージャ150bは、メモリ152bを備えるエクスパンダ151bと、メモリ154bを備えるエクスパンダ153bと、データを記憶する記憶装置155bとを有する。エクスパンダ151b,153bはそれぞれ、「0」、「1」の識別子によってドライブエンクロージャ150b内で識別される。記憶装置155bには、例えば、磁気ディスクやソリッドステートドライブが用いられている。
Next, the drive enclosure 150b will be described.
The drive enclosure 150b includes an expander 151b including a memory 152b, an expander 153b including a memory 154b, and a storage device 155b that stores data. The expanders 151b and 153b are identified in the drive enclosure 150b by identifiers “0” and “1”, respectively. As the storage device 155b, for example, a magnetic disk or a solid state drive is used.
 エクスパンダ151b,153bはそれぞれ、SAS等のデータ伝送経路により、記憶装置155bと接続されている。エクスパンダ151bは、データ伝送経路121に直列接続され、エクスパンダ153bは、データ伝送経路122に直列接続されている。エクスパンダ151b,153bはそれぞれ、コントローラ114またはコントローラ117から記憶装置155bへのデータアクセスを中継する。 The expanders 151b and 153b are connected to the storage device 155b through a data transmission path such as SAS. The expander 151 b is connected in series to the data transmission path 121, and the expander 153 b is connected in series to the data transmission path 122. The expanders 151b and 153b relay data access from the controller 114 or the controller 117 to the storage device 155b, respectively.
 エクスパンダ151bとエクスパンダ153bとの間には、通信経路159bが設けられている。通信経路159bには、例えば、I2C(商標)やEthernet(登録商標)等が用いられている。さらに、エクスパンダ151bには、エクスパンダ間ポート156bが設けられ、エクスパンダ153bには、エクスパンダ間ポート157bが設けられている。 A communication path 159b is provided between the expander 151b and the expander 153b. For example, I 2 C (trademark), Ethernet (registered trademark), or the like is used for the communication path 159b. Further, the expander 151b is provided with an inter-expander port 156b, and the expander 153b is provided with an inter-expander port 157b.
 そして、エクスパンダ151bとエクスパンダ153bとの間には、エクスパンダ間ポート156bとエクスパンダ間ポート157bとに接続された、開閉制御可能なエクスパンダ間データ伝送経路158bが設けられている。エクスパンダ間データ伝送経路158bには、例えば、SAS等が用いられている。 Between the expander 151b and the expander 153b, an inter-expander data transmission path 158b that is connected to the inter-expander port 156b and the inter-expander port 157b is provided. For example, SAS is used for the inter-expander data transmission path 158b.
 なお、初期状態において、エクスパンダ間ポート156bおよびエクスパンダ間ポート157bは共に無効とされ、エクスパンダ間データ伝送経路158bは閉塞している。また、エクスパンダ間ポート156bおよびエクスパンダ間ポート157bを共に有効にすると、エクスパンダ間データ伝送経路158bは開通する。 In the initial state, the inter-expander port 156b and the inter-expander port 157b are both disabled, and the inter-expander data transmission path 158b is closed. When the inter-expander port 156b and the inter-expander port 157b are both enabled, the inter-expander data transmission path 158b is opened.
 メモリ152bには、エクスパンダ151bとコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ151bと記憶装置155bとの間の接続状態とが記憶される制御テーブルが格納される。さらに、この制御テーブルには、エクスパンダ153bとエクスパンダ151bとの間の接続状態と、エクスパンダ153bと記憶装置155bとの間の接続状態とが記憶される。さらに、この制御テーブルには、エクスパンダ151bに接続された下位のエクスパンダが有する制御テーブルも含まれる。 The memory 152b stores a control table in which a connection state between the expander 151b and the controller 114 or the controller 117 and a connection state between the expander 151b and the storage device 155b are stored. Further, this control table stores a connection state between the expander 153b and the expander 151b and a connection state between the expander 153b and the storage device 155b. Further, this control table includes a control table possessed by a lower expander connected to the expander 151b.
 メモリ154bには、エクスパンダ153bとコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ153bと記憶装置155bとの間の接続状態が記憶される制御テーブルが格納される。さらに、この制御テーブルには、エクスパンダ151bとエクスパンダ153bとの間の接続状態と、エクスパンダ151bと記憶装置155bとの間の接続状態とが記憶される。さらに、この制御テーブルには、エクスパンダ153bに接続された下位のエクスパンダが有する制御テーブルも含まれる。 The memory 154b stores a control table in which a connection state between the expander 153b and the controller 114 or the controller 117 and a connection state between the expander 153b and the storage device 155b are stored. Further, this control table stores a connection state between the expander 151b and the expander 153b and a connection state between the expander 151b and the storage device 155b. Further, this control table includes a control table possessed by a lower expander connected to the expander 153b.
 なお、エクスパンダ151bの機能については、ドライブエンクロージャ150aのエクスパンダ151aと同様である。エクスパンダ153bの機能については、ドライブエンクロージャ150aのエクスパンダ153aと同様である。 The function of the expander 151b is the same as that of the expander 151a of the drive enclosure 150a. The function of the expander 153b is the same as that of the expander 153a of the drive enclosure 150a.
 次に、ドライブエンクロージャ150cについて説明する。
 ドライブエンクロージャ150cは、メモリ152cを備えるエクスパンダ151cと、メモリ154cを備えるエクスパンダ153cと、データを記憶する記憶装置155cとを有する。エクスパンダ151c,153cはそれぞれ、「0」、「1」の識別子によってドライブエンクロージャ150c内で識別される。記憶装置155cには、例えば、磁気ディスクやソリッドステートドライブが用いられている。
Next, the drive enclosure 150c will be described.
The drive enclosure 150c includes an expander 151c including a memory 152c, an expander 153c including a memory 154c, and a storage device 155c that stores data. The expanders 151c and 153c are identified in the drive enclosure 150c by identifiers “0” and “1”, respectively. As the storage device 155c, for example, a magnetic disk or a solid state drive is used.
 エクスパンダ151c,153cはそれぞれ、SAS等のデータ伝送経路により、記憶装置155cと接続されている。エクスパンダ151cは、データ伝送経路121に直列接続され、エクスパンダ153cは、データ伝送経路122に直列接続されている。エクスパンダ151c,153cはそれぞれ、コントローラ114またはコントローラ117から記憶装置155cへのデータアクセスを中継する。 The expanders 151c and 153c are connected to the storage device 155c through a data transmission path such as SAS. The expander 151 c is connected in series to the data transmission path 121, and the expander 153 c is connected in series to the data transmission path 122. The expanders 151c and 153c relay data access from the controller 114 or the controller 117 to the storage device 155c, respectively.
 エクスパンダ151cとエクスパンダ153cとの間には、通信経路159cが設けられている。通信経路159cには、例えば、I2C(商標)やEthernet(登録商標)等が用いられている。さらに、エクスパンダ151cには、エクスパンダ間ポート156cが設けられ、エクスパンダ153cには、エクスパンダ間ポート157cが設けられている。 A communication path 159c is provided between the expander 151c and the expander 153c. For example, I 2 C (trademark), Ethernet (registered trademark), or the like is used for the communication path 159c. Further, the expander 151c is provided with an inter-expander port 156c, and the expander 153c is provided with an inter-expander port 157c.
 そして、エクスパンダ151cとエクスパンダ153cとの間には、エクスパンダ間ポート156cとエクスパンダ間ポート157cとに接続された、開閉制御可能なエクスパンダ間データ伝送経路158cが設けられている。エクスパンダ間データ伝送経路158cには、例えば、SAS等が用いられている。 Between the expander 151c and the expander 153c, an inter-expander data transmission path 158c connected to the inter-expander port 156c and the inter-expander port 157c is provided. For example, SAS is used for the inter-expander data transmission path 158c.
 なお、初期状態において、エクスパンダ間ポート156cおよびエクスパンダ間ポート157cは共に無効とされ、エクスパンダ間データ伝送経路158cは閉塞している。また、エクスパンダ間ポート156cおよびエクスパンダ間ポート157cを共に有効にすると、エクスパンダ間データ伝送経路158cは開通する。 In the initial state, the inter-expander port 156c and the inter-expander port 157c are both disabled, and the inter-expander data transmission path 158c is blocked. When the inter-expander port 156c and the inter-expander port 157c are both enabled, the inter-expander data transmission path 158c is opened.
 メモリ152cには、エクスパンダ151cとコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ151cと記憶装置155cとの間の接続状態とが記憶される制御テーブルが格納される。さらに、この制御テーブルには、エクスパンダ153cとエクスパンダ151cとの間の接続状態と、エクスパンダ153cと記憶装置155cとの間の接続状態とが記憶される。 The memory 152c stores a control table in which a connection state between the expander 151c and the controller 114 or the controller 117 and a connection state between the expander 151c and the storage device 155c are stored. Further, the control table stores a connection state between the expander 153c and the expander 151c and a connection state between the expander 153c and the storage device 155c.
 メモリ154cには、エクスパンダ153cとコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ153cと記憶装置155cとの間の接続状態が記憶される制御テーブルが格納される。さらに、この制御テーブルには、エクスパンダ151cとエクスパンダ153cとの間の接続状態と、エクスパンダ151cと記憶装置155cとの間の接続状態とが記憶される。 The memory 154c stores a control table in which a connection state between the expander 153c and the controller 114 or the controller 117 and a connection state between the expander 153c and the storage device 155c are stored. Further, this control table stores a connection state between the expander 151c and the expander 153c and a connection state between the expander 151c and the storage device 155c.
 なお、エクスパンダ151cの機能については、ドライブエンクロージャ150aのエクスパンダ151aと同様である。エクスパンダ153cの機能については、ドライブエンクロージャ150aのエクスパンダ153aと同様である。 The function of the expander 151c is the same as that of the expander 151a of the drive enclosure 150a. The function of the expander 153c is the same as that of the expander 153a of the drive enclosure 150a.
 次に、コントローラエンクロージャ110について説明する。
 コントローラエンクロージャ110は、コントロールモジュール(CM:Control Module)111,112と、データを記憶する記憶装置113とを有する。コントロールモジュール111,112はそれぞれ、「0」、「1」の識別子によって、コントローラエンクロージャ110内で識別される。また、記憶装置113には、例えば、磁気ディスクやソリッドステートドライブが用いられている。
Next, the controller enclosure 110 will be described.
The controller enclosure 110 includes control modules (CMs) 111 and 112 and a storage device 113 that stores data. The control modules 111 and 112 are identified in the controller enclosure 110 by identifiers “0” and “1”, respectively. Further, for example, a magnetic disk or a solid state drive is used for the storage device 113.
 コントロールモジュール111は、コントローラ114と、メモリ116を備えるエクスパンダ115とを有する。コントロールモジュール112は、コントローラ117と、メモリ119を備えるエクスパンダ118とを有する。 The control module 111 includes a controller 114 and an expander 115 including a memory 116. The control module 112 includes a controller 117 and an expander 118 including a memory 119.
 コントローラ114およびエクスパンダ115はデータ伝送経路121に接続され、コントローラ117およびエクスパンダ118はデータ伝送経路122に接続されている。さらに、コントローラ114は、SAS等のデータ伝送経路により、エクスパンダ118に接続されている。コントローラ117は、SAS等のデータ伝送経路により、エクスパンダ115に接続されている。 The controller 114 and the expander 115 are connected to the data transmission path 121, and the controller 117 and the expander 118 are connected to the data transmission path 122. Further, the controller 114 is connected to the expander 118 through a data transmission path such as SAS. The controller 117 is connected to the expander 115 via a data transmission path such as SAS.
 エクスパンダ115およびエクスパンダ118は、SAS等のデータ伝送経路により、記憶装置113と接続されている。エクスパンダ115,118は、記憶装置113とコントローラ114またはコントローラ117との間のデータ伝送を中継する。 The expander 115 and the expander 118 are connected to the storage device 113 through a data transmission path such as SAS. The expanders 115 and 118 relay data transmission between the storage device 113 and the controller 114 or the controller 117.
 メモリ116には、エクスパンダ115とコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ115と記憶装置113との間の接続状態とが記憶される制御テーブルが格納される。さらに、この制御テーブルには、データ伝送経路121に接続された下位のエクスパンダ151aが有する制御テーブルも含まれる。 The memory 116 stores a control table in which a connection state between the expander 115 and the controller 114 or the controller 117 and a connection state between the expander 115 and the storage device 113 are stored. Further, this control table includes a control table included in the lower expander 151 a connected to the data transmission path 121.
 メモリ119には、エクスパンダ118とコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ118と記憶装置113との間の接続状態が記憶される制御テーブルが格納される。さらに、この制御テーブルには、データ伝送経路122に接続された下位のエクスパンダ153aが有する制御テーブルも含まれる。 The memory 119 stores a control table in which a connection state between the expander 118 and the controller 114 or the controller 117 and a connection state between the expander 118 and the storage device 113 are stored. Further, this control table includes a control table included in the lower expander 153 a connected to the data transmission path 122.
 エクスパンダ115は、コントローラ114またはコントローラ117からの指示に従って、メモリ116に格納された制御テーブルを更新する。さらに、エクスパンダ115は、更新した制御テーブルをコントローラ114またはコントローラ117に通知する。 The expander 115 updates the control table stored in the memory 116 in accordance with an instruction from the controller 114 or the controller 117. Further, the expander 115 notifies the controller 114 or the controller 117 of the updated control table.
 さらに、エクスパンダ115は、記憶装置113、および、データ伝送経路121に接続された下位のエクスパンダ151aとの間の接続状態を監視し、この接続状態に変化が生じると、これを検出する。そして、エクスパンダ115は、この接続状態の変化をコントローラ114またはコントローラ117に通知する。 Further, the expander 115 monitors the connection state between the storage device 113 and the lower expander 151a connected to the data transmission path 121, and detects this when a change occurs in the connection state. Then, the expander 115 notifies the controller 114 or the controller 117 of the change in the connection state.
 また、エクスパンダ118は、コントローラ114またはコントローラ117からの指示に従って、メモリ119に格納された制御テーブルを更新する。さらに、エクスパンダ118は、更新した制御テーブルをコントローラ114またはコントローラ117に通知する。 Further, the expander 118 updates the control table stored in the memory 119 in accordance with an instruction from the controller 114 or the controller 117. Further, the expander 118 notifies the controller 114 or the controller 117 of the updated control table.
 さらに、エクスパンダ118は、記憶装置113、および、データ伝送経路122に接続された下位のエクスパンダ153aとの間の接続状態を監視し、この接続状態に変化が生じると、これを検出する。そして、エクスパンダ118は、この接続状態の変化をコントローラ114またはコントローラ117に通知する。 Furthermore, the expander 118 monitors the connection state between the storage device 113 and the lower expander 153a connected to the data transmission path 122, and detects this when a change occurs in the connection state. Then, the expander 118 notifies the controller 114 or the controller 117 of the change in the connection state.
 コントローラ114は、制御回路160と、メモリ161と、通信ポート162とを有する。コントローラ114による処理は、制御回路160によって実行される。通信ポート162には、データ伝送経路121が接続されている。 The controller 114 includes a control circuit 160, a memory 161, and a communication port 162. Processing by the controller 114 is executed by the control circuit 160. A data transmission path 121 is connected to the communication port 162.
 コントローラ117は、制御回路163と、メモリ164と、通信ポート165とを有する。コントローラ117による処理は、制御回路163によって実行される。通信ポート165には、データ伝送経路122が接続されている。 The controller 117 includes a control circuit 163, a memory 164, and a communication port 165. Processing by the controller 117 is executed by the control circuit 163. A data transmission path 122 is connected to the communication port 165.
 コントローラ114,117はそれぞれ、エクスパンダ115,118,151a~151c,153a~153cのうちの一部を経由するデータ伝送経路により、次の処理を行う。すなわち、コントローラ114,117はそれぞれ、各記憶装置113,155a~155cへのデータの書き込み、または、各記憶装置113,155a~155cからのデータの読み出しを行う。この処理は、例えば、ホスト装置(図示せず)からの指示に応じて行われる。 The controllers 114 and 117 perform the following processing through data transmission paths that pass through some of the expanders 115, 118, 151a to 151c, and 153a to 153c, respectively. That is, the controllers 114 and 117 respectively write data to the storage devices 113 and 155a to 155c, or read data from the storage devices 113 and 155a to 155c. This process is performed, for example, according to an instruction from a host device (not shown).
 さらに、コントローラ114,117はそれぞれ、エクスパンダ115,118,151a~151c,153a~153cのうちのいずれかから接続状態変化の通知を受信すると、次の処理を行う。すなわち、コントローラ114,117はそれぞれ、エクスパンダ115,118,151a~151c,153a~153cの全て、または一部に対して、制御テーブルの更新を指示する。 Further, when the controllers 114 and 117 receive notification of connection state change from any one of the expanders 115, 118, 151a to 151c, and 153a to 153c, they perform the following processing. That is, the controllers 114 and 117 instruct the expanders 115, 118, 151a to 151c, and 153a to 153c, respectively, to update the control table.
 さらに、コントローラ114,117はそれぞれ、エクスパンダ115,118,151a~151c,153a~153cが有する制御テーブルを全て収集する。収集した制御テーブルは、メモリ161,164に格納される。さらに、コントローラ114,117は、メモリ161,164に格納された収集した制御テーブルを参照し、データ伝送経路121およびデータ伝送経路122を介した各記憶装置113,155a~155cへの接続状況を監視する。 Furthermore, the controllers 114 and 117 collect all the control tables of the expanders 115, 118, 151a to 151c, and 153a to 153c, respectively. The collected control tables are stored in the memories 161 and 164. Furthermore, the controllers 114 and 117 refer to the collected control tables stored in the memories 161 and 164 and monitor the connection status to the storage devices 113 and 155a to 155c via the data transmission path 121 and the data transmission path 122. To do.
 さらに、コントローラ114,117は、ドライブエンクロージャ150a~150cそれぞれのエクスパンダ間データ伝送経路158a~158cを介した通信を閉塞または開通させる。 Further, the controllers 114 and 117 block or open communication via the inter-expander data transmission paths 158a to 158c of the drive enclosures 150a to 150c.
 次に、コントロールモジュール111,112のハードウェアについて説明する。コントロールモジュール111,112は互いに同様の構成を備えるため、ここでは、代表してコントロールモジュール111について説明する。 Next, the hardware of the control modules 111 and 112 will be described. Since the control modules 111 and 112 have the same configuration, the control module 111 will be described as a representative here.
 図3は、第2の実施の形態に係るコントロールモジュールのハードウェアの一例を示す図である。
 コントロールモジュール111は、コントローラ(Controller)301を有する。コントローラ301には、バスを介してポート302,303が接続されている。ポート302,303は、外部のホスト装置に接続される。
FIG. 3 is a diagram illustrating an example of hardware of the control module according to the second embodiment.
The control module 111 includes a controller 301. Ports 302 and 303 are connected to the controller 301 via a bus. The ports 302 and 303 are connected to an external host device.
 さらに、コントローラ301には、バスを介してRAM(Random Access Memory)304が接続されている。コントローラ301とRAM304との間には、リアルタイムクロック(RTC:Real Time Clock)305が接続されている。 Furthermore, a RAM (Random Access Memory) 304 is connected to the controller 301 via a bus. A real time clock (RTC: Real Time Clock) 305 is connected between the controller 301 and the RAM 304.
 さらに、コントローラ301には、バスを介してLAN(Local Area Network)コントローラ306が接続されている。LANコントローラ306には、バスを介してLANポート307,308が接続されている。さらに、LANコントローラ306には、ROM(Read Only Memory)309が接続されている。コントローラ301とLANコントローラ306との間には、データ管理回路310が接続されている。データ管理回路310には、フラッシュ(flash)メモリ311が接続されている。フラッシュメモリ311に記憶されるデータはデータ管理回路310により管理される。 Furthermore, a LAN (Local Area Network) controller 306 is connected to the controller 301 via a bus. LAN ports 307 and 308 are connected to the LAN controller 306 via a bus. Further, a ROM (Read Only Memory) 309 is connected to the LAN controller 306. A data management circuit 310 is connected between the controller 301 and the LAN controller 306. A flash memory 311 is connected to the data management circuit 310. Data stored in the flash memory 311 is managed by the data management circuit 310.
 さらに、コントローラ301には、バスを介してドライバ(DRV:Driver)312が接続されている。ドライバ312には、バスを介してデバッグポート313が接続されている。さらに、コントローラ301には、バスを介してドライバ314が接続されている。ドライバ314には、バスを介してデバッグポート315が接続されている。 Furthermore, a driver (DRV: Driver) 312 is connected to the controller 301 via a bus. A debug port 313 is connected to the driver 312 via a bus. Furthermore, a driver 314 is connected to the controller 301 via a bus. A debug port 315 is connected to the driver 314 via a bus.
 さらに、コントローラ301には、バスを介してフラッシュメモリ316が接続されている。コントローラ301とフラッシュメモリ316との間には、システム(System)コントローラ317が接続されている。システムコントローラ317には、バスを介してRAM318が接続されている。 Further, a flash memory 316 is connected to the controller 301 via a bus. A system controller 317 is connected between the controller 301 and the flash memory 316. A RAM 318 is connected to the system controller 317 via a bus.
 さらに、コントローラ301には、バス319が接続されている。バス319は、外部のコントロールモジュールに接続される。
 さらに、コントローラ301には、バスを介してスイッチ(SW:Switch)320が接続されている。スイッチ320には、バスを介してバックアップ電源である電気二重層コンデンサユニット(SCU:System Capacity Unit)321が接続されている。さらに、スイッチ320には、バス322,323が接続されている。バス322は、外部のシステムID(Identity)ROMに接続される。バス323は、外部のコントロールモジュールに接続される。バス323には、例えば、I2C(商標)が用いられている。
Furthermore, a bus 319 is connected to the controller 301. The bus 319 is connected to an external control module.
Further, a switch (SW) 320 is connected to the controller 301 via a bus. An electrical double layer capacitor unit (SCU) 321 that is a backup power source is connected to the switch 320 via a bus. Furthermore, buses 322 and 323 are connected to the switch 320. The bus 322 is connected to an external system ID (Identity) ROM. The bus 323 is connected to an external control module. For example, I 2 C (trademark) is used for the bus 323.
 さらに、コントローラ301には、バス324が接続されている。バス324は、外部のコントロールモジュールに接続される。バス324には、例えば、I2C(商標)が用いられている。さらに、コントローラ301には、SASによるバス325,326が接続されている。バス325,326は、外部のコントロールモジュール内のエクスパンダに接続される。 Furthermore, a bus 324 is connected to the controller 301. The bus 324 is connected to an external control module. For example, I 2 C (trademark) is used for the bus 324. Furthermore, SAS buses 325 and 326 are connected to the controller 301. The buses 325 and 326 are connected to an expander in an external control module.
 さらに、コントローラ301には、SASにより構成されたバス327,328を介してエクスパンダ329が接続されている。エクスパンダ329には、バスを介してSASポート330が接続されている。SASポート330は、例えば、4つのポートから構成されている。 Further, an expander 329 is connected to the controller 301 via buses 327 and 328 configured by SAS. A SAS port 330 is connected to the expander 329 via a bus. The SAS port 330 is composed of, for example, four ports.
 エクスパンダ329には、SASにより構成されたバス群331が接続されている。バス群331は、例えば、12本のバスから構成されている。バス群331は、それぞれ、ハードディスクドライブ(HDD)に接続される。さらに、エクスパンダ329には、SASにより構成されたバス332,333が接続されている。バス332,333は、外部のコントロールモジュール内のコントローラに接続される。 The expander 329 is connected to a bus group 331 configured by SAS. The bus group 331 is composed of, for example, 12 buses. Each bus group 331 is connected to a hard disk drive (HDD). Further, buses 332 and 333 configured by SAS are connected to the expander 329. The buses 332 and 333 are connected to a controller in an external control module.
 さらに、エクスパンダ329には、バス334,335が接続されている。バス334,335は、外部のエクスパンダに接続される。バス334,335には、例えば、I2C(商標)が用いられている。さらに、エクスパンダ329には、バスを介してEEPROM(Electrically Erasable Programmable ROM)336が接続されている。 Further, buses 334 and 335 are connected to the expander 329. Buses 334 and 335 are connected to an external expander. For example, I 2 C (trademark) is used for the buses 334 and 335. Furthermore, an EEPROM (Electrically Erasable Programmable ROM) 336 is connected to the expander 329 via a bus.
 エクスパンダ329とEEPROM336との間には、スイッチ337が接続されている。スイッチ337には、バス338,339が接続されている。バス338,339は、外部の電源ユニットに接続される。さらに、スイッチ337には、バスを介して電圧・温度検出器340が接続されている。 A switch 337 is connected between the expander 329 and the EEPROM 336. Buses 338 and 339 are connected to the switch 337. Buses 338 and 339 are connected to an external power supply unit. Further, a voltage / temperature detector 340 is connected to the switch 337 via a bus.
 さらに、エクスパンダ329には、バスを介してドライバ341が接続されている。ドライバ341には、バスを介してデバッグポート342が接続されている。さらに、エクスパンダ329には、バスを介してフラッシュメモリ343が接続されている。エクスパンダ329とフラッシュメモリ343との間には、システムコントローラ317が接続されている。 Furthermore, a driver 341 is connected to the expander 329 via a bus. A debug port 342 is connected to the driver 341 via a bus. Further, a flash memory 343 is connected to the expander 329 via a bus. A system controller 317 is connected between the expander 329 and the flash memory 343.
 次に、ドライブエンクロージャ150a~150cのハードウェアについて説明する。ドライブエンクロージャ150a~150cは互いに同様の構成を備えるため、ここでは、代表してドライブエンクロージャ150aについて説明する。 Next, the hardware of the drive enclosures 150a to 150c will be described. Since the drive enclosures 150a to 150c have the same configuration, the drive enclosure 150a will be described as a representative here.
 図4は、第2の実施の形態に係るドライブエンクロージャのハードウェアの一例を示す図である。
 ドライブエンクロージャ150aは、エクスパンダ400とエクスパンダ410とバックパネル420とを有する。バックパネル420は、ハードディスクドライブ群421を備えている。ハードディスクドライブ群421は、例えば、24個のハードディスクドライブを備えている。
FIG. 4 is a diagram illustrating an example of hardware of the drive enclosure according to the second embodiment.
The drive enclosure 150a includes an expander 400, an expander 410, and a back panel 420. The back panel 420 includes a hard disk drive group 421. The hard disk drive group 421 includes, for example, 24 hard disk drives.
 エクスパンダ400は、エクスパンダ回路401を有している。エクスパンダ回路401には、バスを介してマルチプレクサ(Multiplexer)402が接続されている。マルチプレクサ402には、バスを介してSASポート403が接続されている。SASポート403は、例えば、4つのポートにより構成されている。SASポート403は、外部のコントロールモジュールに接続される。 The expander 400 has an expander circuit 401. The expander circuit 401 is connected to a multiplexer 402 through a bus. A SAS port 403 is connected to the multiplexer 402 via a bus. The SAS port 403 is composed of, for example, four ports. The SAS port 403 is connected to an external control module.
 さらに、エクスパンダ回路401には、SASポート404が接続されている。SASポート404は、例えば、4つのポートにより構成されている。SASポート404は、外部のドライブエンクロージャに接続される。 Further, a SAS port 404 is connected to the expander circuit 401. The SAS port 404 is composed of, for example, four ports. The SAS port 404 is connected to an external drive enclosure.
 さらに、エクスパンダ回路401には、バスを介して、ROM405とフラッシュメモリ406とコントローラ407とが接続されている。さらに、エクスパンダ回路401は、ハードディスクドライブ群421の各ハードディスクドライブとバスを介して接続されている。 Furthermore, a ROM 405, a flash memory 406, and a controller 407 are connected to the expander circuit 401 via a bus. Further, the expander circuit 401 is connected to each hard disk drive of the hard disk drive group 421 via a bus.
 エクスパンダ410は、エクスパンダ回路411を有している。エクスパンダ回路411には、バスを介してマルチプレクサ412が接続されている。マルチプレクサ412には、バスを介してSASポート413が接続されている。SASポート413は、例えば、4つのポートにより構成されている。SASポート413は、外部のコントロールモジュールと接続される。 The expander 410 has an expander circuit 411. A multiplexer 412 is connected to the expander circuit 411 via a bus. A SAS port 413 is connected to the multiplexer 412 via a bus. The SAS port 413 is composed of, for example, four ports. The SAS port 413 is connected to an external control module.
 さらに、エクスパンダ回路411には、SASポート414が接続されている。SASポート414は、例えば、4つのポートにより構成されている。SASポート414は、外部のドライブエンクロージャに接続される。 Further, a SAS port 414 is connected to the expander circuit 411. The SAS port 414 is configured by, for example, four ports. The SAS port 414 is connected to an external drive enclosure.
 さらに、エクスパンダ回路411には、バスを介して、ROM415とフラッシュメモリ416とコントローラ417とが接続されている。さらに、エクスパンダ回路411は、ハードディスクドライブ群421の各ハードディスクドライブとバスを介して接続されている。 Furthermore, a ROM 415, a flash memory 416, and a controller 417 are connected to the expander circuit 411 via a bus. Further, the expander circuit 411 is connected to each hard disk drive of the hard disk drive group 421 via a bus.
 また、エクスパンダ回路401とエクスパンダ回路411とは、バス430と、SASにより構成されたバス431とにより接続されている。バス430には、例えば、I2C(商標)やEthernet(登録商標)等が用いられている。また、ドライブエンクロージャ150aには、電源ユニット(PSU:Power Supply Unit)440,441が設けられている。 The expander circuit 401 and the expander circuit 411 are connected by a bus 430 and a bus 431 configured by SAS. For example, I 2 C (trademark), Ethernet (registered trademark), or the like is used for the bus 430. The drive enclosure 150a is provided with power supply units (PSU: 440, 441).
 次に、ストレージシステム100に異常が発生していない場合のデータ伝送の一例について説明する。図5は、第2の実施の形態に係るストレージシステムのデータ伝送の一例を示す図である。 Next, an example of data transmission when no abnormality has occurred in the storage system 100 will be described. FIG. 5 is a diagram illustrating an example of data transmission of the storage system according to the second embodiment.
 ストレージシステム100に異常が発生していない場合、コントローラ114と各記憶装置113,155a~155cとの間のデータ伝送は、次のデータ伝送経路を介して行われる。すなわち、データ伝送は、エクスパンダ115,151a~151cの全部または一部を経由するデータ伝送経路131を介して行われる。 When no abnormality has occurred in the storage system 100, data transmission between the controller 114 and each of the storage devices 113 and 155a to 155c is performed via the following data transmission path. That is, data transmission is performed via the data transmission path 131 that passes through all or part of the expanders 115 and 151a to 151c.
 また、コントローラ117と各記憶装置113,155a~155cとの間のデータ伝送は、エクスパンダ118,153a~153cの全部または一部を経由するデータ伝送経路132を介して行われる。 In addition, data transmission between the controller 117 and each of the storage devices 113, 155a to 155c is performed via a data transmission path 132 that passes through all or part of the expanders 118, 153a to 153c.
 なお、エクスパンダ間データ伝送経路158a~158cは全て閉塞している。
 ここで、図5のエクスパンダ151a~151cはそれぞれ、例えば、図4のエクスパンダ400により実現され、図5のエクスパンダ153a~153cはそれぞれ、例えば、図4のエクスパンダ410により実現される。さらに、図5の記憶装置155a~155cはそれぞれ、例えば、図4のハードディスクドライブ群421により実現される。
Note that the inter-expander data transmission paths 158a to 158c are all blocked.
Here, each of the expanders 151a to 151c in FIG. 5 is realized by, for example, the expander 400 in FIG. 4, and each of the expanders 153a to 153c in FIG. 5 is realized by, for example, the expander 410 in FIG. Further, each of the storage devices 155a to 155c in FIG. 5 is realized by, for example, the hard disk drive group 421 in FIG.
 図6は、ストレージシステムの比較例を示す図である。
 図6は、エクスパンダ間データ伝送経路158a~158cが全て閉塞していないストレージシステムのデータ伝送の一例を示す図である。
FIG. 6 is a diagram illustrating a comparative example of storage systems.
FIG. 6 is a diagram illustrating an example of data transmission in a storage system in which all the inter-expander data transmission paths 158a to 158c are not blocked.
 図6に示すように、ストレージシステム100aでは、例えば、エクスパンダ間データ伝送経路158b,158cが開通している場合、ループ状態のデータ伝送経路133が生じる。この場合、例えば、SASプロトコル違反が生じてしまう。 As shown in FIG. 6, in the storage system 100a, for example, when the inter-expander data transmission paths 158b and 158c are opened, a data transmission path 133 in a loop state is generated. In this case, for example, a SAS protocol violation occurs.
 ストレージシステム100では、異常が発生していない場合、エクスパンダ間データ伝送経路158a~158cは全て閉塞しているので、ループ状態のデータ伝送経路が生じてしまうことを抑制できる。 In the storage system 100, when no abnormality occurs, the inter-expander data transmission paths 158a to 158c are all blocked, so that it is possible to suppress the occurrence of a loop data transmission path.
 次に、各メモリ116,119,152a~152c,154a~154cに格納される制御テーブルについて説明する。図7は、第2の実施の形態に係る制御テーブルの一例を示す図である。 Next, control tables stored in the memories 116, 119, 152a to 152c, and 154a to 154c will be described. FIG. 7 is a diagram illustrating an example of a control table according to the second embodiment.
 図7(A)は、メモリ116が格納する制御テーブル171である。図7(B)は、メモリ119が格納する制御テーブル172である。図7(C)は、メモリ152aが格納する制御テーブル173である。図7(D)は、メモリ154aが格納する制御テーブル174である。図7(E)は、メモリ152bが格納する制御テーブル175である。図7(F)は、メモリ154bが格納する制御テーブル176である。図7(G)は、メモリ152cが格納する制御テーブル177である。図7(H)は、メモリ154cが格納する制御テーブル178である。なお、ここでは、図5に示すようにストレージシステム100に異常が発生していない場合を例としている。 FIG. 7A shows a control table 171 stored in the memory 116. FIG. 7B shows a control table 172 stored in the memory 119. FIG. 7C shows a control table 173 stored in the memory 152a. FIG. 7D is a control table 174 stored in the memory 154a. FIG. 7E shows a control table 175 stored in the memory 152b. FIG. 7F is a control table 176 stored in the memory 154b. FIG. 7G shows a control table 177 stored in the memory 152c. FIG. 7H is a control table 178 stored in the memory 154c. Here, a case where no abnormality has occurred in the storage system 100 as shown in FIG. 5 is taken as an example.
 各制御テーブル171~178には、エクスパンダを特定する「ポート」と、エクスパンダとコントローラ114またはコントローラ117との間の接続状態、または、エクスパンダ間の接続状態を示す「状態(1)」とが記憶される。さらに、各制御テーブル171~178には、記憶装置を特定する「Disk」と、エクスパンダと記憶装置との間の接続状態を示す「状態(2)」とが記憶される。 In each of the control tables 171 to 178, “state (1)” indicating a “port” that identifies the expander, a connection state between the expander and the controller 114 or the controller 117, or a connection state between the expanders. Is memorized. Furthermore, in each of the control tables 171 to 178, “Disk” for specifying the storage device and “State (2)” indicating the connection state between the expander and the storage device are stored.
 制御テーブル173,175,177にはそれぞれ、対応するエクスパンダとコントローラ114またはコントローラ117との間の接続状態と、対応するエクスパンダと記憶装置との間の接続状態とが記憶される。さらに、制御テーブル173,175,177にはそれぞれ、対応するエクスパンダと同じドライブエンクロージャ内の対向するエクスパンダとの間の接続状態と、対向するエクスパンダと記憶装置との間の接続状態とが記憶される。 Each of the control tables 173, 175, and 177 stores a connection state between the corresponding expander and the controller 114 or the controller 117, and a connection state between the corresponding expander and the storage device. Further, each of the control tables 173, 175, and 177 includes a connection state between the corresponding expander and the opposite expander in the same drive enclosure, and a connection state between the opposite expander and the storage device. Remembered.
 なお、対応するエクスパンダと同じドライブエンクロージャ内の対向するエクスパンダとの間の接続状態は、例えば、対応するエクスパンダが、接続されたエクスパンダ間データ伝送経路の開通状態を監視することで検出される。または、例えば、対応するエクスパンダが、通信経路を介して対向するエクスパンダと通信することで検出される。 The connection state between the corresponding expander and the opposite expander in the same drive enclosure is detected, for example, by the corresponding expander monitoring the open state of the data transmission path between the connected expanders. Is done. Alternatively, for example, the corresponding expander is detected by communicating with the opposite expander via the communication path.
 さらに、この制御テーブルには、対応するエクスパンダに接続された下位のエクスパンダが有する制御テーブルも含まれる。
 例えば、図5に示す例では、ドライブエンクロージャ150aに関して、エクスパンダ151aとコントローラ114との間が接続され、エクスパンダ151aと記憶装置155aとの間が接続されている。
Further, this control table includes a control table possessed by a lower expander connected to the corresponding expander.
For example, in the example shown in FIG. 5, regarding the drive enclosure 150a, the expander 151a and the controller 114 are connected, and the expander 151a and the storage device 155a are connected.
 このため、エクスパンダ151aが格納する制御テーブル173では、エクスパンダ151aを指す「DE(1)EXP(0)」に対して、「状態(1)」が「Enable」となり、「Disk」が「B」となり、「状態(2)」が「Enable」となる。 Therefore, in the control table 173 stored in the expander 151a, “state (1)” is “Enable” and “Disk” is “Enable” with respect to “DE (1) EXP (0)” indicating the expander 151 a. “B”, and “state (2)” becomes “Enable”.
 また、図5に示す例では、エクスパンダ間データ伝送経路158aは閉塞しており、エクスパンダ153aとエクスパンダ151aとの間は接続されていない。このため、制御テーブル173では、エクスパンダ153aを指す「DE(1)EXP(1)」に対して、「状態(1)」が「Disable」となる。 In the example shown in FIG. 5, the inter-expander data transmission path 158a is closed, and the expander 153a and the expander 151a are not connected. Therefore, in the control table 173, “state (1)” becomes “Disable” with respect to “DE (1) EXP (1)” indicating the expander 153a.
 さらに、制御テーブル173には、エクスパンダ151aに接続された下位のエクスパンダ151bが有する制御テーブル175も記憶されている。すなわち、制御テーブル173のうち、「DE(2)EXP(0)」~「DE(3)EXP(1)」の行は、制御テーブル175に相当する。 Further, the control table 173 also stores a control table 175 included in the lower expander 151b connected to the expander 151a. That is, in the control table 173, the rows “DE (2) EXP (0)” to “DE (3) EXP (1)” correspond to the control table 175.
 制御テーブル174,176,178にはそれぞれ、対応するエクスパンダとコントローラ114またはコントローラ117との間の接続状態と、エクスパンダと記憶装置との間の接続状態とが記憶される。さらに、制御テーブル174,176,178にはそれぞれ、対応するエクスパンダと同じドライブエンクロージャ内の対向するエクスパンダとの間の接続状態と、対向するエクスパンダと記憶装置との間の接続状態とが記憶される。 Each of the control tables 174, 176, and 178 stores a connection state between the corresponding expander and the controller 114 or the controller 117, and a connection state between the expander and the storage device. Further, each of the control tables 174, 176, and 178 includes a connection state between the corresponding expander and the opposite expander in the same drive enclosure, and a connection state between the opposite expander and the storage device. Remembered.
 なお、対応するエクスパンダと同じドライブエンクロージャ内の対向するエクスパンダとの間の接続状態は、例えば、対応するエクスパンダが、接続されたエクスパンダ間データ伝送経路の開通状態を監視することで検出される。または、例えば、対応するエクスパンダが、通信経路を介して対向するエクスパンダと通信することで検出される。 The connection state between the corresponding expander and the opposite expander in the same drive enclosure is detected, for example, by the corresponding expander monitoring the open state of the data transmission path between the connected expanders. Is done. Alternatively, for example, the corresponding expander is detected by communicating with the opposite expander via the communication path.
 さらに、この制御テーブルには、エクスパンダに接続された下位のエクスパンダが有する制御テーブルも含まれる。
 例えば、図5に示す例では、ドライブエンクロージャ150aに関して、エクスパンダ153aとコントローラ117との間が接続され、エクスパンダ153aと記憶装置155aとの間が接続されている。
Further, this control table includes a control table possessed by a lower expander connected to the expander.
For example, in the example shown in FIG. 5, regarding the drive enclosure 150a, the expander 153a and the controller 117 are connected, and the expander 153a and the storage device 155a are connected.
 このため、エクスパンダ153aが格納する制御テーブル174では、エクスパンダ153aを指す「DE(1)EXP(1)」に対して、「状態(1)」が「Enable」となり、「Disk」が「B」となり、「状態(2)」が「Enable」となる。 Therefore, in the control table 174 stored in the expander 153a, “state (1)” is “Enable” and “Disk” is “Enable” with respect to “DE (1) EXP (1)” indicating the expander 153 a. “B”, and “state (2)” becomes “Enable”.
 また、図5に示す例では、エクスパンダ間データ伝送経路158aは閉塞しており、エクスパンダ151aとエクスパンダ153aとの間は接続されていない。このため、エクスパンダ151aを指す「DE(1)EXP(0)」に対して、「状態(1)」が「Disable」となる。 In the example shown in FIG. 5, the inter-expander data transmission path 158a is closed, and the expander 151a and the expander 153a are not connected. Therefore, “state (1)” becomes “Disable” with respect to “DE (1) EXP (0)” indicating the expander 151a.
 さらに、制御テーブル174には、エクスパンダ153aに接続された下位のエクスパンダ153bが有する制御テーブル176も記憶されている。すなわち、制御テーブル174のうち、「DE(2)EXP(1)」~「DE(3)EXP(0)」の行は、制御テーブル176に相当する。 Further, the control table 174 also stores a control table 176 included in the lower expander 153b connected to the expander 153a. That is, in the control table 174, the lines “DE (2) EXP (1)” to “DE (3) EXP (0)” correspond to the control table 176.
 制御テーブル171には、エクスパンダ115とコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ115と記憶装置113との間の接続状態が記憶される。さらに、制御テーブル171には、エクスパンダ115に接続された下位のエクスパンダ151aが有する制御テーブル173も含まれる。 The control table 171 stores a connection state between the expander 115 and the controller 114 or the controller 117 and a connection state between the expander 115 and the storage device 113. Further, the control table 171 includes a control table 173 included in a lower expander 151 a connected to the expander 115.
 例えば、図5に示す例では、エクスパンダ115とコントローラ114との間が接続され、エクスパンダ115と記憶装置113との間が接続されている。
 このため、エクスパンダ115が格納する制御テーブル171では、エクスパンダ115を指す「CM(0)EXP」に対して、「状態(1)」が「Enable」となり、「Disk」が「A」となり、「状態(2)」が「Enable」となる。さらに、制御テーブル171には、エクスパンダ115に接続された下位のエクスパンダ151aが有する制御テーブル173も記憶されている。すなわち、制御テーブル171のうち、「DE(1)EXP(0)」~「DE(3)EXP(1)」の行は、制御テーブル173に相当する。
For example, in the example illustrated in FIG. 5, the expander 115 and the controller 114 are connected, and the expander 115 and the storage device 113 are connected.
Therefore, in the control table 171 stored in the expander 115, “status (1)” becomes “Enable” and “Disk” becomes “A” for “CM (0) EXP” indicating the expander 115. “Status (2)” becomes “Enable”. Further, the control table 171 also stores a control table 173 included in the lower expander 151 a connected to the expander 115. That is, in the control table 171, the lines “DE (1) EXP (0)” to “DE (3) EXP (1)” correspond to the control table 173.
 制御テーブル172には、エクスパンダ118とコントローラ114またはコントローラ117との間の接続状態と、エクスパンダ118と記憶装置113との間の接続状態とが記憶される。さらに、制御テーブル172には、エクスパンダ118に接続された下位のエクスパンダ153aが有する制御テーブル174も含まれる。 The control table 172 stores a connection state between the expander 118 and the controller 114 or the controller 117 and a connection state between the expander 118 and the storage device 113. Further, the control table 172 includes a control table 174 included in the lower expander 153 a connected to the expander 118.
 例えば、図5に示す例では、エクスパンダ118とコントローラ117との間が接続され、エクスパンダ118と記憶装置113との間が接続されている。
 このため、エクスパンダ118が格納する制御テーブル172では、エクスパンダ118を指す「CM(1)EXP」に対して、「状態(1)」が「Enable」となり、「Disk」が「A」となり、「状態(2)」が「Enable」となる。さらに、制御テーブル172には、エクスパンダ118に接続された下位のエクスパンダ153aが有する制御テーブル174も記憶されている。すなわち、制御テーブル172のうち、「DE(1)EXP(1)」~「DE(3)EXP(0)」の行は、制御テーブル174に相当する。
For example, in the example shown in FIG. 5, the expander 118 and the controller 117 are connected, and the expander 118 and the storage device 113 are connected.
Therefore, in the control table 172 stored in the expander 118, “status (1)” becomes “Enable” and “Disk” becomes “A” for “CM (1) EXP” indicating the expander 118. “Status (2)” becomes “Enable”. Further, the control table 172 also stores a control table 174 included in the lower expander 153 a connected to the expander 118. That is, in the control table 172, the lines “DE (1) EXP (1)” to “DE (3) EXP (0)” correspond to the control table 174.
 次に、コントローラ114,117の処理手順について説明する。
 図8は、第2の実施の形態に係るコントローラの処理手順の一例を示すフローチャートである。図9、図11、図13、図15は、第2の実施の形態に係るストレージシステムの状態の一例を示す図である。図10、図12、図14は、第2の実施の形態に係る制御テーブルの一例を示す図である。以下、処理手順について、図8のフローチャートに沿って、図9~図15を用いながら説明を行う。
Next, the processing procedure of the controllers 114 and 117 will be described.
FIG. 8 is a flowchart illustrating an example of a processing procedure of the controller according to the second embodiment. 9, 11, 13, and 15 are diagrams illustrating an example of the state of the storage system according to the second embodiment. 10, FIG. 12, and FIG. 14 are diagrams illustrating an example of a control table according to the second embodiment. The processing procedure will be described below with reference to FIGS. 9 to 15 along the flowchart of FIG.
 以下に示す処理は、コントローラ114またはコントローラ117が、エクスパンダ115,118,151a~151c,153a~153cのうちのいずれかから接続状態変化の通知を受信することで開始される。 The processing shown below is started when the controller 114 or the controller 117 receives a notification of a connection state change from any one of the expanders 115, 118, 151a to 151c, and 153a to 153c.
 なお、コントローラ114,117は同様の処理を行うため、ここでは、代表して、コントローラ114が主として処理を行う場合について説明する。
 また、初期状態として、エクスパンダ間データ伝送経路158a~158cは全て閉塞しており、コントローラ114は制御テーブル171~178を予め全て収集しているものとする。
Since the controllers 114 and 117 perform the same processing, the case where the controller 114 mainly performs processing will be described here as a representative.
Further, as an initial state, it is assumed that the inter-expander data transmission paths 158a to 158c are all closed and the controller 114 has collected all the control tables 171 to 178 in advance.
 [ステップS100]コントローラ114が、データ伝送経路121,122のうち接続状態変化の通知のあったエクスパンダが接続されたデータ伝送経路に接続された全てのエクスパンダに対して、制御テーブルの更新を指示する。 [Step S100] The controller 114 updates the control table for all the expanders connected to the data transmission path to which the expander that has been notified of the connection state change is connected among the data transmission paths 121 and 122. Instruct.
 例えば、図9に示すように、エクスパンダ151c、および、エクスパンダ153aに異常が発生した場合、コントローラ114は、エクスパンダ151b、および、エクスパンダ118から、接続状態変化の通知を受信し、次の処理を行う。なお、このとき、コントローラ117も、エクスパンダ151b、および、エクスパンダ118から、接続状態変化の通知を受信する。 For example, as shown in FIG. 9, when an abnormality occurs in the expander 151c and the expander 153a, the controller 114 receives the notification of the connection state change from the expander 151b and the expander 118, and next Perform the process. At this time, the controller 117 also receives a notification of a connection state change from the expander 151b and the expander 118.
 すなわち、コントローラ114は、データ伝送経路121に接続されているエクスパンダ115,151a~151cに対して、制御テーブル171,173,175,177の更新を指示する。さらに、コントローラ114は、データ伝送経路122に接続されているエクスパンダ118,153a~153cに対して、制御テーブル172,174,176,178の更新を指示する。 That is, the controller 114 instructs the expanders 115, 151a to 151c connected to the data transmission path 121 to update the control tables 171, 173, 175, 177. Further, the controller 114 instructs the expanders 118, 153a to 153c connected to the data transmission path 122 to update the control tables 172, 174, 176, and 178.
 図10は、更新された各制御テーブル171~178の一例である。図10(A)は、制御テーブル171である。図10(B)は、制御テーブル172である。図10(C)は、制御テーブル173である。図10(D)は、制御テーブル174である。図10(E)は、制御テーブル175である。図10(F)は、制御テーブル176である。図10(G)は、制御テーブル177である。図10(H)は、制御テーブル178である。 FIG. 10 is an example of the updated control tables 171 to 178. FIG. 10A shows the control table 171. FIG. 10B shows the control table 172. FIG. 10C shows the control table 173. FIG. 10D shows the control table 174. FIG. 10E shows the control table 175. FIG. 10F is a control table 176. FIG. 10G shows the control table 177. FIG. 10H shows the control table 178.
 各エクスパンダ115,118,151a~151c,153a~153cは、コントローラ114から各制御テーブル171~178の更新指示を受信すると、例えば、各制御テーブル171~178に格納されているデータを削除する。その後、各エクスパンダ115,118,151a~151c,153a~153cは、新たな接続状態を検出し、検出した接続状態を各制御テーブル171~178に格納する。なお、コントローラ114から各エクスパンダ115,118,151a~151c,153a~153cへの各制御テーブル171~178の更新指示は、例えば、データ伝送経路121,122とは別に設けられた、指示経路を用いて行われる。 When each of the expanders 115, 118, 151a to 151c, 153a to 153c receives an update instruction for the control tables 171 to 178 from the controller 114, for example, the data stored in the control tables 171 to 178 are deleted. Thereafter, each of the expanders 115, 118, 151a to 151c, and 153a to 153c detects a new connection state, and stores the detected connection state in each of the control tables 171 to 178. The update instruction of each control table 171 to 178 from the controller 114 to each expander 115, 118, 151a to 151c, 153a to 153c is, for example, an instruction path provided separately from the data transmission paths 121 and 122. Done with.
 エクスパンダ151c、エクスパンダ153a~153cは、コントローラ114との間のデータ伝送経路が途絶しているため、各制御テーブル174,176,177,178には、格納されているデータが削除された後、新たな接続状態に関するデータが格納されていない。または、このとき、各制御テーブル174,176,177,178には、格納されているデータが削除された後、接続状態が無効であることを示すデータが格納されてもよい。 Since the data transmission path between the expander 151c and the expanders 153a to 153c is disconnected from the controller 114, the data stored in the control tables 174, 176, 177, and 178 is deleted. No data relating to the new connection state is stored. Alternatively, at this time, each control table 174, 176, 177, 178 may store data indicating that the connection state is invalid after the stored data is deleted.
 [ステップS101]コントローラ114が、ステップS100で更新された制御テーブルを全て収集する。収集された制御テーブルは、メモリ161に格納される。
 [ステップS102]コントローラ114が、収集した制御テーブル171~178を参照し、記憶装置113,155a~155cのうち、データ伝送経路121およびデータ伝送経路122のいずれからもデータアクセス不能な記憶装置が存在するか否かを判定する。存在する場合、コントローラ114は、処理をステップS103に進める。存在しない場合、コントローラ114は処理を終了する。
[Step S101] The controller 114 collects all the control tables updated in step S100. The collected control table is stored in the memory 161.
[Step S102] The controller 114 refers to the collected control tables 171 to 178, and among the storage devices 113 and 155a to 155c, there is a storage device that cannot access data from either the data transmission path 121 or the data transmission path 122. It is determined whether or not to do. If it exists, the controller 114 proceeds with the process to step S103. If not, the controller 114 ends the process.
 ここで、データアクセス不能な記憶装置が存在する場合は、すなわち、エクスパンダ115,151a~151cのうちの少なくとも1つとコントローラ114との通信が途絶し、かつ、エクスパンダ118,153a~153cのうちの少なくとも1つとコントローラ114との通信が途絶した場合である。 Here, when there is a storage device inaccessible to data, that is, communication between at least one of the expanders 115 and 151a to 151c and the controller 114 is interrupted, and among the expanders 118 and 153a to 153c. This is a case where communication between at least one of the above and the controller 114 is interrupted.
 図9に示す例の場合、コントローラ114は、図10に示す制御テーブル171~178を参照し、記憶装置155cについて、コントローラ114からのデータアクセスが不能であると判定する。 In the case of the example shown in FIG. 9, the controller 114 refers to the control tables 171 to 178 shown in FIG. 10, and determines that the data access from the controller 114 is impossible for the storage device 155c.
 すなわち、コントローラ114は、データ伝送経路121についてはエクスパンダ151cとの間で通信途絶し、データ伝送経路122についてはエクスパンダ153bとの間で通信途絶しているため、記憶装置155cについてデータアクセス不能と判定する。 That is, since the controller 114 has lost communication with the expander 151c for the data transmission path 121 and has lost communication with the expander 153b for the data transmission path 122, data cannot be accessed for the storage device 155c. Is determined.
 [ステップS103]データアクセス不能な記憶装置が存在すると判定した場合、コントローラ114が、収集した制御テーブル171~178を参照し、データ伝送経路121またはデータ伝送経路122において通信可能な最遠端のエクスパンダを検出する。 [Step S103] If it is determined that there is a storage device inaccessible to data, the controller 114 refers to the collected control tables 171 to 178 and refers to the collected data in the data transmission path 121 or the data transmission path 122. Detect pandas.
 図9に示す例の場合、コントローラ114は、図10に示す制御テーブル171~178を参照し、「状態(1)」が「Enable」とされている「ポート」のうち、最遠端の「DE(2)EXP(0)」を検出する。これにより、コントローラ114は、エクスパンダ151bを通信可能な最遠端のエクスパンダとして検出する。 In the example shown in FIG. 9, the controller 114 refers to the control tables 171 to 178 shown in FIG. 10, and among the “ports” whose “state (1)” is “Enable”, “ DE (2) EXP (0) "is detected. Thus, the controller 114 detects the expander 151b as the farthest expander that can communicate.
 [ステップS104]コントローラ114が、ステップS103で検出した最遠端のエクスパンダに対して、接続しているエクスパンダ間データ伝送経路を開通するよう指示する。これにより、最遠端のエクスパンダに接続されたエクスパンダ間データ伝送経路が開通する。 [Step S104] The controller 114 instructs the expander at the farthest end detected in Step S103 to open the connected inter-expander data transmission path. As a result, the inter-expander data transmission path connected to the expander at the farthest end is opened.
 図9に示す例の場合、最遠端のエクスパンダはエクスパンダ151bであるので、コントローラ114は、エクスパンダ151bに対して、エクスパンダ間データ伝送経路158bを開通するよう指示する。開通指示は、例えば、データ伝送経路121、または、他に設けられた指示経路を介して行われる。これにより、図11に示すように、エクスパンダ間データ伝送経路158bが開通する。エクスパンダ間データ伝送経路158bが開通したことで、エクスパンダ間データ伝送経路158bを介して、エクスパンダ153b,153cとコントローラ114との通信が可能となる。 In the example shown in FIG. 9, since the farthest end expander is the expander 151b, the controller 114 instructs the expander 151b to open the inter-expander data transmission path 158b. The opening instruction is performed, for example, through the data transmission path 121 or an instruction path provided elsewhere. As a result, the inter-expander data transmission path 158b is opened as shown in FIG. By opening the inter-expander data transmission path 158b, the expanders 153b and 153c and the controller 114 can communicate with each other via the inter-expander data transmission path 158b.
 [ステップS105]コントローラ114が、エクスパンダ115,118,151a~151c、153a~153c全てに対して、制御テーブル171~178の更新を指示する。 [Step S105] The controller 114 instructs the expanders 115, 118, 151a to 151c, and 153a to 153c to update the control tables 171 to 178.
 図12は、図11に示す状態においてステップS105の指示に基づいて更新された制御テーブル171~178の一例である。図12(A)は、制御テーブル171である。図12(B)は、制御テーブル172である。図12(C)は、制御テーブル173である。図12(D)は、制御テーブル174である。図12(E)は、制御テーブル175である。図12(F)は、制御テーブル176である。図12(G)は、制御テーブル177である。図12(H)は、制御テーブル178である。 FIG. 12 is an example of the control tables 171 to 178 updated based on the instruction in step S105 in the state shown in FIG. FIG. 12A shows the control table 171. FIG. 12B shows the control table 172. FIG. 12C shows the control table 173. FIG. 12D shows the control table 174. FIG. 12E shows the control table 175. FIG. 12F shows the control table 176. FIG. 12G shows the control table 177. FIG. 12H shows the control table 178.
 エクスパンダ間データ伝送経路158bが開通したことで、エクスパンダ153bとエクスパンダ151bとの間が接続されたため、例えば、制御テーブル175が次のように更新される。すなわち、制御テーブル175において、「DE(2)EXP(1)」の「状態(1)」が、図10では「Disable」であったものが、「Enable」となる。また、エクスパンダ153b,153cとコントローラ114との通信が可能となるため、制御テーブル176,178において、図10ではデータが格納されていなかったものが、新たな接続状態が格納される。 Since the inter-expander data transmission path 158b is opened, the expander 153b and the expander 151b are connected. For example, the control table 175 is updated as follows. That is, in the control table 175, the “state (1)” of “DE (2) EXP (1)” that is “Disable” in FIG. 10 becomes “Enable”. Further, since communication between the expanders 153b and 153c and the controller 114 becomes possible, the new connection state is stored in the control tables 176 and 178, in which data is not stored in FIG.
 [ステップS106]コントローラ114が、制御テーブル171~178を全て収集する。収集された制御テーブル171~178はメモリ161に格納される。
 [ステップS107]コントローラ114が、収集した制御テーブル171~178を参照し、各記憶装置113,155a~155cに対して、記憶装置とコントローラ114との間のデータ伝送経路が1つであるかどうかを判定する。データ伝送経路が1つである場合、コントローラ114は、処理を終了する。データ伝送経路が1つではない場合、すなわち、同一記憶装置に対するデータ伝送経路が重複している場合、コントローラ114は処理をステップS108に進める。
[Step S106] The controller 114 collects all the control tables 171 to 178. The collected control tables 171 to 178 are stored in the memory 161.
[Step S107] The controller 114 refers to the collected control tables 171 to 178, and determines whether or not there is one data transmission path between the storage device and the controller 114 for each of the storage devices 113 and 155a to 155c. Determine. If there is one data transmission path, the controller 114 ends the process. When the number of data transmission paths is not one, that is, when the data transmission paths for the same storage device overlap, the controller 114 proceeds with the process to step S108.
 図11に示す例の場合、コントローラ114は、図12に示す制御テーブル171~178を参照する。そして、コントローラ114は、例えば、制御テーブル175において、「DE(2)EXP(0)」および「DE(2)EXP(1)」について、「Disk」が共に「C」となり、「状態(2)」が共に「Enable」となっていることを検出する。 In the case of the example shown in FIG. 11, the controller 114 refers to the control tables 171 to 178 shown in FIG. For example, in the control table 175, the controller 114 sets “Disk” to “C” for “DE (2) EXP (0)” and “DE (2) EXP (1)”, and “Status (2 ) ”Are both“ Enable ”.
 これにより、コントローラ114は、記憶装置155bに対して、エクスパンダ151bを介するデータ伝送経路と、エクスパンダ153bを介するデータ伝送経路とが重複していると判定する。 Thereby, the controller 114 determines that the data transmission path via the expander 151b and the data transmission path via the expander 153b overlap with the storage device 155b.
 [ステップS108]コントローラ114が、記憶装置への重複したデータ伝送経路のうち、遠方のエクスパンダを経由するデータ伝送経路を閉塞する。ここで、遠方のエクスパンダとは、コントローラ114からの段数が多い方のエクスパンダを指す。 [Step S108] The controller 114 blocks the data transmission path that passes through the distant expander among the overlapping data transmission paths to the storage device. Here, the far expander refers to an expander having a larger number of stages from the controller 114.
 図11に示す例の場合、エクスパンダ153b(4段目)の方が、エクスパンダ151b(3段目)よりも遠方、すなわち、コントローラ114からの段数が多い。このため、コントローラ114は、図13に示すように、エクスパンダ153bを介する記憶装置155bへのデータ伝送経路を閉塞する。すなわち、コントローラ114は、エクスパンダ153bと記憶装置155bとの間のデータ伝送経路を閉塞する。 In the case of the example shown in FIG. 11, the expander 153b (fourth stage) is farther than the expander 151b (third stage), that is, the number of stages from the controller 114 is larger. For this reason, the controller 114 blocks the data transmission path to the storage device 155b via the expander 153b as shown in FIG. That is, the controller 114 closes the data transmission path between the expander 153b and the storage device 155b.
 [ステップS109]コントローラ114が、エクスパンダ115,118,151a~151c,153a~153c全てに対して、制御テーブル171~178の更新を指示して処理を終了する。 [Step S109] The controller 114 instructs the expanders 115, 118, 151a to 151c, and 153a to 153c to update the control tables 171 to 178, and ends the processing.
 図14は、図13に示す状態において更新された制御テーブル171~178の一例である。図14(A)は、制御テーブル171である。図14(B)は、制御テーブル172である。図14(C)は、制御テーブル173である。図14(D)は、制御テーブル174である。図14(E)は、制御テーブル175である。図14(F)は、制御テーブル176である。図14(G)は、制御テーブル177である。図14(H)は、制御テーブル178である。 FIG. 14 is an example of the control tables 171 to 178 updated in the state shown in FIG. FIG. 14A shows the control table 171. FIG. 14B shows the control table 172. FIG. 14C shows the control table 173. FIG. 14D shows the control table 174. FIG. 14E shows the control table 175. FIG. 14F is a control table 176. FIG. 14G shows the control table 177. FIG. 14H is the control table 178.
 エクスパンダ153bと記憶装置155bとの間のデータ伝送経路が閉塞されたため、例えば、制御テーブル175において、「DE(2)EXP(1)」の「状態(2)」が「Disable」となる。 Since the data transmission path between the expander 153b and the storage device 155b is blocked, for example, in the control table 175, the “state (2)” of “DE (2) EXP (1)” becomes “Disable”.
 以上の処理により、図9に示すようにエクスパンダ151cおよびエクスパンダ153aに異常が発生している場合でも、図15に示すように、コントローラ114から各記憶装置113,155a~155cにデータアクセスすることができる。 As a result of the above processing, even when an abnormality occurs in the expander 151c and the expander 153a as shown in FIG. 9, the controller 114 accesses the storage devices 113 and 155a to 155c as shown in FIG. be able to.
 すなわち、図15に示すように、コントローラ114と各記憶装置113,155a~155cとの間のデータ伝送は、データ伝送経路141を介して行われる。つまり、記憶装置155cは、エクスパンダ152b、エクスパンダ間データ伝送経路158b、エクスパンダ153b、エクスパンダ153cを介してデータアクセスされる。また、同様に、コントローラ117と各記憶装置113,155a~155cとの間のデータ伝送は、データ伝送経路142を介して行われる。つまり、コントローラ117は、各記憶装置155a~155cに対して、異常を生じているエクスパンダ153aを介することなく、エクスパンダ115を介して行われる。 That is, as shown in FIG. 15, data transmission between the controller 114 and each of the storage devices 113 and 155a to 155c is performed via the data transmission path 141. That is, the storage device 155c is accessed through the expander 152b, the inter-expander data transmission path 158b, the expander 153b, and the expander 153c. Similarly, data transmission between the controller 117 and each of the storage devices 113 and 155a to 155c is performed via the data transmission path 142. In other words, the controller 117 performs the storage device 155a to 155c via the expander 115 without passing through the expander 153a in which an abnormality has occurred.
 次に、各エクスパンダ151a~151c,153a~153cの処理手順について説明する。
 図16は、第2の実施の形態に係るエクスパンダの処理手順の一例を示すフローチャートである。
Next, the processing procedure of each of the expanders 151a to 151c and 153a to 153c will be described.
FIG. 16 is a flowchart illustrating an example of an expander processing procedure according to the second embodiment.
 以下に示す処理は、各エクスパンダ151a~151c,153a~153cが、コントローラ114またはコントローラ117から、エクスパンダ間データ伝送経路の開通指示を検出することで開始される。 The processing shown below is started when each of the expanders 151a to 151c and 153a to 153c detects an instruction to open an inter-expander data transmission path from the controller 114 or the controller 117.
 なお、エクスパンダ151a~151c,153a~153cは互いに同様の処理を行うため、ここでは、代表してエクスパンダ151aについて説明する。
 [ステップS200]エクスパンダ151aが、自装置のエクスパンダ間ポート156aを有効にする処理を行う。
Since the expanders 151a to 151c and 153a to 153c perform the same processing, the expander 151a will be described as a representative here.
[Step S200] The expander 151a performs processing for enabling the inter-expander port 156a of its own apparatus.
 [ステップS201]エクスパンダ151aが、自装置のエクスパンダ間ポート156aを有効にする処理に成功したかどうかを判定する。処理が成功した場合、エクスパンダ151aは、処理をステップS202に進める。処理が成功しなかった場合、エクスパンダ151aは、処理をステップS206に進める。 [Step S201] The expander 151a determines whether or not the processing for enabling the inter-expander port 156a of its own device has succeeded. If the process is successful, the expander 151a advances the process to step S202. If the process is not successful, the expander 151a advances the process to step S206.
 [ステップS202]エクスパンダ151aが、対向装置であるエクスパンダ153aとの間の、通信経路159aによる通信の準備を行う。
 [ステップS203]エクスパンダ151aが、通信経路159aを介して、対向装置であるエクスパンダ153aのエクスパンダ間ポート157aを有効にする処理を行う。エクスパンダ153aがエクスパンダ間ポート157aを有効にすることで、エクスパンダ間データ伝送経路158aが開通する。
[Step S202] The expander 151a prepares for communication with the expander 153a, which is the opposite device, via the communication path 159a.
[Step S203] The expander 151a performs processing for enabling the inter-expander port 157a of the expander 153a, which is the opposite device, via the communication path 159a. When the expander 153a enables the inter-expander port 157a, the inter-expander data transmission path 158a is opened.
 [ステップS204]エクスパンダ151aが、エクスパンダ間データ伝送経路158aの開通処理に成功したかどうかを判定する。エクスパンダ間データ伝送経路158aの開通処理が成功した場合、エクスパンダ151aは、処理をステップS205に進める。エクスパンダ間データ伝送経路158aの開通処理が成功しなかった場合、エクスパンダ151aは、処理をステップS206に進める。 [Step S204] The expander 151a determines whether the opening process of the inter-expander data transmission path 158a is successful. When the opening process of the inter-expander data transmission path 158a is successful, the expander 151a advances the process to step S205. When the opening process of the inter-expander data transmission path 158a is not successful, the expander 151a advances the process to step S206.
 [ステップS205]エクスパンダ151aが、コントローラ114またはコントローラ117へ、エクスパンダ間データ伝送経路158aの開通処理の成功を通知して処理を終了する。 [Step S205] The expander 151a notifies the controller 114 or the controller 117 of the success of the opening process of the inter-expander data transmission path 158a and ends the process.
 [ステップS206]エクスパンダ151aが、コントローラ114またはコントローラ117へ、エクスパンダ間データ伝送経路158aの開通処理の失敗を通知して処理を終了する。 [Step S206] The expander 151a notifies the controller 114 or the controller 117 of the failure of the opening process of the inter-expander data transmission path 158a and ends the processing.
 次に、エクスパンダ間データ伝送経路158a~158cの開通処理の手順について、シーケンス図を用いて説明する。
 図17は、第2の実施の形態に係るエクスパンダ間データ伝送経路の開通処理の手順の一例を示すシーケンス図である。
Next, the procedure for opening the inter-expander data transmission paths 158a to 158c will be described with reference to a sequence diagram.
FIG. 17 is a sequence diagram illustrating an example of a procedure for opening an inter-expander data transmission path according to the second embodiment.
 以下に示す処理は、各エクスパンダ151a~151c,153a~153cが、接続状態の変化を検出することで開始される。ここでは、例として、データ伝送経路121に接続されたエクスパンダ151a~151cのいずれかが、接続状態の変化を検出したものとする。なお、データ伝送経路122に接続されたエクスパンダ153a~153cは、接続状態の変化を検出していないものとする。 The following processing is started when each of the expanders 151a to 151c and 153a to 153c detects a change in the connection state. Here, as an example, it is assumed that any of the expanders 151a to 151c connected to the data transmission path 121 has detected a change in the connection state. It is assumed that the expanders 153a to 153c connected to the data transmission path 122 have not detected a change in connection state.
 なお、初期状態として、エクスパンダ間データ伝送経路158a~158cは全て閉塞している。また、コントローラ114,117は同様の処理を行うため、ここでは、代表して、コントローラ114が主として処理を行う場合について説明する。 As an initial state, the inter-expander data transmission paths 158a to 158c are all blocked. Further, since the controllers 114 and 117 perform the same processing, here, a case where the controller 114 mainly performs processing will be described as a representative.
 [ステップS300]エクスパンダ151a~151cのうち、接続状態の変化を検出したエクスパンダが、接続状態の変化をコントローラ114に通知する。
 [ステップS301]コントローラ114が、制御テーブルの更新を各エクスパンダ151a~151cに指示する。
[Step S300] Among the expanders 151a to 151c, the expander that has detected the change in the connection state notifies the controller 114 of the change in the connection state.
[Step S301] The controller 114 instructs the expanders 151a to 151c to update the control table.
 [ステップS302]各エクスパンダ151a~151cが、制御テーブル173,175,177を更新する。
 [ステップS303]各エクスパンダ151a~151cが、制御テーブル173,175,177のデータをコントローラ114に通知する。
[Step S302] Each of the expanders 151a to 151c updates the control tables 173, 175, and 177.
[Step S303] The expanders 151a to 151c notify the controller 114 of the data in the control tables 173, 175, and 177.
 [ステップS304]コントローラ114が、通信可能な最遠端のエクスパンダ(以下、最遠端エクスパンダと称す)に対して、接続されたエクスパンダ間データ伝送経路を開通するよう要求する。なお、ここでは、エクスパンダ151a~151cのうちのいずれかが、最遠端エクスパンダであるものとしている。 [Step S304] The controller 114 requests the expander at the farthest end capable of communication (hereinafter referred to as the farthest end expander) to open the connected inter-expander data transmission path. Here, any of the expanders 151a to 151c is assumed to be the farthest end expander.
 [ステップS305]コントローラ114からの要求を受け、最遠端エクスパンダが、自装置のエクスパンダ間ポートを有効にする。
 [ステップS306]最遠端エクスパンダが、エクスパンダ153a~153cのうち対向するエクスパンダ(以下、対向装置と称する)に対して、エクスパンダ間ポートを有効にするよう要求する。
[Step S305] Upon receiving a request from the controller 114, the farthest end expander validates the inter-expander port of its own device.
[Step S306] The farthest end expander requests a corresponding expander (hereinafter referred to as a counter device) among the expanders 153a to 153c to validate the inter-expander port.
 [ステップS307]対向装置が、自装置のエクスパンダ間ポートを有効にする。
 [ステップS308]対向装置が、自装置のエクスパンダ間ポートを有効にする処理の完了を最遠端エクスパンダに通知する。
[Step S307] The opposing device validates the inter-expander port of its own device.
[Step S308] The opposite device notifies the farthest end expander of the completion of the process of enabling the inter-expander port of the own device.
 [ステップS309]最遠端エクスパンダが、エクスパンダ間データ伝送経路の開通処理の成功をコントローラ114に通知する。
 [ステップS310]エクスパンダ間データ伝送経路の開通処理に伴い、エクスパンダ151a~151c,153a~153cのうち、接続状態の変化を検出したエクスパンダが、接続状態の変化をコントローラ114に通知する。
[Step S309] The farthest end expander notifies the controller 114 that the inter-expander data transmission path has been successfully opened.
[Step S310] In accordance with the opening process of the inter-expander data transmission path, the expander that detects the change in the connection state among the expanders 151a to 151c and 153a to 153c notifies the controller 114 of the change in the connection state.
 [ステップS311]接続状態変化の通知に応じて、コントローラ114が、各エクスパンダ151a~151c,153a~153cに、制御テーブル173~178の更新を指示する。 [Step S311] In response to the notification of the connection state change, the controller 114 instructs the expanders 151a to 151c and 153a to 153c to update the control tables 173 to 178.
 [ステップS312]各エクスパンダ151a~151c,153a~153cが、制御テーブル173~178を更新する。
 [ステップS313]各エクスパンダ151a~151c,153a~153cが、制御テーブル173~178をコントローラ114に通知する。
[Step S312] The expanders 151a to 151c and 153a to 153c update the control tables 173 to 178.
[Step S313] The expanders 151a to 151c and 153a to 153c notify the controller 114 of the control tables 173 to 178.
 以上説明してきたように、ストレージシステム100では、コントローラ114またはコントローラ117が、データ伝送経路121およびデータ伝送経路122のいずれからもデータアクセス不能な記憶装置を検出すると、次の処理を実行する。なお、ストレージシステム100では、記憶装置自体が故障している場合であっても、記憶装置自体が故障しているのか、または、エクスパンダと記憶装置との間のデータ伝送経路が途絶しているのかの判定ができないため、次の処理を実行する。 As described above, in the storage system 100, when the controller 114 or the controller 117 detects a storage device that cannot access data from either the data transmission path 121 or the data transmission path 122, the following processing is executed. In the storage system 100, even if the storage device itself has failed, the storage device itself has failed or the data transmission path between the expander and the storage device has been interrupted. Since it is not possible to determine whether or not, the following processing is executed.
 すなわち、コントローラ114またはコントローラ117は、エクスパンダ間データ伝送経路158a~158cのうち少なくとも1つのデータ伝送経路を介した通信の開通指示を、各エクスパンダ151a~151c,153a~153cのいずれかに送信する。 That is, the controller 114 or the controller 117 transmits a communication opening instruction via at least one data transmission path among the inter-expander data transmission paths 158a to 158c to any one of the expanders 151a to 151c and 153a to 153c. To do.
 これにより、複数のエクスパンダの異常によりデータ伝送経路121およびデータ伝送経路122に障害等が発生してしまった場合でも、コントローラ114またはコントローラ117から各記憶装置113,155a~155cへのデータアクセスが可能となる。 Thus, even when a failure or the like occurs in the data transmission path 121 and the data transmission path 122 due to an abnormality in a plurality of expanders, data access from the controller 114 or the controller 117 to each of the storage devices 113 and 155a to 155c is possible. It becomes possible.
 また、ストレージシステム100では、エクスパンダ間データ伝送経路158a~158cは、コントローラ114またはコントローラ117からの指示に応じて開閉制御される。これにより、ループ状態のデータ伝送経路が生じてしまうことを抑制できる。 In the storage system 100, the inter-expander data transmission paths 158a to 158c are controlled to open and close in accordance with an instruction from the controller 114 or the controller 117. Thereby, it can suppress that the data transmission path | route of a loop state arises.
 さらに、ストレージシステム100では、コントローラ114またはコントローラ117が、複数のエクスパンダ間データ伝送経路158a~158cのうち、通信可能な最遠端のエクスパンダに接続されたエクスパンダ間データ伝送経路を選択して開通させる。 Further, in the storage system 100, the controller 114 or the controller 117 selects the inter-expander data transmission path connected to the farthest expander that can communicate among the plurality of inter-expander data transmission paths 158a to 158c. Open.
 最遠端のエクスパンダは、コントローラ114またはコントローラ117が、各制御テーブル171~178を参照し、コントローラ114またはコントローラ117からの段数が最も多いエクスパンダを特定することで検出される。 The expander at the farthest end is detected by the controller 114 or the controller 117 referring to the control tables 171 to 178 and specifying the expander having the largest number of stages from the controller 114 or the controller 117.
 これによれば、データ伝送経路121またはデータ伝送経路122のうち通信可能な箇所までのデータ伝送経路を最大限使用できる。これにより、効率的にコントローラ114またはコントローラ117から各記憶装置113,155a~155cへのデータアクセス経路を生成することが可能となる。 According to this, the data transmission path to the communicable part of the data transmission path 121 or the data transmission path 122 can be used to the maximum extent. Thereby, it is possible to efficiently generate a data access path from the controller 114 or the controller 117 to each of the storage devices 113 and 155a to 155c.
 このようにして、ストレージシステム100では、各記憶装置113,155a~155cへのデータアクセスの信頼性を向上させることが可能となる。
 ここで、ストレージシステム100に異常が発生した他の例について説明する。
In this way, in the storage system 100, it is possible to improve the reliability of data access to the storage devices 113 and 155a to 155c.
Here, another example in which an abnormality has occurred in the storage system 100 will be described.
 図18、図19は、第2の実施の形態に係るストレージシステムの状態の一例を示す図である。
 この例では、図18に示すように、コントローラ114とエクスパンダ115との間のデータ伝送経路121、エクスパンダ151c、および、エクスパンダ153cに異常が発生し、このうち、エクスパンダ151cの保守を行っている。
18 and 19 are diagrams illustrating an example of the state of the storage system according to the second embodiment.
In this example, as shown in FIG. 18, an abnormality occurs in the data transmission path 121, the expander 151c, and the expander 153c between the controller 114 and the expander 115. Of these, maintenance of the expander 151c is performed. Is going.
 この場合、この状態のままでは、コントローラ114は、各記憶装置113,155a,155bには、データ伝送経路134を介してデータアクセスできるが、記憶装置155cにはデータアクセスできない。 In this case, in this state, the controller 114 can access the storage devices 113, 155a, and 155b via the data transmission path 134, but cannot access the storage device 155c.
 ストレージシステム100では、この場合、データ伝送経路122において通信可能な最遠端のエクスパンダ153bに接続されたエクスパンダ間データ伝送経路158bが開通する。このため、図19に示すように、コントローラ114は、データ伝送経路135を介して記憶装置155cにデータアクセスすることが可能となる。 In this case, in the storage system 100, the inter-expander data transmission path 158b connected to the farthest expander 153b that can communicate in the data transmission path 122 is opened. For this reason, as shown in FIG. 19, the controller 114 can access the storage device 155 c via the data transmission path 135.
 [第3の実施の形態]
 次に、各ドライブエンクロージャ150a~150cに適用されるドライブエンクロージャの他の実施の形態を、第3の実施の形態として説明する。
[Third Embodiment]
Next, another embodiment of the drive enclosure applied to each drive enclosure 150a to 150c will be described as a third embodiment.
 図20は、第3の実施の形態に係るドライブエンクロージャの一例を示す図である。
 ドライブエンクロージャ200は、データ伝送経路121に接続されるエクスパンダ201と、データ伝送経路122に接続されるエクスパンダ202と、エクスパンダ間データ伝送経路203,204とを有する。
FIG. 20 is a diagram illustrating an example of a drive enclosure according to the third embodiment.
The drive enclosure 200 includes an expander 201 connected to the data transmission path 121, an expander 202 connected to the data transmission path 122, and inter-expander data transmission paths 203 and 204.
 ドライブエンクロージャ200は、図2に示した第2の実施の形態の各ドライブエンクロージャ150a~150cと比べて、以下の3点で異なる。第1点は、2つのエクスパンダ間データ伝送経路203,204を有している点である。第2点は、通信経路を備えていない点である。第3点は、4つのエクスパンダ間ポート205,206,207,208を有している点である。ドライブエンクロージャ200の他の構成は、各ドライブエンクロージャ150a~150cと同様である。すなわち、各エクスパンダ201,202はメモリ209,210を有し、各エクスパンダ201,202には記憶装置211が接続されている。 The drive enclosure 200 differs from the drive enclosures 150a to 150c of the second embodiment shown in FIG. 2 in the following three points. The first point is that there are two inter-expander data transmission paths 203 and 204. The second point is that no communication path is provided. The third point is that it has four inter-expander ports 205, 206, 207, 208. Other configurations of the drive enclosure 200 are the same as those of the drive enclosures 150a to 150c. That is, each expander 201, 202 has memories 209, 210, and a storage device 211 is connected to each expander 201, 202.
 エクスパンダ201は、エクスパンダ間ポート205,206を有し、エクスパンダ202は、エクスパンダ間ポート207,208を有する。エクスパンダ201は、エクスパンダ間ポート205,206を無効、および、有効にする処理を、エクスパンダ間ポート205,206間で独立して制御することができる。エクスパンダ202は、エクスパンダ間ポート207,208を無効、および、有効にする処理を、エクスパンダ間ポート207,208間で独立して制御することができる。 The expander 201 has inter-expander ports 205 and 206, and the expander 202 has inter-expander ports 207 and 208. The expander 201 can independently control the process of disabling and enabling the inter-expander ports 205 and 206 between the inter-expander ports 205 and 206. The expander 202 can independently control the inter-expander ports 207 and 208 to disable and enable the inter-expander ports 207 and 208.
 エクスパンダ間データ伝送経路203,204には、例えば、SASが用いられている。エクスパンダ間データ伝送経路203は、エクスパンダ間ポート205およびエクスパンダ間ポート207に接続され、エクスパンダ間データ伝送経路204は、エクスパンダ間ポート206およびエクスパンダ間ポート208に接続されている。 For example, SAS is used for the inter-expander data transmission paths 203 and 204. The inter-expander data transmission path 203 is connected to the inter-expander port 205 and the inter-expander port 207, and the inter-expander data transmission path 204 is connected to the inter-expander port 206 and the inter-expander port 208.
 初期状態において、エクスパンダ間ポート205,208は有効とされ、エクスパンダ間ポート206,207は無効とされている。すなわち、エクスパンダ間データ伝送経路203は、初期状態ではエクスパンダ201との間が有効状態となり、エクスパンダ202との間が無効状態となっている。エクスパンダ間データ伝送経路204は、初期状態ではエクスパンダ201との間が無効状態となり、エクスパンダ202との間が有効状態となっている。つまり、エクスパンダ間データ伝送経路203,204は、初期状態ではいずれも閉塞している。 In the initial state, the inter-expander ports 205 and 208 are valid, and the inter-expander ports 206 and 207 are invalid. That is, in the initial state, the inter-expander data transmission path 203 is valid between the expander 201 and invalid between the expander 202. The inter-expander data transmission path 204 is in an invalid state between the expander 201 and the expander 202 in an initial state. That is, the inter-expander data transmission paths 203 and 204 are both closed in the initial state.
 次に、各エクスパンダ201,202の処理手順について説明する。なお、エクスパンダ201,202は互いに同様の処理を行うため、ここでは、代表してエクスパンダ201の処理手順について説明する。 Next, the processing procedure of each expander 201, 202 will be described. Since the expanders 201 and 202 perform the same processing, the processing procedure of the expander 201 will be described here as a representative.
 図21は、第3の実施の形態に係るエクスパンダの処理手順の一例を示すフローチャートである。
 以下に示す処理は、エクスパンダ201が、コントローラ114またはコントローラ117から、エクスパンダ間データ伝送経路の開通指示を検出することで開始される。なお、コントローラ117から開通指示を検出する場合とは、すなわち、コントローラ117がエクスパンダ115を介してデータ伝送経路121に接続されている場合である。
FIG. 21 is a flowchart illustrating an example of an expander processing procedure according to the third embodiment.
The processing shown below is started when the expander 201 detects an instruction to open an inter-expander data transmission path from the controller 114 or the controller 117. The case where the opening instruction is detected from the controller 117 means that the controller 117 is connected to the data transmission path 121 via the expander 115.
 また、上述したように、初期状態において、エクスパンダ間ポート205,208は有効とされ、エクスパンダ間ポート206,207は無効とされている。
 [ステップS400]コントローラ114またはコントローラ117からの開通指示に応じて、エクスパンダ201が、自装置の無効状態にあるエクスパンダ間ポート206を有効にする。これにより、エクスパンダ間データ伝送経路204が開通する。
As described above, in the initial state, the inter-expander ports 205 and 208 are valid, and the inter-expander ports 206 and 207 are invalid.
[Step S400] In response to the opening instruction from the controller 114 or the controller 117, the expander 201 enables the inter-expander port 206 that is in an invalid state of its own apparatus. As a result, the inter-expander data transmission path 204 is opened.
 [ステップS401]エクスパンダ201が、自装置のエクスパンダ間ポート206を有効にする処理が成功したかどうかを判定する。処理が成功した場合、エクスパンダ201は処理をステップS402に進める。この場合、エクスパンダ間データ伝送経路204が開通している。処理が成功しなかった場合、エクスパンダ201は処理をステップS405に進める。 [Step S401] The expander 201 determines whether or not the process of enabling the inter-expander port 206 of its own device has succeeded. If the process is successful, the expander 201 advances the process to step S402. In this case, the inter-expander data transmission path 204 is open. If the process is not successful, the expander 201 advances the process to step S405.
 [ステップS402]エクスパンダ201が、開通したエクスパンダ間データ伝送経路204を介して、対向装置であるエクスパンダ202のエクスパンダ間ポート207を有効にする処理を行う。これにより、エクスパンダ間データ伝送経路203が開通する。 [Step S402] The expander 201 performs a process of enabling the inter-expander port 207 of the expander 202 which is the opposite device via the opened inter-expander data transmission path 204. As a result, the inter-expander data transmission path 203 is opened.
 [ステップS403]エクスパンダ201が、エクスパンダ間データ伝送経路203の開通処理が成功したかどうかを判定する。成功した場合、エクスパンダ201は、処理をステップS404に進める。成功しなかった場合、エクスパンダ201は、処理をステップS405に進める。 [Step S403] The expander 201 determines whether the opening process of the inter-expander data transmission path 203 is successful. If successful, the expander 201 advances the process to step S404. If unsuccessful, the expander 201 advances the process to step S405.
 [ステップS404]エクスパンダ201が、コントローラ114または117へ、開通処理の成功を通知して処理を終了する。
 [ステップS405]エクスパンダ201が、コントローラ114または117へ、開通処理の失敗を通知して処理を終了する。
[Step S404] The expander 201 notifies the controller 114 or 117 of the success of the opening process and ends the process.
[Step S405] The expander 201 notifies the controller 114 or 117 of the failure of the opening process and ends the process.
 なお、エクスパンダ間データ伝送経路204のみを開通させる場合、エクスパンダ間ポート207を有効にする処理は行わなくてよい。
 このように、ドライブエンクロージャ200では、エクスパンダ間データ伝送経路は、初期状態でエクスパンダ201との間が有効状態にあり、エクスパンダ202との間が無効状態にあるエクスパンダ間データ伝送経路203を含む。さらに、エクスパンダ間データ伝送経路は、初期状態でエクスパンダ202との間が有効状態にあり、エクスパンダ201との間が無効状態にあるエクスパンダ間データ伝送経路204を含む。
Note that when only the inter-expander data transmission path 204 is opened, the process of enabling the inter-expander port 207 need not be performed.
As described above, in the drive enclosure 200, the inter-expander data transmission path 203 is in the valid state between the expander 201 and the inter-expander data transmission path 203 in the invalid state with the expander 202 in the initial state. including. Further, the inter-expander data transmission path includes an inter-expander data transmission path 204 that is in a valid state with the expander 202 and in an invalid state with the expander 201 in the initial state.
 そして、エクスパンダ201,202のそれぞれは、エクスパンダ間データ伝送経路203,204において、無効状態にあるエクスパンダとの間を有効状態とすることで、エクスパンダ間データ伝送経路を開通させる。 Then, each of the expanders 201 and 202 opens the inter-expander data transmission path by enabling the inter-expander data transmission paths 203 and 204 with the expander in the invalid state.
 これによれば、エクスパンダ201とエクスパンダ202との間に、開通処理のための信号を伝送する通信経路を設けることなく、エクスパンダ間のデータ伝送経路を開通させることができる。 According to this, a data transmission path between the expanders can be opened without providing a communication path for transmitting a signal for opening processing between the expander 201 and the expander 202.
 上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。 The above merely shows the principle of the present invention. In addition, many modifications and changes can be made by those skilled in the art, and the present invention is not limited to the precise configuration and application shown and described above, and all corresponding modifications and equivalents may be And the equivalents thereof are considered to be within the scope of the invention.
 10,100 ストレージシステム
 11a,11b,11c,113,155a,155b,155c,211 記憶装置
 12,114,117 コントローラ
 13,14,17a,17b,17c,19,121,122,131,132,133,134,135,141,142 データ伝送経路
 15a,15b,15c,16a,16b,16c 中継装置
 18a,18b,18c ストレージ装置
 110 コントローラエンクロージャ
 111,112 コントロールモジュール
 115,118,151a,151b,151c,153a,153b,153c,201,202 エクスパンダ
 116,119,152a,152b,152c,154a,154b,154c,161,164,209,210 メモリ
 150a,150b,150c,200 ドライブエンクロージャ
 156a,156b,156c,157a,157b,157c,205,206,207,208 エクスパンダ間ポート
 158a,158b,158c,203,204 エクスパンダ間データ伝送経路
 159a,159b,159c 通信経路
 160,163 制御回路
 162,165 通信ポート
 171,172,173,174,175,176,177,178 制御テーブル
10, 100 Storage system 11a, 11b, 11c, 113, 155a, 155b, 155c, 211 Storage device 12, 114, 117 Controller 13, 14, 17a, 17b, 17c, 19, 121, 122, 131, 132, 133 134, 135, 141, 142 Data transmission path 15a, 15b, 15c, 16a, 16b, 16c Relay device 18a, 18b, 18c Storage device 110 Controller enclosure 111, 112 Control module 115, 118, 151a, 151b, 151c, 153a, 153b, 153c, 201, 202 Expander 116, 119, 152a, 152b, 152c, 154a, 154b, 154c, 161, 164, 209, 210 Memory 150a, 150 , 150c, 200 Drive enclosure 156a, 156b, 156c, 157a, 157b, 157c, 205, 206, 207, 208 Inter-expander port 158a, 158b, 158c, 203, 204 Inter-expander data transmission path 159a, 159b, 159c Path 160, 163 Control circuit 162, 165 Communication port 171, 172, 173, 174, 175, 176, 177, 178 Control table

Claims (11)

  1.  記憶装置と、第1のデータ伝送経路に接続され、該記憶装置へのデータアクセスを中継する第1の中継装置と、第2のデータ伝送経路に接続され、外部からの指示に応じて開閉制御される第3のデータ伝送経路で該第1の中継装置に接続され、該記憶装置へのデータアクセスを中継する第2の中継装置とをそれぞれが有する複数のストレージ装置と、
     前記複数のストレージ装置それぞれの第1の中継装置を直列に接続した第1のデータ伝送経路、および前記複数のストレージ装置それぞれの第2の中継装置を直列に接続した第2のデータ伝送経路に接続されており、前記複数のストレージ装置それぞれの第3のデータ伝送経路を介した通信を閉塞させて、前記第1のデータ伝送経路および第2のデータ伝送経路を介した記憶装置への接続状況を監視し、前記第1のデータ伝送経路および第2のデータ伝送経路のいずれからもデータアクセス不能な記憶装置を検出すると、少なくとも1つのストレージ装置の第3のデータ伝送経路を介した通信の開通指示を送信するコントローラと、
     を有するストレージシステム。
    A storage device, a first relay device connected to the first data transmission path and relaying data access to the storage device, and a second data transmission path connected to the storage device, and open / close control according to an instruction from the outside A plurality of storage devices each having a second relay device that is connected to the first relay device via a third data transmission path and relays data access to the storage device;
    Connected to a first data transmission path in which the first relay devices of each of the plurality of storage devices are connected in series, and to a second data transmission path in which the second relay devices of the plurality of storage devices are connected in series The communication status of each of the plurality of storage devices via the third data transmission path is blocked, and the connection status to the storage device via the first data transmission path and the second data transmission path is determined. When monitoring and detecting a storage device that is inaccessible to data from either the first data transmission path or the second data transmission path, an instruction to open communication via the third data transmission path of at least one storage apparatus And a controller to send
    Storage system.
  2.  前記コントローラは、前記第1のデータ伝送経路および第2のデータ伝送経路のいずれからもデータアクセス不能な記憶装置を検出すると、前記第1のデータ伝送経路あるいは第2のデータ伝送経路のいずれかを介して通信可能な最遠端のストレージ装置を検出し、検出した該ストレージ装置の第3のデータ伝送経路を介した通信を開通させることを特徴とする請求の範囲第1項記載のストレージシステム。 When the controller detects a storage device that is inaccessible to data from either the first data transmission path or the second data transmission path, the controller determines either the first data transmission path or the second data transmission path. 2. The storage system according to claim 1, wherein the farthest end storage device that can communicate with the storage device is detected, and communication via the third data transmission path of the detected storage device is opened.
  3.  前記複数のストレージ装置は、それぞれ前記第1のデータ伝送経路および第2のデータ伝送経路を介して通信可能な装置のデータを管理する制御テーブルを有し、
     前記コントローラは、前記複数のストレージ装置から前記制御テーブルのデータを収集して、収集した前記制御テーブルのデータに基づいて通信可能な最遠端のストレージ装置を検出することを特徴とする請求の範囲第2項記載のストレージシステム。
    Each of the plurality of storage devices has a control table for managing data of devices communicable via the first data transmission path and the second data transmission path,
    The controller collects data of the control table from the plurality of storage devices, and detects a farthest end storage device that can communicate based on the collected data of the control table. The storage system according to item 2.
  4.  ストレージ装置は、第1の中継装置と第2の中継装置とが、第3のデータ伝送経路とは異なる通信経路により接続されており、該第1の中継装置および第2の中継装置は、前記コントローラからの開通指示を受け取ると、該通信経路を介して前記コントローラからの開通指示を他方の中継装置に伝え、それぞれ自己の該第3のデータ伝送経路との間の接続を有効にすることを特徴とする請求の範囲第1項乃至第3項のいずれかに記載のストレージシステム。 In the storage device, the first relay device and the second relay device are connected by a communication path different from the third data transmission path, and the first relay device and the second relay device are When receiving the opening instruction from the controller, the opening instruction from the controller is transmitted to the other relay device via the communication path, and the connection with each of the third data transmission paths is made effective. The storage system according to any one of claims 1 to 3, wherein the storage system is characterized in that:
  5.  ストレージ装置の第3のデータ伝送経路は、
     初期状態において、接続された第1の中継装置と前記第3のデータ伝送経路との間が有効状態にあり、接続された第2の中継装置と前記第3のデータ伝送経路との間が無効状態にあり、初期状態から遷移して両端が有効状態となったときに開通する第4のデータ伝送経路と、
     初期状態において、接続された第2の中継装置と前記第3のデータ伝送経路との間が有効状態にあり、接続された第1の中継装置と前記第3のデータ伝送経路との間が無効状態にあり、初期状態から遷移して両端が有効状態となったときに開通する第5のデータ伝送経路と、を含み、
     ストレージ装置の第1の中継装置および第2の中継装置は、前記コントローラからの開通指示を受け取ると、前記第4のデータ伝送経路または第5のデータ伝送経路のうちデータ伝送経路と自装置との間が無効状態にある方のデータ伝送経路と自装置との間を有効状態に変更することで、前記第3のデータ伝送経路を開通させること、
     を特徴とする請求の範囲第1項乃至第3項のいずれかに記載のストレージシステム。
    The third data transmission path of the storage device is
    In an initial state, the connection between the connected first relay apparatus and the third data transmission path is in an effective state, and the connection between the connected second relay apparatus and the third data transmission path is invalid. A fourth data transmission path that is open when both ends are in a valid state after transition from the initial state,
    In an initial state, the connection between the connected second relay apparatus and the third data transmission path is in an effective state, and the connection between the connected first relay apparatus and the third data transmission path is invalid A fifth data transmission path that is open when both ends are in the valid state after transitioning from the initial state.
    When the first relay device and the second relay device of the storage apparatus receive the opening instruction from the controller, the data transmission path and the own apparatus among the fourth data transmission path and the fifth data transmission path Opening the third data transmission path by changing the effective state between the data transmission path in the invalid state and the own device;
    The storage system according to any one of claims 1 to 3, wherein:
  6.  前記コントローラは、第3のデータ伝送経路の開通指示を出したストレージ装置に対して、該ストレージ装置の第1の中継装置および第2の中継装置のうち、前記コントローラから遠方にある中継装置から該ストレージ装置内の記憶装置への接続の閉塞を指示し、
     ストレージ装置の第1の中継装置および第2の中継装置は、前記コントローラからの記憶装置への接続の閉塞の指示に応じて、該ストレージ装置内の記憶装置との間の接続を閉塞させることを特徴とする請求の範囲第1項乃至第5項のいずれかに記載のストレージシステム。
    The controller, with respect to the storage apparatus that has issued a third data transmission path opening instruction, out of the first relay apparatus and the second relay apparatus of the storage apparatus from the relay apparatus far from the controller. Instructing to close the connection to the storage device in the storage device,
    The first relay device and the second relay device of the storage device block the connection with the storage device in the storage device in response to an instruction to block the connection to the storage device from the controller. The storage system according to any one of claims 1 to 5, wherein the storage system is characterized in that:
  7.  記憶装置と、
     第1のデータ伝送経路に接続され、前記記憶装置へのデータアクセスを中継する第1の中継装置と、
     第2のデータ伝送経路に接続され、外部からの指示に応じて開閉制御される第3のデータ伝送経路で前記第1の中継装置に接続され、前記記憶装置へのデータアクセスを中継する第2の中継装置と、
     を有するストレージ装置。
    A storage device;
    A first relay device connected to the first data transmission path and relaying data access to the storage device;
    A second data relay is connected to the first relay device via a third data transmission route that is connected to the second data transmission route and controlled to be opened and closed according to an instruction from the outside, and relays data access to the storage device. Relay device,
    A storage device.
  8.  前記第1の中継装置と前記第2の中継装置とが、前記第3のデータ伝送経路とは異なる通信経路により接続されており、該第1の中継装置および第2の中継装置は、該第3のデータ伝送経路の開通指示を受け取ると、該通信経路を介して開通指示を他方の中継装置に伝え、それぞれ自己の該第3のデータ伝送経路との間の接続を有効にすることを特徴とする請求の範囲第7項記載のストレージ装置。 The first relay device and the second relay device are connected by a communication path different from the third data transmission path, and the first relay device and the second relay device are When receiving an instruction to open the third data transmission path, the opening instruction is transmitted to the other relay device via the communication path, and the connection with the third data transmission path is enabled. The storage device according to claim 7.
  9.  前記第3のデータ伝送経路は、
     接続された前記第1の中継装置との間が有効状態にあり、接続された前記第2の中継装置との間が無効状態にあり、両端が有効状態となったときに開通する第4のデータ伝送経路と、
     接続された前記第2の中継装置との間が有効状態にあり、接続された前記第1の中継装置との間が無効状態にあり、両端が有効状態となったときに開通する第5のデータ伝送経路と、を含み、
     前記第1および第2の中継装置は、前記第3のデータ伝送経路の開通指示を受け取ると、前記第4または第5のデータ伝送経路のうち無効状態にある方を有効状態に変更することで、前記第3のデータ伝送経路を開通させること、
     を特徴とする請求の範囲第7項記載のストレージ装置。
    The third data transmission path is:
    The fourth relay is opened when the connection with the first relay device connected is in the valid state, the connection with the second relay device connected is in the invalid state, and both ends are in the valid state. A data transmission path;
    The fifth relay is opened when the connection with the connected second relay device is in the valid state, the connection with the connected first relay device is in the invalid state, and both ends are in the valid state. Including a data transmission path,
    When the first and second relay apparatuses receive an instruction to open the third data transmission path, the first and second relay apparatuses change the invalid state of the fourth or fifth data transmission path to the valid state. Opening the third data transmission path;
    The storage apparatus according to claim 7, wherein:
  10.  記憶装置と、該記憶装置に冗長接続され、該記憶装置へのデータアクセスをそれぞれが中継する第1の中継装置および第2の中継装置の組とが、複数設けられ、
     複数の第1の中継装置が第1のデータ伝送経路で直列に接続され、
     複数の第2の中継装置が第2のデータ伝送経路で直列に接続され、
     各組を構成する第1の中継装置と第2の中継装置との間が開閉制御可能な第3のデータ伝送経路で接続された、
     ストレージシステムを制御するコントローラにおいて、
     前記第1のデータ伝送経路に接続する第1の通信ポートと、
     前記第2のデータ伝送経路に接続する第2の通信ポートと、
     複数の中継装置の組それぞれの第3のデータ伝送経路を介した通信を閉塞させて、前記第1のデータ伝送経路および第2のデータ伝送経路を介した記憶装置への接続状況を監視し、前記第1のデータ伝送経路および第2のデータ伝送経路のいずれからもデータアクセス不能な記憶装置を検出すると、少なくとも1つの中継装置の組の第3のデータ伝送経路を介した通信を開通させる制御回路と、
     を有することを特徴とするコントローラ。
    A plurality of storage devices and a set of first relay devices and second relay devices that are redundantly connected to the storage devices and each relay data access to the storage devices are provided,
    A plurality of first relay devices are connected in series via a first data transmission path,
    A plurality of second relay devices are connected in series via the second data transmission path,
    The first relay device and the second relay device that constitute each set are connected by a third data transmission path that can be controlled to open and close,
    In the controller that controls the storage system,
    A first communication port connected to the first data transmission path;
    A second communication port connected to the second data transmission path;
    Blocking communication through the third data transmission path of each of the plurality of relay apparatuses, monitoring the connection status to the storage device through the first data transmission path and the second data transmission path, Control for opening communication via a third data transmission path of at least one set of relay devices when a storage device that is inaccessible to data is detected from either the first data transmission path or the second data transmission path Circuit,
    The controller characterized by having.
  11.  前記制御回路は、少なくとも1つの第1の中継装置との通信が途絶し、かつ少なくとも1つの第2の中継装置との通信が途絶すると、前記第1のデータ伝送経路あるいは第2のデータ伝送経路のいずれかを介して通信可能な最遠端の中継装置の組を検出し、検出した該組を構成する第1の中継装置と第2の中継装置との間の第3のデータ伝送経路を開通させることを特徴とする請求の範囲第10項記載のコントローラ。 When communication with at least one first relay device is interrupted and communication with at least one second relay device is interrupted, the control circuit causes the first data transmission path or the second data transmission path to And detecting a third data transmission path between the first relay device and the second relay device constituting the detected pair. The controller according to claim 10, wherein the controller is opened.
PCT/JP2010/065317 2010-09-07 2010-09-07 Storage system, storage apparatus, and controller WO2012032607A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/065317 WO2012032607A1 (en) 2010-09-07 2010-09-07 Storage system, storage apparatus, and controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/065317 WO2012032607A1 (en) 2010-09-07 2010-09-07 Storage system, storage apparatus, and controller

Publications (1)

Publication Number Publication Date
WO2012032607A1 true WO2012032607A1 (en) 2012-03-15

Family

ID=45810232

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/065317 WO2012032607A1 (en) 2010-09-07 2010-09-07 Storage system, storage apparatus, and controller

Country Status (1)

Country Link
WO (1) WO2012032607A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013246713A (en) * 2012-05-28 2013-12-09 Fujitsu Ltd Relay device, connection management method and information communication system
JP2015156102A (en) * 2014-02-20 2015-08-27 富士通株式会社 Information processing system and control method of the same
JP2015525910A (en) * 2012-07-17 2015-09-07 株式会社日立製作所 Disk array system and connection method
US10725874B2 (en) 2017-08-16 2020-07-28 Fujitsu Limited Storage system and connection control device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272702A (en) * 2006-03-31 2007-10-18 Nec Corp Disk array subsystem, and redundancy maintenance method and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272702A (en) * 2006-03-31 2007-10-18 Nec Corp Disk array subsystem, and redundancy maintenance method and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013246713A (en) * 2012-05-28 2013-12-09 Fujitsu Ltd Relay device, connection management method and information communication system
JP2015525910A (en) * 2012-07-17 2015-09-07 株式会社日立製作所 Disk array system and connection method
JP2015156102A (en) * 2014-02-20 2015-08-27 富士通株式会社 Information processing system and control method of the same
US10725874B2 (en) 2017-08-16 2020-07-28 Fujitsu Limited Storage system and connection control device

Similar Documents

Publication Publication Date Title
JP4054509B2 (en) Field device control system and computer-readable storage medium
EP2677430B1 (en) Relay device, connection management method, and information communication system
WO2012032607A1 (en) Storage system, storage apparatus, and controller
CN103856357A (en) Stack system fault processing method and stack system
CN107533527A (en) Master/slave management for Redundant process controller module
WO2010140189A1 (en) Storage system and control methods for the same
US20160246746A1 (en) Sas configuration management
JP6429188B2 (en) Relay device
JP5706347B2 (en) Redundant control system
JP2014106940A (en) Storage device, and data transfer method between modules
JP5332257B2 (en) Server system, server management method, and program thereof
US9542273B2 (en) Storage control apparatus, storage control system, and storage control method for failure detection and configuration of cascaded storage cabinets
JP2008009794A (en) Programmable electronic controller, and communication control method for programmable electronic apparatus
JP4511455B2 (en) Fiber channel switch and computer system using the same
US9838285B2 (en) Connection monitoring device and connection monitoring method
JP2007334764A (en) Nas system and information processing method of nas system
KR101345512B1 (en) Digital Protective Relay with Duplex Function
JP2007164722A (en) Base unit for cpu duplexing and cpu duplexing system
CN102355370A (en) Method for Ethernet board-level protection, device and system
JP4788597B2 (en) Programmable controller redundant system
JP2008197907A (en) Monitoring network system and data backup method
JP4348485B2 (en) Process control device
JP5640941B2 (en) Process data monitoring system
US11023337B2 (en) Information processing system and control apparatus
JP2015207239A (en) Control system, control device, and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10856957

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10856957

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP