# Patent

## Title
Method of monitoring status information of remote storage and storage subsystem

## Abstract

A host computer acquires remote copy status information of storage subsystems that are not directly coupled to the host computer.
Each storage subsystem includes: a unit which receives a status information acquisition command from the host computer; a unit which analyses the received command to judge whether the storage subsystem in question is a target of the command; a unit which sends the command to a downstream storage subsystem connected to the storage subsystem in question when the storage subsystem in question is not the target; and a unit which sends status information to an upstream storage subsystem connected to the storage subsystem in question when the status information is received from the downstream storage subsystem.

## Background
BACKGROUND OF THE INVENTION
The present invention relates to a storage subsystem and a technique of controlling a storage subsystem, and in particular, to a technique of collecting status information etc. of a storage subsystem that is placed, for example, in a remote place and not directly coupled to a host computer.
As information-oriented society develops, computer systems are introduced all over the world, and data quantity processed there is increasing explosively. Further, importance of data treated in computer systems rises, and high reliability is required for keeping data, and it becomes social duty of an information system to prevent loss of data held in it by any kind of disaster.
In such a system, to ensure reliability of data, a storage itself is multiplied. Data outputted from a processing host computer is not only stored into a storage directly coupled to the host computer, but also copied to another storage via the directly coupled storage.
In the following, a storage directly coupled to a host computer is called a direct-coupled storage, and a storage that receives data not directly from the host computer but through the direct-coupled storage is called a remote storage.
Generally, a method of copying data to a remote storage through a direct-coupled storage is called remote copy, and applied to an information system that requires high reliability. According to this remote copy technique, even when a failure occurs in a storage so that the storage falls into an inoperable state, system operation can be continued using data of another storage.
When especially high reliability is required, it is possible to employ a method in which a multitude of remote storages are concatenated, and data is copied sequentially to the concatenated remote storages to increase multiplicity (redundancy) of data and to increase reliability.
For example, in the case of an apparatus for cascading and storing data, which is disclosed in Published Japanese Translation No. 2002-542526 of International Application (Patent Document 1), data is processed in a production site with a host computer and written into a direct-coupled storage and then, redundant data store is transparently provided to two or more remote storage. When a first remote storage receives data from the production site, the first remote storage transfers the data to a second remote storage located in a remoter place. At that time, the first remote storage holds a copy progress status. When data copy operation to the second remote storage is completed, the first remote storage reports the completion to the direct-coupled storage in the production site.
Further, to enhance integrity against disaster such as an earthquake, it is favorable that remote storages are located at remoter places as far away as possible. However, remote copy to a remote place takes time in data transfer. To solve this problem, there is a method in which, at the time of data update processing from a host computer, data transfer to remote storages is performed asynchronously with transfer (host transfer) from the host computer to a direct-coupled storage, to realize efficient remote copy between a plurality of storage subsystems, as disclosed, for example, in Japanese Patent Application Laid-Open No. 2002-334049 (Patent Document 2).
According to the technique disclosed in Patent Document 2, at a point of time when data transferred from the host computer is stored in an internal buffer of the direct-coupled storage, completion of reception is acknowledged to the host computer. And, thereafter, the host computer monitors the utilization factor of the internal buffer of the direct-coupled storage to adjust data update intervals.
Further, in the case where data is inherited at a point of time when a failure occurs in a storage, it is necessary to ensure consistency of data between multiplied storages. As a technique of establishing consistency of data, there is known a technique in which consistency of data contents is ensured as follows. Namely, a pair of volumes consisting of a volume (which stores data) of a direct-coupled storage and a volume (as the copy destination of the data mentioned) of a remote storage is defined, and a set of pairs of volumes are managed generally as a group, in order to maintain the order of data update, as disclosed, for example, in Japanese Patent Application Laid-Open No. 2002-189570.
The technique disclosed in Patent Document 3 is a duplication method to recover a volume copy quickly within the group when an event that temporarily stops copying, owing to maintenance or disaster. According to the present technique, a data center in a remote place can take over processing at the time when an information system suffers from disaster.
SUMMARY OF THE INVENTION
The techniques disclosed in the above-mentioned Patent Documents 1 to 3 can realize efficient remote copy between a direct-coupled storage and remote storages and realize multiple data.
Recently, quantity of treated data is increasing, and, in some cases, a plurality of direct-coupled storages is connected to a host computer, and each direct-coupled storage is connected with remote storages. In the case where data is transferred from one host computer to a plurality of direct-coupled storages, there is a desire to generally collect various kinds of information, such as remote copy status information, on each of the direct-coupled storages and each of the remote storages sequentially concatenated from a direct-coupled storage. This is desired for the host computer to perform processing corresponding to the collected information, for example, the remote copy status.
In the technique disclosed in Patent Document 1, a storage as a copy source obtains a progress status in the course of remote copy. However, Patent Document 1 does not disclose any arrangement for providing the above-mentioned information to the host computer. Further, Patent Documents 2 and 3 describe techniques of efficient remote copy only, and does not describe acquisition of remote copy status information or the like of a remote storage.
Thus, in these techniques, a host computer can not know various kinds of information such as remote copy progress status in a remote storage.
The present invention solves the above-described problems, and it is an object of the present invention that a host computer obtains status information and the like of a remote storage that is not directly coupled to the host computer, through a simple interface.
To attain the above object, a storage subsystem according to the present invention is a storage subsystem in a computer system in which a plurality of storage subsystems are sequentially concatenated to a host computer and remote copy is performed between the above-mentioned plurality of storage subsystems, and the storage subsystem comprises a means which judges its own concatenation position, a means which sends received status information acquisition command, and a means which sends status information.
In detail, the storage subsystem comprises:
an interface which receives status information acquisition command and which sends status information from and to a storage subsystem (hereinafter, referred to as an upstream storage subsystem) that is located on a nearer side of the storage subsystem in question seen from the host computer and connected to the storage subsystem in question;
an outgoing status information storage unit which stores said status information (hereinafter, referred to outgoing status information) to be sent to said upstream-side storage subsystem;
a target storage subsystem judgment unit which judges whether a target storage subsystem (meaning a storage subsystem from which said status information is to be acquired) stored in the status information acquisition command received through said interface is the storage subsystem in question;
a command downstream sending unit which sends said status information acquisition command to a storage subsystem (hereinafter, referred to as a downstream storage subsystem) that is located on a farther side of the storage subsystem in question seen from the host computer and connected to the storage subsystem in question, when said target storage subsystem judgment unit judges that the storage subsystem in question is not said target storage subsystem from which said status information is to be acquired;
a self status information acquisition unit which acquires the status information of the storage subsystem in question and which stores the acquired status information as said outgoing status information into said outgoing status information storage unit, when said target storage subsystem judgment unit judges that the storage subsystem in question is said target storage subsystem from which said status information is to be acquired; and
a downstream status information acquisition unit which receives the status information from said downstream storage subsystem and which stores the received status information as said outgoing status information into said outgoing status information storage unit; and
after said self status information acquisition unit or said downstream status information acquisition unit stores said outgoing status information into said outgoing status information storage unit, said interface sends said status information stored.
According to the present invention, using a simple interface, a host computer can acquire remote copy status information and the like of storage subsystems that are located at remote places without being directly coupled to the host computer.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram showing a system configuration of a storage system of an embodiment of the present invention;
FIG. 2 is a block diagram showing a functional configuration of a host computer in an embodiment of the present invention;
FIG. 3 is a block diagram showing a functional configuration of a storage controller in an embodiment of the present invention;
FIG. 4 is a block diagram showing a hardware configuration of a host computer in an embodiment of the present invention;
FIG. 5 is a block diagram showing a hardware configuration of a storage controller in an embodiment of the present invention;
FIG. 6 is a diagram for explaining information held as storage site information in an embodiment of the present invention;
FIG. 7 is a diagram for explaining sequence information in an embodiment of the present invention;
FIG. 8 is a diagram for explaining sequence status information in an embodiment of the present invention;
FIG. 9 is a diagram for explaining a status information acquisition command in an embodiment of the present invention;
FIG. 10 is a diagram for explaining a status information response in an embodiment of the present invention;
FIG. 11 is a flowchart showing status information request processing performed in a host computer in an embodiment of the present invention;
FIG. 12 is a flowchart showing processing performed in a host computer when status information is acquired in an embodiment of the present invention;
FIG. 13 is a flowchart showing processing performed in a storage subsystem when a status information acquisition command including Specific-Newest Command is received in an embodiment of the present invention;
FIG. 14 is a flowchart showing processing performed in a storage subsystem when a status information acquisition command including Sequence-Newest Command is received in an embodiment of the present invention;
FIG. 15 is a flowchart showing processing performed in a storage subsystem when a status information acquisition command including Regular-Interval-Sequence-Status Acquisition Command is received in an embodiment of the present invention; and
FIG. 16 is a flowchart showing adjustment processing performed in a remote copy adjustment unit in an embodiment of the present invention.



