WO2016046943A1 - Dispositif de stockage et procédé de contrôle de dispositif de stockage - Google Patents

Dispositif de stockage et procédé de contrôle de dispositif de stockage Download PDF

Info

Publication number
WO2016046943A1
WO2016046943A1 PCT/JP2014/075474 JP2014075474W WO2016046943A1 WO 2016046943 A1 WO2016046943 A1 WO 2016046943A1 JP 2014075474 W JP2014075474 W JP 2014075474W WO 2016046943 A1 WO2016046943 A1 WO 2016046943A1
Authority
WO
WIPO (PCT)
Prior art keywords
transfer
sas
time
storage
postponement
Prior art date
Application number
PCT/JP2014/075474
Other languages
English (en)
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/JP2014/075474 priority Critical patent/WO2016046943A1/fr
Publication of WO2016046943A1 publication Critical patent/WO2016046943A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices

Definitions

  • the present invention relates to a storage apparatus.
  • the storage device includes a controller that controls data transfer between a host computer connected to the storage device and a storage medium in the storage device.
  • the controller includes a front-end interface connected to the host computer, a back-end interface connected to a number of storage media, a processor for controlling the storage device, and the like.
  • SAS Serial Attached SCSI (Small Computer System Interface)
  • SAS communication is performed after securing a virtual communication path called a connection between devices. Therefore, connection connection / disconnection processing is required before and after data communication.
  • the ratio of the connection processing time to the data transfer time is increased.
  • a switch called an expander may be cascaded (in series) to add a storage medium.
  • the connection processing load increases.
  • connection control depends on the implementation of the SAS protocol chip.
  • the SAS protocol chip operates autonomously in response to a communication request from a storage controller or a storage medium. Therefore, the number of connections when transferring the same amount of data depends on the implementation of the SAS protocol chip and the control method of the storage controller or storage medium. Conversely, by performing control to reduce the number of connections, it is possible to reduce the connection processing load per I / O (Input / Output).
  • Patent Document 1 discloses a connection control method for a SAS protocol chip. In the control method of Patent Document 1, if transfer data is ready and connection is not connected, connection connection is immediately attempted. In addition, the connection is immediately disconnected after the transfer is completed.
  • Non-Patent Document 1 Even in the SAS standard (Non-Patent Document 1), there is a function for reducing the number of connections.
  • the ENABLE FIRST BURST function is defined.
  • the SAS protocol chip that supports this function can transfer a specified amount of Write data without receiving the first XFER_RDY. Accordingly, the number of connections can be reduced.
  • Persistent Connection is defined as a method for minimizing the number of connections.
  • Patent Document 2 discloses a technique related to an expander for operating this function.
  • Persistent Connection is a function that removes connection connection / disconnection processing and maintains the connection semi-permanently. However, since the number of connections (number of links) that can be connected simultaneously is determined by the number of physical wires, it is assumed that Persistent Connection performs I / O while changing the connection destination for storage media that exceeds the number of links. Not done.
  • a storage apparatus is connected to a plurality of storage devices and a plurality of storage devices via a Serial-Attached-SCSI (SAS) communication path and connected to a host computer.
  • SAS Serial-Attached-SCSI
  • a storage controller One of the specific storage device and the storage controller in the plurality of storage devices is a first transfer source device, and the other is a first transfer destination device, and preparation for transferring first transfer information to the first transfer destination device is made. If the state of the storage device satisfies a predetermined condition, the first transfer source device postpones the start of the transfer of the first transfer information and uses the specific SAS connection to transfer the first transfer information to the first transfer information.
  • the number of SAS connections in the storage device can be reduced, and the SAS transfer efficiency can be improved.
  • FIG. 1 shows a configuration of a computer system according to an embodiment of the present invention.
  • the configuration of the SAS drive 2 is shown.
  • An example of SAS Read communication between the storage controller 11 of the comparative example and the SAS drive 2 is shown.
  • An example of SAS Write communication between the storage controller 11 of the comparative example and the SAS drive 2 is shown.
  • An example of the number of connection reductions by transfer control of the present embodiment will be shown.
  • Storage controller holding information 6 is shown.
  • An example of the control information in the SAS command frame for the cooperative operation of the storage controller 11 and the SAS drive 2 is shown.
  • 7 illustrates an Rd CMD issue process by the processor 114 of the storage controller 11 according to the first embodiment.
  • the data transfer process by the processor 25 of the SAS drive 2 of Example 1 is shown.
  • the Wr CMD issuing process by the processor 114 of the storage controller 11 of the first embodiment is shown.
  • 7 shows XFER_RDY transfer processing by the processor 25 of the SAS drive 2 according to the first embodiment.
  • the CMD issuing process by the processor 114 of the storage controller 11 of the second embodiment is shown.
  • 14 illustrates frame transfer processing by the processor 25 of the SAS drive 2 according to the third embodiment.
  • the connection processing by the SAS I / F 113 of the storage controller 11 is shown.
  • the information of the present embodiment will be described using the expression “table”.
  • the information may not necessarily be expressed by a data structure using a table.
  • it may be expressed by a data structure such as “list”, “DB (database)”, “queue”, or the like. Therefore, “table”, “list”, “DB”, “queue”, and the like can be simply referred to as “information” in order to show that they do not depend on the data structure.
  • the expressions “identification information”, “identifier”, “name”, “name”, “ID” can be used, and these can be replaced with each other. It is.
  • program will be the subject of the description, but since the program uses a memory and a communication port (communication control device) to perform processing defined by being executed by a CPU (Central Processing Unit), The description may be based on the CPU.
  • the processing disclosed with the program as the subject may be processing performed by a computer such as a server computer, a storage controller, a management computer, or an information processing apparatus. Part or all of the program may be realized by dedicated hardware, or may be modularized.
  • Various programs may be installed in each computer by a program distribution server or a storage medium.
  • the management computer has input / output devices.
  • input / output devices include a display, a keyboard, and a pointer device, but other devices may be used.
  • a serial interface or an Ethernet interface is used as the input / output device, and a display computer having a display or keyboard or pointer device is connected to the interface, and the display information is transmitted to the display computer.
  • the display computer may perform the display, or the input may be replaced by the input / output device by receiving the input.
  • a set of one or more computers that manage the computer system and display the display information of the present invention may be referred to as a management system.
  • the management computer displays display information
  • the management computer is a management system
  • a combination of the management computer and the display computer is also a management system.
  • a plurality of computers may realize processing equivalent to that of the management computer.
  • the plurality of computers if the display computer performs the display, display (Including computers) is the management system.
  • the control program on the storage controller and the control program on the SAS drive are cooperatively operated, thereby reducing the number of connections between the two.
  • the SAS connection is simply referred to as a connection.
  • the effect of reducing the number of connections on the storage device is evaluated. Only when the effect is obtained, the number of connections is reduced by deferring the transfer between the storage controller and the SAS drive. This enhances the response performance of the storage apparatus.
  • FIG. 1 shows the configuration of a computer system according to an embodiment of the present invention.
  • This computer system includes a host computer 100 that performs data operations and a storage device 1 that stores data.
  • the storage device 1 includes a SAS drive housing 12 that stores data and a storage controller 11 that controls the SAS drive housing 12.
  • the storage controller 11 includes a host interface (hereinafter referred to as host I / F) 111 that communicates with the host computer 100, a SAS interface (hereinafter referred to as SAS I / F) 113 that communicates with the SAS drive chassis 12, and control thereof. And a controller LSI (Large Scale Integration) 112 that relays data transfer. Note that there may be a plurality of any of the host computer 100, the SAS drive housing 12, and the storage controller 11.
  • host I / F host interface
  • SAS I / F SAS interface
  • controller LSI Large Scale Integration
  • the host I / F 111 stores protocol data used for communication between the host computer 100 and the storage controller 11 such as Fiber Channel (FC), Fiber Channel Over Ethernet (registered trademark) (FCoE), and Internet SCSI (iSCSI). It has a function of converting to a protocol such as PCI-Express used in.
  • the SAS I / F 113 has a function of converting SAS protocol data used for communication between the SAS drive 2 and the storage controller into a protocol such as PCI-Express used in the storage controller 11.
  • the controller LSI 112 has a function of performing data transfer with the host I / F 111 and the SAS I / F 113, a processor 114 for operating a storage control program for controlling storage, and data and control for transfer. And a memory 115 for storing data, programs, and the like.
  • a plurality of SAS drives 2 are mounted on the SAS drive housing 12 via a SAS expander 121.
  • the SAS drive 2 may be a hard disk drive (HDD) or a solid state drive (SSD) equipped with a non-volatile memory such as a flash memory.
  • the SAS I / F 113 of the storage controller 11 is connected to the SAS expander 121 via a SAS cable or the like, and the SAS expander 121 is connected to the SAS drive 2 via a SAS cable.
  • the SAS cable and the SAS expander 121 may be referred to as a SAS network (SAS communication path).
  • FIG. 2 shows the configuration of the SAS drive 2.
  • the SAS drive 2 includes a media controller 22 and a storage medium 24.
  • the media controller 22 includes a SAS I / F 21, a controller LSI 23, and a media I / F 28.
  • the SAS I / F 21 has a function of converting data held in the storage medium 24 into SAS protocol data used for communication between the SAS drive 2 and the storage controller 11.
  • the controller LSI 23 includes a processor 25 that operates according to a storage media control program, a buffer 27 that temporarily holds data, a switch 26 that couples them, and the like.
  • the media I / F 28 controls communication between the controller LSI 23 and the storage medium 24. A plurality of these components may be mounted.
  • FIG. 3 shows an example of SAS Read communication between the storage controller 11 and the SAS drive 2 of the comparative example.
  • the processor 114 in the storage controller 11 determines the target drive in the plurality of SAS drives 2 based on the data read request, and sends a SAS Read command to the SAS I / F 113. (Hereinafter referred to as Rd CMD) issue request is sent (31).
  • the storage controller 11 is an initiator and the target drive is a target.
  • the SAS I / F 113 issues an Rd CMD to the designated SAS drive (322).
  • the SAS I / F 113 performs connection connection 321 by handshake.
  • the SAS I / F 113 of the storage controller 11 transmits an Open Address Frame to the SAS drive 2.
  • the SAS IF 21 of the SAS drive 2 returns an Open Accept to the storage controller 11 when accepting the connection.
  • a connection is established.
  • the SAS I / F 113 After the Rd CMD transfer, if there is no other data to be transferred, the SAS I / F 113 performs a connection disconnection 323 process. The SAS I / F 113 waits for the release of resources and connects the connection if there is not enough physical resources necessary for connection.
  • the processor 114 may process CMD issuance 31 and data reception in multiple ways. For example, the processor 114 may issue the next command (hereinafter referred to as CMD) before receiving data for the Rd CMD.
  • the SAS I / F 21 on the SAS drive 2 side transfers the Rd CMD to the processor 25 of the SAS drive (33).
  • the processor 25 reads the storage medium 24 (34), and notifies the SAS I / F 21 of the completion of data transfer preparation after the reading is completed (35).
  • the SAS I / F 21 transfers Read data to the storage controller 11 that has transmitted the CMD (36).
  • the SAS I / F 21 transfers the response frame (363) and notifies the completion of the data transfer. If necessary, the SAS I / F 21 performs connection connection 361 and disconnection processing 364 before and after that.
  • the SAS I / F 113 that has received the Read data notifies the processor 114 that the transfer of the Read data from the SAS drive 2 has been completed (37).
  • the data transfer processing order may be different from the order of the CMD issuance 31.
  • FIG. 4 shows an example of SAS Write communication between the storage controller 11 and the SAS drive 2 of the comparative example.
  • the processor 114 in the storage controller 11 determines the access destination drive in the plurality of SAS drives 2 based on the data write request, and sends the SAS write to the SAS I / F 113.
  • a command (hereinafter referred to as Wr CMD) issuance request is transmitted (401).
  • the SAS I / F 113 issues a Wr CMD to the designated SAS drive (4022).
  • the SAS I / F 21 on the SAS drive 2 side transfers the Wr CMD to the processor 25 of the SAS drive (403).
  • the processor 25 secures an area of the buffer 27 for receiving the write data (404), or prepares to receive write data similar thereto, and notifies the completion of data reception preparation (405).
  • the SAS I / F 21 transfers XFER_RDY (4062).
  • XFER_RDY includes transfer data amount designation information indicating the transfer data amount.
  • the SAS I / F 113 on the storage controller 11 side fetches the transfer data amount of the write data stored in the memory 115 (407) and transfers it (4082).
  • the SAS I / F 21 on the SAS drive 2 side that has received the write data transfers the data to the buffer 27.
  • the processor 25 stores the data stored in the buffer 27 in the storage medium 24 (410).
  • the processor 25 repeats the processing 404-410 until all the write data corresponding to the CMD is stored in the storage medium 24 or until it is stored in another non-volatile memory.
  • the SAS I The data reception completion notice is transferred to / F21 (411).
  • the SAS I / F 21 transfers a response to the storage controller (4122), and the storage controller-side SAS I / F 113 receives the response and transfers the response to the processor 114 (413), completing the I / O.
  • the Wr CMD transfer 4022, the XFER_RDY transfer 4062, the write data transfer 4082, and the response transfer 4122 are all performed by individual connections, but may be performed by the same connection. Further, when a plurality of CMDs are issued by the processor 114, the order of the CMD issuance 401 and the order of data transfer need not be the same.
  • each of the SAS I / F 113 of the storage controller 11 and the SAS I / F 21 of the SAS drive 2 holds the transfer request in the internal memory when receiving the transfer request, and connects to the transfer destination. Is already connected, transfer is performed using the connection, and if the connection with the transfer destination is not connected, the connection is connected.
  • Each of the SAS I / F 113 and the SAS I / F 21 performs transfer to the transfer destination even when the connection is connected by a connection request from the transfer destination. Further, if the SAS I / F 113 and the SAS I / F 21 are unable to connect when receiving a transfer request, the SAS I / F 113 and the SAS I / F 21 wait until connection is possible, and then connect and transfer the connection.
  • the SAS I / F 113 and the SAS I / F 21 can perform a plurality of transfers with the same timing in one connection, and can reduce the number of connections.
  • the transmission side of the storage controller 11 and the SAS drive 2 may be referred to as a transfer source device and the reception side may be referred to as a transfer destination device.
  • FIG. 5 shows an example of reducing the number of connections by transfer control of this embodiment.
  • transfer control when transferring CMD1 and CMD2 from the storage controller 11 to the SAS drive 2 and transferring data from the SAS drive 2 to the storage controller 11, transfer control A of the comparative example and transfer control of the present embodiment. B is illustrated.
  • the transfer control A performs transfer preparation.
  • the transfer control B predicts CMD2 Ready52 and data transfer after CMD1 Ready51, and postpones the transfer of CMD1.
  • connection process includes connection connection and connection disconnection.
  • FIG. 6 shows the storage controller holding information 6.
  • the memory 115 of the storage controller 11 stores the storage controller holding information 6.
  • the storage controller 11 uses the storage controller holding information 6 to evaluate the connection processing time, which is the time required for connection processing for communicating with an arbitrary SAS drive 2.
  • the connection processing includes connection connection and disconnection.
  • the storage controller holding information 6 here is a correspondence table that associates, for each SAS drive 2, a SAS address 611 indicating the SAS drive 2 and a connection stage number 612 indicating the stage number of the SAS expander 121 to which the SAS drive is connected. 61 is included.
  • the storage controller holding information 6 further includes a correspondence table 62 that associates the connection stage number 621 and the connection processing time 622 for each connection stage number. Thereby, the processor 114 can acquire the connection processing time corresponding to the SAS drive 2 as the CMD issue destination.
  • the connection processing time 622 may be a connection processing load corresponding to the connection processing time.
  • the processor 114 evaluates the connection processing time. The greater the number of connection stages, the longer the connection processing time.
  • the correspondence table 61 may store, for each SAS drive 2, the media read speed, the media write speed, and the like of the corresponding SAS drive 2.
  • the medium reading speed is, for example, an average value of the time for the medium I / F 28 to read data of unit data length from the storage medium 24 to the buffer 27.
  • the medium reading speed is, for example, an average value of the time for the medium I / F 28 to write data of a unit data length from the buffer 27 to the storage medium 24.
  • other information (speed information) indicating the access speed to the storage medium 24 such as the type of the storage medium 24 such as HDD or SSD, the rotation speed of the HDD, or the like is used. May be.
  • the processor 114 stores the correspondence table 62 between the number of connection stages and the connection processing time in the memory 115 as an initial parameter.
  • the processor 114 statically manages the connection processing time in association with the number of connection stages, but the connection request processing speed of the SAS expander 121, the length of the SAS cable used for connection, and the like. It is also possible to use.
  • the processor 114 can also represent the connection processing time by the response performance at the time of executing I / O, the response time of a specific CMD, or the like. In that case, the processor 114 can also update the storage controller holding information 6 during I / O execution.
  • FIG. 7 shows an example of control information in the SAS command frame for the cooperative operation of the storage controller 11 and the SAS drive 2.
  • the SAS command frame 7 includes a buffering amount 71 and a maximum delay time 72.
  • the storage controller 11 transmits this to the SAS drive 2 to realize a cooperative operation.
  • the storage controller 11 specifies the buffering amount 71 as a data summarizing request for requesting the SAS drive 2 to consolidate Read data transfer, and specifies the maximum delay time 72 in order to prevent excessive delay by the SAS drive 2.
  • the SAS drive 2 that has received the buffering amount 71 reads the read data from the storage medium 24 to the buffer 27, and when the amount of read data in the buffer 27 exceeds the buffering amount 71, the read data in the buffer 27 is transferred to the storage controller 11. Forward.
  • the buffering amount 71 specifies the lower limit value of the read data transfer amount.
  • the SAS drive 2 that has received the maximum delay time 72 transfers the Read data in the buffer 27 to the storage controller 11 even if the amount of Read data in the buffer 27 is not greater than the Buffering amount 71. To do.
  • the maximum delay time 72 is an upper limit value of the time to postpone Read data transfer. Since the information used for the cooperative operation only needs to be a hint for the SAS drive 2 to switch the operation, only a part of the information shown in this figure may be used. Further, other SAS frames and Out-of-band signals can be used as means for transmitting similar information.
  • the storage controller 11 and the SAS drive 2 perform transfer control in cooperation.
  • FIG. 8 shows Rd CMD issue processing by the processor 114 of the storage controller 11 of the first embodiment.
  • the processor 114 of the storage controller 11 When the storage controller 11 issues Rd CMD to the SAS drive 2 (31), the processor 114 of the storage controller 11 performs Rd CMD issue processing for transfer control.
  • the Rd CMD issued by the processor 114 through this Rd CMD issuing process is called a target CMD
  • the SAS drive 2 to which the target CMD is issued is called a target drive.
  • the processor 114 performs transfer control by controlling the CMD issuance 31 of the target CMD to the SAS I / F 113. Details of the operation flow will be described below.
  • the processor 114 determines whether or not the operating rate of the processor 114 is higher than a predetermined operating rate threshold (S3101).
  • a predetermined operating rate threshold S3101
  • the processor 114 of the storage controller is heavily loaded with processing other than SAS communication, the response time viewed from the host computer 100 does not change even if the SAS communication efficiency is improved by transfer control. Therefore, when the operating rate of the processor 114 is high, the processor 114 issues CMD immediately without performing transfer control.
  • the processor 114 When it is determined that the operating rate is equal to or lower than a predetermined operating rate threshold, the processor 114 recognizes that there is a possibility that the response time may be reduced by the transfer control, and reduces the link occupation time by reducing connections.
  • the amount is evaluated (S3102).
  • the link occupation time is a time during which communication based on the target CMD occupies the SAS link and performs SAS communication.
  • the link occupation time reduction amount is the connection processing time of the connection procedure that is reduced by reducing the number of connections.
  • the link occupation time can also be reduced by performing bidirectional communication (full-duplex communication) within one connection.
  • the link occupation time reduction amount is evaluated using the correspondence table 62 of the connection position of the SAS drive 2 and the protocol overhead for each connection position, such as the storage controller holding information 6 described above.
  • the processor 114 refers to the connection stage number 612 based on the SAS address 611 unique to the SAS drive in the correspondence table 61 of the SAS drive and the connection stage number.
  • the processor 114 refers to the connection processing time of each number of stages in the correspondence table 62 of the number of connection stages and the connection processing time based on the number of connection stages 612.
  • the processor 114 evaluates the postponement time which is the length of the transfer postponement time required for connection reduction (S3103).
  • the transfer postponement is to postpone the transfer by the target CMD in order to combine the transfer by the target CMD and the transfer by the other CMD to the target drive.
  • the transfer postponement control includes Read data transfer summary control for gathering a plurality of Read data transfers 362, bidirectional transfer summary control for gathering bidirectional transfers, CMD transfer summary control for gathering a plurality of CMD transfers 322, and the like.
  • the processor 114 may perform only a part of these controls, or may select and implement a control with the shortest postponement time, or may combine a plurality of controls. You may implement.
  • Read data transfer summary control summarizes unidirectional Read data transfers 362 (first transfer information and second transfer information) from the SAS drive 2 to the storage controller 11.
  • the processor 114 calculates the buffering amount 71.
  • the processor 114 may calculate a value obtained by multiplying the amount of read data (first transfer information) of the target CMD by a predetermined integer as the buffering amount 71, or from the past read data amount, read by the next Rd CMD.
  • the amount of data (second transfer information) may be predicted, and the sum of the read data amount of the target CMD and the predicted read data amount may be calculated as the buffering amount 71.
  • the processor 114 calculates a buffering time, which is a time required for buffering the buffering amount 71, as the postponement time.
  • the processor 114 can calculate the buffering time from the buffering amount 71 and the medium reading speed.
  • the processor 114 calculates a CMD issue postponement time that is a time to postpone the CMD issuance 31 of the target CMD as the postponement time. Specifically, the processor 114 records the issuance time of the preceding CMD to the target drive, calculates the preparation completion time of the SAS drive 2 by adding the media read time to the issuance time, and reaches the preparation completion time. Is calculated as the CMD issue postponement time.
  • the preceding CMD is an Rd CMD that has been issued to the target drive, and is an Rd CMD in which Read data has not been transferred.
  • the media read time is, for example, a value obtained by dividing the read data amount of the preceding CMD by the media read speed.
  • the processor 114 considers that the SAS drive 2 has already completed preparation for Read data transfer, and sets the CMD issue postponement time to 0. It can also be.
  • the processor 114 evaluates the CMD issue postponement time of the target CMD (first transfer information) as the postponement time.
  • the CMD issue postponement time is an interval until the next CMD (second transfer information) is issued to the target drive.
  • the processor 114 records the actual measurement value or the average value of the past CMD issuance 31 intervals, and predicts the recorded value as the CMD issuance postponement time.
  • the processor 114 may record an actual measurement value or an average value of the time interval at which the I / O request is received from the host computer 100, and predict the recorded value as the CMD issue postponement time. As a result, the processor 114 can postpone the issue timing of the target CMD to match the issue timing of the next CMD.
  • the processor 114 evaluates the other CMD response time reduction amount (S3104).
  • the other CMD response time reduction amount is an amount in which the response time of the other CMD is reduced by the transfer postponement in the response time from the storage apparatus 1 to the host computer 100.
  • the other CMD is issued by the storage controller 11, is a CMD other than the target CMD, and includes a CMD for the SAS drive 2 other than the target drive. If transfer by another CMD is performed during the transfer postponement, no response time is lost in the entire SAS network.
  • the processor 114 evaluates the other CMD response time reduction amount using the information of the preceding CMD.
  • the processor 114 can conceal the postponement time in the communication of the target CMD with another CMD response time reduction amount.
  • the postponement time is regarded as another CMD response time reduction amount. That is, if the Read data transfer from the SAS drive 2 to the storage controller 11 is scheduled to be performed by another CMD, the SAS link is effectively used by the other CMD even during the transfer postponement.
  • the processor 114 determines that the number of SAS drives 2 to which the preceding CMD is issued is larger than the number of SAS links of the SAS I / F 113, the processor 114 sets 0 for the response time and the other CMD response time reduction amount. May be.
  • the processor 114 calculates the sum of the link occupation time reduction amount and the other CMD response time reduction amount as the response time reduction amount, and determines whether or not the postponement time is larger than the response time reduction amount (S3105).
  • the response time reduction amount is an amount by which the response time of the storage apparatus 1 to the host computer 100 is reduced by the transfer postponement. If it is determined that the postponement time is larger than the response time reduction amount (Y), the processor 114 considers that the response time reduction is not effective, immediately issues the target CMD (S3109), and ends this flow.
  • the processor 114 When it is determined that the postponement time is equal to or less than the response time reduction amount (N), the processor 114 If it is considered that there is an effect of reducing the response time, and the transfer postponement is Read data transfer summary control, a data summary request is added to the target CMD (control information) (S3106).
  • the processor 114 of this embodiment includes the buffering amount 71 in the data summarizing request. Thereafter, if the transfer postponement is Read data transfer summary control, the processor 114 includes the buffering time as the maximum delay time 72 in the data summary request (S3107). Thereby, it is possible to prevent a delay exceeding the maximum delay time 72 from occurring due to an unexpected delay of the target drive.
  • the processor 114 delays the issuance of the target CMD by the CMD issuance postponement time if the deferral of transfer is bi-directional transfer summarization control or CMD transfer summarization control and the CMD issuance deferral time is set (S3108). Then, an unissued CMD including the target CMD is issued (S3109). If the CMD issue postponement time is not set, an unissued CMD including the target CMD is immediately issued (S3109), and this flow ends. .
  • FIG. 9 shows data transfer processing by the processor 25 of the SAS drive 2 of the first embodiment.
  • the processor 25 of the target drive performs a data transfer process for the Read data transfer 362.
  • the processor 25 performs transfer control by controlling the data transfer request 35 to the SAS I / F 21. Details of the operation flow will be described below.
  • the processor 25, after completing the data reading 34 from the storage medium 24 based on the target CMD, determines whether or not the data summarization request is included in the target CMD (S3501).
  • the data summarization request includes a buffering amount 71 and a maximum delay time 72. If the data summarization request is not included in the target CMD, the processor 25 immediately notifies the SAS I / F 21 of the data transfer request (S3501) and ends this flow.
  • the processor 25 waits until the amount of Read data stored in the buffer 27 becomes equal to or greater than the buffering amount 71 in accordance with the designation of the buffering amount 71, thereby making a data transfer request. Postponement (S3502). Thus, the processor 25 can transfer the read data of the target CMD together with the read data of the next RdCMD, and can reduce the number of connections.
  • the processor 25 performs buffering when the maximum delay time 72 has elapsed even if the Read data amount stored in the buffer 27 is less than the Buffering amount 71. Cancel (S3503). Thereby, the processor 25 can prevent an excessive delay.
  • the processor 25 notifies the SAS I / F 21 of a data transfer request when one of the completion of buffering of the buffering amount 71 and the elapse of the maximum delay time 72 occurs according to the determination in S3502 and S3503. (S3504), and this flow ends.
  • the read data transfer 362 can be intentionally combined by the cooperative operation of the storage controller 11 and the SAS drive 2.
  • the storage controller 11 performs the CMD transfer 322 of another CMD, so that bi-directional transfer is also effectively summarized.
  • FIG. 10 shows the Wr CMD issuing process by the processor 114 of the storage controller 11 of the first embodiment.
  • the processor 114 of the storage controller 11 When the storage controller 11 issues a Wr CMD to the SAS drive 2 (401), the processor 114 of the storage controller 11 performs a Wr CMD issue process for transfer control.
  • the Wr CMD issued by the processor 114 through this Wr CMD issuing process is called a target CMD
  • the SAS drive 2 to which the target CMD is issued is called a target drive.
  • the processor 114 performs transfer control by controlling the CMD issuance 401 for the SAS I / F 113.
  • Processes S4011, S4012, S4014, S4015, S4017, S4018, and S4019 in the Wr CMD issue process are the same as the processes S3101, S3102, S3104, S3105, S3107, S3108, and S3109 in the Rd CMD issue process.
  • the processor 114 targets an XFER_RDY summary request (S4016) that specifies the transfer data amount and the maximum delay time 72 instead of the data summary request that specifies the buffering amount 71 in S3106 of the Rd CMD issue process. It adds to CMD (control information).
  • the write data corresponds to a single CMD and is divided and transferred multiple times, but the processor 114 specifies a large transfer data amount in the XFER_RDY summary request. By doing so, the SAS I / F 21 can collectively transmit XFER_RDY indicating the transfer data amount.
  • the SAS I / F 113 that has received it can collectively transfer a plurality of pieces of divided data (first transfer information and second transfer information) according to XFER_RDY. This reduces the number of XFER_RDY transfers 4062 and Write data transfers 4082 and reduces the number of connections. For example, in the comparative example, when the processor 25 issues a Ready notification 405 for each 20 kB to the target CMD, the SAS I / F 21 performs five XFER_RDY transfers 4062. On the other hand, in the present embodiment, the SAS 114 can reduce the number of XFER_RDY transfers 4062 to one by transmitting the XFER_RDY summary request indicating 100 kB as the transfer data amount in the present embodiment.
  • the processor 114 predicts the buffer securing time, which is the time required for the buffer securing 404 of the transfer data amount, as the postponement time and the maximum delay time 72.
  • the processor 114 acquires the buffer securing time corresponding to the type of the target drive from the storage controller holding information 6. Good.
  • the past buffer securing time for each SAS drive 2 may be recorded, and the buffer securing time corresponding to the target drive may be acquired from the past buffer securing time.
  • the first XFER_RDY transfer 4062 of one Wr CMD can be omitted by mounting the FIRST BURST function defined in the SAS standard on the storage controller 11 and the SAS drive 2, but the Wr CMD issuing process of this embodiment is Multiple Wr CMD XFER_RDY transfers can also be combined.
  • the Wr CMD issuance process can also include a response transfer 4122, an XFER_RDY transfer 4062, a CMD transfer 4022, and the like.
  • FIG. 11 illustrates XFER_RDY transfer processing by the processor 25 of the SAS drive 2 according to the first embodiment.
  • the processor 25 of the target drive performs an XFER_RDY transfer process for the XFER_RDY transfer 4062.
  • the processor 25 performs transfer control by controlling the XFER_RDY notification 405 to the SAS I / F 21.
  • the processor 25 can also receive the postponement time from the storage controller 11 and postpone the completion notification 411 by the postponement time. Details of the operation flow will be described below.
  • the processor 25 determines whether or not an XFER_RDY summary request is included in the target CMD after completing the Buffer reservation 404 based on the target CMD (S4051).
  • the XFER_RDY summary request includes a transfer data amount and a maximum delay time 72. If the target CMD does not include the XFER_RDY summary request, the processor 25 immediately notifies the XFER_RDY transfer request (S4051), and ends this flow.
  • the processor 25 secures a Buffer according to the transfer data amount (S4052). When the transfer data amount is larger than the write data amount specified by the target CMD, the processor 25 combines XFER_RDY of a plurality of Wr CMDs including the target CMD and the subsequent Wr CMD.
  • the processor 25 performs bi-directional transfer summarization control for collecting bi-directional transfer between the write data transfer 4082 corresponding to a certain XFER_RDY and the XFER_RDY transfer 4062 after the XFER_RDY. Can do.
  • this control is performed by the processor 25 of the SAS drive 2.
  • the processor 25 records the issuance time of the past XFER_RDY, predicts the time of Write data transfer 4082 from the storage controller 11 according to the XFER_RDY, and calculates the time until the predicted time as the XFER_RDY postponement time. Thereafter, the processor 25 determines whether or not bidirectional transfer summary control is possible (S4053). For example, when the XFER_RDY postponement time is equal to or shorter than the maximum delay time 72, the processor 25 determines that bi-directional transfer summary control is possible.
  • the processor 25 postpones the XFER_RDY request (Ready notification 405) by the XFER_RDY postponement time (S4054), and transfers the XFER_RDY request to the SAS I / F 21 (S4055). ), This flow is finished. However, the processor 25 defers these XFER_RDY transfer requests within a range not exceeding the maximum delay time 72.
  • the Wr CMD issue process and the XFER_RDY transfer process may be combined with the XFER_RDY transfer 4062 and the response transfer 4122 of other CMDs by deferring the XFER_RDY of the target CMD.
  • the storage controller 11 and the SAS drive 2 combine Rd CMD issuance processing and data transfer processing with Wr CMD issuance processing and XFER_RDY transfer processing to combine Rd CMD transfer and Wr CMD transfer. May be.
  • the number of connections can be reduced by the control program of the storage controller 11 sending a data transfer summary request or XFER_RDY summary request to the control program of the SAS drive 2. Further, the storage controller 11 transmits an instruction to collect the transfers to the SAS drive 2 only when it is determined that the transfer postponement leads to a reduction in the response time of the storage apparatus 1. With this transfer control, the response time of the storage apparatus 1 can be reduced.
  • the control program (processor 114) on the storage controller 11 performs transfer control to reduce the number of connections.
  • CMD transfer summarization control for collecting a plurality of unidirectional CMD transfers 322 and 4022 (first transfer information and second transfer information) and bidirectional transfer (first transfer information and second transfer information) are performed.
  • the number of connections is reduced by bi-directional transfer summary control.
  • the storage controller 11 of this embodiment evaluates the effect of the connection reduction on the storage apparatus 1 and defers the CMD issuance 31 (401) only when the effect is obtained. Reduce the number of times. Thereby, the response performance of the storage apparatus 1 is improved.
  • FIG. 12 shows CMD issue processing by the processor 114 of the storage controller 11 of the second embodiment.
  • the processor 114 of the storage controller 11 When the storage controller 11 issues Read or Write CMD to the SAS drive 2 (31, 401), the processor 114 of the storage controller 11 performs CMD issue processing for transfer control.
  • the processor 114 performs transfer control by controlling the CMD issuances 31 and 401 to the SAS I / F 113.
  • Processes S3111 to S3117 in the CMD issue process of the present embodiment are the same as the processes S3101 to S3105, S3108, S3109 and the processes S4011 to S4015, S4018, and S4019 in the Rd CMD issue process of the first embodiment. It is.
  • the processor 114 does not perform the cooperative operations S3106, S3107, S4016, and S4017 with the SAS drive 2 according to the first embodiment. That is, the storage controller 11 postpones the CMD issuance without deferring the transfer by the SAS drive 2.
  • the postponement time is only the CMD issue postponement time.
  • the number of connections decreases and the response time of the storage device 1 decreases.
  • the expected value for reducing the number of connections is small, but the storage controller 11 can be controlled alone.
  • control program (processor 25) on the SAS drive 2 performs transfer control to reduce the number of connections.
  • the SAS drive 2 alone cannot acquire information related to the entire storage apparatus 1 as in the first embodiment.
  • the processor 25 realizes the same effect as that of the first embodiment by estimating approximate information as a substitute.
  • FIG. 13 shows a frame transfer process by the processor 25 of the SAS drive 2 according to the third embodiment.
  • the processor 25 performs a frame transfer process when sending a frame transfer request for transferring a frame based on the Read or Write target CMD from the storage controller 11 to the SAS I / F 21.
  • the frame transfer request here is one of a data transfer request 35 for transferring Read data, a Ready notification 405 for transferring XFER_RDY, and a completion notification 411 for transferring a Write completion response.
  • the SAS drive 2 to which the target CMD is issued is referred to as a self-drive, and among the SAS drives 2 in the storage apparatus 1, SAS drives other than the self-drive are referred to as other drives.
  • the processor 25 performs transfer control by controlling the data transfer request 35 as a frame transfer request.
  • the processor 25 reads the read data from the storage medium 24 and stores it in the buffer 27.
  • the frame transfer process is started.
  • the processor 25 determines whether or not the SAS I / F 21 holds untransferred data (S3511).
  • the untransferred data is the Read data for which the data transfer request 35 has been sent to the SAS I / F 21 and the Read data transfer 362 to the storage controller 11 has not been completed.
  • the SAS I / F 21 holds untransferred data
  • the SAS I / F 21 transfers the read data and the untransferred data based on the target CMD together even if the processor 25 does not postpone the data transfer request 35. Can be expected to do. Therefore, the processor 25 immediately sends a transfer request (S3517), and ends this flow.
  • the processor 25 evaluates the link occupation time reduction amount by reducing one connection (S3512).
  • the processor 25 of this embodiment evaluates the connection processing time when the self-drive and the storage controller 11 communicate with each other, and sets the connection processing time as the link occupation time reduction amount.
  • the processor 25 can evaluate the connection processing time by comparing the actual communication time with a predetermined communication time reference value. For example, the processor 25 measures the transfer time from the past data transfer request 35 to the completion of the response transfer 363 and compares it with a transfer time reference value held in advance. The processor 25 estimates the difference obtained by subtracting the transfer time reference value from the transfer time as the connection processing time.
  • the same effect can be obtained when the SAS drive 2 holds the correspondence table 62 of the number of connection stages and the connection processing time in advance.
  • the processor 25 can acquire the connection stage number information of the own drive necessary for referring to the correspondence table 622 by repeating address resolution using SMP (Serial Management Protocol).
  • the processor 25 evaluates the postponement time (S3513).
  • the processor 25 puts together the read data transfer 362 by the target CMD and the read data transfer 362 (second transfer information) by another CMD that has already been confirmed by the CMD, based on the CMD confirmation time and the media read time, A postponement time that is a time until Read data transfer 362 by another CMD can be calculated.
  • the processor 25 records the past media reading speed.
  • the processor 25 can postpone the timing of the Read data transfer by the target CMD to match the timing of the Read data transfer 362 by another CMD.
  • the processor 25 records the time interval of the past CMD confirmation 33 when the two-way communication of the CMD transfer 322 (second transfer information) and the Read data transfer 362 is put together, and the next CMD is based on the recorded value.
  • the postponement time that is the time until confirmation 33 can be calculated.
  • the processor 25 can postpone the timing of the Read data transfer by the target CMD to match the timing of the other CMD transfer from the storage controller 11.
  • the processor 25 may evaluate either one of these postponement times or both.
  • the processor 25 evaluates the other CMD response time reduction amount (S3514).
  • the processor 25 cannot directly know the CMD load on the other drive, and therefore cannot evaluate the other CMD response time reduction amount as in the first embodiment.
  • the processor 25 measures the degree of congestion of the shared bus and calculates the other CMD response time reduction amount based on the degree of congestion. This is because when the other drive is performing a large number of transfers, the bus continues to be congested. For example, the processor 25 measures the processing time from the data transfer request 35 to the response transfer 363, and can estimate the congestion degree of the SAS link from the measured value.
  • the processor 25 measures and records this processing time, records the average value or minimum value of the processing time as the processing time reference value, and subtracts the processing time reference value from the processing time measured immediately before. Is estimated as the congestion degree of the current SAS link. Thereafter, when the processor 25 determines that the congestion level is higher than a predetermined congestion level threshold, the processor 25 regards the postponement time in the communication of the target CMD as being concealed by the other CMD response time reduction amount, and sets the postponement time to the other CMD response time Considered a reduction. As a result, the processor 25 can calculate the other CMD response time reduction amount even if the CMD load on the other drive cannot be acquired.
  • the processor 25 calculates a value obtained by adding the other CMD response time reduction amount to the link occupation time reduction amount as a response time reduction amount, and determines whether or not the postponement time is larger than the response time reduction amount (S3515). When it is determined that the postponement time is larger than the response time reduction amount, the processor 25 immediately sends a data transfer request 35 (S3517). When it is determined that the postponement time is equal to or less than the response time reduction amount, the processor 25 Only the transmission of the data transfer request 35 is postponed (S3516), the data transfer request 35 is transmitted (S3517), and this flow is finished.
  • the processor 25 may always set the other CMD response time reduction amount to zero. If the link occupation time reduction amount is very large, the response time by the target CMD can be reduced even if the other CMD response time reduction amount is zero. That is, in this case, when the processor 25 determines that the postponement time is shorter than the connection processing time to be reduced, the processor 25 postpones the data transfer request 35. Thus, the processor 25 can prevent an increase in response time due to the transfer postponement.
  • the processor 25 basically performs the same flow as the frame transfer process at the time of Read. In this case, the processor 25 performs transfer control by controlling transmission of a Ready notification 405 and a completion notification 411 (first transfer information) as a frame transfer request.
  • a difference from the frame transfer process at the time of Read will be mainly described.
  • the processor 25 does not postpone sending the transfer request and immediately sends the transfer request to the SAS I / F 21 (S3517). This flow is finished.
  • the processor 25 evaluates the link occupation time reduction amount as in the case of Read (S3512).
  • the processor 25 evaluates the postponement time (S3513).
  • the processor 25 evaluates the postponement time until the next XFER_RDY (second transfer information) based on the buffer securing time, and the postponement time until the next response (second transfer information) based on the media writing speed.
  • the processor 25 calculates and records the media writing speed based on the past media writing 410 time and the write data amount. Thereby, the timing of XFER_RDY or Response can be postponed, and it can match with the timing of the next XFER_RDY or Response. Further, the processor 25 evaluates the postponement time for collecting the two-way communication in the same manner as S3513 at the time of Read.
  • the processor 25 evaluates the other CMD response time reduction amount in the same manner as at the time of Read (S3514).
  • the processor 25 calculates the response time reduction amount, and determines whether or not the postponement time is larger than the response time reduction amount (S3515). When it is determined that the postponement time is larger than the response time reduction amount, the processor 25 immediately sends a data transfer request 35 (S3517). When it is determined that the postponement time is equal to or less than the response time reduction amount, the processor 25 Only the transmission of the data transfer request 35 is postponed (S3516), the data transfer request 35 is transmitted (S3517), and this flow is finished.
  • the SAS drive 2 can be controlled alone. However, acquisition of information used for control determination such as the connection status of the own drive and the I / O load status of other drives becomes indirect.
  • the SAS I / F 113 on the storage controller 11 performs transfer control to reduce the number of connections.
  • the SAS I / F 113 has many opportunities to perform transfer control and can directly observe the state of the SAS communication path. For example, since the SAS I / F 113 performs the data fetch 407 according to XFER_RDY from the SAS drive 2, the processor 114 cannot directly control the timing of the write data transfer 4082.
  • the SAS I / F of this embodiment F113 can also summarize Write data transfer 4082.
  • FIG. 14 shows a connection process by the SAS I / F 113 of the storage controller 11.
  • the SAS I / F 113 When Read or Write CMD is issued by the processor 114 of the storage controller 11 (31, 401) or when data fetch is completed (407), the SAS I / F 113 sends a connection request to the SAS drive 2 Connection processing is performed.
  • This flow shows a common control method at the time of Read and Write.
  • the SAS I / F 112 of this embodiment controls connection connections (321, 4021, 4081) from the storage controller 11 side.
  • the SAS drive 2 that is the request destination of the connection request is called a target drive.
  • the SAS I / F 113 evaluates the link occupation time reduction amount (S3211). As in the first embodiment, the SAS I / F 113 of this embodiment holds the correspondence table 62 in advance, creates the correspondence table 61 when the SAS drive 2 is connected, and reduces the connection processing time corresponding to the target drive to reduce the link occupation time. It can be calculated as a quantity. Further, the SAS I / F 113 may measure the actual connection processing time for each SAS drive 2 and record it as the connection processing time. In this case, the SAS I / F 113 can measure the time from the transmission of the aforementioned Open Address Frame to the reception of the Open Accept, and can calculate the connection processing time based on the measured time.
  • the SAS I / F 113 evaluates the postponement time (S3212).
  • the postponement time here is the time to postpone the sending of the Open Address Frame, which is a connection request from the SAS I / F 113 to the target drive.
  • the SAS I / F 113 can evaluate the postponement time similarly to S3103 or S4013 of the first embodiment.
  • the SAS I / F 113 is executing to postpone the timing of the connection request (first transfer information) and to match the timing of the write data transfer 4082 (second transfer information) based on the data fetch 407 being executed. The time required for the data fetch 407 is predicted.
  • the SAS I / F 113 predicts the time of the write data transfer 4082 from the time when the XFER_RDY transfer 4062 is received and the predicted required time, and calculates the remaining time until the predicted time as the postponement time.
  • the SAS I / F 113 returns REJECT instead of Open Accept in response to the connection request (361, 4061, 4121) from the target drive, and the transfer from the target drive is forcibly postponed. There is a possibility of reduction.
  • the SAS I / F 113 includes the processing time until the connection request sent from the target drive reaches the SAS I / F 113 and the REJECT is received by the target drive in the postponement time.
  • the SAS I / F 113 evaluates the other drive response time reduction amount (S3214).
  • the other drive response time reduction amount is an amount of the response time of the CMD to the other drive among the response times from the storage apparatus 1 to the host computer 100 due to the transfer postponement.
  • the response time of other CMD to the target drive is not reduced.
  • the SAS I / F 113 can evaluate the other drive response time reduction amount by the same method as S3104 or S4014.
  • the SAS I / F 113 calculates the sum of the link occupation time reduction amount and the other drive response time reduction amount as the response time reduction amount, and determines whether or not the postponement time is larger than the response time reduction amount (S3214). .
  • the SAS I / F 113 immediately sends a connection request and establishes connection (S3216). Exit. If the postponement time is less than or equal to the response time reduction amount (N), the SAS I / F 113 postpones the connection request by the postponement time, and sends a connection request if the connection with the target drive is not connected. Connection connection is made (S3215), and this flow is finished.
  • the SAS I / F 113 starts connection processing for the drive if there is CMD or Write data that has been prepared for transfer to another drive.
  • the number of connections decreases, and the response time of the storage device 1 decreases.
  • the SAS I / F 113 which is the subject of the control of the present embodiment, is close to the SAS network, so the load information of the processor 114 cannot be used, but the connection / disconnection of the connection can be directly controlled. Easy to reduce the number of connections.
  • the SAS I / F 21 on the SAS drive 2 performs transfer control to reduce the number of connections.
  • the SAS I / F 21 has many opportunities to perform transfer control and can directly observe the state of the SAS communication path.
  • the SAS I / F 21 of the present embodiment performs the same connection process as the SAS I / F 113 of the fourth embodiment. The details of the connection processing of this embodiment will be described below with reference to FIG.
  • the SAS I / F 21 performs a connection process for sending a connection request (first transfer information) to the storage controller 11 in response to a data transfer request 35, a Ready notification 405, a completion notification 411, and the like from the processor 25.
  • the SAS I / F 21 of this embodiment controls connection connections (361, 4061, 4121) from the SAS drive 2 side.
  • the SAS I / F 21 evaluates the link occupation time reduction amount (S3211).
  • the SAS I / F 21 can measure and record the connection processing time with the storage controller 11 as in the fourth embodiment, and can evaluate the link occupation time reduction amount from the past connection processing time.
  • the SAS I / F 21 evaluates the postponement time (S3212).
  • the SAS I / F 21 can evaluate the postponement time similarly to S3212 of the third embodiment.
  • the media access time prediction accuracy is low.
  • the SAS I / F 21 records the time of the media reading 34 and the time of the media writing 410 as the media access time, and the connection request (second transfer information) by other CMDs based on the recorded information. Time is predicted, and the predicted time is set as the postponement time.
  • the SAS I / F 21 evaluates the other drive response time reduction amount (S3214).
  • the SAS I / F 21 estimates the other drive response time reduction amount from the degree of congestion of the SAS link.
  • the SAS I / F 21 can calculate the degree of link congestion based on the arbitration time after sending a connection connection request in the past and the number of arbitration in progress (AIP) indicating the progress of arbitration.
  • AIP arbitration in progress
  • the SAS I / F 21 can directly observe the degree of congestion of the SAS link, so that the prediction accuracy of the other drive response time reduction amount is high.
  • the SAS I / F 21 may postpone the connection by REJECTing the connection request (321, 4021) from the storage controller 11 as in the fourth embodiment.
  • the SAS I / F 21 calculates the response time reduction amount by adding the other drive response time reduction amount to the link occupation time reduction amount, and determines whether or not the postponement time is larger than the response time reduction amount (S3214). ). If the postponement time is larger than the response time reduction amount (Y), the SAS I / F 21 immediately sends a connection request to establish a connection (S3216), and ends this flow. If the postponement time is less than or equal to the response time reduction amount (N), the SAS I / F 21 postpones the connection request by the postponement time, and then sends a connection request to establish a connection (S3215), and ends this flow. To do.
  • the number of connections is reduced and the response time of the storage device 1 is reduced.
  • the SAS I / F 21 which is the main subject of the control of the present embodiment is close to the SAS network, so the information in the processor 25 cannot be used, but by directly observing the congestion degree of the SAS link, The amount of response time reduction can be accurately predicted.
  • the number of SAS backend connections is reduced, and the SAS transfer efficiency is improved.
  • the response time to the host computer 100 can be reduced. This effect becomes particularly noticeable when a large number of SAS drives 2 are connected to the storage controller 11 and the SAS expanders 121 are cascade-connected.
  • the storage device status includes the operating rate of the processor 114, the congestion degree of the SAS link, I / O requests received from the host computer 100 in the past, CMD issued by the storage controller 11 in the past, past connection processing, SAS I Request to / F113, request to SAS I / F21, media read speed, media write speed, etc. may be used.
  • the predetermined condition it may be used that the operating rate of the processor 114 is smaller than the operating rate threshold and the response time reduction amount is larger than the postponement time.
  • the reduction amount a response time reduction amount, a link occupation time reduction amount, another CMD response time reduction amount, another drive response time reduction amount, or the like may be used.
  • As the access time a medium reading speed, a medium writing speed, or the like may be used.
  • SAS interface device SAS I / F 113, SAS I / F 21 or the like may be used.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Systems (AREA)

