Remote copy network
10 claims: 10 independent, 0 dependent
- 1A remote copy network system comprising:a first edge device (104) adapted to be coupled to a first storage system (111, 112);a second edge device (105) adapted to be coupled to a second storage system (121, 122);anda network (101) coupled to said first edge device (104) and to said second edge device (105), wherein: said first edge device (104) is adapted to receive from said first storage system (111, 112) a remote copy I/O request to copy data to said second storage system (121, 122) from said first storage system (111, 112), wherein the remote copy I/O request comprises a remote copy request and data for remote copying accompanying the remote copy request;said first edge device (104) is adapted to send a response to the received remote copy I/O request to said first storage system (111, 112);after sending a response to the remote copy I/O request, said first edge device (104) is adapted to send to said second edge device (105) log information (211) having the remote copy I/O request and a sequential number indicating the order of reception of the remote copy I/O request;andsaid second edge device (105) is adapted to extract the remote copy I/O request from the received log information (211), and to send the extracted remote copy I/O request to said second storage system (121, 122) according to the order indicated by the sequential number in the log information (211). Netzwerksystem zum Fernkopieren, umfassend: ein erstes Kantengerät (104), zur Verbindung mit einem ersten Speichersystem (111, 112) ausgelegt;ein zweites Kantengerät (105), zur Verbindung mit einem zweiten Speichersystem (121, 122) ausgelegt;undein mit dem ersten und dem zweiten Kantengerät (104, 105) verbundenes Netzwerk (101), wobei: das erste Kantengerät (104) dazu ausgelegt ist, vom ersten Speichersystem (111, 112) eine Fernkopiereingabe-/ -ausgabeanforderung zum Kopieren von Daten vom ersten Speichersystem (111, 112) auf das zweite Speichersystem (121, 122) zu empfangen, wobei die Fernkopiereingabe-/-ausgabeanforderung eine Fernkopieranforderung sowie die Fernkopieranforderung begleitende Daten zum Fernkopieren umfasst;das erste Kantengerät (104) dazu ausgelegt ist, eine Antwort auf die empfangene Fernkopiereingabe-/-ausgabeanforderung an das erste Speichersystem (111, 112) zu senden;das erste Kantengerät (104) dazu ausgelegt ist, nach dem Senden einer Antwort auf die Fernkopiereingabe-/-ausgabeanforderung Protokollinformationen (211) mit der Fernkopiereingabe-/-ausgabeanforderung und einer Seriennummer, die die Reihenfolge des Empfangs der Fernkopiereingabe-/-ausgabeanforderung anzeigt, an das zweite Kantengerät (105) zu senden;unddas zweite Kantengerät (105) dazu ausgelegt ist, die Fernkopiereingabe-/-ausgabeanforderung aus den empfangenen Protokollinformationen (211) zu extrahieren und die extrahierte Fernkopiereingabe-/-ausgabeanforderung an das zweite Speichersystem (121, 122) gemäß der durch die Seriennummer in den Protokollinformationen (211) angezeigten Reihenfolge zu senden. Système de réseau de copie à distance, comportant: un premier dispositif de périphérie (104) adapté pour être couplé à un premier système de mémorisation (111, 112),un deuxième dispositif de périphérie (105) adapté pour être couplé à un deuxième système de mémorisation (121, 122), etun réseau (101) couplé audit premier dispositif de périphérie (104) et audit deuxième dispositif de périphérie (105), dans lequel : ledit premier dispositif de périphérie (104) est adapté pour recevoir depuis ledit premier système de mémorisation (111, 112) une demande d'entrée/sortie de copie à distance pour copier des données sur ledit deuxième système de mémorisation (121, 122) à partir dudit premier système de mémorisation (111, 112), dans lequel la demande d'entrée/sortie de copie à distance comporte une demande de copie à distance et des données à copier à distance en annexant la demande de copie à distance,ledit premier dispositif de périphérie (104) est adapté pour envoyer une réponse à la demande d'entrée/sortie de copie à distance reçue audit premier système de mémorisation (111, 112),après l'envoi d'une réponse à la demande d'entrée/sortie de copie à distance, ledit premier dispositif de périphérie (104) est adapté pour envoyer audit deuxième dispositif de périphérie (105) des informations de consignation (211) ayant la demande d'entrée/sortie de copie à distance et un numéro séquentiel indiquant l'ordre de réception de la demande d'entrée/sortie de copie à distance, etledit deuxième dispositif de périphérie (105) est adapté pour extraire la demande d'entrée/sortie de copie à distance parmi les informations de consignation reçues (211), et pour envoyer la demande d'entrée/sortie de copie à distance extraite audit deuxième système de mémorisation (121, 122) conformément à l'ordre indiqué par le numéro séquentiel dans les informations de consignation (211).
- 2Netzwerksystem zum Fernkopieren nach Anspruch 1, ferner umfassend mindestens ein Kerngerät (202), das dazu ausgelegt ist, die vom ersten Kantengerät (104) versandten Protokollinformationen an das zweite Kantengerät (105) weiterzuleiten. Système de réseau de copie à distance selon la revendication 1, comportant de plus au moins un dispositif central (202) qui est adapté pour relayer les informations de consignation envoyées par ledit premier dispositif de périphérie (104) audit deuxième dispositif de périphérie (105). The remote copy network system of Claim 1, further comprising at least one core device (202) which is adapted to relay the log information sent from said first edge device (104) to said second edge device (105).
- 3Netzwerksystem zum Fernkopieren nach Anspruch 2, wobei das erste Kantengerät (104), das zweite Kantengerät (105) und das Kerngerät (202) Router-Geräte sind. Système de réseau de copie à distance selon la revendication 2, dans lequel ledit premier dispositif de périphérie (104), ledit deuxième dispositif de périphérie (105), et ledit dispositif central (202) sont des dispositifs routeurs. The remote copy network system of Claim 2, wherein said first edge device (104), said second edge device (105), and said core device (202) are router devices.
- 4Netzwerksystem zum Fernkopieren nach Anspruch 1, wobei das erste Kantengerät (104) dazu ausgelegt ist, die an das zweite Kantengerät (105) versandten Protokollinformationen zu speichern und die gespeicherten Protokollinformationen auf den Empfang einer Antwort auf die Protokollinformationen vom zweiten Kantengerät (105) hin zu löschen. Système de réseau de copie à distance selon la revendication 1, dans lequel ledit premier dispositif de périphérie (104) est adapté pour mémoriser les informations de consignation (211) envoyées audit deuxième dispositif de périphérie (105), et à la réception d'une réponse auxdites informations de consignation depuis ledit deuxième dispositif de périphérie (105), pour supprimer lesdites informations de consignation. The remote copy network system of Claim 1, wherein said first edge device (104) is adapted to store the log information (211) sent to said second edge device (105), and upon receiving a response to said log information from said second edge device (105), to delete said stored log information.
- 5Netzwerksystem zum Fernkopieren nach Anspruch 4, wobei das erste Kantengerät (104), wenn die an das zweite Kantengerät (105) versandten Protokollinformationen (211) vom zweiten Kantengerät (105) nicht empfangen werden, dazu ausgelegt ist, die gespeicherten Protokollinformationen erneut an das zweite Kantengerät (105) zu senden. Système de réseau de copie à distance selon la revendication 4, dans lequel, lorsque les informations de consignation (211) envoyées audit deuxième dispositif de périphérie (105) ne sont pas reçues par ledit deuxième dispositif de périphérie (105), ledit premier dispositif de périphérie (104) est adapté pour renvoyer les informations de consignation mémorisées audit deuxième dispositif de périphérie (105). The remote copy network system of Claim 4, wherein, when the log information (211) sent to said second edge device (105) is not received by said second edge device (105), said first edge device (104) is adapted to resend the stored log information to said second edge device (105).
- 6Netzwerksystem zum Fernkopieren nach Anspruch 4, ferner umfassend:ein mit dem ersten und dem zweiten Kantengerät (104, 105) verbundenes Verwaltungsnetzwerk (150) undeinen mit dem Verwaltungsnetzwerk (150) verbundenen Verwaltungsserver (103), wobei: die Protokollinformationen (211) ferner Zeitinformationen umfassen, die den Zeitpunkt angeben, zu dem die Fernkopiereingabe-/-ausgabeanforderung vom ersten Speichersystem (111, 112) empfangen worden ist;das erste Kantengerät (104) dazu ausgelegt ist, auf den Empfang einer Antwort auf die Protokollinformationen vom zweiten Kantengerät (105) hin im Speicher die Verzögerungszeit aufzuzeichnen, die durch Subtrahieren des Werts der in den Protokollinformationen enthaltenen Zeitinformationen vom momentanen Zeitpunkt berechnet wird;das erste Kantengerät (104) dazu ausgelegt ist, die im Speicher aufgezeichnete Verzögerungszeit über das Verwaltungsnetzwerk (150) an den Verwaltungsserver (103) zu senden, undder Verwaltungsserver (103) dazu ausgelegt ist, die Verzögerungszeit auszugeben. Système de réseau de copie à distance selon la revendication 4, comportant de plus : un réseau de gestion (150) couplé audit premier dispositif de périphérie (104) et audit deuxième dispositif de périphérie (105), etun serveur de gestion (103) couplé audit réseau de gestion (150), dans lequel : les informations de consignation (211) comportent de plus des informations de temps indiquant l'heure à laquelle la demande d'entrée/sortie de copie à distance provenant dudit premier système de mémorisation (111, 112) a été reçue,ledit premier dispositif de périphérie (104), à la réception d'une réponse auxdites informations de consignation depuis ledit deuxième dispositif de périphérie (105), est adapté pour enregistrer dans une mémoire le temps de retard calculé en soustrayant la valeur des informations de temps comprises dans les informations de consignation de l'heure courante,ledit premier dispositif de périphérie (104) est adapté pour envoyer ledit temps de retard enregistré dans ladite mémoire audit serveur de gestion (103) via ledit réseau de gestion (150), etledit serveur de gestion (103) est adapté pour délivrer en sortie ledit temps de retard. The remote copy network system of Claim 4, further comprising: a management network (150) coupled to said first edge device (104) and to said second edge device (105);anda management server (103) coupled to said management network (150), wherein: the log information (211) further comprises time information indicating the time at which the remote copy I/O request from said first storage system (111, 112) was received;said first edge device (104), upon receiving a response to said log information from said second edge device (105), is adapted to record in memory the delay time calculated by subtracting the value of the time information comprised in the log information from the current time;said first edge device (104) is adapted to send said delay time recorded in said memory to said management server (103) via said management network (150);andsaid management server (103) is adapted to output said delay time.
- 7Netzwerksystem zum Fernkopieren nach Anspruch 1, ferner umfassend:ein drittes Kantengerät, zur Verbindung mit einem vierten Speichersystem ausgelegt, wobei: das erste Kantengerät (104) ferner dazu ausgelegt ist, mit einem dritten Speichersystem verbunden zu werden;das erste Kantengerät (104) dazu ausgelegt ist, eine Fernkopiereingabe-/-ausgabeanforderung zum Fernkopieren von Daten vom dritten Speichersystem zum vierten Speichersystem zu empfangen;unddas erste Kantengerät (104) dazu ausgelegt ist, eine vom ersten Speichersystem (111, 112) empfangene Fernkopiereingabe-/-ausgabeanforderung und eine vom dritten Speichersystem empfangene Fernkopiereingabe-/-ausgabeanforderung zu unterscheiden, um die Verarbeitung auszuführen. Système de réseau de copie à distance selon la revendication 1, comportant de plus : un troisième dispositif de périphérie adapté pour être couplé à un quatrième système de mémorisation, dans lequel: ledit premier dispositif de périphérie (104) est de plus adapté pour être connecté à un troisième système de mémorisation,ledit premier dispositif de périphérie (104) est adapté pour recevoir une demande d'entrée/sortie de copie à distance pour copier à distance des données à partir dudit troisième système de mémorisation vers ledit quatrième système de mémorisation, etledit premier dispositif de périphérie (104) est adapté pour faire une distinction entre une demande d'entrée/sortie de copie à distance reçue dudit premier système de mémorisation (111, 112) et une demande d'entrée/sortie de copie à distance reçue dudit troisième système de mémorisation pour exécuter un traitement. The remote copy network system of Claim 1, further comprising: a third edge device adapted to be coupled to a fourth storage system, wherein: said first edge device (104) is further adapted to be connected to a third storage system;said first edge device (104) is adapted to receive a remote copy I/O request for remote copying data from said third storage system to said fourth storage system;andsaid first edge device (104) is adapted to distinguish a remote copy I/O request received from said first storage system (111, 112) and a remote copy I/O request received from said third storage system to perform processing.
- 8Netzwerksystem zum Fernkopieren nach Anspruch 1, ferner umfassend:ein mit dem ersten Kantengerät (104) und dem zweiten Kantengerät (105) verbundenes Verwaltungsnetzwerk (150);undeinen mit dem Verwaltungsnetzwerk (150) verbundenen Verwaltungsserver (103), wobei: der Verwaltungsserver (103) dazu ausgelegt ist, Paarinformationen zu empfangen, die angeben, dass das erste Speichersystem (111, 112) ein Ursprung für das Fernkopieren und dass das zweite Speichersystem (121, 122) ein Ziel für das Fernkopieren, das dem ersten Speichersystem (111, 112) entspricht, sind, und die empfangenen Paarinformationen über das Verwaltungsnetzwerk (150) an das erste und das zweite Kantengerät (104, 105) zu verteilen. Système de réseau de copie à distance selon la revendication 1, comportant de plus: un réseau de gestion (150) couplé audit premier dispositif de périphérie (104) et audit deuxième dispositif de périphérie (105), etun serveur de gestion (103) couplé audit réseau de gestion (150), et dans lequel: ledit serveur de gestion (103) est adapté pour recevoir des informations de paire indiquant que ledit premier système de mémorisation (111, 112) est une source de copie à distance et que ledit deuxième système de mémorisation (121, 122) est une destination de copie à distance correspondant audit premier système de mémorisation (111, 112), et pour distribuer les informations de paire reçues, via ledit réseau de gestion (150), audit premier dispositif de périphérie (104) et audit deuxième dispositif de périphérie (105). The remote copy network system of Claim 1, further comprising: a management network (150) coupled to said first edge device (104) and to said second edge device (105);anda management server (103) coupled to said management network (150), and wherein: said management server (103) is adapted to receive pair information indicating that said first storage system (111, 112) is a source of remote copying and that said second storage system (121, 122) is a remote copying destination corresponding to said first storage system (111, 112), and to distribute the received pair information, via said management network (150), to said first edge device (104) and to said second edge device (105).
- 9An information processing system comprising:a remote copy network system according to Claim 1,first and second storage systems (111, 112, 121, 122) coupled to the first and second edge devices (104, 105), respectively, wherein: said first storage system (111, 112) comprises a first volume (113), said first storage system (111, 112) is identified by first storage identification information and said first volume (113) is identified by first volume identification information;said second storage system (121, 122) comprises a second volume (123), said second storage system (121, 122) is identified by second storage identification information and said second volume (123) is identified by second volume identification information;first virtual storage identification information having the same value as said second storage identification information and first virtual volume identification information having the same value as said second volume identification information are assigned to said first edge device (104);second virtual storage identification information having the same value as said first storage identification information and second virtual volume identification information having the same value as said first volume identification information are assigned to said second edge device (105);andsaid first edge device (104) is adapted to receive a remote copy I/O request from said first storage system (111, 112), with said first storage identification information and said first volume identification information as the sending source identification information and with said second storage identification information and said second volume identification information as the sending destination identification information, and to send log information having the remote copy I/O request to said second edge device (105). Informationsverarbeitungssystem umfassend: ein Netzwerksystem zum Fernkopieren nach Anspruch 1,ein erstes und ein zweites Speichersystem (111, 112, 121, 122), die jeweils mit dem ersten und dem zweiten Kantengerät (104, 105) verbunden sind, wobei: das erste Speichersystem (111, 112) ein erstes Volumen (113) umfasst, das erste Speichersystem (111, 112) mittels erster Speicheridentifikationsinformationen identifiziert wird und das erste Volumen (113) mittels erster Volumenidentifikationsinformationen identifiziert wird,das zweite Speichersystem (121, 122) ein zweites Volumen (123) umfasst, das zweite Speichersystem (121, 122) mittels zweiter Speicheridentifikationsinformationen identifiziert wird und das zweite Volumen (123) mittels zweiter Volumenidentifikationsinformationen identifiziert wird;erste Identifikationsinformationen für virtuelle Speicher mit dem gleichen Wert wie die zweiten Speicheridentifikationsinformationen und erste Identifikationsinformationen für virtuelle Volumen mit dem gleichen Wert wie die zweiten Volumenidentifikationsinformationen dem ersten Kantengerät (104) zugeschrieben werden;zweite Identifikationsinformationen für virtuelle Speicher mit dem gleichen Wert wie die ersten Speicheridentifikationsinformationen und zweite Identifikationsinformationen für virtuelle Volumen mit dem gleichen Wert wie die ersten Volumenidentifikationsinformationen dem zweiten Kantengerät (105) zugeschrieben werden;unddas erste Kantengerät (104) dazu ausgelegt ist, eine Fernkopiereingabe-/-ausgabeanforderung vom ersten Speichersystem (111, 112) zu empfangen, wobei die ersten Speicheridentifikationsinformationen und die ersten Volumenidentifikationsinformationen die Sendeursprungsidentifikationsinformationen und die zweiten Speicheridentifikationsinformationen und die zweiten Volumenidentifikationsinformationen die Sendezielidentifikationsinformationen darstellen, und Protokollinformationen mit der Fernkopiereingabe-/-ausgabeanforderung an das zweite Kantengerät (105) zu senden. Système de traitement d'informations comportant : un système de réseau de copie à distance selon la revendication 1,des premier et deuxième systèmes de mémorisation (111, 112, 121, 122) couplés auxdits premier et deuxième dispositifs de périphérie (104, 105), respectivement, dans lequel: ledit premier système de mémorisation (111, 112) comporte un premier volume (113), ledit premier système de mémorisation (111, 112) est identifié par des premières informations d'identification de mémorisation et ledit premier volume (113) est identifié par des premières informations d'identification de volume,ledit deuxième système de mémorisation (121, 122) comporte un second volume (123), ledit deuxième système de mémorisation (121, 122) est identifié par des secondes informations d'identification de mémorisation et ledit second volume (123) est identifié par des secondes informations d'identification de volume,des premières informations d'identification de mémorisation virtuelle ayant la même valeur que lesdites secondes informations d'identification de mémorisation et des premières informations d'identification de volume virtuel ayant la même valeur que lesdites secondes informations d'identification de volume sont attribuées audit premier dispositif de périphérie (104),des secondes informations d'identification de mémorisation virtuelle ayant la même valeur que lesdites premières informations d'identification de mémorisation et des secondes informations d'identification de volume virtuel ayant la même valeur que lesdites premières informations d'identification de volume sont attribuées audit deuxième dispositif de périphérie (105), etledit premier dispositif de périphérie (104) est adapté pour recevoir une demande d'entrée/sortie de copie à distance depuis ledit premier système de mémorisation (111, 112), lesdites premières informations d'identification de mémorisation et lesdites premières informations d'identification de volume en tant qu'informations d'identification de source d'envoi et lesdites secondes informations d'identification de mémorisation et lesdites secondes informations d'identification de volume en tant qu'informations d'identification de destination d'envoi, et pour envoyer des informations de consignation ayant la demande d'entrée/sortie de copie à distance audit deuxième dispositif de périphérie (105).
- 10An information processing system comprising:a remote copy network system according to Claim 1,first and second storage systems (111, 112, 121, 122) coupled to the first and second edge devices (104, 105), respectively, wherein: said first storage system (111, 112) comprises a first volume (113), said first storage system (111, 112) is identified by first storage identification information and said first volume (113) is identified by first volume identification information;said second storage system (121, 122) comprises a second volume (123), said second storage system (121, 122) is identified by second storage identification information and said second volume (123) is identified by second volume identification information;first virtual storage identification information and first virtual volume identification information are assigned to said first edge device (104);andsaid first edge device (104) is adapted to receive a remote copy I/O request from said first storage system (111, 112), with said first storage identification information and said first volume identification information as the sending source identification information and with said first virtual storage identification information and said first virtual volume identification information as the sending destination identification information, to convert the sending destination into said second storage identification information and said second volume information, and to send log information having the converted I/O request to said second edge device (105). Informationsverarbeitungssystem umfassend: ein Netzwerksystem zum Fernkopieren nach Anspruch 1,ein erstes und ein zweites Speichersystem (111, 112, 121, 122), die jeweils mit dem ersten und dem zweiten Kantengerät (104, 105) verbunden sind, wobei: das erste Speichersystem (111, 112) ein erstes Volumen umfasst, das erste Speichersystem (111, 112) mittels erster Speicheridentifikationsinformationen identifiziert wird und das erste Volumen (113) mittels erster Volumenidentifikationsinformationen identifiziert wird;das zweite Speichersystem (121, 122) ein zweites Volumen (123) umfasst, das zweite Speichersystem (121, 122) mittels zweiter Speicheridentifikationsinformationen identifiziert wird und das zweite Volumen (123) mittels zweiter Volumenidentifikationsinformationen identifiziert wird;erste Identifikationsinformationen für virtuelle Speicher und erste Identifikationsinformationen für virtuelle Volumen dem ersten Kantengerät (104) zugeschrieben werden unddas erste Kantengerät (104) dazu ausgelegt ist, eine Fernkopiereingabe-/-ausgabeanforderung vom ersten Speichersystem (111, 112) zu empfangen, wobei die ersten Speicheridentifikationsinformationen und die ersten Volumenidentifikationsinformationen die Sendeursprungsidentifikationsinformationen und die ersten Identifkationsinformationen für virtuelle Speicher und die ersten Identifikationsinformationen für virtuelle Volumen die Sendezielidentifikationsinformationen darstellen, das Sendeziel in die zweiten Speicheridentifikationsinformationen und die zweiten Volumenidentifikationsinformationen zu wandeln und die Protokollinformationen mit der gewandelten Eingabe-/Ausgabeanforderung an das zweite Kantengerät (105) zu senden. Système de traitement d'informations comportant : un système de réseau de copie à distance selon la revendication 1,des premier et deuxième systèmes de mémorisation (111, 112, 121, 122) couplés aux premier et deuxième dispositifs de périphérie (104, 105), respectivement, dans lequel : ledit premier système de mémorisation (111, 112) comporte un premier volume (113), ledit premier système de mémorisation (111, 112) est identifié par des premières informations d'identification de mémorisation et ledit premier volume (113) est identifié par des premières informations d'identification de volume, etledit deuxième système de mémorisation (121, 122) comporte un second volume (123), et ledit deuxième système de mémorisation (121, 122) est identifié par des secondes informations d'identification de mémorisation et ledit second volume (123) est identifié par des secondes informations d'identification de volume,des premières informations d'identification de mémorisation virtuelle et des premières informations d'identification de volume virtuel sont attribuées audit premier dispositif de périphérie (104), etledit premier dispositif de périphérie (104) est adapté pour recevoir une demande d'entrée/sortie de copie à distance depuis ledit premier système de mémorisation (111, 112), lesdites premières informations d'identification de mémorisation et lesdites premières informations d'identification de volume en tant qu'informations d'identification de source d'envoi et lesdites premières informations d'identification de mémorisation virtuelle et lesdites premières informations d'identification de volume virtuel en tant qu'informations d'identification de destination d'envoi, pour convertir la destination d'envoi en secondes informations d'identification de mémorisation et secondes informations de volume, et pour envoyer des informations de consignation ayant la demande d'entrée/sortie convertie audit deuxième dispositif de périphérie (105).
Independent claims10
118 paragraphs in 4 sections, as filed
BACKGROUND OF THE INVENTION
This invention relates to an information processing system comprising storage device, and more specifically, to remote copying and disaster recovery technology, executed by a remote copy network (hereafter also called an "RCN") comprising two or more storage devices and two or more network devices.
When failure occurs in a storage device of an information processing system due to electrical power failure, natural disasters or other disasters, operations using the information processing system are halted temporarily, and in the worst case, data stored in the storage device may be lost. In order to avoid such circumstances, there exists technology (hereafter called "remote copying") through which data stored in storage devices of the information storage system is transferred to and copied in storage devices prepared at a remote location different from the information processing system.
There are two types of remote copying, synchronous remote copying and asynchronous remote copying, and each has advantages and drawbacks. Specifically, in synchronous remote copying, when there is a write request from a computer of the information storage system, after completion of the transfer of data accompanying the write request to a storage device existing at the remote location, a storage device of the information processing system sends a response to the write request to the computer. Hence in synchronous remote copying there is little data loss due to failures, but increased communication line delays between storage devices result in worsened I/O performance between computers and storage devices.
On the other hand, in the asynchronous remote copying described in <patcit id="pcit0001" dnum="JP3149325B"><text>JP-B-3149325</text></patcit>, a storage device of an information processing system responds to write requests from computers and transfers data accompanying write requests to the remote location with independent timing. Hence in asynchronous remote copying, even when the distance between storage devices is great, responses can be made to computers prior to the copying of data to the remote location, so that declines in responsiveness to computers tend not to occur. However, in asynchronous remote copying the possibility of data loss is greater than in synchronous remote copying.
In recent years, a multi-hop method which combines synchronous remote copying and asynchronous remote copying has been invented (see <patcit id="pcit0002" dnum="JP2003122509A"><text>JP-A-2003-122509</text></patcit> and <patcit id="pcit0003" dnum="JP2000305856A"><text>JP-A-2000-305856</text></patcit>). <patcit id="pcit0004" dnum="EP1357476A"><text>EP-A-1 357 476</text></patcit> discloses a control method for a storage system comprising a host computer and two storage control apparatuses coupled to each other via a communication path and each receiving data I/O requests from the host computer.
SUMMARY OF THE INVENTION
Because the methods of both <patcit id="pcit0005" dnum="JP2003122509A"><text>JP-A-2003-122509</text></patcit> and <patcit id="pcit0006" dnum="JP2000305856A"><text>JP-A-2000-305856</text></patcit> assume that the owner of the storage devices manages intermediate devices, increases in the costs of device ownership and in management costs are problems. A multi-hop remote copy technology is here disclosed which can suppress increases in the costs of device ownership and in management costs.
The present invention is defined in claim 1. Preferred features are set out in the dependent claims.
Remote copying is executed via a remote copy network (RCN) having source edge devices connected to source storage and target edge devices connected to target storage.
A source edge device receives a remote copy I/O request from source storage, creates a log entry to which a sequential number is assigned, and sends the log entry to a target edge device. The target edge device acquires the remote copy I/O request from the received log entry, and sends, in the order of sequential numbers, remote copy I/O requests to the target storage.
Consequently, device ownership costs and management costs when executing multi-hop remote copying between storage devices can be reduced.
BRIEF DESCRIPTION OF THE DRAWINGS
<ul id="ul0001" list-style="none" compact="compact"><li><figref idref="f0001">Fig. 1</figref> shows one example of an information processing system in which remote copying is executed;</li><li><figref idref="f0002">Fig. 2</figref> shows a modified example of an information processing system in which remote copying is executed;</li><li><figref idref="f0003">Fig. 3</figref> shows one example of the hardware configuration of an edge device, core device, and management server;</li><li><figref idref="f0004">Fig. 4</figref> shows one example of programs executed by an edge device and core device;</li><li><figref idref="f0005">Fig. 5</figref> shows one example of the information and program of a management server;</li><li><figref idref="f0006">Fig. 6</figref> shows one example of information used by a management server, edge device, and core device;</li><li><figref idref="f0007">Fig. 7</figref> shows one example of information used by a management server, edge device, and core device;</li><li><figref idref="f0008">Fig. 8</figref> shows one example of a log entry;</li><li><figref idref="f0009">Fig. 9</figref> shows one example of the remote copy processing used by a remote copy network;</li><li><figref idref="f0010">Fig. 10</figref> shows one example of pair creation processing and initial copy processing in an information processing system;</li><li><figref idref="f0011">Fig. 11</figref> shows one example of initial copy processing and processing for transition to the Duplex state in an information processing system;</li><li><figref idref="f0012">Fig. 12</figref> shows one example of resynchronization processing from a Suspend state or from a failure Suspend state;</li><li><figref idref="f0013">Fig. 13</figref> shows one example of processing upon failover;</li><li><figref idref="f0014">Fig. 14</figref> shows examples of an FC frame and a GbE frame;</li><li><figref idref="f0015">Fig. 15</figref> shows one example of a log storage area;</li><li><figref idref="f0016">Fig. 16</figref> shows one example of processing when data is written from a host to a source external storage system;</li><li><figref idref="f0017">Fig. 17</figref> shows one example of processing of a source-side edge device during pair creation;</li><li><figref idref="f0018">Fig. 18</figref> shows one example of processing of a source-side edge device during pair creation;</li><li><figref idref="f0019">Fig. 19</figref> shows one example of processing of a source-side edge device during normal operation;</li><li><figref idref="f0020">Fig. 20</figref> shows one example of processing of a target-side edge device during normal operation;</li><li><figref idref="f0021">Fig. 21</figref> shows one example of processing of a target-side edge device during pair production; and,</li><li><figref idref="f0022">Fig. 22</figref> shows one example of processing of a target-side edge device during pair production.</li></ul>
DESCRIPTION OF THE PREFERRED EMBODIMENTS
Below, aspects of this invention are explained. However, this invention is not limited to the aspects explained below.
<figref idref="f0001">Fig. 1</figref> shows a general example of an information processing system in one aspect of this invention.
The information processing system comprises a remote copy network 101, wide-area network 102, management server 103, management network 150, host computer (hereafter simply "host") 111 and host 121, external storage 112, and external storage 122. To facilitate the explanation below, the external storage 112 may, as storage having a copy source volume 113 for remote copying, be called source external storage 112, and the external storage 122 may, as storage having a copy destination volume 123, be called target external storage 122. The terms "source" and "target" are used to express the relations between the host 111 and host 121, volume 113 and volume 123, virtual storage 106 and virtual storage 107, and virtual volume 108 and virtual volume 109. These relations are not fixed, and a certain external storage device may serve as both source and target.
The remote copy network 101, wide-area network 102, management network 150, and management server 103 are provided by a network business. Hence in this aspect, a customer having a source-side host and source external storage, and a target-side host and target external storage, can connect the hosts and external storage devices to a remote copy network to execute remote copying via the remote copy network. Consequently a customer can execute multi-hop remote copying without managing or maintaining a remote copy network, so that the device ownership costs and management costs of multi-hop remote copying can be reduced. Moreover, when the RCN business supplier and the customer is same, maintenance and management cost can be reduced from prior-art because the management server 103 manage the RCN)
The host 111 and host 121 are computers on which application programs to perform transaction processing and other operations run; the volume 113 is a volume used by host 111, and the volume 123 is a volume used by host 121.
The remote copy network 101 is a network comprising edge devices 104 and 105, the core device 202, and a plurality of other devices. However, the core device 202 is not essential device for the remote copy network 101. Edge devices and core devices may be a type of router or gateway device. The external storage 112 and external storage 122 are connected via the edge device 104 or edge device 105 to the remote copy network 101. Between the edge device 104 or edge device 105 and the core device 202, remote copy requests and data for remote copying accompanying remote copy requests (hereafter called either "remote copy I/O requests" or "RIO") are transferred in the format of a log entry 211 comprising time order information. Processing to convert an RIO into a log entry is executed by the edge device.
An edge device is a device which is connected to external storage existing outside the remote copy network 101.
A core device 202 is a device which transfers log entries 211, created and transferred by an edge device 104, to another edge device 105 or to a core device 202.
Virtual storage 106 or 107 is virtual storage which is provided by the edge device 104 or the edge device 105, to external storage 112 or 122. An edge device provides, to the external storage to which it is connected, virtual storage which behaves as opposite side external storage paired for remote copying, to display itself as opposite side external storage paired with the external storage for remote copying (for example, the edge device 104 provides to the external storage 112 virtual storage 106 which behaves as the external storage 122; the edge device 105 provides to the external storage 122 virtual storage 107 which behaves as the external storage 112).
Edge devices and core devices 202 are connected by a network not shown. As the mode of connection, the IP protocol on Gigabit Ethernet (a registered trademark; hereafter also called "GbE") is possible, but other network media and protocols may also be used. As the connection of edge devices 104 or 105 with external storage 112 or 122, protocols such as SCSI, iSCSI, iFCP, mFCP, FCIP or similar on Fiber Channel (hereafter also called "FC"), ESCON, FICON, GbE or similar are possible; but other protocols on other network media may also be used. In the following explanation, it is assumed that FC and SCSI are used to connect edge devices to external storage, and that GbE and the IP protocol and UDP protocol are used to connect edge devices and core devices 202; however, the scope of this invention is not limited to these protocols.
An FC frame 220 is a frame for communication between external storage and edge devices via FC; a GbE frame 210 is a frame for communication between edge devices and core devices, or between a plurality of core devices, via GbE; and log entries 211 are transferred using GbE frames 210.
The management server 103 is a computer to configure information needed by the owner (customer) of the external storage 112 and external storage 122 to use the remote copy network and to reference the configuration and state information of the remote copy network 101, and is connected to the wide-area network 102 and management network 150. The host 111 and host 121 use the wide-area network 102 to communicate with the management server 103. The wide-area network 102 may take any form so long as communication between the hosts 111 and 121 and the management server 103 is possible, and may be comprised in the remote copy network 101. Moreover, a plurality of external storage devices may be connected to a single edge device.
The management network 150 connects the devices existing within the remote copy network 101 (for example, the edge devices 104 and 105, and the core devices 202) with the management server 103. The management server configures edge devices and core devices within the remote copy network 101 via the management network 150, collects information from edge devices and core devices, and provides collected information to hosts via the wide-area network 102. The management network 150 may be one portion of the remote copy network 101, or may be one portion of the wide-area network 102.
Although not appearing in the figure, the external storage 112 and external storage 122 have memory which stores a synchronous remote copy program or an asynchronous remote copy program, and a processor which executes the program.
When the synchronous remote copy program is executed, the external storage defines the pair state (there are five states, which are Simplex (X), Initial-Copying (IC), Duplex (D), Suspend (S), and Duplex-Pending (DP)) in order to indicate the copy state, and manages this information internally.
The Simplex state is a state in which synchronous remote copying between a source volume and a target volume has not been initiated. The Duplex state is a state in which synchronous remote copying has been initiated, the initialization copying described below has also been completed, and the contents of the source volume and target volume are identical. In the case of synchronous remote copying, after data written to the source volume has been copied to the target volume (hereafter, this copying may also be called "update copying"), a writing-completed response is returned to the host which had performed the writing.
Because there may exist areas in each volume in which a unique identifier is stored, or for other reasons, portions specific to a volume need not be identical between the source volume and the target volume.
The Initial-Copying state is an intermediate state in the transition from the Simplex state to the Duplex state. During this period, initialization copying (copying of data already stored in the source volume) from the source volume to the target volume is performed. When initialization copying is completed and the internal processing necessary for the transition to the Duplex state has ended, the pair state becomes Duplex.
The Suspend state is a stated in which update copying is halted. In this state, the macroscopic data identity between the source volume and target volume is no longer guaranteed. Upon an instruction from an operator, a host, or a computer managing external storage, the pair state makes a transition from another state to the Suspend state.
In addition, there is a transition to the Suspend state ,when it may not be possible to perform synchronous remote copying from the source volume to the target volume. In such cases the storage automatically makes a transition to the Suspend state. In the following explanation, the latter case is called a "failure Suspend state". Representative causes of such a failure Suspend state are failures in the source volume or target volume, failures in the source external storage or the target external storage, and failure in the communication channel between source external storage and target external storage (in the case of this aspect, network failure between the external storage 112 or 122 and the edge device 104 or 105, or failure of the remote copy network comprising the edge devices 104 and 105). However, failures other than these can also cause a failure Suspend state.
External storage in the Suspend state or the failure Suspend state records the storage area in the volume in which is stored data updated while in the Suspend state or the failure Suspend state, so as to enable execution of differential copying (copying only updated area) between source volume and target volume upon a transition of the pair state to the Duplex-Pending state. The data structure used in recording may be a bitmap (herein named differential bitmap) or log structure, but other structures may be used.
The Duplex-Pending state is an intermediate state in the transition from the Suspend state to the Duplex state. In this state, in order to cause the data of the source volume and target volume to identical, copying of data from source volume to target volume is executed. When identity between the data of the source volume and target volume is secured, the pair state becomes Duplex. Copying of data while in the Duplex-Pending state may utilize information recorded in the data update area while in the Suspend state, described above, to perform differential copying in which only the portion requiring updating is copied. Moreover, the Initial-Copying state and Duplex-Pending state may be combined into a single state and displayed on the screen of a management device, or transitions between these states may be performed.
On the other hand, in the case of asynchronous remote copying, the following method is one method of copying data from the source volume to the target volume.
For example, in one method, each time data writing occurs, the source external storage creates a set (hereafter called a "log entry") of written data and control information comprising the address of the volume to which the data has been written, and transfers this to the target external storage, and the target external storage writes to the target volume the updated data stored in the log entry (hereafter, writing of data stored in a log entry to a volume is called "reflecting the log entry in the volume"). As an extension of this method, information indicating the time and order of writing of the updated data to the source volume is comprised in the control information of a log entry, and when reflecting a log entry in a target volume, this information indicating the time and order is utilized to reflect the log entry in the target volume in the order in which the updated data was written to the source volume.
When asynchronous remote copying is executed as well, the source and target external storage manage the pair state (Simplex, Initial-Copying, Duplex, Suspend, Duplex-Pending, and Suspending (SI)). The Simplex, Initial-Copying, Suspend, and Duplex-Pending states are similar to those for synchronous remote copying.
The Duplex state also is essentially the same as for synchronous remote copying, but because update copying is performed asynchronously with writing from the host, means of data identity differs from that of synchronous remote copying. For the instance, after the host receives a completion response for a write request from the source external storage, the data in the source volume and the data in the target volume are not exactly equal until the updated data is written to the target volume.
The Suspending state is an intermediate state in a transition from the Duplex state to the Suspend state; in the case of asynchronous remote copying, transitions are made to the Suspend state via the Suspending state. In this state, the source external storage and target external storage may perform processing to reflect, in the target external storage, log entries held in the memory of source and target external storages. Also, a method similar to the recording of the write position in the source volume described in the explanation of the Suspend state for synchronous remote copying is used by the source external storage and target external storage to record the write position of updated data in log entries which could not be reflected in the target volume.
<figref idref="f0009">Fig. 9</figref> is a flow diagram showing one example of remote copy processing utilizing a remote copy network. <ol id="ol0001" compact="compact" ol-style=""><li>(1) First, the customer and the RCN provider conclude a contract (step 901).</li><li>(2) The RCN provider assigns a customer ID to the customer, and configure by inputting to the management server 103 the assigned customer ID and information specific to the customer stipulated by the contract conditions (step 902).</li><li>(3) The customer inputs to the management server 103 the WWN (WorldWide Name) of the source external storage 112 and target external storage 122 connected to the RCN, and identification information for the edge device 104 and edge device 105 which are to be connected to these external storage devices, to perform configuration(step 903). Based on this configuration information, the management server 103 instructs the edge device 104 and edge device 105 to create virtual storage 106 and virtual storage 107, and configures routing for the remote copy network 101.</li><li>(4) The customer, by inputting a pair creation instruction to the host 111 or to another computer, instructs the source external storage 112 to create a pair (step 904). The instruction to the source external storage 112 passes through the edge device 104, remote copy network 101, and edge device 105 to arrive at the target external storage 122. Upon the occasion of a pair creation instruction, initialization copying from the source volume 113 to the target volume 123 is performed.</li><li>(5) The pair of the source volume 113 and target volume 123 enters the Duplex state, and macroscopic identity between source volume 113 and target volume 123 is secured. (step 905).</li><li>(6) If a failure occurs within the remote copy network 101, either the external storage 112 or the external storage 122 detects the failure itself, or the remote copy network 101 notifies the external storage 112 or the external storage 122 of the failure occurrence, causing the pair state of these external storage devices to make a transition to the failure Suspend state. Then, after the RCN provider completes maintenance tasks, the customer issues a resynchronization instruction to the source external storage 112 from the management server or from another computer, and resynchronization is performed (steps 908, 909).</li><li>(7) In the case of planned maintenance, and when remote copying is to be halted because the target external storage 122 is to be used temporarily by another application program or for some other reason, the customer issues an instruction to the source external storage 112, via the host 111 or the host 121, the management server, or another computer, for transition from the Duplex state to the Suspend state (step 910). Then, when the reason for halting the remote copying is eliminated, the customer issues a resynchronization instruction, via the host 111, the host 121, the management server or another computer, to the source external storage 112, and resynchronization is performed (step 909).</li><li>(8) If a failure (site failure) occurs in the source external storage 112, the customer restart the application on the host 121 connected to the target external storage 122 (step 911). Detection of site failure and restart processing may be performed manually by a manager, or may be performed by software, called "cluster software", which handles host monitoring and application restarting.</li></ol>
<figref idref="f0003">Fig. 3</figref> shows one example of the hardware architecture of an edge device, core device, and management server.
Each of these devices has memory 311, a CPU 312, and a disk device 313, which are interconnected via an internal network or a bus. Programs existing in each device are stored in the memory 311, and programs are executed through the concerted operation of the memory 311, CPU 312, and disk device 313. However, the disk device 313 is not an essential component.
Further, the edge device and core device each have a GbE interface 315, which is hardware for communication over GbE. The edge device has an FC interface 314 for communication by FC with external storage. The edge device, core device, and management server each have a network interface 316 to communicate using the management network 150. The network interface 316 may be the same as the FC interface 314 or GbE interface 315, but any interface enabling communication and supporting other network media and protocols, such as a 100BaseT Ethernet interface, may be used.
<figref idref="f0004">Fig. 4</figref> shows one example of a program within the memory 311 or disk device 313 of an edge device or core device, and which runs on the edge device or core device.
The FC protocol stack 401 is a program which is executed by an edge device to perform data transfer via the FC. The IP protocol stack 410 is a program which is executed by an edge device or by a core device 202 to perform data transfer via the GbE according to the IP. An interface driver program to manipulate the GbE interface 315 or FC interface 314, PortID and WWN conversion information present in the FC protocol stack 401, and IP address and MAC (Media Access Control) address conversion information present in the IP protocol stack 410 exist within the memory 311 of the edge device, but are not shown in the figure. In addition, an OS, also not shown, may exist in an edge device and core device.
The RIO protocol stack 402 is a program enabling an edge device to interpret a RIO received from external storage, and is present in an edge device.
The virtual storage provision program 403 is a program to provide virtual storage, behaving as some external storage, to external storage connected the edge device, and is present in the edge device. When providing, to an external storage device connected to the edge device (herein named connected-external storage device for explanation), virtual storage which behaves like opposite side external storage paired for remote copying with the connected-external storage device, the storage device information (that is, the WWN, product number, number of volumes, LUNs to identify volumes, capacity, emulation type, and similar) of the opposite side external storage device paired for remote copying with the connected-external storage device is provided to the connected-external storage as the storage device information of the virtual storage.
However, when there is information which the virtual storage must hold itself (for example, when both the opposite side external storage device and the virtual storage which behaves like opposite side external storage paired for remote copying with the connected-external storage device, exist in same FC network, the virtual storage must use different WWN from the connected-external storage device), the virtual storage provision program 403 provides to the connected-external storage, storage device information specific to the virtual storage rather than storage device information of the opposite side external storage device.
The log entry creation/reflection program 406 is a program to create a log entry 211 based on a RIO transferred to virtual storage 106 acquired from the external storage provision program 402, RIO protocol stack 402, and FC protocol stack 401, and is present in the edge device. In addition, the log entry creation/reflection program 406, after creating a RIO from the log entry 211 acquired from the log entry transfer program 407, also executes processing to transfer this RIO to external storage.
The RIO protocol stack 402, virtual storage provision program 403, and log entry creation/reflection program 406 run on the edge devices 104 and 105.
The log entry transfer program 407 is a program to use the log communication protocol stack 409 and IP protocol stack 410 to transfer log entries 211, and is present in edge devices and core devices.
The log transfer protocol stack 409 is a program to perform communication processing necessary for the transfer of log entries 211 between other edge devices or core devices.
The log entry transfer program 407 and log transfer protocol stack 409 run on the edge devices 104, 105 and core devices 202.
The batch transfer program 420 is a program which controls the log entry transfer program 407 running on a core device in order to efficiency perform transfer of log entries 211. The batch transfer program is present in the core device. The batch transfer program 420 waits a fixed length of time from receipt of a log entry 211 until transfer, and when transferring log entries, transfers a plurality of log entries 211 accumulated in the core device 202 in a batch. However, a batch transfer program 420 may not be used.
<figref idref="f0005">Fig. 5</figref> shows one example of a program stored in the memory of the management server 103 and running on the management server 103, as well as information stored in the memory of the management server.
The RCN configuration interface program 501 is a program which performs configuration in order to execute remote copy processing between a plurality of external storage devices using the remote copy network 101. The RCN configuration interface program 501 is also a program which outputs to enable user referencing of remote copy network configuration information, storage connection information 503, virtual storage information 404, access control information 405, routing information 408, and pair information 411. Hosts or other computers connected to the wide-area network 102 can use this program, stored in the management server, to reference the state of the remote copy network 101 and perform configuration corresponding to step 903 in <figref idref="f0009">Fig. 9</figref> (that is, configuration of the edge devices and core devices comprised in the RCN).
The following two types of information are examples of information configured using the RCN configuration interface program 501; but by inputting configuration information for the RCN configuration interface program running on the management server, the customer or a manager can make other configurations as well. <ol id="ol0002" compact="compact" ol-style=""><li>(A) The WWN of external storage connected to the remote copy network 101, and the ID of the edge device connected to the external storage</li><li>(B) A list of pairs of source volumes and target volumes for which the data writing order is assured in the remote copy network 101 (or pairs of source external storage and target external storage, or of source edge devices and target edge devices)</li></ol>
Information provided by the RCN configuration interface program 501 may comprise, in addition to the above two configuration values, the following items; but the RCN configuration interface program may output items other than these as well. <ol id="ol0003" compact="compact" ol-style=""><li>(A) WWNs assigned to virtual storage</li><li>(B) Delay time until data written to source external storage being reflected in the target external storage</li><li>(C) The presence or absence of log entries remaining within the remote copy network 101</li></ol>
When executing configuration of the RCN according to the contract conditions for each customer in step 903 of <figref idref="f0009">Fig. 9</figref>, the RCN configuration interface program 501 may also perform processing to limit input values for selection of edge devices, the number of external storage devices connected to the RCN, the number of volume pairs for which the order is assured, and similar, based on the contract conditions. However, this limitation may be execute due to another reason.
The RCN configuration program 502 comprises the following two functions. <ol id="ol0004" compact="compact" ol-style=""><li>(A) A configuration/distribution function which, based on information configured by the RCN configuration interface 501, updates and distributes to edge devices and core devices the storage connection information 503, virtual storage information 404, access control information 405, routing information 408, and pair information 411</li><li>(B) An update collection function which collects updates of the pair information 411 and order assurance information 412</li></ol>
The RCN configuration program 502 may also comprise functions to collect and configure information from the remote copy network 101 and from edge devices and core devices 202. In addition to the above-described RCN configuration interface program 501 and RCN configuration program, the memory of the management server also stores storage connection information 503, virtual storage information 404, access control information 405, routing information 408, and pair information 411, described below.
<figref idref="f0006">Fig. 6</figref> and <figref idref="f0007">Fig. 7</figref> show examples of information used by the management server 103, edge devices, and core devices.
The storage connection information 503 is information to manage the connection state of external storage with edge devices. This information comprises the IDs 631 of edge devices, customer IDs 632, and the WWNs 633 of external storage connected to edge devices. This information may be configured by the customer in the management server using the RCN configuration interface program 501, but other methods of creation may be used as well.
The virtual storage information 404 is information relating to virtual storage provided by edge devices. A virtual storage WWN 612 is an area for registration of the WWN of virtual storage provided by an edge device to external storage. The corresponding edge ID 613 and corresponding storage WWN 614 indicates the external storage location behaved by the virtual storage having WWN 612. Therefore, ID 613 is area for registration of the ID of the edge device connected to the behaved external storage. And WWN 613 is area for registration of the WWN of the behaved external storage. In this embodiment, as the WWN of the virtual storage 106, the WWN of the external storage 122 is assigned, and as the WWN of the virtual storage 107, the WWN of the external storage 112 is assigned. Taking <figref idref="f0001">Fig. 1</figref> as an example, the following values are registered in the virtual storage information 404.
Configuration for Virtual Storage 106
<ol id="ol0005" compact="compact" ol-style=""><li>(A) The ID of the edge device 104 as the edge ID 611</li><li>(B) The WWN of the target external storage 122 as the virtual storage WWN 612</li><li>(C) The ID of the edge device 105 as the corresponding edge ID</li><li>(D) The WWN of the target external storage 122 as the corresponding storage WWN</li></ol>
Configuration for Virtual Storage 107
<ol id="ol0006" compact="compact" ol-style=""><li>(A) The ID of the edge device 105 as the edge ID 611</li><li>(B) The WWN of the target external storage 112 as the virtual storage WWN 612</li><li>(C) The ID of the edge device 104 as the corresponding edge ID</li><li>(D) The WWN of the target external storage 112 as the corresponding storage WWN</li></ol>
The identification numbers (LUNs) of the target volume and virtual target volume provided by virtual storage 106 are assumed to be the same values in this aspect. And LUNs of the source volume and virtual source volume provided by virtual storage 107 are assumed to be the same value in this aspect, too.
The access control information 405 is information to manage control of access to virtual storage provided by edge devices. This information comprises the edge device ID 621, virtual storage WWN 622, and the WWN 623 of the external storage which permits accessing of the virtual storage. Because an edge device may be shared by a plurality of customers, the access control information 405 is generally configured such that the virtual storage of one customer cannot be accessed from the external storage of another customer. However, configuration policies other than this may be adopted. Also, an edge device may perform access control using information other than this.
In cases where accessible ranges are divided among customers, the access control information 405 is created by the management server based on the storage connection information 503 and virtual storage information 404. In the example of <figref idref="f0001">Fig. 1</figref>, through the configuration indicated below, the virtual storage 106 and virtual storage 107 cannot be used from the other customer's external storage(not shown in <figref idref="f0001">Fig. 1</figref>) connected to the edge device 104 or the edge device 105.
Configuration of Access Control Information for the Virtual Storage 106
<ol id="ol0007" compact="compact" ol-style=""><li>(A) The ID of the edge device 104 as the edge ID 621</li><li>(B) The WWN of the virtual storage 106 as the virtual storage WWN 622</li><li>(C) The WWN of the source external storage 112 as the access-permitted storage WWN 623</li></ol>
Configuration of Access Control Information for the Virtual Storage 107
<ol id="ol0008" compact="compact" ol-style=""><li>(A) The ID of the edge device 105 as the edge ID 621</li><li>(B) The WWN of the virtual storage 107 as the virtual storage WWN 622</li><li>(C) The WWN of the source external storage 122 as the access-permitted storage WWN 623</li></ol>
The routing information 408 is information to manage the route for transfer of a log entry 211 created by a source-side edge device 104 to a target-side edge device 105. This information comprises the WWN 711 of the source external storage 112, the WWN 712 of the target external storage 122, and the transit route 714 for sending and receiving log entries 211 between the source external storage and target external storage. Upon input to a management server 103 by the customer of identification information for the source external storage and target external storage, as well as of identification information for the source-side edge device and target-side edge device to which these external storage devices are connected, the RCN configuration program 502 calculates a route and creates routing information 408 such that the number of core devices 202 between the source external storage 104 and target external storage 105 is small, taking into consideration the processing limits of each core device 202 and the effectiveness of batch transfers. The method of deciding on a route may take into account the QoS of data transfer and the possibility of disaster at an edge device or core device 202 in calculations, but other methods may be used as well. Further, the routing information 408 in this embodiment assumes a case in which routes are configured for each pair of source external storage and target external storage; but routing information may be configured in units of order assurance groups, or in units of pairs of source volumes and target volumes.
The pair information 411 is information to manage, mainly in the remote copy network 101, group of remote-copy pair of source volumes and target volumes for which the RIO order is to be assured. This information comprises the actual WWN 721 of the source external storage 112 and the LUN 722 of the source volume 113, the actual WWN 723 of the target external storage 122 and LUN 724 of the target volume 123, the current pair state 725, an ID 726 for order assurance, and a differential bitmap 727 for use when a failure occurs within the remote copy network 101.
The following are three methods for creating pair information 411. <ol id="ol0009" compact="compact" ol-style=""><li>(A) In this method, an edge device receives a pair creation request from external storage (this pair creation request comprises the WWN of the source external storage 112 and LUN of the source volume 113, and the WWN of the target external storage 122 and LUN of the target volume 123), and the edge device creates the pair information. In this case, the following are two methods for registering the order assurance ID 725.</li><li>(A-1) In this method, the same ID is assigned to the pair, with the source volume existing in the same source external storage, and the target volume also existing in the same target external storage. In this method, the same ID is assigned to the volume pair for which remote copying is executed between the same external storage devices.</li><li>(A-2) In this method, the same ID is assigned to the volume pair for which remote copy processing is executed using the same source edge device and target edge device.</li><li>(B) Prior to pair creation, the manager uses the RCN configuration interface program 501 for input together with the update order information.</li></ol>
A method which combines these methods may also be used.
The order assurance information 413 is primarily information to create sequential numbers 804 for log entries 211. This information comprises an order assurance ID 731, log creation counter value 732, log reflection counter value 733, log deletion counter value 734, and reflection delay time 735. The log creation counter value 732 is incremented by the edge device 104 each time a log entry 211 is created, and the log deletion counter value 734 is incremented by the edge device 104 each time a log entry 211 is deleted. The log reflection counter value 733 is incremented by the edge device 105 each time a log entry 211 is reflected in external storage 122.
The value resulting from subtraction of the I/O time 804 of a log entry 211 from the current time is registered in the reflection delay time 735 each time edge device 105 reflects a log entry to external storage 122. This information is periodically sent from edge device 105 to the RCN configuration interface program 501 of the management server 103, and is provided to the customer by being output from management server 103.
Though not shown in <figref idref="f0006">Fig. 6</figref> and <figref idref="f0007">Fig. 7</figref>, log entries 211 are also stored in edge devices. Log entries 211 are stored in the log storage area 413 shown in <figref idref="f0015">Fig. 15</figref>, and the log storage area 413 comprises an area 1702 storing one or more log entries 211 and management information 1701 to manage the storing place. The log entry creation/reflection program 406 acquires information in the log storage area 413 in response to a request from the RCN configuration interface program 501, and provides this to the RCN configuration interface program.
Copies of the virtual storage information 404, access control information 405, and pair information 411 exist in the edge device. Also, a copy of the routing information 408 exists in edge devices and core devices 202. Copies may be partial copies.
<figref idref="f0008">Fig. 8</figref> is a schematic diagram showing an example of the data structure of a log entry 211.
The "WWN of target storage and volume LUN information" 801 is information indicating the WWN and LUN of external storage which is the transfer destination of a RIO converted into a log entry 211. The "source storage WWN and volume LUN information" 802 is information indicating the WWN and LUN of external storage which is the transfer source of a RIO converted into a log entry 211.
The order assurance ID 803 and "I/O time and sequential number information" 804 are information to convey the reflection order between log entries 211. That is, the I/O time is the time at which write data comprised in a log entry from a host to the source external storage was written, and the sequential number is a number indicating the order of writing of write data from the host to the source external storage.
The RIO area 805 is an area for storing a RIO which is to be converted into a log entry.
A log entry 211 may comprise information other than the above as well.
<figref idref="f0014">Fig. 14</figref> shows examples of an FC frame 220 and GbE frame 210.
The FC frame 220 comprises a transfer source PortID 1411, transfer destination PortID 1412, RIO area 1414, and other header information 1413. The RIO area comprises RIOs for transfer.
The GbE frame comprises a transfer source IP address 1421, transfer destination IP address 1422, log entry area 1424, and other header information 1423. The log entry area comprises log entries for transfer.
A RIO or log entry may be divided into a plurality of frames and sent, for example, in order to transfer a RIO or log entry of size exceeding the maximum frame size.
<figref idref="f0010">Fig. 10</figref> and <figref idref="f0011">Fig. 11</figref> are flowcharts showing examples of system operation from the issuing of an instruction for pair creation in step 904 of <figref idref="f0009">Fig. 9</figref>, until initialization copying is performed and the pair state makes the transition to Duplex.
In step 903 of <figref idref="f0009">Fig. 9</figref>, it is assumed that configuration by the RCN configuration interface program 501 and updating of the storage connection information 503, virtual storage information 404, access control information 405, routing information 408, and pair information 411 by the RCN configuration program 502 have been completed. It is also assumed that edge devices and core devices 202 have provided virtual storage, initiated access control, and initialized order assurance information 413 based on the above information.
Transition from the Simplex State to the Initial-Copying State
<ul id="ul0002" list-style="none" compact="compact"><li>(1) The host 111 sends a SCSI command instructing pair creation such that the volume 113 and volume 123 become a pair to the source external storage 112 (step 1001).</li><li>(2) The source external storage 112 sends, to the edge device 104 providing source-side virtual storage 106, an FC frame having a RIO (pair creation) according to the SCSI command (instructing pair creation) received from the host (step 1002). In this aspect, the volume 123 and virtual volume 108 are identified by the same identification information (WWN and LUN). Hence when the source external storage 112 sends the above RIO (for pair creation) to the source-side edge device 104, the effect is similar to that of instructing the source-side edge device 104 to create a pair of the volume 113 and virtual volume 108.</li><li>(3) The source-side edge device 104 creates a log entry (pair creation) comprising the RIO (for pair creation) received from the source external storage, stores this in a GbE frame and sends this to the target-side edge device 105 (step 1003).</li><li>(4) The edge device 105 providing target-side virtual storage 107, upon receiving the log entry (pair creation), sends an FC frame having the RIO (pair creation) comprised in the log entry to the target external storage 122. In this aspect, the volume 113 and virtual volume 109 are identified by the same identification information (WWN and LUN). Hence for the target-side edge device 105, the received log entry (pair creation) has the same meaning as a RIO instructing handling of the virtual volume 109 and volume 123 as a pair (step 1004).</li><li>(5) The target external storage 122, upon receiving the RIO (pair creation), changes the pair state of the volume 113 and volume 123 to Initial-Copying (step 1005).</li><li>(6) The target external storage 122 sends, to the edge device 105 providing the target-side virtual storage 107, an FC frame comprising a RIO (Initial-Copying transition completed (hereafter called "ICOK")) indicating completion of the transition to the Initial-Copying state (step 1006).</li><li>(7) Upon receiving the RIO (ICOK), the target-side edge device 105 changes the pair state of the virtual volume 109 and volume 123 to Initial-Copying (step 1007).</li><li>(8) The target-side edge device 105 creates a log entry (ICOK) having the RIO (ICOK), and sends a GbE frame having this log entry (ICOK) to the source-side edge device 104 (step 1008).</li><li>(9) The source-side edge device 104 changes the pair state of the volume 113 and virtual volume 108 to Initial-Copying (step 1007).</li><li>(10) The edge device 104 providing the source-side virtual storage 106 sends the RIO (ICOK) comprised in the received log entry in an FC frame to the source external storage 112 (step 1010).</li><li>(11) The source external storage 112 changes the pair state of the volume 113 and volume 123 to Initial-Copying (step 1011).</li><li>(12) The source external storage 112 transfers a SCSI command (ICOK) to the host 111 (step 1012).</li></ul>
Initialization Copying
<ul id="ul0003" list-style="none" compact="compact"><li>(13) Initialization copying from the source external storage 112 to the target external storage 122 is performed (step 1013). The method of initialization copying is the same as writing performed during normal operation, described below.</li></ul>
Transition of Pair State to Duplex
<ul id="ul0004" list-style="none" compact="compact"><li>(14) The source external storage 112 sends, to the edge device 104 providing the source-side virtual storage 106, a RIO (Duplex transition) instructing a transition of the pair state of the source volume 113 and target volume 123 to the Duplex state, in the form of an FC frame (step 1101). As described above, the target volume 123 and the virtual volume 108 provided by the source-side edge device 104 are identified by the same identification information, so that the RIO (Duplex transition) sent by the source external storage 112 is, for the source-side edge device 104, in effect a RIO instructing a transition of the pair state of the source volume 113 and virtual volume 108 to the Duplex state.</li><li>(15) The source-side edge device 104 creates a log entry (Duplex transition) having the received RIO (Duplex transition), and sends the log entry (Duplex transition) in the form of a GbE frame to the target-side edge device 105 (step 1102).</li><li>(16) The edge device 105 providing the target-side virtual storage 107, upon receiving the log entry (Duplex transition), transfers the RIO (Duplex transition) comprised in the log entry (Duplex transition) to the target external storage 122 (step 1103). As described above, because the source volume 113 and the virtual volume 109 provided by the target-side edge device 105 are identified by the same identification information, for the target edge device 105, the received log entry (Duplex transition) is a log entry instructing a transition of the pair state of the virtual volume 109 and target volume 123 to the Duplex state.</li><li>(17) On receiving the RIO (Duplex transition), the target external storage 122 changes the pair state of the volume 113 and volume 123 to Duplex (step 1104).</li><li>(18) The target external storage 122 sends, to the edge device 105 providing the target-side virtual storage 107, a RIO reporting completion of the transition to the Duplex state (Duplex transition complete (hereafter called "DOK")) (step 1105).</li><li>(19) The target-side edge device 105, on receiving the RIO (DOK), changes the pair state of the virtual volume 109 and volume 123 to Duplex (step 1106).</li><li>(20) Also, the target-side edge device 105 sends a log entry (DOK) having the received RIO (DOK) to the source-side edge device 104 (step 1107).</li><li>(21) On receiving the log entry (DOK), the source-side edge device 104 changes the pair state of the volume 113 and virtual volume 108 to Duplex (step 1108).</li><li>(22) Also, the edge device 104 having the source-side virtual storage 106 sends the RIO (DOK), comprised in the received log entry (DOK), to the source external storage 104 (step 1109).</li><li>(23) The source external storage 103 changes the pair state of the volume 113 and volume 132 to Duplex (step 1110).</li></ul>
<figref idref="f0016">Fig. 16</figref> is a timeline showing one example of command transfer processing (that is, write processing during normal operation) when there is data writing to the source external storage system from a host in an information processing system. In this timeline, FC and IP (UDP, TCP) level Acknowledge messages are omitted. <ul id="ul0005" list-style="none" compact="compact"><li>(1) The source-side host sends to the source external storage 112 an SCSI command (write (hereafter "WR")) instructing data writing (arrow 1601). This SCSI command (WR) comprises information to specify the volume 113 which is the data write destination (the WWN (more precisely, the PortID and LUN are comprised)).</li><li>(2) The source external storage 112 references the pair information contained within the source external storage based on the WWN and LUN comprised in the SCSI command (WR), and acquires the target storage WWN and target LUN. The source external storage 112 then sends a FC frame, having the transfer source PortID 1411 calculated from the WWN of the source external storage 112 and the transfer destination PortID 1412 calculated from the acquired WWN. This FC frame comprises a RIO (WR) specifying data writing; the RIO (WR) comprises identification information (WWN and LUN) for the source volume 113 and target volume 123 (arrow 1602). In this aspect, as described above, the WWN of the target external storage 112 is equal to the WWN of the virtual storage 106, and the LUN of the target volume 123 is equal to the LUN of the virtual volume 108, so that the RIO (WR) sent by the source external storage 112 is received by the source-side edge device 104 providing the virtual storage 106.</li><li>(3) The source-side edge device 104 creates a log entry 211 (WR) from the RIO (WR), and sends to the source external storage 112 a RIO reporting completion of writing (write completion (hereafter "WROK")) (arrow 1603).</li><li>(4) On receiving the RIO (WROK), the source external storage 112 sends a SCSI command (WROK) to the source-side host 111 (arrow 1604).</li><li>(5) The source-side edge device 104 sends the created log entry (WR), according to the routing information 408, to a core device 202 (arrow 1605). At this time, the source-side edge device 104 makes a copy of the sent log entry (WR).</li><li>(6) The core device 202 sends the log entry 211 (WR) to the target-side edge device 105 according to the routing information 408 (arrow 1606).</li><li>(7) The target-side edge device 105 converts the log entry 211 (WR) into a RIO (WR), and sends the converted RIO to the target external storage 122 (arrow 1607).</li><li>(8) The target external storage 122 reflects the received RIO (WR) in the volume 123, and sends a RIO (WROK) to the edge device 105 providing the target-side virtual storage 107 (arrow 1608).</li><li>(9) The target-side edge device 105 creates a log entry 211 (WROK) having the received RIO (WROK), and sends this log entry 211 to the core device 202 according to the routing information 408 (arrow 1609). Then, the target-side edge device 105 deletes the log entry 211 (WROK).</li><li>(10) The core device 202 transfers the received log entry 211 (WROK) to the source-side edge device 104 according to the routing information 408 (arrow 1610).</li><li>(11) Upon receiving the log entry (WROK), the source-side edge device 104 deletes the log entry (WR) corresponding to this log entry (WROK).</li></ul>
The above example is a case of routing which passes once through the core device 202; when there is no core device 202, the transfer processing by the core device 202 may be omitted, and when there is a plurality of core devices 202, transfer processing between core devices 202 may be added.
When the target-side edge device 105 or core device 202 loses a log entry (WR) due to failure or for some other reason, the log entry (WR) held by the source-side edge device 104 is resent. For example, when the source-side edge device 104 does not receive the log entry (WROK) within a stipulated time, resending is executed. When remote copying cannot be continued even after such resending (corresponding to step 908 in <figref idref="f0009">Fig. 9</figref>), the edge device 104 and edge device 105 instruct the external storage 112 and external storage 122 to make a transition to the failure Suspend state. At this time, the source-side edge device 104 converts the log entry (RW) held in the log storage area into a differential bitmap 27 of the pair information 411 and holds this bitmap.
<figref idref="f0012">Fig. 12</figref> shows one example of resynchronization processing from the Suspend state or from the failure Suspend state. <ul id="ul0006" list-style="none" compact="compact"><li>(0) The external storage 112, after entering the Suspend state or failure Suspend state, records the update position for writing to the volume 113 in the differential bitmap 1211. Similarly, when there is writing to the volume 123 after entering the Suspend state or failure Suspend state, the external storage 122 records the update position in the differential bitmap 1213.</li><li>(1) The host 111 sends a SCSI command (resynchronize) instructing resynchronization to the source external storage 112 (data 1201). This SCSI command comprises the volume pair for resynchronization, that is, identification information (LUN and WWN) for the source volume 113 and target volume.</li><li>(2) Based on the received SCSI command (resynchronize), the source external storage 112 sends a RIO (resynchronize) to the source-side edge device 104 which provides the source-side virtual storage 106 (data 1202). This RIO (resynchronize) also comprises the LUN and WWN of the volume pair to be resynchronized. In this aspect, the volume 123 and virtual volume 108 are identified by the same identification information (WWN and LUN). Hence as a result of sending the above-described RIO (resynchronize) to the source-side edge device 104 by the source external storage 112, an effect similar to instructing the source-side edge device to resynchronize the pair of the volume 113 and virtual volume 108 is obtained.</li><li>(3) The source-side edge device 104 converts the RIO (resynchronize) into a log entry 211 (resynchronize) having this RIO (resynchronize), and transfers the log entry to the core device 202 (data 1203).</li><li>(4) The core device 202 transfers the log entry 211 (resynchronize) to the target-side edge device 105 (data 1204).</li><li>(5) The target-side edge device 105 providing the target-side virtual storage 107 converts the received log entry (resynchronize) into a RIO (resynchronize), and sends this RIO (resynchronize) to the target-side external storage 122 (data 1205). In this aspect, the volume 113 and virtual volume 109 are identified by the same identification information (WWN and LUN). Hence for the target-side edge device, the log entry (resynchronize) means an instruction to resynchronize the virtual volume 109 and the target volume 123.</li><li>(6) Upon receiving the RIO (resynchronize), the target external storage 122 changes the pair state of the volume 113 which the target external storage itself has and the volume 123 to Duplex-Pending. And, the target external storage 122 sends a RIO (Duplex-Pending transition completed (hereafter "DPOK")) comprising a differential bitmap 1213 held by the target external storage 122 to the edge device 105 providing the target-side virtual storage 107 (data 1206).</li><li>(7) The target-side edge device 107 changes the pair state of the virtual volume 109 which the edge device 107 itself has and the target volume 123 to Duplex-Pending. Also, the target-side edge device 107 sends to the core device a log entry 211 (DPOK) comprising the received RIO (DPOK) (data 1207).</li><li>(8) The core device 202 transfers the received log entry (DPOK) to the source-side edge device 104 (data 1208).</li><li>(9) The source-side edge device 104 combines the differential bitmap 1213 comprised in the received log entry (DPOK) and the differential bitmap 727 to create the differential bitmap 1209 (data 1209).</li><li>(10) The source-side edge device 104 having the source-side virtual storage 106 changes the pair state of the virtual volume 108 which the edge device 104 itself has and the volume 113 to Duplex-Pending. Further, the source-side edge device 104 which provides the source-side virtual storage 106 sends a RIO (DPOK) comprising the differential bitmap 1209 to the source external storage 112 (data 1210).</li><li>(11) The source external storage 112 combines the differential bitmap 1209 and the differential bitmap 1211 held by the external storage 112 itself, to obtain a new differential bitmap 1211 (data 1211).</li><li>(12) The source external storage 112 changes the pair state of the volume 113 which the external storage itself has and the volume 123 to Duplex-Pending. Further, the source external storage 112 transfers a SCSI command (DPOK) to the host 111 (data 1212).</li><li>(13) Then, the source external storage 112 initiates differential copying according to the differential bitmap 1211.</li></ul>
<figref idref="f0013">Fig. 13</figref> is a flow diagram showing an example of operation of the target-side host 121, target external storage 122, and target-side edge device 105 when disaster occurs at the source-side site during normal operation and failover occurs at the target-side host. The processing shown in <figref idref="f0013">Fig. 13</figref> corresponds to step 911 in <figref idref="f0009">Fig. 9</figref>. <ul id="ul0007" list-style="none" compact="compact"><li>(1) The target-side host 121 detects a source-side site failure (step 1301). The occasion for detection may be notification from cluster software, a target-side edge device 105 or a management server 103, but other occasions are possible.</li><li>(2) The target-side host 121 sends a SCSI command (Suspend instruction) to the target external storage 122 (step 1302). This SCSI command comprises the volume pair which is make the transition to the Suspend state or to the failure Suspend state, in other words, the identification information(WWN and LUN) for the source volume 113 and the target volume 123.</li><li>(3) The target external storage 122 sends a RIO (Suspend instruction) to the target-side edge device 105 providing the target-side virtual storage 107 (step 1303). This RIO (Suspend instruction) also comprises the above-described identification information for the volume 113 and volume 123.</li><li>(4) The target-side edge device 105 creates a log entry (Suspend instruction) having the received RIO (Suspend instruction), and sends the log entry 211 (Suspend instruction) to the source-side edge device 104 (step 1304). The source-side edge device 104, upon receiving this log entry, executes the following processing. <ol id="ol0010" compact="compact" ol-style=""><li>(A) First, the source-side edge device 104 transfers all the log entries 211 relating to the pair of the volume 113 and the volume 123 (for the source-side edge device, the virtual volume 108) to the core device 202 or to the edge device.</li><li>(B) Next, the source-side edge device 104 changes the pair state relating to the volume 113 and virtual volume 108 to the failure Suspend state. As described above, in this aspect the virtual volume 108 and the target volume 123 are identified by the same identification information (WWN and LUN), so that the source-side edge device 104, upon receiving the above log entry (Suspend instruction), interprets this log entry (Suspend instruction) as instructing a change in the pair state for the source volume 113 and virtual volume 108 to the failure Suspend state.</li><li>(C) Then, the source-side edge device 104 creates a log entry reporting the transition of the pair state to the failure Suspend state (Suspend transition completed (hereafter "SOK")), and sends this log entry to the target-side edge device 105.</li></ol></li><li>(5) The target-side edge device 105 resets the timer value (step 1305).</li><li>(6) When the current timer value exceeds the timeout setting, the target-side edge device 105 proceeds to step 1310, and otherwise proceeds to step 1307 (step 1306).</li><li>(7) The target-side edge device 105 receives the log entries 211 transferred from other edge devices and from core devices 202, and checks whether the received log entries 211 are log entries (SOK) from the source-side edge device 104 (steps 1307, 1308). If they are such log entries, processing proceeds to step 1310, and otherwise proceeds to step 1309. In step 1308, "there are no missing log entries (SOK)" may be added as a condition for the transition to step 1310.</li><li>(8) The target-side edge device 105 references the I/O time and sequential number within the received log entries converts the received log entries 211 into RIOs and sends the RIOs to the target external storage with preserving write order relations (step 1309). Then, processing returns to step 1306. The transferred RIOs are reflected in the volume 123 of the target external storage 122.</li><li>(9) The target-side edge device 105 changes the pair state of the target volume 123 and virtual volume 109 to failure Suspend, and then sends a RIO (SOK) to the target external storage 122 (step 1310). Upon receiving a RIO (SOK), the target external storage 122 changes the pair state of the target volume 123 and source volume 113 to the failure Suspend state, and then transfers to the target-side host 121 a SCSI command (SOK) corresponding to step 1302 (step 1311 ).</li><li>(10) The target-side host 121 restarts processing by the application program using the volume 123 within the target external storage 122 (step 1312).</li></ul>
As a modification of this procedure the steps 1310, 1311, 1312 may be executed to promptly execute the transition to the failure Suspend state after step 1303. In this case, even after the target external storage 105 sends the RIO (SOK), log entries 211 remains in the remote copy network 101. The RCN configuration interface program 501 is used to acquire remaining log entries from the RCN, to resolve this problem. If, after completion of the transition to failure Suspend, the target external storage 122 does not receive a RIO (WR) to reflect in the target volume 123 the write data held as log entries by the RCN, this write data may be reflected using a SCSI command (WR).
<figref idref="f0019">Fig. 19</figref> is a flow diagram showing an example of processing of the source-side edge device 104 when writing (WR) to the source volume 113 is performed during normal operation. <ul id="ul0008" list-style="none" compact="compact"><li>(1) The virtual storage provision program 403 receives from the source external storage an FC frame 220 comprising a RIO (WR) having a data written to the source external storage from a host, and passes this to the log entry creation/reflection program 406 (step 1901). The FC frame is received via the RIO protocol stack 402 and FC protocol stack 401. Information passed to the log entry creation/reflection program 406 is the transfer source WWN converted from the transfer source PortID 1411, the transfer destination WWN converted from the transfer destination PortID 1412, and the RIO held in the RIO area 1414.</li><li>(2) The log entry creation/reflection program 406 creates a log entry (WR) in the log storage area 413, based on the information passed in step 1901 (step 1902). The values indicated in (A) through (E) below are registered in the log entry (WR). <ol id="ol0011" compact="compact" ol-style=""><li>(A) As the "target storage WWN and LUN" 801, the transfer destination WWN passed in step 1901 and the target LUN for remote copying comprised in the RIO (WR)</li><li>(B) As the "source storage WWN and LUN" 802, the transfer source WWN passed in step 1901 and the source LUN 722 obtained by referencing the pair information 411. The source LUN can be obtained by searching for the row in the pair information 411, that has the transfer source WWN as the source storage WWN 721 , the target destination WWN as the target storage WWN 723, and the target LUN for remote copying contained in the RIO (WR) as the target LUN 724, and acquire the source LUN from the searched row.</li><li>(C) As the order assurance ID 801, the order assurance ID 726 in the pair information 411 corresponding to the information of (A) and (B) above</li><li>(D) As the "I/O time and sequential number" 804, the current time of the source-side edge device 104, and the log creation counter value 731 of the order assurance information 412 corresponding to the value of the order assurance ID determined in (C)</li><li>(E) As the data stored in the RIO area 805, the RIO (WR) passed in step 1901</li></ol></li><li>(3) Next, the source-side edge device 104 increments by 1 the log creation counter value 731 of the order assurance information 412 used in step 1902 (step 1903).</li><li>(4) The virtual storage provision program 403 sends a RIO (WROK) to notify the source external storage 112 of the completion of write processing (step 1904).</li><li>(5) Then, the source-side edge device determines the edge device or core device 202 which is to be the transfer destination of the log entry (WR) (step 1905). When the transfer destination is determined, the IP address of the transfer destination is obtained. Determination of the transfer destination and acquisition of the IP address are performed by the procedure indicated in (A) and (B) below. <ol id="ol0012" compact="compact" ol-style=""><li>(A) First, the source-side edge device acquires the transfer source WWN determined in step 1902 and the transit route 713 (list of IP addresses) of the routing information 408 corresponding to the transfer destination WWN.</li><li>(B) Next, from the list acquired in (A), the source-side edge device 104 selects the next IP address after its own IP address, and makes this the IP address of the transfer destination.</li></ol></li><li>(6) The log entry transfer program 407 sends the log entry 211 (WR) created in step 1902 to the IP address determined in step 1905 (step 1906). The transfer is executed jointly by the log transfer protocol stack 409 and the IP protocol stack 410.</li><li>(7) The log entry transfer program 407 receives the log entry (WROK) from the core device 202 or target-side edge device 105, and saves it to the log storage area 413 (step 1907). The same sequential number 804 as the log entry (WR) sent in step 1906 is present as the sequential number 804 of the log entry (WROK).</li><li>(8) The log entry transfer program 407 deletes the log entry (WR) saved in the log storage area 413 and the corresponding log entry 211 (WROK) (step 1908). The correspondence relation between the log entry (WR) and the log entry (WROK) can be ascertained by referencing the correspondence relations between the order assurance IDs and sequential numbers in the log entries (that is, by determining whether the order assurance IDs and sequential numbers coincide).</li><li>(9) Beforehand in step 1908, the source-side edge device acquires the order assurance ID 803 and sequential number 804 from the deleted log entry (WR), and increments the log deletion counter value 733 of the corresponding order assurance information 412 (step 1909).</li></ul>
<figref idref="f0020">Fig. 20</figref> is a flow diagram showing an example of processing of the target-side edge device 105 when writing (WR) from a host to a source volume 113 is performed during normal operation. <ul id="ul0009" list-style="none" compact="compact"><li>(1) The log entry transfer program 407 of the target-side edge device 105 receives a log entry (WR) via the log transfer protocol stack 407 and IP protocol stack 410, and saves this to the log storage area 413 (steps 2001, 2002).</li><li>(2) The log entry creation/reflection program 406 searches the log entries (WR), that is reflectable with keeping sequential number order, from the log storage area 413 (step 2003). Searching is performed for each order assurance ID 731, searching for the log entry (WR) having a sequential number of the same value as the incremented value of the log reflection counter 733 of the order assurance information 413.</li><li>(3) The log entry creation/reflection program 406 converts the log entry (WR) retrieved in step 2003 into a RIO (WR) (step 2004). The conversion is performed by extracting the RIO from the RIO area 805 of the log entry.</li><li>(4) The virtual storage provision program 403 sends the RIO (WR) converted in step 2004 to the target external storage 122 (step 2005).</li><li>(5) The virtual storage provision program 403 receives a RIO (WROK) from the target external storage 122 (step 2006).</li><li>(6) The log entry creation/reflection program 406 acquires the order assurance ID 803 and sequential number 804 from the log entry (WR) retrieved in step 2003, and increments the log reflection counter value 733 of the acquired order assurance ID (step 2007). Also, the difference between the current time and the I/O time 804 of the reflected log entry (WR) is registered as the reflection delay time 735 in the order assurance information 413.</li><li>(7) The log entry creation/reflection program 406 creates a log entry (WROK) having the received RIO (WROK) in the log storage area 413 (step 2008). The values indicated in (A) through (E) below are registered in the log entry. <ol id="ol0013" compact="compact" ol-style=""><li>(A) As the "target storage WWN and LUN" 801, the "source storage WWN and LUN" 802 of the log entry (WR) selected as a result of the search in step 2003</li><li>(B) As the "source storage WWN and LUN" 802, the "target storage WWN and LUN" 801 of the log entry (WR) acquired in step 2003</li><li>(C) As the order assurance ID 801, the order assurance ID 801 of the log entry 211 (WR) acquired in step 2003</li><li>(D) As the "I/O time and sequential number" 804, the "I/O time and sequential number" 804 of the log entry (WR) acquired in step 2003</li><li>(E) As the RIO area 805, the RIO (WROK) received in step 2006</li></ol></li><li>(8) The log entry transfer program 407 references the routing information to determine the core device 202 or source-side edge device 104 to be the transfer destination for the log entry (WROK) (step 2009). Determination of the transfer destination is similar to the above-described step 1905.</li><li>(9) The log entry transfer program 407 sends the log entry (WROK) created in step 2008 to the IP address determined in step 2009, via the log transfer protocol stack 409 and IP protocol stack 410 (step 2010).</li><li>(10) The log entry creation/reflection program 406 deletes from the log storage area 413 the log entry (WR) selected in step 2003 and the log entry (WROK) created in step 2008 (step 2011).</li></ul>
<figref idref="f0017">Fig. 17</figref> and <figref idref="f0018">Fig. 18</figref> show an example of processing by the source-side edge device 104 in pair creation. <ul id="ul0010" list-style="none" compact="compact"><li>(1) The virtual storage provision program 403 receives a RIO (pair creation) (step 1701). The RIO (pair creation) comprises the WWN of the source external storage 112, LUN of the source-side volume 113, WWN of the target external storage 122, and LUN of the target-side volume 123.</li><li>(2) Based on the received RIO (pair creation), the virtual storage provision program 403 records source and target information and similar for the pair to be created in the pair information 411 (step 1702). At this time, the pair state 725 is updated to Simplex.</li><li>(3) The log entry creation/reflection program 406 creates a log entry (pair creation) having the RIO (pair creation) in the log storage area 413 (step 1703). The method of log entry creation is the same as in step 1902 of <figref idref="f0019">Fig. 19</figref>.</li><li>(4) The log entry creation/reflection program 406 increments the log creation counter value 732 of the order assurance information 412 (step 1704).</li><li>(5) The log entry transfer program 407 determines the core device 202 or edge device which is to be the sending destination of the log entry (pair creation) (step 1705). The method of determining the sending destination is the same as in step 1905 of <figref idref="f0019">Fig. 19</figref>.</li><li>(6) The log entry transfer program 407 sends the log entry (pair creation) created in step 1703 to the IP address determined in step 1705 (step 1706).</li><li>(7) The log entry transfer program 407 receives a log entry (Initial-Copying transition completed (hereafter "ICOK")) from a core device 202 or edge device 105 (step 1707). This log entry (ICOK) comprises the WWN of the source external storage 112, the LUN of the source-side volume 113, the WWN of the target external storage 122, and the LUN of the target-side volume 123.</li><li>(8) The source-side edge device updates the pair state 725 of the corresponding pair in the pair information 411 to Initial-Copying, based on information relating to volume pairs in the received log entry (ICOK) (step 1711).</li><li>(9) The virtual storage provision program 403 extracts the RIO (ICOK) from the received log entry (ICOK), and sends this to the source external storage 112 (step 1708).</li><li>(10) The log entry creation/reflection program 406 deletes the log entry (ICOK) received in step 1707 and the log entry (pair creation) relating to the same pair as this log entry (ICOK) from the log storage area 413 (step 1709).</li><li>(11) The log entry creation/reflection program 406 increments the log deletion counter value 734 of the order assurance information 413 (step 1710).</li><li>(12) Then, the source-side edge device 104 starts initialization copy processing (step 1801). The processing of this step is the same as data copying in the normal operation.</li><li>(13) The virtual storage provision program 403 receives a RIO (Duplex transition) (step 1802). The RIO (Duplex transition) comprises the WWN of the source external storage 112, the LUN of the source-side volume 113, the WWN of the target external storage 122, and the LUN of the target-side volume 123.</li><li>(14) The log entry creation/reflection program 406 creates, in the log storage area 413, a log entry (Duplex transition) from the received RIO (Duplex transition) (step 1803). The method of creation of the log entry 211 is the same as in step 1902 of <figref idref="f0019">Fig. 19</figref>.</li><li>(15) The log entry creation/reflection program 406 increments the log creation counter value 732 of the order assurance information 412 (step 1804).</li><li>(16) The log entry transfer program 407 determines the core device 202 or edge device which is to be the transfer destination for the log entry (Duplex transition) (step 1805). The method of determination is the same as in step 1905 of <figref idref="f0019">Fig. 19</figref>.</li><li>(17) The log entry transfer program 407 sends the log entry (Duplex transition) created in step 1803 to the IP address determined in step 1805 (step 1806).</li><li>(18) The log entry transfer program 407 receives a log entry (Duplex transition completed (hereafter "DOK")) from the core device 202 or edge device 105 (step 1807). This log entry (DOK) comprises the WWN of the source external storage 112, the LUN of the source-side volume 113, the WWN of the target external storage 122, and the LUN of the target-side volume 123.</li><li>(19) The source-side edge device updates the pair state 725 of the pair information 411 corresponding to this volume pair to Duplex, based on information related to the volume pair within the received log entry (DOK) (step 1811).</li><li>(20) The virtual storage provision program 403 extracts the RIO (DOK) from the received log entry (DOK), and sends this RIO (DOK) to the source external storage 112 (step 1808).</li><li>(21) The log entry creation/reflection program 406 deletes the log entry (DOK) received in step 1807 and the log entry (Duplex transition) relating to the same pair as this log entry (DOK) from the log storage area 413 (step 1809).</li><li>(22) The log entry creation/reflection program 406 increments the log deletion counter value 734 of the order assurance information 413 (step 1810).</li></ul>
<figref idref="f0021">Fig. 21</figref> and <figref idref="f0022">Fig. 22</figref> show an example of processing by a target-side edge device 105 during pair creation. <ul id="ul0011" list-style="none" compact="compact"><li>(1) The log entry transfer program 407 receives a log entry (pair creation) (step 2101). This log entry comprises information to identify the pair to be created (that is, the target-side WWN and LUN and the source-side WWN and LUN).</li><li>(2) The log entry creation/reflection program 406 stores the received log entry (pair creation) in the log storage area 413 (step 2102).</li><li>(3) The virtual storage provision program 403 registers the created pair in the pair information 411, based on the log entry (pair creation) received in step 2102 (step 2103). At this time, the pair state 725 is updated to Simplex.</li><li>(4) The log entry creation/reflection program 406 converts the log entry (pair creation) to a RIO (pair creation) (step 2104).</li><li>(5) The virtual storage provision program 403 sends the RIO (pair creation) converted in step 2104 to the target external storage 122 (step 2105).</li><li>(6) The virtual storage provision program 403 receives a RIO (Initial-Copying transition completed (hereafter "ICOK")) from the target external storage 122 (step 2106). This RIO (ICOK) comprises information to identify the pair.</li><li>(7) The log entry creation/reflection program 406 increments the log reflection counter value of the order assurance information 412 corresponding to the pair indicated by the received RIO (ICOK). Also, the difference between the current time and the I/O time 804 of the log entry (pair creation) for the same pair as in the received RIO (ICOK) is registered as the reflection delay time 735 in the order assurance information 413 (step 2107).</li><li>(8) The target-side edge device updates the pair state 725 of the pair information 411 for the pair indicated by the received RIO (ICOK) to Initial-Copying (step 2108).</li><li>(9) The log entry creation/reflection program 406 creates, in the log storage area 413, a log entry (ICOK) comprising the received RIO (ICOK) (step 2109). The method of creation of the log entry is the same as in step 2008 of <figref idref="f0020">Fig. 20</figref>.</li><li>(10) The log entry transfer program 407 determines the IP address of the core device or edge device which is to be the transfer destination of the log entry (ICOK) (step 2110).</li><li>(11) The log entry transfer program 407 sends the log entry created in step 2109 to the IP address determined in step 2110 (step 2111).</li><li>(12) The log entry creation/reflection program 406 deletes the log entry (ICOK) created in step 2109 and the log entry (pair creation) for the same pair as this log entry (ICOK) from the log storage area 413 (step 2112).</li><li>(13) The target-side edge device performs initialization copying (step 2201). The operation of this step is the same as that of data copying in the normal operation.</li><li>(14) The log entry transfer program 407 receives a log entry (Duplex transition) (step 2202).</li><li>(15) The log entry creation/reflection program 406 stores the log entry (Duplex transition) in the log storage area 413 (step 2203).</li><li>(16) The log entry creation/reflection program 406 converts the log entry (Duplex transition) into a RIO (Duplex transition) (step 2204).</li><li>(17) The virtual storage provision program 403 sends the RIO (Duplex transition) converted in step 2204 to the target external storage 122 (step 2205).</li><li>(18) The virtual storage provision program 403 receives a RIO (Duplex transition completion (hereafter "DOK")) from the target external storage 122 (step 2206).</li><li>(19) The log entry creation/reflection program 406 increments the log reflection counter value of the order assurance information 412 for the volume pair indicated by the received RIO (DOK). Also, the difference between the current time and the I/O time 804 of the log entry (Duplex transition) for the same pair as the received RIO (DOK) is registered as the reflection delay time 735 in the order assurance information 413 (step 2207).</li><li>(20) The target-side edge device updates to Duplex the pair state 725 of the pair information 411 for the volume pair indicated by the received RIO (DOK) (step 2208).</li><li>(21) The log entry creation/reflection program 406 creates, in the log storage area 413, a log entry (DOK) having the received RIO (DOK) (step 2209).</li><li>(22) The log entry transfer program 407 determines the IP address of the core device or edge device which is to be the transfer destination of the log entry 211 (DOK) (step 2210).</li><li>(23) The log entry transfer program 407 sends the log entry 211 created in step 2209 to the IP address determined in step 2210 (step 2211).</li><li>(24) The log entry creation/reflection program 406 deletes from the log storage area 413 the log entry (DOK) created in step 2209 and the log entry (Duplex transition) for the same pair as this log entry (DOK) (step 2112).</li></ul>
By means of the above aspect, remote copy processing can be executed by relaying data from the source external storage to the target external storage using edge devices and core devices within the RCN, without the source external storage or target external storage being made aware of the existence of edge devices or core devices, but as if recognizing that remote copy processing is being executed directly between the storage devices.
Next, a modified example of the above aspect is explained.
<figref idref="f0002">Fig. 2</figref> shows an example of an information processing system of the modified example.
Differences with the first embodiment are the fact that the WWN of the virtual storage 106 differs from the WWN of the external storage 122, and the fact that the WWN of the virtual storage 107 differs from the WWN of the external storage 112.
The RCN configuration program 502 of the management server 103, in addition to the operations in the above aspect, also determines the WWNs of the virtual storage 106 and the virtual storage 107. The determination may be performed within this program, or the values may be determined by receiving information from the edge device 104 or the edge device 105.
The RCN configuration interface program 501, in addition to the operations in the above aspect, also sends the WWN of the virtual storage 106 determined by the RCN configuration program 502 to the host 111 and the WWN of the virtual storage 107 determined by the RCN configuration program 502 to the host 121. Hence, in this modified example, as the information to identify the source volume 113 and virtual volume 108, the WWN of the source external storage and LUN of the source volume, and the WWN of the virtual storage 106 and LUN of the virtual volume 108 (the LUN of the virtual volume 108 is taken to be the same as the LUN of the target volume 123; however, this invention is not limited to the present example) are used, when the host 111 sends a SCSI command for the volume pair of the source volume 113 and target volume 123.
The virtual storage provision program 403 of the edge device, in addition to the operations in the above aspect, also performs the following conversions using the virtual storage information 404 when a RIO is transmitted or received. <ol id="ol0014" compact="compact" ol-style=""><li>(A) When the source-side edge device 104 receives an FC frame, the WWN obtained from the transfer destination PortID 1412 of the FC frame 220 is changed from the WWN of the source-side virtual storage 106 to the WWN of the target-side external storage 122.</li><li>(B) When the target-side edge device 105 receives an FC frame, the WWN obtained from the transfer destination PortID 1412 of the FC frame 220 is changed from the WWN of the target-side virtual storage 107 to the WWN of the source-side external storage 112.</li><li>(C) When the source-side edge device 104 sends an FC frame, the target storage WWN of the log entry 211 is converted to the source virtual storage WWN, and after conversion the PortID calculated from the source virtual storage WWN is taken to be the transfer source PortID of the FC frame.</li><li>(D) When the target-side edge device 105 sends an FC frame, the source storage WWN of the log entry 211 is converted to the target virtual storage WWN, and the PortID calculated from the target virtual storage WWN after conversion is taken to be the transfer source PortID of the FC frame.</li></ol>
As another modified example, connection of the external storage and edge device can be performed using an IP network. In this case, the FC interface 314 is an interface which can be connected with the IP network, and the FC protocol stack 401 becomes the same as the IP protocol stack 410. At this time, a MAC address or IP address is used in place of the WWN in the following information. <ol id="ol0015" compact="compact" ol-style=""><li>(A) Storage connection information 503</li><li>(B) Virtual storage information 404</li><li>(C) Access control information 405</li><li>(D) Routing information 408</li><li>(E) Pair information 411</li><li>(F) Log entry 211</li></ol>
Further, processes in programs which had performed processing using WWNs perform processing using IP addresses or MAC addresses instead of WWNs.
Contents4
22 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| EP1357476A | Cites | European Patent Office (EPO) |
| WO9400816A | Cites | World Intellectual Property Organization (WIPO) |
| US5960216A | Cites | United States of America |
| US2003172316A1 | Cites | United States of America |
16 members in 5 offices
Priority claims4
| Document | Office | Kind | Date |
|---|---|---|---|
| 2003394921 | Japan | A | |
| 2003394921 | Japan | – | |
| 2003394921 | – | – | – |
| JP20030394921 | – | – | – |
Members16
| Document | Office | Kind | |
|---|---|---|---|
| US2005114730A1 | United States of America | A1 | |
| EP1536337A2 | European Patent Office (EPO) | A2 | |
| JP2005157712A | Japan | A | |
| CN1637714A | China | A | |
| EP1536337A3 | European Patent Office (EPO) | A3 | |
| US7055011B2 | United States of America | B2 | |
| US2006168146A1 | United States of America | A1 | |
| US7305531B2 | United States of America | B2 | |
| EP1536337B1This record | European Patent Office (EPO) | B1 | |
| US2008065848A1 | United States of America | A1 | |
| DE602004012220D1 | Germany | D1 | |
| CN100456256C | China | C | |
| DE602004012220T2 | Germany | T2 | |
| CN101426025A | China | A | |
| US7809909B2 | United States of America | B2 | |
| CN101426025B | China | B |
32 legal events, as 5 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Gb: european patent ceased through non-payment of renewal feeCeasedGBPC | GBPC | EP | |
| Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal feeWithdrawnR119 | R119 | DE | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Notification of lapseLapsedST | ST | FR | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Fr: translation filedET | ET | EP | |
| Corresponds to:REF | REF | EP | |
| European patents granted designating irelandGrantedFG4D | FG4D | IE | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Designation fees paidAKX | AKX | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1536337
- Publication, DOCDB
- 1536337
- Publication, EPODOC
- EP1536337
- Application
- 4012936
- Application, DOCDB
- 04012936
- Application, EPODOC
- EP20040012936
Titles3
- German
- Fernkopiernetzwerk
- English
- Remote copy network
- French
- Réseau de copie à distance
Classification
- CPC, 7
- H04L67/1097
- G06F11/2066
- G06F11/2069
- G06F11/2074
- G06F11/2076
- G06F11/2082
- H04L67/1095
- IPC, 5
- G06F11 20
- G06F13 10
- G06F3 06
- G06F12 00
- H04L29 08
Designated states4
- Contracting states, 4
- Germany
- France
- United Kingdom
- Ireland