DESCRIPTION OF PREFERRED EMBODIMENTS
Now, embodiments of the present invention will be described referring to drawings.
FIG. 1 is a block diagram showing a system configuration of the present embodiment.
A storage system of the present embodiment comprises a host computer 100, storage subsystems 1300A1, 1300B1, 1300C1, 1300A2, 1300B2 and 1300C2. Further, each storage subsystem comprises a storage controller 1400A1, 1400B1, 1400C1, 1400A2, 1400B2 or 1400C2, and a disk array 1500A1, 1500B1, 1500C1, 1500A2, 1500B2 or 1500C2.
The host computer 100 performs various kinds of processing, stores data into the storage subsystems belonging to the storage system, and manages all the storage subsystems belonging to the storage system.
In the present embodiment, the storage subsystems 1300A1 and 1300A2 are directly coupled to the host computer 100. In the present embodiment, this example having two storage subsystems directly coupled to the host computer 100 is described, although the number of storage subsystems coupled to a host computer is not limited to two. Hereinafter, the storage subsystems directly coupled to the host computer are called direct-coupled storage subsystems, to distinguish them from the other storage subsystems.
Further, the storage subsystems 1300B1 and 1300B2 are storage subsystems connected respectively to the direct-coupled storage subsystems 1300A1 and 1300A2. The storage subsystems 1300C1 and 1300C2 are storage subsystems connected respectively to the storage subsystems 1300B1 and 1300B2. These storage subsystems that are not directly coupled to the host computer are generally called remote storage subsystems. The remote subsystems are connected such that one or more storage subsystems are connected in series to one direct-coupled storage subsystem. The number of remote storage subsystems connected in series is not limited. Further, it is possible that a direct-coupled storage subsystem is not connected with a remote storage subsystem.
Data outputted from the host computer 100 to a direct-coupled storage subsystem 1300A1 or 1300A2 is remotely copied to storage subsystems 1300B1 and 1300C1 or 1300B2 and 1300C2 connected in series. When remote copy is performed from a direct-coupled storage subsystem to sequentially-concatenated storage subsystems, a set of the concatenated storage subsystems is called a sequence. Further, among storage subsystems in a sequence, a storage subsystem on the nearer side seen from the host computer is called upstream one and a storage subsystem on the farther side seen from the host computer is called downstream one.
In the present embodiment, the host computer can obtain information on a halfway status of remote copy. Thus, the present embodiment is described taking the example where the host computer obtains status information of remote copy, although the present invention is not limited to this. For example, a configuration similar to the present embodiment can obtain configuration information and log information of a remote storage subsystem.
Further, the storage subsystems 1300A1, 1300B1 and 1300C1 in a sequence are located at different data centers respectively. Each data center is located at a remote place, and connected with one another through a network of fiber channels, for example. Also the other sequence is arranged similarly.
When it is not necessary to distinguish an individual storage subsystem, an individual storage controller or an individual disk array, a representative expression such as “a storage subsystem 1300”, “a storage controller 1400” or “a disk array 1500” is used in this description. Further, when it is not necessary to distinguish between the direct-coupled storage subsystems, “a direct-coupled storage subsystem 1300A” is used as a representative expression.
Next, functional configurations of the host computer 100 and a storage subsystem 1300 will be described.
FIG. 2 is a block diagram showing a functional configuration of the host computer 100.
As shown in the figure, the host computer 100 comprises a remote copy monitoring unit 101, a remote copy adjustment unit 102, a concatenation information acquisition unit 103, a sequence information acquisition unit 104, storage site information 500, sequence information 600, and acquired status information 300.
The concatenation information acquisition unit 103 receives information (inputted by an administrator) on a concatenation configuration of storage subsystems 1300, and generates and holds the storage site information 500.
An example held as the storage site information 500 is shown in FIG. 6. As shown in the figure, the storage site information 500 includes: a concatenated storage site number 510 showing the number of storage subsystems 1300 concatenated in the sequence; a storage site identifier 530, i.e., information specifying each storage subsystem 1300 belonging to the sequence; and concatenation order information 520 indicating the concatenation order of the storage subsystems 1300 in the sequence.
In the present embodiment, consecutive natural numbers (in which a smaller number means an upstream storage subsystem 1300) are held as the concatenation order information 520. Namely, “1” is held for the direct-coupled storage subsystem 1300A1, “2” for the remote storage subsystem 1300B1 connected to the direct-coupled storage subsystem 1300A1, and “3” for the remote storage subsystem 1300C1 connected to the remote storage subsystem 1300B1. According to the concatenation order information, the concatenation configuration of the storage subsystems 1300 in each sequence can be grasped.
The sequence information acquisition unit 104 receives information (inputted by the administrator) on a concatenation configuration of a direct-coupled storage subsystem 1300A, and generates and holds the sequence information 600.
An example of the sequence information 600 is shown in FIG. 7. As shown in the figure, the sequence information 600 includes: a storage subsystem number 610 showing the number of direct-coupled storage subsystems 1300A concatenated to the host computer; a storage subsystem identifier 630, i.e., information specifying each direct-coupled storage subsystem 1300A; and connection order information 620 indicating the order of connection of the direct-coupled storage subsystems 1300A to the host computer. Referring to the sequence information 600, it is possible to know the storage subsystems 1300A directly coupled to the host computer.
The remote copy monitoring unit 101 obtains status information of all the storage subsystems 1300 in the storage system, through the direct-coupled storage subsystems 1300A, and monitors remote copy in each sequence, based on the status information.
In detail, when the remote copy monitoring unit 101 receives an instruction from a user through the below-mentioned input device 140 to acquire status information, then, the remote copy monitoring unit 101 generates a status information acquisition command 800 described below to acquire status information, and sends the generated status information acquisition command 800 to a direct-coupled storage subsystem 1300A. In the present embodiment, the remote copy monitoring unit 101 receives the following designation from the user, namely, designation of the type of status information to acquire, and the storage subsystem and the pair of volumes as the target from which status information is to acquire, and, when the below-mentioned interval processing is required, designation of the time interval.
Further, when status information is received from a direct-coupled storage subsystem 1300A, the received status information is held as the acquired status information 300. The acquired status information consists of the below-described status information acquisition command 800 and the status information sent from the direct-coupled storage subsystem 1300A.
The acquired status information 300 is displayed on the below-mentioned display device 150 by a display control unit not shown, or the like. From the displayed contents, the user can know the status information of the desired storage subsystem 1300.
Now, will be described a status information acquisition command 800 that is generated by the remote copy monitoring unit 101 to acquire status information of a storage subsystem belonging to the storage system managed by the host computer 100 that owns the remote copy monitoring unit 101 in question.
FIG. 9 shows an example of a status information acquisition command 800.
As shown in the figure, a status information acquisition command 800 includes: a command identifier storage part 860; a remote copy status acquisition command type storage part 810; an acquisition target identifier storage part 820; a pair identifier storage part 830; a type-of-information-to-acquire storage part 840; and an interval storage part 850.
The command identifier storage part 860 stores a command identifier as information for identifying a command. A command identifier is automatically given when a status information acquisition command 800 is generated, to uniquely identify each status information acquisition command. When status information is returned in response to a status information acquisition command 800, a storage subsystem 1300 that has received the status information acquisition command 800 gives the command identifier to the status information to be returned. Receiving status information from a direct-coupled storage subsystem 1300A, the remote copy monitoring unit 101 can judge for which status information acquisition command 800, the received status information is received in return.
The remote copy status acquisition command type storage part 810 stores a command type corresponding to a type of remote copy status to acquire. As a command type, the present embodiment prepares five types depending on: the target from which status information is to be acquired; whether status information is the newest or already-held information; and whether status information is to be accumulated at given time intervals.
Namely, the five command types are: (1) Specific-Newest Command, which gives an instruction of acquiring newest status information on a specific storage subsystem 1300; (2) Specific-Existing Command, which gives an instruction of acquiring status information that relates to a specific storage subsystem 1300 and that has been already acquired and is held in a direct-coupled storage subsystem 1300A; (3) Sequence-Newest Command, which gives an instruction of acquiring newest status information on all the storage subsystems 1300 belonging to a specific sequence; (4) Sequence-Existing Command, which gives an instruction of acquiring status information that relates to all the storage subsystems 1300 belonging to a specific sequence and that has been already acquired and held in the direct-coupled storage subsystem 1300A of the sequence in question; and (5) Regular-Interval-Sequence-Status Acquisition Command, which gives an instruction of accumulating the newest status information on all the storage subsystems 1300 belonging to a specific sequence at given time intervals into the direct-coupled storage subsystem 1300A. One of these types is stored in the remote copy status acquisition command type storage part 810.
Receiving a status information acquisition command 800, a storage subsystem 1300 performs processing which acquires status information, according to the command type stored in the remote copy status acquisition command type storage part 810 of the received status information acquisition command 800. Although the present invention takes an example where the above-described five types are prepared, command types are not limited to these. For example, there may be prepared a command type for acquiring status information on a specific storage subsystem 1300 at given intervals.
The acquisition target identifier storage part 820 stores information that specifies a storage subsystem 1300 or a sequence from which status information is acquired. In detail, referring to the storage site information 500, the storage site identifier 530 of the storage subsystem 1300 from which status information is acquired, the concatenation order information 520 corresponding to that storage site identifier 530, and the concatenated storage site number 510 are stored. Meaning of information stored in this storage part 820 differs depending on the command type stored in the remote copy status acquisition command type storage part 810.
For example, in the case where Specific-Newest Command or Specific-Existing Command, which gives an instruction of acquiring status information on a specific storage subsystem 1300, is stored, it is judged that the storage subsystem 1300 stored in the acquisition target identifier storage part 820 is the storage subsystem 1300 from which status information is acquired according to the status information acquisition command 800.
On the other hand, in the case where Sequence-Newest Command, Sequence-Existing Command or Regular-Interval-Sequence-Status Acquisition Command, which gives an instruction of acquiring status information of all the storage subsystems 1300 of a sequence, is stored, the acquisition target identifier storage part 820 stores the direct-coupled storage subsystem 1300A belonging to the sequence as the target which acquires status information. Thus, it is judged that a sequence whose top is the stored direct-coupled storage subsystem 1300 is the sequence as the target which acquires status information according to the status information acquisition command 800.
The type-of-information-to-acquire storage part 840 stores information that specifies which type of status information is to be acquired. The present embodiment prepares three types: Copy Status, which indicates a concordance rate of data between a pair of volumes in remote copy; Transfer Rate, which indicates a data transfer rate in remote copy; and Cache Usage, which indicates a usage rate of the cache of a storage subsystem. One or more of these types are designated.
The pair identifier storage part 830 stores information specifying a pair of volumes whose status information of remote copy is to acquire. This information is stored when a command type stored in the remote copy status acquisition command type storage part 810 is Specific-Newest Command or Specific-Existing Command, and the information stored in the type-of-information-to-acquire storage part 840 (i.e., the information that specifies which type of status information is to be acquired) is Copy Status or Transfer Rate.
The interval storage part 850 stores information relating to interval processing. Here, in the present embodiment, “interval processing” means processing of acquiring status information of all the storage subsystems 1300 of a sequence to update information of the below-mentioned sequence status information storage unit 700 held by the direct-coupled storage subsystem 1300A. Thus, the information relating to the interval processing is relevant only when the command type stored in the remote copy status acquisition command type storage part 810 is Regular-Interval-Sequence-Status Acquisition Command. In the present embodiment, in the case where the interval processing is performed, the interval storage part 850 stores the time interval of the interval processing. In the case of sending an instruction of stopping interval processing, a predetermined data, for example “0” is stored into the interval storage part 850.
According to an instruction received from a user through the below-mentioned input device 140, the remote copy adjustment unit 102 compares status information between sequences or storage subsystems 1300, and outputs a comparison result to the below-mentioned output device 150, for example. Based on the contents of the output, the user can change the below-mentioned intervals at which status information is acquired, break the remote copy processing itself, or detach a storage subsystem 1300.
FIG. 4 shows a hardware configuration of the above-described host computer 100.
As shown in the figure, the host computer 100 comprises a processor 110, a memory 120, a storage interface 130, an input device 140 and a display device 150.
The above-described functions of the remote copy monitoring unit 101, the remote adjustment unit 102, the concatenation information acquisition unit 103 and the sequence information acquisition unit 104 are each realized when a program is stored in the memory 120 and executed by the processor 110. Further, the storage site information 500, the sequence information 600 and the acquired status information 300 are stored in the memory 120.
Next, a storage subsystem 1300 will be described. As shown in FIG. 1, a storage subsystem 1300 comprises a storage controller 1400 and a disk array 1500. The disk array 1500 stores information received from the host computer 100, includes volumes as a plurality of storage areas, and is managed in volumes.
The storage controller 1400 controls processing of storing information (received from the host computer) to the disk array 1500, remote copy processing destined to downstream storage subsystems connected to the storage subsystem 1300 of the storage controller 1400 itself, processing of acquiring status information, and other processing.
FIG. 3 shows a functional configuration of a storage controller 1400.
As shown in the figure, a storage controller 1400 comprises an interface control unit 401, a concatenation position self judgment unit 402, a status information acquisition unit 403, an interval processing unit 404 and sequence status information 700.
The status information acquisition unit 403 continuously monitors the inside status of its own storage subsystem 1300 in the course of remote copy, and holds a monitoring result as the sequence status information 700.
For example, the status information acquisition unit 403 acquires status information at given intervals, and uses the acquired status information to update the sequence status information 700. Further, when the status information acquisition unit 403 receives status information from a downstream storage subsystem 1300 than its own storage subsystem 1300, through the below-mentioned interface control unit 401, then, the status information acquisition unit 403 adds a new entry to the sequence status information 700 to store the status information.
Now, the sequence status information 700 will be described.
FIG. 8 shows an example of sequence status information 700. Here, by way of example, FIG. 8 shows sequence status information 700 held by a direct-coupled storage subsystem 1300A.
As shown in the figure, sequence status information 700 includes: a storage site information storage part 710 which stores storage site information that identifies two storage subsystems 1300 relating to remote copy; a volume identifier storage part 720 which stores volume identifiers of two disk arrays relating to remote copy; a status information storage part 730 which stores status information; and a update time storage part 740 which stores the time when the status information was updated. Further, the status information storage part 730 includes: a copy status storage part 731 which stores a remote copy progress; a transfer rate storage part 732 which stores a transfer rate of remote copy; and a cache usage storage part 733 which stores a usage rate of the cache memory.
The copy status storage part 731 may store copy status information such as a duplex state in which a pair relation of a pair of volumes is maintained, a suspended state in which a pair relation is suspended, or the like.
Further, when the storage site includes two storage subsystems 1300 as in the case where data is copied from the storage subsystem 1300A1 to the storage subsystem 1300B1 for example, the entries other than the copy status and the transfer rate are held by both the storage subsystems 1300 concerned, and the copy status and the transfer rate are held by the storage subsystem on the side of the copy source.
When the concatenation position self judgment unit 402 receives an instruction from the below-mentioned interface control unit 401, the concatenation position self judgment unit 402 extracts information in the acquisition target identifier storage part 820 to judge the concatenation position of its own storage subsystem 1300 in the sequence.
In detail, the concatenation position self judgment unit 402 judges its own concatenation position based on the concatenation order information 520 and the concatenated storage site number 510 stored in association with the storage site identifier 530 coincident with the storage site identifier 530 that is held in advance in the concatenation position self judgment unit 402 itself and that specifies its own storage subsystem 1300, among the storage site identifiers 530 stored in the acquisition target identifier storage part 820.
For example, when the concatenated storage site number 510 is “1” and its own concatenation order information 520 is “1”, then, the concatenation position self judgment unit 402 judges that its own storage subsystem 1300 is directly coupled to the host computer and located at the end position. Or, in the case where the number of the concatenation stored in the concatenated storage site number 510 is “6”, and the concatenation order shown by its concatenation order information 520 is “1”, then, it is judged that its own storage subsystem 1300 is directly coupled to the host computer and is not located at the end position. Or, when the concatenation order is “6”, it is judged that its own storage subsystem 1300 is located at the end position of the sequence.
The interface control unit 401 receives a status information acquisition command 800 from the host computer 100 or the upstream storage subsystem 1300 to its own storage subsystem 1300, and interprets and processes the received status information acquisition command 800. Further, when a status information response 900, which stores status information, from the downstream storage subsystem 1300 to its own storage subsystem 1300, then, the interface control unit 401 sends the received status information response 900 to the upstream storage subsystem 1300 or the host computer 100.
Here, a status information response 900 returned from a storage subsystem 1300 will be described.
FIG. 10 shows an example of a status information response 900. As shown in the figure, a status information response 900 includes a command identifier storage part 910, a status information storage part 920, a command type storage part 930, and an update time storage part 940.
When a status information acquisition command 800 is received, the interface control unit 401 extracts the above-mentioned command type stored in the remote copy status acquisition command type storage part 810 out of the status information acquisition command 800, to identify the command type.
In the case where the command type stored in the remote copy status acquisition command type storage part 810 is the above-mentioned Specific-Newest Command, the identifier stored in the acquisition target identifier storage part 820 is extracted, to judge whether the storage subsystem 1300 specified as the target of acquisition is its own storage subsystem 1300.
When its own storage subsystem 1300 is specified, a status information response 900 is generated. Out of the information held as the sequence status information 700 by the status information acquisition unit 403, the status information designated by the received status information acquisition command 800 and the update time corresponding to the status information are received and stored respectively into the status information storage part 920 and the update time storage part 940 of the generated status information response 900. Further, the command identifier and the command type stored respectively in the command identifier storage part 860 and the remote copy status acquisition command type storage part 810 are stored into the command identifier storage part 910 and the command type storage part 930 of the status information response 900. Then, the status information response 900 is sent to the upstream storage subsystem 1300 connected to the storage subsystem 1300 in question. Here, in the case where the storage subsystem 1300 in question is a direct-coupled storage subsystem 1300A, the status information response 900 is sent to the host computer.
In the case where the storage subsystem 1300 designated as the target of acquisition is not its own storage subsystem 1300, then, the interface control unit 401 sends the status information acquisition command 800 to the downstream storage subsystem 1300 connected to its own storage subsystem 1300.
In the case where the storage subsystem 1300 to which the interface control unit 401 belongs (i.e., its own storage subsystem 1300) is an end (i.e., the lowest) storage subsystem 1300, and the storage subsystem 1300 designated as the target of acquisition is not its own storage subsystem 1300, then, the received status information acquisition command 800 is discarded.
In the case where the command type stored in the remote copy status acquisition command type storage part 810 is the above-mentioned Specific-Existing Command, the interface control unit 401 extracts the identifier stored in the acquisition target identifier storage part 820 and the identifier stored in the pair identifier storage part 830, to confirm whether the status information of the storage subsystem 1300 and the pair of volumes designated as the target of acquisition is stored in the sequence status information 700 held by the storage subsystem 1300 of its own.
In the case where the sequence status information 700 stores the status information in question, a status information response 900 is generated. And, according to the information type stored in the type-of-information-to-acquire storage part 840, the relevant status information and the update time in the sequence status information 700 are stored into the status information storage part 920 and the update time storage part 940 of the generated status information response 900. Further, the command identifier and the command type stored respectively in the command identifier storage part 860 and the remote copy status acquisition command type storage part 810 of the received status information acquisition command 800 are stored respectively into the command identifier storage part 910 and the command type storage part 930 of the status information response 900. Then, the status information response 900 is sent to the host computer 100.
In the case where the status information of the storage subsystem 1300 and the pair of volumes designated as the target of acquisition is not stored in the sequence status information 700 held by the storage subsystem 1300 of its own, the processing of the above-described case where Specific-Newest Command is received is performed.
In the case where no status information of the storage subsystem 1300 specified as the target of acquisition is stored in the sequence status information 700, the interface control unit 401 discards the status information acquisition command 800.
In the case where the command type stored in the remote copy status acquisition command type storage part 810 is the above-mentioned Sequence-Newest Command, the interface control unit 401 confirms the information stored in the acquisition target identifier storage part 820 to specify the target of acquisition. In the case where the storage subsystem 1300 to which the interface control unit 401 itself belongs (i.e., its own storage subsystem) is a direct-coupled storage subsystem 1300A and the information stored in the acquisition target identifier storage part 820 indicates its own storage subsystem 1300A, then, the interface control unit 401 sends the status information acquisition command 800 to the downstream storage subsystem 1300 connected to its own storage subsystem 1300A.
In the case where the storage subsystem 1300 of its own is not a direct-coupled storage subsystem 1300A, the interface control unit 401 sends the status information acquisition command 800 to the downstream storage subsystem 1300 connected to the storage subsystem 1300 of its own, unless the concatenation position self judgment unit 402 judges that the storage subsystem 1300 of its own is an end storage subsystem 1300.
In the case where the storage subsystem 1300 of its own is judged to be an end storage subsystem 1300, a status information response 900 is generated and sent to the upstream storage subsystem 1300 connected to the storage subsystem 1300 of its own. Here, information stored in each storage part of the status information response is same as the above-described case of Specific-Newest Command.
In the case where the command type stored in the remote copy status acquisition command type storage part 810 is the above-mentioned Sequence-Existing Command, then, the interface control unit 401 confirms the information stored in the acquisition target identifier storage part 820 to specify the target of acquisition. In the case where the storage subsystem 1300 to which the interface control unit 401 itself belongs (i.e., its own storage subsystem) is a direct-coupled storage subsystem 1300A and the information stored in the acquisition target identifier storage part 820 indicates its own storage subsystem 1300A, the interface control unit 401 stores the status information that is held by its own storage subsystem 1300A and that relates to all the storage subsystems 1300 of the sequence into the status information response 900, to send the status information response 900 to the host computer 100.
At that time, the command identifier storage part 910 and the command type storage part 930 store the corresponding information stored in the received status information acquisition command 800. And, the status information storage part 920 and the update time storage part 940 store the corresponding information of all the storage subsystems 1300 and the pairs of volumes stored in the sequence status information 700 held by the storage subsystem 1300A of its own.
Further, in the case where the command type stored in the remote copy status acquisition command type storage part 810 is Regular-Interval-Sequence-Status Acquisition Command, and its own storage subsystem 1300 is judged to be an end storage subsystem 1300, then, the interface control unit 401 extracts the information of the interval storage part 850 of the received status information acquisition command 800, and delivers the extracted information to the below-mentioned interval processing unit 404.
In the present embodiment, in the case where the interval storage part 850 stores the time interval at which the interval processing is performed, it means that status information is acquired at the time intervals, each interval having the value stored in the interval storage part 850. On the other hand, in the case where the interval storage part 850 stores “0”, it means an instruction of stopping the interval processing.
Further, the interface control unit 401 receives a status information response 900 from the downstream storage subsystem 1300.
First, the interface control unit 401 makes the status information acquisition unit 403 store the status information of the received status information response 900 into the sequence status information storage unit 700 of its own storage subsystem 1300. Then, referring to the command type storage part 930 of the received status information 900, the interface control unit 401 judges the type of the command according to which the status information response 900 in question has been sent.
In the case where it is judged that the status information response 900 has been sent according to Specific-Newest Command or Specific-Existing Command and the storage subsystem of its own is not a direct-coupled storage subsystem 1300A, then, the interface control unit 401 extracts again the status information stored in the received status information response 900 from the status information stored in the sequence status information 700, and composes a status information response 900 to send the composed status information response 900 as it is to the upstream storage subsystem 1300 connected to its own storage subsystem 1300. When its own storage subsystem 1300 is a direct-coupled storage subsystem 1300A, the composed status information 900 is sent to the host computer 100.
Or, the following arrangement may be employed here. Namely, when it is judged that the status information response 900 has been sent according to Specific-Newest Command or Specific-Existing Command, then, the status information response 900 received from the downstream storage subsystem 1300 is sent as it is to the upstream storage subsystem 1300 or to the host computer 100.
Further, when it is judged that the received status information response 900 has been sent according to Sequence-Newest Command, Sequence-Existing Command, or Regular-Interval-Sequence-Status Acquisition Command, and its own storage subsystem 1300 is not a direct-coupled storage subsystem 1300A, then, using its own status information and the status information of all the downstream storage subsystems stored in the sequence status information 700, the status information and the update time designated in the status information acquisition command 800 are extracted to compose a status information response 900. Then, the composed status information response 900 is sent to the upstream storage subsystem 1300 connected to its own storage subsystem 1300. On the other hand, when its own storage subsystem 1300 is a direct-coupled storage subsystem 1300A, the composed status information response 900 is sent to the host computer 100.
The interface control unit 401 makes the status information acquisition unit 403 add the status information of the downstream storage subsystems 1300 stored in the received status information response 900 to the sequence status information 700, and sends the received status information response 900 to the upstream storage subsystem 1300 connected to its own storage subsystem 1300. In the case of Sequence-Newest Command and when its own storage subsystem is a direct-coupled storage subsystem 1300A, then, the received status information response 900 is sent to the host computer 100.
The interval processing unit 404 holds a timer for measuring time. When the information on the time interval for the interval processing is received from the interface control unit 401, the interval processing unit 404 starts to measure time anew. When time of the received time interval elapses, the interval processing unit 404 instructs the interface control unit 401 to perform the processing. On the other hand, when, as the information on the interval processing, “0” is received from the interface control unit 401, then, the interval processing unit 404 stops the time measurement using the timer, to stop the interval processing.
FIG. 5 shows a hardware configuration of the above-described storage controller 1400 of a storage subsystem 1300.
As shown in the figure, the storage controller 1400 comprises a processor 410, a memory 420, a cache memory 430, a host interface 440 and a storage interface 450.
The above-described functions of the interface control unit 401, the concatenation position self judgment unit 402, the status information acquisition unit 403 and the interval processing unit 404 are each realized when a program is stored in the memory 420 and executed by the processor 410. Further, the sequence status information 700 is stored in the memory 420.
Next, will be described processing performed when the host computer 100 requests status information from a storage subsystem 1300.
FIG. 11 is a flowchart for explaining the processing performed when the host computer 100 requests status information.
When the remote copy monitoring unit 101 receives an instruction from a user through the input device 140, to acquire status information (Step 1101), then, the remote copy monitoring unit 101 generates a status information acquisition command 800 according to the received instruction.
First, the remote copy status acquisition command type and the type of the status information to acquire, shown in the instruction received from the user, are stored into the remote copy status acquisition command type storage part 810 and the type-of-information-to-acquire storage part 840, respectively (Step 1102).
Next, from the storage site information 500, the remote copy monitoring unit 101 acquires the concatenation information on the storage subsystem 1300 whose status information is to acquire according to the instruction received from the user, and stores the acquired information into the acquisition target identifier storage part 820. The remote copy monitoring unit 101 also stores the pair of volumes which acquire according to the instruction received from the user into the pair identifier storage part 830 (Step 1103).
Then, it is judged whether designation of the time interval of the interval processing or stopping of the interval processing has been received (Step 1104). In the case where such designation has been received, the received time interval of the interval processing or “0” is stored into the interval storage part 850 (Step 1105).
Next, the remote copy monitoring unit 101 stores a command identifier, which is automatically given to uniquely identifying the status information acquisition command 800, into the command identifier storage part 860 (Step 1106).
Last, the status information acquisition command 800 generated is send to a direct-coupled storage subsystem 1300A connected to the host computer 100 itself, and the generated status information acquisition command 800 is stored into the acquired status information 300 (Step 1107).
Next, will be described processing performed when the host computer 100 receives status information from a direct-coupled storage subsystem 1300.
FIG. 12 shows a processing flow for explaining the processing performed when the host computer 100 receives status information.
When a status information response 900 is received from a direct-coupled storage subsystem 1300A (Step 1201), the remote copy monitoring unit 101 extracts a command identifier from the command identifier storage part 910 of the received status information response 900, and compares the extracted command identifier with command identifiers of status information acquisition commands 800 sent from the remote copy monitoring unit 101 and stored in the acquired status information 300 (Step 1202).
When there is found a command identification that agrees with the extracted command identifier, then, the remote copy monitoring unit 101 holds the received status information response 900 as the acquired status information 300, i.e., as a reply to the status information acquisition command 800 of the found command identification (Step 1203).
Where there is not found a command identifier that agrees with the extracted command identification, then, the remote copy monitoring unit 101 outputs “error” to the display device 150 (Step 1204).
Next, will be described processing performed by the storage controller 1400 of a storage subsystem 1300 when a status information acquisition command 800 is received.
FIG. 13 shows a processing flow for explaining the processing performed when Specific-Newest Command is stored in the remote copy status acquisition command type storage part 810 of the received status information acquisition command 800.
When the interface control unit 401 receives the status information acquisition command 800 (Step 3001), the interface control unit 401 refers to the acquisition target identifier storage part 820 to judge whether its own storage subsystem 1300 is the storage subsystem 1300 as the target of acquisition (Step 3002).
In the case where its own storage subsystem 1300 is the target of acquisition, then, the interface control unit 401 acquires the designated status information from the sequence status information 700 held in the status information acquisition unit 403 to compose a status information response 900 (Step 3003).
Next, the interface control unit 401 makes the concatenation position self judgment unit 402 judge the concatenation position of its own storage subsystem (Step 3004). When its own storage subsystem is judged to be a direct-coupled storage subsystem 1300A, the interface control unit 401 sends the status information response 900 to the host computer 100 (Step 3005). When it is judged that its own storage subsystem is not a direct-coupled storage subsystem 1300A, then, the interface control unit 401 sends the status information response 900 to the upstream storage subsystem 1300 connected to its own storage subsystem (Step 3006).
Next, in the case where it is judged that its own storage subsystem is not the storage subsystem 1300 as the target of acquisition in Step 3002, then, the interface control unit 401 sends the status information acquisition command 800 to the downstream storage subsystem 1300 connected to its own storage subsystem 1300, to await return of a status information response 900 (Step 3007).
When a status information response 900 is received from the storage subsystem 1300 connected to its own storage subsystem, then, the interface control unit 401 adds the received status information to the sequence status information 700 (Step 3008), and composes a new status information response 900 from the added status information (Step 3009), to proceeds to Step 3004.
In the case where Specific-Existing Command is stored in a status information acquisition command 800, then, when a direct-coupled storage subsystem 1300A receives the status information acquisition command 800, the status information of the designated storage subsystem 1300 is extracted from the sequence status information 700 held by the direct-coupled storage subsystem 1300A itself, to send the extracted status information to the host computer 100. However, when the direct-coupled storage subsystem 1300A does not hold the sequence status information 700, then, the direct-coupled storage subsystem 1300A performs the processing of the above-described case where a status information acquisition command 800 including Specific-Newest Command is received.
Next, will be described processing performed when Sequence-Newest Command is stored in the remote copy status acquisition command type storage part 810 of the received status information acquisition command 800.
FIG. 14 shows a processing flow in the case of receiving the status information acquisition command 800 that stores Sequence-Newest Command.
When the interface control unit 401 receives the status information acquisition command 800 (Step 4001), the interface control unit 401 makes the concatenation position self judgment unit 402 judge the concatenation position of its own storage subsystem 1300 (Step 4002).
When it is judged that its own storage subsystem is a storage subsystem 1300 connected at the end of the sequence, then, the designated status information is acquired from the sequence status information 700 held by the status information acquisition unit 403 to compose a status information response 900 (Step 4003).
In Step 4002, when it is judged that its own storage subsystem is not a storage subsystem 1300 connected at the end of the sequence, then, the interface control unit 401 sends the status information acquisition command 800 to the downstream storage subsystem 1300 connected to its own storage subsystem and awaits return of a status information response 900 (Step 4004).
When a status information response 900 is received from the storage subsystem 1300 on the downstream side of its own storage subsystem, then, the interface control unit 401 adds the received status information to the sequence status information 700 (Step 4005). Further, using the information stored in the sequence status information 700, the interface control unit 401 composes a new status information response 900 based on the status information of its own and of all the storage subsystems 1300 on the downstream side (Step 4006).
Next, the interface control unit 401 makes the concatenation position self judgment unit 402 judge the concatenation position of its own storage subsystem 1300 (Step 4007). When it is judged that its own storage subsystem 1300 is a direct-coupled storage subsystem 1300A, then, the interface control unit 401 sends the status information response 900 to the host computer 100 (Step 4008). On the other hand, when it is judge that its own storage subsystem 1300 is not a direct-coupled storage subsystem 1300A, then, the interface control unit 401 sends the status information response 900 to the upstream storage subsystem 1300 connected to its own storage subsystem 1300 (Step 4009).
In the case where Sequence-Existing Command is stored in a status information acquisition command 800, then, when a direct-coupled storage subsystem 1300A receives the status information acquisition command 800, the sequence status information 700 held by the direct-coupled storage subsystem 1300A itself is sent to the host computer 100. However, when the direct-coupled storage subsystem 1300A does not hold the sequence status information 700, then, the direct-coupled storage subsystem 1300A performs the processing of the above-described case where a status information acquisition command 800 including Sequence-Newest Command is received.
Next, will be described processing performed when Regular-Interval-Sequence-Status Acquisition Command is stored in the remote copy status acquisition command type storage part 810 of the received status information acquisition command 800.
FIG. 15 shows a processing flow in the case of receiving the status information acquisition command 800 that stores Regular-Interval-Sequence-Status Acquisition Command.
When the interface control unit 401 receives the status information acquisition command 800 (Step 5001), the interface control unit 401 makes the concatenation position self judgment unit 402 judge the concatenation position of its own storage subsystem 1300 (Step 5002).
When it is judged that its own storage subsystem 1300 is a storage subsystem 1300 connected at the end of the sequence, then, the interface control unit 401 extracts the time interval stored in the interval storage part 850 (Step 5003).
Here, when “0” is stored in the interval storage part 850, the interface control unit 401 makes the interval processing unit 404 reset the timer (Step 5004), and ends the processing.
When it is found in Step 5003 that a time interval other than “0” is stored, then, the interval control unit 401 makes the interval processing unit 404 set the stored time interval into the timer (Step 5005).
When the interface control unit 401 receives a notice from the interval processing unit 404 to the effect that the interval set in the timer has elapsed, then, the interface control unit 401 acquires the designated status information from the sequence status information 700 held by the status information acquisition unit 403 to compose a status information response 900 (Step 5006).
Further, when it is judged in Step 5002 that its own storage subsystem 1300 is not a storage subsystem 1300 connected to the end of the sequence, then, the interface control unit 401 sends the status information acquisition command 800 to the downstream storage subsystem 1300 connected to its own storage subsystem, and awaits return of a status information response 900 (Step 5007).
When a status information response 900 is received from the downstream storage subsystem 1300 connected to its own storage subsystem 1300, the interface control unit 401 adds the received status information to the sequence status information 700 (Step 5008). And, using the information stored in the sequence status information 700, the interface control unit 401 composes a new status information response 900 based on the status information of its own and of all the storage subsystems 1300 on the downstream side (Step 5009).
Next, the interface control unit 401 makes the concatenation position self judgment unit 402 judge the concatenation position of its own storage subsystem 1300 (Step 5010). When it is judged that its own storage subsystem 1300 is a direct-coupled storage subsystem 1300A, then, the interface control unit 401 holds the status information stored in the status information response 900 (Step 5011). On the other hand, when it is judged that its own storage subsystem 1300 is not a direct-coupled storage subsystem 1300A, then, the status information response 900 is sent to the upstream storage subsystem 1300 connected to its own storage subsystem 1300 (Step 5012).
Next, the interface control unit 401 makes the concatenation position self judgment unit 402 judge the concatenation position of its own storage subsystem 1300 (Step 5013). When its own storage subsystem 1300 is an end storage subsystem 1300, the processing flow returns to Step 5008. On the other hand, when it is judged that its own storage subsystem is not an end storage subsystem 1300, the processing flow returns to Step 5008 to await receipt of a status information response 900 from the downstream storage subsystem connected to its own storage subsystem 1300.
Hereinabove, has been described the processing performed when Regular-Interval-Sequence-Status Acquisition Command is stored in the received status information acquisition command 800.
Next, will be described remote copy adjustment processing performed when the host computer 100 receives the status information of a plurality of sequences connected to the host computer 100 itself.
FIG. 16 shows a flow of the adjustment processing by the remote copy adjustment unit 102.
When an instruction of adjustment is received from a user through the input device 140, the remote copy adjustment unit 102 refers to the acquired status information 300 to extract data having the same status information type and the same update time as ones stored in the status information storage part 920 and the update time storage part 940 of a received status information response 900, from the status information of each sequence (Step 6001).
Among the extracted data, the remote copy adjustment unit 102 extracts a sequence having status information that indicates its remote copy load is increasing. For example, in the case where the status information type stored in the type-of-information-to-acquire storage part is Transfer Rate, it is judged whether there is a sequence in which a value of the transfer rate is less than a predetermined threshold of the transfer rate. Or, in the case of Cache Usage, it is judged whether there is a sequence in which a value of the cache usage rate is more than a predetermined threshold of the cache usage rate (Step 6002).
In the case where there is no sequence that satisfies the condition in Step 6002, then, the processing is ended without doing anything further.
In the case where there is a sequence that satisfies the condition in Step 6002, the remote copy adjustment unit 102 makes the display device 150 display the relevant sequence (Step 6003). Here, a storage subsystem 1300 having a lower transfer rate or a higher cache usage rate as described above is possibly a storage subsystem 1300 whose remote copy load is increasing or whose performance is decreasing. Thus, the user can cope with this by watching display on the display device 150 to frequently perform remote copy supervisory control of the storage subsystem in question, or by lengthening the time interval of a status information acquisition command 800 that includes Regular-Interval-Sequence-Status Acquisition Command to reduce a load that the processing of collecting status information gives on the storage controller 1400, for example.
Here, in the case where there is prepared, for example, a command for acquiring the sequence information of all the sequences connected to the host computer 100 in such a way that the status information is acquired in the connection order stored in the sequence information 600, then, the remote copy adjustment unit 102 may change values of the connection order information 620 of the sequence information 600 of the sequence in question such that the status information of the sequence in question is acquired prior to the status information of the other sequences.
As described above, according to the storage system of the present embodiment, the host computer 100 can collect status information of a desired storage subsystem or a pair of volumes through a simple interface, out of the storage subsystems 1300 of a sequence for which remote copy is managed generally. Further, it is possible to generally acquire the status information of all the storage subsystems 1300 belonging to that sequence, through a simple interface.
Further, it is possible to find a storage subsystem for which the load at remote copy is increasing and to notify a user of it to attract user's attention.
Further, since status information acquired generally for each of a plurality of sequences is held and the held status information is presented to a user, the user can know a sequence for which the load at remote copy is increasing. Based on the presented information, the user can remove the degraded sequence from the general monitoring or can adjust remote copy for improving the status.
As described above, according to the present embodiment, the host computer can request and collect the following status information through a simple interface: namely, the remote copy status information of a storage subsystem that is located at a remote place and not directly coupled to the host computer; the status information of all the storage subsystems in a sequence; and the status of all the storage subsystems of a plurality of sequences.
Further, according to the present embodiment, it is also possible to employ similar method to acquire various kinds of information, such as configuration information and log information, of a storage subsystem that is located at a remote place and not directly coupled to the host computer.