Abstract

La présente invention diminue le nombre de connexions SAS dans un dispositif de stockage et augmente l'efficacité d'un transfert SAS. Parmi un dispositif de stockage spécifique faisant partie d'une pluralité de dispositifs de stockage et un contrôleur de stockage, le dispositif de stockage spécifique fait office de dispositif source de premier transfert et une préparation est effectuée qui vise à transférer des informations de premier transfert au contrôleur de stockage faisant office de dispositif cible de premier transfert. Si l'état du dispositif de stockage satisfait une condition prédéterminée, le dispositif source de premier transfert reporte le début du transfert des informations de premier transfert et transfère les informations de premier transfert au dispositif cible de premier transfert à l'aide d'une connexion SAS spécifique. Parmi le dispositif de stockage spécifique et le contrôleur de stockage, le dispositif de stockage spécifique fait office de dispositif source de second transfert et une préparation est effectuée qui vise à transférer des informations de second transfert au contrôleur de stockage faisant office de dispositif cible de second transfert. Le dispositif source de second transfert transfère les informations de second transfert au dispositif cible de second transfert à l'aide de la connexion SAS spécifique.
PCT/JP2014/075474 2014-09-25 2014-09-25 Dispositif de stockage et procédé de contrôle de dispositif de stockage WO2016046943A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/075474 WO2016046943A1 (fr) 2014-09-25 2014-09-25 Dispositif de stockage et procédé de contrôle de dispositif de stockage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/075474 WO2016046943A1 (fr) 2014-09-25 2014-09-25 Dispositif de stockage et procédé de contrôle de dispositif de stockage