## Claims

1. In a computer system which includes a plurality of storage subsystems, and which performs a remote copy between two or more of said storage subsystems,
a first storage subsystem comprising:
an interface which receives a first status information acquisition command and which sends status information from the first storage subsystem to a second storage subsystem that is located on a nearer side of the first storage subsystem relative to a host computer and is connected to the first storage subsystem, said status information including a copy progress rate, which indicates a concordance rate of data between a first logical volume and a second logical volume of said first storage subsystem and at least one third storage subsystem that is located on a farther side of the first storage subsystem relative to the host computer, a first status information acquisition route on which the first status information acquisition command is relayed is displayed on a host computer if said copy progress rate is below a predetermined threshold, the first status information acquisition route being one of a plurality of status information acquisition command routes on which status information acquisition commands are relayed via one or more of said plurality of storage subsystems;
an outgoing status information storage unit which stores said status information to be sent to said second storage subsystem;
a target storage subsystem judgment unit which judges whether a target storage subsystem identified in the status information acquisition command received by said interface is the first storage subsystem;
a command downstream sending unit which sends said status information acquisition command to said third storage subsystem and connected to the first storage subsystem, when said target storage subsystem judgment unit judges that the first storage subsystem is not said target storage subsystem from which said status information is to be acquired;
a self status information acquisition unit which acquires the status information of the first storage subsystem and which stores the acquired status information to be sent to the second storage subsystem into said outgoing status information storage unit, when said target storage subsystem judgment unit judges that the first storage subsystem is said target storage subsystem from which said status information is to be acquired; and
a downstream status information acquisition unit which receives the status information from said third storage subsystem and which stores the received status information to be sent to the second storage into said outgoing status information storage unit,
wherein, after said self status information acquisition unit or said downstream status information acquisition unit stores said status information into said outgoing status information storage unit, said interface sends said stored status information.

2. A first storage subsystem according to claim 1, further comprising:
a concatenation position judgment unit which judges a concatenation position of the first storage subsystem based on information stored in said first status information acquisition command received from said upstream storage subsystem,
wherein when said concatenation position judgment unit judges that the first storage subsystem is a storage connected to said host computer, then, said interface sends the status information stored in said status information storage unit to said host computer.

3. A first storage subsystem according to claim 2, wherein when said target storage subsystem judgment unit judges that said target storage subsystem is all of said plurality of storage subsystems including the storage subsystem sequentially concatenated from said host computer, and said concatenation position judgment unit judges that the first storage subsystem is not a storage subsystem concatenated at a farthest position relative to said host computer among said plurality of storage subsystems sequentially concatenated, then, said command downstream sending unit sends said first status information acquisition command to the third storage subsystem connected to the storage subsystem,
wherein said self status information acquisition unit adds the acquired status information of the first storage subsystem to the status information that is received by said downstream status information acquisition unit from said third storage subsystem and stored in said outgoing status information storage unit, and then, said self status information acquisition unit stores resultant status information to be sent to the second storage into said outgoing status information storage unit, and
wherein after said self status information acquisition unit stores said status information into said outgoing status information storage unit, said interface sends said status information.

4. A storage subsystem according to claim 3, wherein when said target storage subsystem judgment unit judges that said target storage subsystem is all of said plurality of storage subsystems including the storage subsystem sequentially concatenated from said host computer, and said concatenation position judgment unit judges that the first storage subsystem is not the storage subsystem concatenated at a farthest position seen from said host computer among said plurality of storage subsystems sequentially concatenated, then, said command downstream sending unit instructs said self status information acquisition unit to acquire the status information of the first storage subsystem and to store the acquired status information to be sent to the second storage into said outgoing status information storage unit.