Publications (1)

Publication Number Publication Date
WO2016046943A1 true WO2016046943A1 (fr) 2016-03-31

Family

ID=55580503

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/075474 WO2016046943A1 (fr) 2014-09-25 2014-09-25 Dispositif de stockage et procédé de contrôle de dispositif de stockage

Country Status (1)

Country Link
WO (1) WO2016046943A1 (fr)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06236340A (ja) * 1993-02-10 1994-08-23 Hitachi Ltd データ転送方法及び転送装置
JP2006092054A (ja) * 2004-09-22 2006-04-06 Hitachi Ltd データ移行方法
JP2006119970A (ja) * 2004-10-22 2006-05-11 Hitachi Ltd ネットワークシステムにおけるエラーリカバリレベルの最適化
JP2006260223A (ja) * 2005-03-17 2006-09-28 Nec Corp iSCSIストレージシステムおよびそのシステムにおけるパス多重化方法
JP2007249573A (ja) * 2006-03-15 2007-09-27 Hitachi Ltd 自動拡張可能なボリュームに対して最適なi/oコマンドを発行するストレージシステム及びその制御方法
WO2012049760A1 (fr) * 2010-10-14 2012-04-19 富士通株式会社 Procédé de réglage du temps de référence pour un dispositif de gestion de mémorisation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06236340A (ja) * 1993-02-10 1994-08-23 Hitachi Ltd データ転送方法及び転送装置
JP2006092054A (ja) * 2004-09-22 2006-04-06 Hitachi Ltd データ移行方法
JP2006119970A (ja) * 2004-10-22 2006-05-11 Hitachi Ltd ネットワークシステムにおけるエラーリカバリレベルの最適化
JP2006260223A (ja) * 2005-03-17 2006-09-28 Nec Corp iSCSIストレージシステムおよびそのシステムにおけるパス多重化方法
JP2007249573A (ja) * 2006-03-15 2007-09-27 Hitachi Ltd 自動拡張可能なボリュームに対して最適なi/oコマンドを発行するストレージシステム及びその制御方法
WO2012049760A1 (fr) * 2010-10-14 2012-04-19 富士通株式会社 Procédé de réglage du temps de référence pour un dispositif de gestion de mémorisation