5. A storage subsystem according to claim 4, further comprising:
an acquired information judgment unit which judges whether status information whose acquisition is requested by the first status information acquisition command received is newest status information,
wherein when said acquired information judgment unit judges that the newest status information is not requested, said concatenation position judgment unit judges that the first storage subsystem is a storage subsystem, and said outgoing status information storage unit holds the status information, then, said interface sends the held status information to the host computer without waiting for said self status information acquisition unit or said downstream status information acquisition unit to store status information into said outgoing status information storage unit.

6. In a computer system which includes a plurality of storage subsystems and performs a remote copy between two or more of said plurality of storage subsystems, a first storage subsystem comprising:
an interface which receives a first status information acquisition command and which sends status information from and to a second storage subsystem that is located on a nearer side of the storage subsystem relative to a host computer and is connected to the first storage subsystem, said status information including a data transfer rate of copying data between a first logical volume and a second logical volume of said first storage subsystem and at least one third storage subsystem located on a farther side of the storage subsystem relative to the host computer, a first status information acquisition command route on which the first status information acquisition command is relayed is displayed on a host computer if said data transfer rate is below a predetermined threshold, the first status information acquisition command route being one of a plurality of status information acquisition command routes on which status information acquisition commands are relayed via one or more of said plurality of storage subsystems;
an outgoing status information storage unit which stores said status information to be sent to said second storage subsystem;
a concatenation position judgment unit which judges a concatenation position of the first storage subsystem based on information stored in said status information acquisition command received from said second storage subsystem; and
a status information acquisition unit,
wherein said status information acquisition unit acquires the status information of the first storage subsystem at status information acquisition time intervals stored in the status information acquisition command, to store the acquired status information into the outgoing status information storage unit, when said concatenation position judgment unit judges that the first storage subsystem is a storage subsystem located at a farthest position in concatenation order relative to the host computer; and
wherein said status information acquisition unit acquires the status information of the storage subsystem at a time of receiving status information from said third storage subsystem and adds the status information of the first storage subsystem to the received status information of said third storage subsystem, to store resultant status information to the status information storage unit, and
wherein when the concatenation position judgment unit judges that the storage subsystem in question is not a storage subsystem connected directly to the host computer, then, said interface sends all of said status information stored in the status information storage unit to said upstream storage subsystem.

7. A computer system comprising:
a plurality of storage subsystems in which a remote copy is performed between two or more of said plurality of storage subsystems,
wherein a first storage subsystem comprising:
a cache memory which temporarily stores data sent from a host computer,
an interface which receives a first status information acquisition command and which sends status information to a second storage subsystem that is located on a nearer side of the first storage subsystem relative to the host computer and is connected to the first storage subsystem, said status information including a cache usage rate, which indicates a usage rate of said cache memory of said first storage subsystem or at least one cache memory of at least one third storage subsystem that is located on a farther side of first storage subsystem relative to the host computer, a first status information acquisition command route on which the first status information acquisition command is relayed is displayed on a host computer if said cache usage rate is greater than a predetermined threshold, the first status information acquisition command routes being one of a plurality of status information acquisition command routes on which status information acquisition commands are relayed via one or more of said plurality of storage subsystems,
an outgoing status information storage unit which stores said status information to be sent to said second storage subsystem,
a target storage subsystem judgment unit which judges whether a target storage subsystem identified in the status information acquisition command received through said interface is the first storage subsystem,
a command downstream sending unit which sends said status information acquisition command to said third storage subsystem, when said target storage subsystem judgment unit judges that the first storage subsystem is not said target storage subsystem from which said status information is to be acquired,
a self status information acquisition unit which acquires the status information of the storage subsystem and which stores the acquired status information to be sent to the second storage subsystem into said ongoing status information storage unit, when said target storage subsystem judgment unit judges that the first storage subsystem is said target storage subsystem from which said status information is to be acquired, and
a downstream status information acquisition unit which receives the status information from said third storage subsystem and which stores the received status information to be sent to the second storage into said outgoing status information storage unit,
wherein after said self status information acquisition unit or said downstream status information acquisition unit stores said status information into said outgoing status information storage unit, said interface sends said status information stored in said outgoing status information storage unit;
wherein said host computer comprises:
a status information acquisition command generation unit which generates said status information acquisition command,
a status information acquisition unit which receives status information from said plurality of storage subsystems, and
a remote copy adjustment unit which generates information for adjusting a remote copy according to said status information held in said status information holding unit.

8. In a computer system which includes a plurality of storage subsystems performing a remote copy between two or more of said storage subsystems, a status information acquisition method for acquiring status information of a plurality of storage subsystems comprising:
a command receive step in which a first storage subsystem receives a status first information acquisition command from a second storage subsystem that is connected to and located on a nearer side of the first storage subsystem relative to a host computer, said first status information acquisition command being used to require a status information included a cache usage rate, which indicates a usage rate of a cache memory of said first storage subsystem or at least one third storage subsystem, which is connected to and located on a farther side of the first storage subsystem relative to the host computer, for performing a remote copy of data between a first logical volume and a second logical volume of said first storage subsystem and said third storage subsystem, a first status information acquisition command route on which the first status information acquisition command is relayed is displayed on the host computer if said cache usage rate is above a predetermined threshold, the first status information acquisition command route being one of a plurality of status information acquisition command routes on which status information acquisition commands are relayed via one or more of said plurality of storage subsystems;
a target storage subsystem judgment step in which the first storage subsystem analyzes the received first status information acquisition command, to judge whether the first storage subsystem is a target storage subsystem from which status information is to be acquired based on said first status information acquisition command; and
a status information acquisition/sending step including the sub-steps of:
when it is judged in said target storage subsystem judgment step that the first storage subsystem is the target storage subsystem, then, acquiring, by the first storage subsystem, the status information of the first storage subsystem and sending the acquired status information to said second storage subsystem, and
when it is judged in said target storage subsystem judgment step that the storage subsystem is not the target storage subsystem, then, sending, by the first storage subsystem, the first status information acquisition command received in said command receiving step to said third storage subsystem, and thereafter, when status information of said third storage subsystem is received from the third storage subsystem, sending, by the first storage subsystem, the received status information to the second storage subsystem.

9. In a computer system which includes a plurality of storage subsystems, a status information acquisition method for acquiring status information of said subsystems comprising:
a command receiving step in which a first storage subsystem receives a first status information acquisition command from a second storage subsystem that is connected to and located on a nearer side of the first storage subsystem relative to a host computer, said first status information acquisition command being used to require a status information including a copy progress rate, which indicates a concordance rate of data between a first logical volume and a second logical volume of said first storage subsystem and at least one third storage subsystem connected to and located on a farther side of the first storage subsystem relative to the host computer, a first status information acquisition command route on which said first status information acquisition command is relayed is displayed on the host computer if said copy progress rate is below a predetermined threshold, the first status information acquisition command route being one of a plurality of status information acquisition command routes on which status information acquisition commands are relayed via one or more of said plurality of storage subsystems;
a self position judgment step in which the storage subsystem analyzes the received first status information acquisition command and judges whether the first storage subsystem is a third storage concatenated at a farthest position in said sequence relative to the host computer; and
a status information acquisition/sending step including the sub-steps of:
when it is judged in said self position judgment step that the first storage subsystem is the end storage subsystem, then, acquiring, by the first storage subsystem, the status information of the first storage subsystem and sending the acquired status information to second subsystem connected to the first storage subsystem, and
when it is judged that the first storage subsystem is not the end storage subsystem, then, sending, by the first storage subsystem, the first status information acquisition command received in said command receiving step to said third storage subsystem, and thereafter, when status information is received from said third storage subsystem, adding, by the first storage subsystem, the status information of the first storage subsystem to the status information received from the third storage subsystem to obtain new status information, and sending the new status information to the second storage subsystem.

10. In a computer system which includes a plurality of storage subsystems performing a copy between at least one of said plurality of storage subsystems, a status information monitoring method for monitoring remote copy status of at least one of the storage subsystems sequentially concatenated to first storage subsystem directly coupled to a host computer, said status information monitoring method comprising the steps of:
generating a first status acquisition command for acquiring, at regular time intervals, status information of the storage subsystems constituting a specific sequence connected to the host computer, said status information including a data transfer rate of copying data between a plurality of logical volumes of at least one of the storage subsystems, a first status information acquisition command route on which the status information acquisition command is relayed is displayed on the host computer if said data transfer rate is below a predetermined threshold, said first status information acquisition command route being one of a plurality of status acquisition command routes on which a status acquisition command is relayed via one or more of said storage subsystems;
sending the generated first status acquisition command to the first storage subsystem;
receiving the sent first status acquisition command in the first storage subsystem;
when the received first status acquisition command is a command for acquiring the status information of the sequence to which the first storage subsystem belongs, sending the first status acquisition command to a second storage subsystem connected to the first storage subsystem;
sending the received command at said second storage subsystem to a third storage subsystem connected at an end farthest from the host computer;
acquiring said status information to be sent to the second storage subsystem connected to the third storage system according to the received first status acquisition command, in the third storage system connected at the end;
judging, in the third storage subsystem, whether or not the storage subsystem is the first storage subsystem;
when it is judged that the storage subsystem is not the first storage subsystem, sending the status information of the third storage subsystem from the third storage subsystem to the second storage subsystem;
receiving, in the second storage subsystem, the status information of the third storage subsystem;
adding, in the second storage subsystem, the status information of the second storage subsystem to the received status information of the third storage subsystem;
judging, in the second storage subsystem, whether or not the storage subsystem is the first storage subsystem,
when it is judged that the storage subsystem is not the first storage subsystem, sending the received status information of the third storage subsystem and the second storage subsystem from the second storage subsystem to the first storage subsystem;
receiving, in the first storage subsystem, the status information of the third storage subsystem and the second storage subsystem;
adding, in the first storage subsystem, the status information of the first storage subsystem to the received status information of the third storage subsystem and the second storage subsystem;
judging, in the first storage subsystem, whether or not the storage subsystem is the first storage subsystem;
when it is judged that the storage subsystem is the first storage subsystem, holding resultant status information;
generating, in the host computer, a second status information acquisition command for acquiring status information of the storage subsystems constituting a specific sequence connected to the host computer;
sending, in the host computer, the generated second status information acquisition command to said first storage subsystem;
receiving, in the first storage subsystem, the sent second status information acquisition command;
sending, from the first storage subsystem, the resultant status information held by the first storage subsystem to the host computer when a sequence designated by said command as a sequence from which status information is to be acquired is a sequence to which the first storage subsystem belongs;
receiving the sent status information in the host computer; and
displaying, in the host computer, at least one of said plurality of status acquisition command routes determined by the host computer based on using said data transfer rate.

11. In a computer system which includes a plurality of storage subsystems and performs a remote copy between two or more of said plurality of storage subsystems, a first storage subsystem comprising:
a memory; and
a processor which receives a first status information acquisition command from a second storage subsystem that is located on a nearer side of the first storage subsystem from a host computer and is connected to the first storage subsystem, judges whether a target storage subsystem from which said status information to be acquired specified in said first status information acquisition command is the first storage subsystem, sends said status information acquisition command to a third storage subsystem that is located on a farther side of the first storage subsystem, when it is judged that the first storage subsystem is said target storage subsystem from which said status information is to be acquired, receives the status information into said memory, and sends the status information stored in said memory to said second storage subsystem;
wherein said status information includes a cache usage rate, which indicates a usage rate of a cache memory of said third storage subsystem; and
wherein a first status information acquisition command route on which the first status information acquisition command is relayed is displayed on the host computer if the cache usage rate is above a predetermined threshold, the first status information acquisition command route being one of a plurality of status information acquisition command routes on which status information acquisition commands are relayed via one or more of the plurality of storage subsystems.

12. A computer system comprising:
a plurality of storage subsystems in which a remote copy is performed between two or more of said plurality of storage subsystems,
wherein a first storage subsystem comprises:
a cache memory temporarily storing data sent from said host computer;
an interface which receives a first status information acquisition command and sends status information from and to a second storage subsystem that is located on a nearer side of the first storage subsystem from a host computer and is connected to the first storage subsystem, said status information including a cache usage rate, which indicates a usage rate of said cache memory of said first storage subsystem or at least one cache memory of at least one third storage subsystem, which is connected to and located on a farther side of the storage subsystem in question seen from the host computer, for performing a copy of data between a first logical volume and a second logical volume of said first storage subsystem and said third storage subsystem, a first status information acquisition command on which the first status information acquisition command is relayed is displayed on a host computer if said cache usage rate is greater than a predetermined threshold of the first status information acquisition command route being one of a plurality of status information acquisition command routes on which status information acquisition commands are relayed via one or more of the plurality of storage subsystems,
an outgoing status information storage unit which stores said status information to be sent to said second storage subsystem,
a concatenation position judgment unit which judges a concatenation position of the first storage subsystem based on information stored in said status information acquisition command received from said second storage subsystem, and
a status information acquisition unit which acquires status information of the first storage subsystem at status information acquisition time intervals stored in the status information acquisition command, to store the acquired status information into the outgoing status information storage unit, when said concatenation position judgment unit judges that the first storage subsystem is a storage subsystem located at a farthest position in concatenation order seen from the host computer and acquires status information of the storage subsystem at a time of receiving status information from said third storage subsystem, and which adds the status information of the first storage subsystem to the received status information of said third storage subsystem, to store resultant status information to the status information storage unit,
wherein when the concatenation position judgment unit judges that the first storage subsystem is not a storage subsystem connected directly to the host computer, then said interface sends said status information stored in the status information storage unit to said upstream storage subsystem, and
wherein said host computer comprises:
a status information acquisition command generation unit which generates a status information acquisition command,
a status information acquisition unit which receives status information from said plurality of storage subsystems,
a status information holding unit which holds the status information acquired by said status information acquisition unit, and
a remote copy adjustment unit which generates information for adjusting said remote copy according to said status information held in said status information holding unit;
wherein the host computer displays at least one of the plurality of status acquisition command routes determined by the host computer based on using said cache usage rate.

13. A storage system, comprising:
a first storage device coupled to an information processing device and having a first controller and a plurality of first disk drives, at least one of said first disk drives being related to a first logical volume;
said first controller receiving data, which are sent from said information processing device and targeted to said first logical volume, and storing said data received from said information processing device into said at least one of said first disk drives;
a second storage device coupled to said first storage device and having a second controller and a plurality of second disk drives, said second disk drives being related to a second logical volume and a third logical volume; and
said second controller receiving data targeted to said second logical volume and storing said data targeted to said second logical volume into said second disk drives;
wherein said first controller receives a first command from said information processing device and transfers said command to said second storage device, said command being used to request a copy progress rate, which indicates a concordance rate of data between said second logical volume and said third logical volume of said second storage device, a first command route on which the first command is relayed is displayed on said information processing device if the copy progress rate is below a predetermined threshold, said first command route being one of a plurality of command routes on which commands are relayed via one or more storage devices, and
wherein said second controller receives said command from said first storage device and replies said copy progress rate based on said command.

14. A storage system, comprising:
a first storage device coupled to an information processing device and having a first controller and a plurality of first disk drives, at least one of said first disk drives being related to a first logical volume;
said first controller having a first communication interface coupled to said information processing device, a first disk interface coupled to said first disk drives and a first cache memory coupled to both said first communication interface and said first disk interface, said first controller receiving data, which are sent from said information processing device and targeted to said first logical volume, via said first communication interface and temporarily storing said data received from said information processing device into said first cache memory and transferring said data stored in said first cache memory to said at least one of said first disk drives via said first disk interface;
a second storage device coupled to said first storage device and having a second controller and a plurality of second disk drives, at least one of said second disk drives being related to a second logical volume;
said second controller having a second communication interface, a second disk interface coupled to said second disk drives and a second cache memory coupled to both said second communication interface and said second disk interface, said second controller temporarily storing data, which are received via said second communication interface and targeted to said second logical volume, into said second cache memory and transferring said data stored in said second cache memory to said at least one of said second disk drives via said second disk interface; and
a third storage device coupled to said second storage device and having a third controller and a plurality of third disk drives, at least one of said third disk drives being related to a third logical volume; and
said third controller having a third communication interface, a third disk interface coupled to said third disk drives and a third cache memory coupled to both said third communication interface and said third disk interface, said third controller temporarily storing data, which are received via said third communication interface and targeted to said third logical volume, into said third cache memory and transferring said data stored in said third cache memory to said at least one of said third disk drives via said third disk interface;
wherein said first controller receives a first command from said information processing device and transfers said first command to said second storage device, said first command being used to request a copy progress rate, which indicates a concordance rate of data between said second logical volume of said second storage device and said third logical volume of said third storage device, a first command route on which the first command is relayed is displayed if the copy progress rate is below a predetermined threshold, said first command routes being one of a plurality of command routes on which commands are relayed via one or more storage devices, and
wherein said second controller receives said command from said first storage device and replies said copy progress rate based on said command.

15. A storage system, comprising:
a first storage device coupled to an information processing device and having a first controller and a plurality of first disk drives, at least one of said first disk drives being related to a first logical volume;
said first controller receiving data, which are sent from said information processing device and targeted to said first logical volume, and storing said data received from said information processing device into said at least one of said first disk drives;
a second storage device coupled to said first storage device and having a second controller and a plurality of second disk drives, said second disk drives being related to a second logical volume and a third logical volume; and
said second controller receiving data targeted to said second logical volume and storing said data targeted to said second logical volume into at least one of said second disk drives corresponding to said second logical volume;
wherein said first controller receives a first command from said information processing device and transfers said first command to said second storage device, said first command being used to request a data transfer rate of copying data between said second logical volume and said third logical volume of said second storage device, a first command route on which the first command is relayed is displayed if the data transfer rate is less than a predetermined threshold, said first command routes being one of a plurality of command routes on which commands are relayed via one or more storage devices, and
wherein said second controller receives said first command from said first storage device and replies said data transfer rate based on said first command.

16. A storage system, comprising:
a first storage device coupled to an information processing device and having a first controller and a plurality of first disk drives, at least one of said first disk drives being related to a first logical volume;
said first controller having a first communication interface coupled to said information processing device, a first disk interface coupled to said first disk drives and a first cache memory coupled to both said first communication interface and said first disk interface, said first controller receiving data, which are sent from said information processing device interface and targeted to said first logical volume, via said first communication and temporarily storing said data received from said information processing device into said first cache memory and transferring said data stored in said first cache memory to said at least one of said first disk drives via said first disk interface;
a second storage device coupled to said first storage device and having a second controller and a plurality of second disk drives, at least one of said second disk drives being related to a second logical volume;
said second controller having a second communication interface, a second disk interface coupled to said second disk drives and a second cache memory coupled to both said second communication interface and said second disk interface, said second controller temporarily storing data, which are received via said second communication interface and targeted to said second logical volume, into said second cache memory and transferring said data stored in said second cache memory to said at least one of said second disk drives via said second disk interface; and
a third storage device coupled to said second storage device and having a third controller and a plurality of third disk drives, at least one of said third disk drives being related to a third logical volume; and
said third controller having a third communication interface, a third disk interface coupled to said third disk drives and a third cache memory coupled to both said third communication interface and said third disk interface, said third controller temporarily storing data, which are received via said third communication interface and targeted to said third logical volume, into said third cache memory and transferring said data stored in said third cache memory to said at least one of said third disk drives via said third disk interface;
wherein said first controller receives a first command from said information processing device and transfers said first command to said second storage device, said first command being used to request a data transfer rate of copying data between said second logical volume of said second storage device and said third logical volume of said third storage device by a remote copy process, a first command route on which the first command is relayed is displayed on the information processing device if the data transfer rate is below a predetermined threshold, the first command route being one of a plurality of command routes on which commands are relayed via one or more storage devices, and wherein said second controller receives said first command from said first storage device and replies said data transfer rate based on said first command.

17. A storage system, comprising:
a first storage device coupled to an information processing device and having a first controller and a plurality of first disk drives, at least one of said first disk drives being related to a first logical volume;
said first controller receiving data, which are sent from said information processing device and targeted to said first logical volume, and storing said data received from said information processing device into said at least one of said first disk drives;
a second storage device coupled to said first storage device and having a second controller and a plurality of second disk drives, at least one of said second disk drives being related to a second logical volume; and
said second controller having a communication interface, a disk interface coupled to said second disk drives and a cache memory coupled to both said communication interface and said disk interface, said second controller receiving data targeted to said second logical volume and temporarily storing said data targeted to said second logical volume into said cache memory and transferring said data stored in said cache memory to said at least one of said second disk drives via said second disk interface;
wherein said first controller receives a first command from said information processing device and transfers said first command to said second storage device, said first command being used to request a cache usage rate, which indicates a usage rate of said cache memory of said second controller, a first command route on which the first command is relayed is displayed on the information processing apparatus if the cache usage rate is above a predetermined threshold, the first command route being one of a plurality of command routes on which a command is relayed via one or more storage devices, and
wherein said second controller receives said first command from said first storage device and replies said cache usage rate based on said first command.

18. A storage system, comprising:
a first storage device coupled to an information processing device and having a first controller and a plurality of first disk drives, at least one of said first disk drives being related to a first logical volume;
said first controller having a first communication interface coupled to said information processing device, a first disk interface coupled to said first disk drives and a first cache memory coupled to both said first communication interface and said first disk interface, said first controller receiving data, which are sent from said information processing device and targeted to said first logical volume, via said first communication interface and temporarily storing said data received from said information processing device into said first cache memory and transferring said data stored in said first cache memory to said at least one of said first disk drives via said first disk interface;
a second storage device coupled to said first storage device and having a second controller and a plurality of second disk drives, at least one of said second disk drives being related to a second logical volume;
said second controller having a second communication interface, a second disk interface coupled to said second disk drives and a second cache memory coupled to both said second communication interface and said second disk interface, said second controller temporarily storing data, which are received via said second communication interface and targeted to said second logical volume, into said second cache memory and transferring said data stored in said second cache memory to said at least one of said second disk drives via said second disk interface; and
a third storage device coupled to said second storage device and having a third controller and a plurality of third disk drives, at least one of said third disk drives being related to a third logical volume; and
said third controller having a third communication interface, a third disk interface coupled to said third disk drives and a third cache memory coupled to both said third communication interface and said third disk interface, said first controller temporarily storing data, which are received via said third communication interface and targeted to said third logical volume, into said third cache memory and transferring said data stored in said third cache memory to said at least one of said third disk drives via said third disk interface;
wherein said first controller receives a first command from said information processing device and transfers said first command to said second storage device, said first command being used to request a cache usage rate, which indicates a usage rate of said second cache memory of said second controller for performing a remote copy of data between said second logical volume and said third logical volume, a first command route on which the first command is relayed is displayed on the information processing device if the cache usage rate is above a predetermined threshold, the first command route being one of a plurality of command routes on which commands are relayed via one or more storage devices,
wherein said second controller receives said command from said first storage device and replies said cache usage rate based on said command.