Similar Documents

Publication Publication Date Title
US7162550B2 (en) Method, system, and program for managing requests to an Input/Output device
US9575664B2 (en) Workload-aware I/O scheduler in software-defined hybrid storage system
JP5159900B2 (ja) 予約デバイスのアクセス競合を低減するコンピュータ・プログラム、装置、及び方法
US8706962B2 (en) Multi-tier storage system configuration adviser
US20160092136A1 (en) Method and apparatus for cost-based load balancing for port selection
JP5480834B2 (ja) Sasエクスパンダにおけるデータプリフェッチ
US7895375B2 (en) Data transfer apparatus and data transfer method
US8904058B2 (en) Selecting direct memory access engines in an adaptor input/output (I/O) requests received at the adaptor
CN108292196A (zh) 将数据写入包括第一类型的存储设备和第二类型的存储设备的存储系统
US9400603B2 (en) Implementing enhanced performance flash memory devices
US10614004B2 (en) Memory transaction prioritization
US8694698B2 (en) Storage system and method for prioritizing data transfer access
JPH09258907A (ja) 複数の記憶ディスク部を有した高可用性の外部記憶装置
US10203879B2 (en) Control device and control method
US20090077276A1 (en) Data transfer device, information processing system, and computer-readable recording medium carrying data transfer program
CN109766056A (zh) 一种存储阵列控制器io队列调度方法与装置
JP3812405B2 (ja) ディスクアレイシステム
JP2003288317A (ja) 端数ブロックデータ転送を検出し補償するシステムおよび方法
US7484217B2 (en) Method for automatic adjustment of time a consumer waits to access data from a queue during a waiting phase and transmission phase at the queue
JP6721821B2 (ja) ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
WO2016046943A1 (fr) Dispositif de stockage et procédé de contrôle de dispositif de stockage
JP6848278B2 (ja) ストレージ管理装置、性能調整方法及び性能調整プログラム
US9619286B1 (en) Using request service time as fairness heuristic in locking techniques
JPWO2009050806A1 (ja) 記憶装置、データ伝送方法及び伝送制御回路
JP4468885B2 (ja) バス調停方法及び装置及びプログラム

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: 14902676

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: 14902676

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP