(57)【要約】【課題】  本発明は、リモートコピー方法及びストレージシステムに関し、順序性保証に対する要望、コピー元のシーケンシャルライト性能の問題及び転送効率の問題のうち少なくとも１つを解決することを目的とする。【解決手段】  第１の記憶装置内のデータをネットワークを介して第２の記憶装置内へコピーするリモートコピー方法において、第１の記憶装置内において第１の記録媒体のデータを第１の記録専用バッファに格納し、第１の記憶装置内において第１の記録専用バッファがフルになるか、或いは、データの格納から一定時間が経過すると第１の記録専用バッファ内のデータをまとめて第２の記憶装置へ送信し、第２の記憶装置内において受信したデータを第２の記録専用バッファに格納し、第２の記憶装置内においてデータの受信を完了すると第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開するように構成する。【選択図】  図２
2006260292.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶装置内のデータをネットワークを介して第２の記憶装置内へコピーするリモートコピー方法であって、
該第１の記憶装置内において、第１の記録媒体のデータを第１の記録専用バッファに格納し、
該第１の記憶装置内において、該第１の記録専用バッファがフルになるか、或いは、データの格納から一定時間が経過すると、該第１の記録専用バッファ内のデータをまとめて該第２の記憶装置へ送信し、
該第２の記憶装置内において、受信したデータを第２の記録専用バッファに格納し、
該第２の記憶装置内において、データの受信を完了すると、該第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開することを特徴とする、リモートコピー方法。
【請求項２】
第１の制御モジュールと、第１の記録媒体と第１の記録専用バッファを備えた第１の記憶装置と、
該第１の記憶装置とネットワークを介して接続可能であり、第２の制御モジュールと、第２の記録媒体と第２の記録専用バッファを備えた第２の記憶装置とを備え、
該第１の記憶装置内のデータを該ネットワークを介して該第２の記憶装置内へコピーするリモートコピーを行うストレージシステムであって、
該第１の制御モジュールは、第１の記録媒体のデータを第１の記録専用バッファに格納し、該第１の記録専用バッファがフルになるか、或いは、データの格納から一定時間が経過すると、該第１の記録専用バッファ内のデータをまとめて該第２の記憶装置へ送信し、
該第２の制御モジュールは、受信したデータを第２の記録専用バッファに格納し、データの受信を完了すると、該第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開することを特徴とする、ストレージシステム。
【請求項３】
該第１の制御モジュールは、該データの送信を複数の第１の記録専用バッファからなるバッファセットの単位で行い、該第２の制御モジュールは、該データの受信を複数の第２の記録専用バッファからなるバッファセットの単位で行い、コピーされるデータの順序性保証を行うことを特徴とする、請求項２記載のストレージシステム。
【請求項４】
該バッファセットは、夫々送信及び受信が絶え間なく行われるように複数設けられ、パイプラインで動作することを特徴とする、請求項３記載のストレージシステム。
【請求項５】
該第１の制御モジュールは、該第１の記録専用バッファ内のバッファインデックステーブルに該データのコピー処理に必要なコピー元とコピー先の情報を格納し、該第１の記録媒体の該情報で指定されるデータを該第１の記録専用バッファ内のバッファ本体に格納することにより、該第１の記録媒体のデータの該第１の記録専用バッファへの格納を行うことを特徴とする、請求項２〜４のいずれか１項記載のストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リモートコピー方法及びストレージシステムに係り、特に順序性保証のある非同期コピーを行うリモートコピー方法及びそのようなリモートコピー方法を採用するストレージシステムに関する。
【０００２】
ストレージシステムには通常キャッシュメモリが搭載されているが、このキャッシュメモリの実現方法としては、大きく分けて二つの方法がある。一つはキャッシュメモリを全てのコントローラモジュールで共有する方式であり、もう一つはコントローラモジュール毎にキャッシュメモリを分散して保持する方式である。本発明は、後者のアーキテクチャを採用したストレージシステムにおけるものである。
分散キャッシュメモリ型のストレージシステムは、論理ボリュームのデータのリード・ライト処理をコントローラモジュール毎に分散して実行できるため、ハードウエアの負荷が分散できスケーラビリティに優れるという特徴がある。ただし、コントローラモジュール間で連携が必要な処理では、コントローラモジュールの通信しなければならないため、制御が複雑になるというデメリットがある。
【背景技術】
【０００３】
１．１  リモートコピー順序性保証
データベースシステム等のストレージシステムは、ディスクドライブ等の記録媒体への書き込み順序を自ら制御することによって、例えばサーバのオペレーティングシステム（ＯＳ）がクラッシュする等してディスクへの書き込みが突然停止してしまうような状況が発生しても、データベース内のファイルを復元することができるリカバリ機能を備えている。リモートコピーを利用したデータベースのミラーリングでは、何らかの理由により突然コピー動作が停止しても、コピー先のディスクの状態はデータベースが突然書き込みを停止したのと同じ状態にあるため、ストレージシステムのリカバリ機能を使用してコピー先でデータベースのファイルを復元することができる。
【０００４】
一般的なストレージシステムでは、データベースのファイルはストレージシステムの性能や信頼性を向上するために、複数のディスクにデータを記録することが多く、これはデータベースのミラーリングを行う場合も同様である。従って、ストレージシステムのストレージのコピー機能には、全てのデータベースのファイルのコピーにおいて書き込み順序と同じ順序でコピー行うことが要求される。
【０００５】
同期コピーモードであれば、書き込みと同期してコピーが行われるため、上記要求は満たされる。しかし、遠隔地間でミラーリングを行う場合は、伝送路の遅延の影響を受ける同期コピーモードを使用することには問題があるので、遅延の影響を受けにくい非同期コピーモードを使用する必要がある。
【０００６】
しかし、従来のストレージシステムにおける非同期コピーモードは、1つのコピーセッションでしか順序性保証がされていなかった。このため、データベースのミラーリングを行うためには、転送が必要なデータベースのファイルの全てを無理やり１つのディスクに格納する必要があるという問題があった。そこで、複数のディスク間（コピーセッション間）で順序性保証を行ってコピーできるようにするという要望があった。
【０００７】
１．２  コピー元のシーケンシャルライト性能
他方、従来のストレージシステムでは、ホスト装置からのライトの単位でコピー先へデータ転送を行う。ここで問題となるのは、ホスト装置からのライト処理とコピー処理が排他的に行われる必要があるため、同期モードのような振る舞いをしてしまうことである。図１は、この場合のストレージシステムのライト処理及びコピー処理の概略を説明する図である。同図中、外側の太い実線はキャッシュメモリが管理する最小単位（例えば、６４ＫＢ）のメモリを示し、内側の細い実線は６４ＫＢの領域を分割して６４ＫＢ以下のサイズでライトアクセスされていることを示す。縦向きの矢印はライト処理を表現し、横向きの矢印はコピー処理を表現している。
【０００８】
シーケンシャルライト性能に問題が発生しない状態では、図１に示すようにライト処理（１），（２）、即ち、ライト（１）と応答（２）は、即時に完了可能である。コピー処理（３），（５）のコピー（３）は、ライト処理（１），（２）を完了した後に行われる。このコピー処理（３），（５）のコピー（３）の直後にライト処理（４），（６）のライト（４）が発生すると、ライト処理（４），（６）の応答（６）は、先行するライト処理（１），（２）に対するコピー処理（３），（５）が行われているため、排他待ちをする必要がある。このため、ライト処理（４），（６）の応答（６）は、コピー処理（３），（５）の応答（５）が来るまで待たされる。結果的には、ライト処理中にコピー処理の時間が加算されるため、シーケンシャルライト性能は最悪の場合には同期コピーと同じ性能になってしまう。
【０００９】
尚、このシーケンシャルライト性能のみを問題とするのであれば、例えばコピー処理（３），（５）のコピー（３）をライト処理（４），（６）の後に行うといったコピー処理を意図的に遅らせる対処方法等が考えられるが、例えばライト処理（１），（２）のライト（１）と同じ領域をアクセスするライト処理に対応しようとすると、基本的には書き込まれたデータを別の場所へ退避させない限り排他制御を行わないようにすることは不可能である。
【００１０】
１．３  転送効率
従来のストレージシステムでは、ライト処理の単位でコピー処理を行っているため、例えば８ＫＢのライト処理であれば８ＫＢでコピー処理が行われる。このようなコピー処理は、伝送路のレイテンシが小さい場合には問題とならないが、例えば日本とイギリス間のように片道で約３００ｍｓｅｃの遅延がある伝送路を用いる場合、８ＫＢの転送に約１．２ｓｅｃかかることになる。これは、スループットにすると、約６．５ＫＢ／ｓｅｃに相当する。従って、ライト処理の単位でコピー処理を行うストレージシステムでは、転送スループットで例えば１００ＭＢ／ｓｅｃを実現しようとすると、１６，０００個程度のコピー処理を管理しなくてはならなくなり、ストレージシステム内の資源管理上破綻を来す。このような問題は、現在のストレージシステムの使用環境ではまだ問題になっていないが、今後長距離の接続をサポートしようとした場合には難しくなると予想される。
【特許文献１】特開２００３−１６７６８４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上記の如く、従来のストレージシステムでは、複数のディスク間（コピーセッション間）で順序性保証を行ってコピーできるようにするという順序性保証に対する要望があった。
【００１２】
しかしながら、分散キャッシュメモリ型のストレージシステムにおいて、この要望を満たそうとすると、順序性保証を行うためにライト処理毎にコントローラモジュール間で通信を行う必要があるため、オーバヘッドが大きくなってしまうという問題があった。又、特定のコントローラモジュールで順序を管理するため、そのコントローラモジュールに負荷が集中してしまうという問題もあった。
【００１３】
又、従来のストレージシステムでは、ホスト装置からのライトの単位でコピー先へデータ転送を行うため、結果的には、ライト処理中にコピー処理の時間が加算され、シーケンシャルライト性能が最悪の場合には同期コピーと同じ性能になってしまうというコピー元のシーケンシャルライト性能の問題があった。
【００１４】
更に、ライト処理の単位でコピー処理を行うストレージシステムでは、転送スループットで例えば１００ＭＢ／ｓｅｃを実現しようとすると、１６，０００個程度のコピー処理を管理しなくてはならなくなり、ストレージシステム内の資源管理上破綻を来し、今後長距離の接続をサポートしようとした場合に難しくなるという転送効率の問題があった。
【００１５】
そこで、本発明は、上記の問題を解決するリモートコピー方法及びストレージシステムを提供することを概括的目的とする。
【００１６】
本発明のより具体的な目的は、上記順序性保証に対する要望（分散キャッシュメモリ型のストレージシステムのスケーラビリティの優位性を維持しつつ、順序性保証のあるリモートコピーを行う）、コピー元のシーケンシャルライト性能の問題及び転送効率の問題のうち少なくとも１つを解決可能なリモートコピー方法及びストレージシステムを提供することにある。
【課題を解決するための手段】
【００１７】
上記の課題は、第１の記憶装置内のデータをネットワークを介して第２の記憶装置内へコピーするリモートコピー方法であって、該第１の記憶装置内において、第１の記録媒体のデータを第１の記録専用バッファに格納し、該第１の記憶装置内において、該第１の記録専用バッファがフルになるか、或いは、データの格納から一定時間が経過すると、該第１の記録専用バッファ内のデータをまとめて該第２の記憶装置へ送信し、該第２の記憶装置内において、受信したデータを第２の記録専用バッファに格納し、該第２の記憶装置内において、データの受信を完了すると、該第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開することを特徴とするリモートコピー方法によって達成できる。
【００１８】
上記の課題は、第１の制御モジュールと、第１の記録媒体と第１の記録専用バッファを備えた第１の記憶装置と、該第１の記憶装置とネットワークを介して接続可能であり、第２の制御モジュールと、第２の記録媒体と第２の記録専用バッファを備えた第２の記憶装置とを備え、該第１の記憶装置内のデータを該ネットワークを介して該第２の記憶装置内へコピーするリモートコピーを行うストレージシステムであって、該第１の制御モジュールは、第１の記録媒体のデータを第１の記録専用バッファに格納し、該第１の記録専用バッファがフルになるか、或いは、データの格納から一定時間が経過すると、該第１の記録専用バッファ内のデータをまとめて該第２の記憶装置へ送信し、該第２の制御モジュールは、受信したデータを第２の記録専用バッファに格納し、データの受信を完了すると、該第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開することを特徴とするストレージシステムによっても達成できる。
【発明の効果】
【００１９】
本発明によれば、上記順序性保証に対する要望（分散キャッシュメモリ型のストレージシステムのスケーラビリティの優位性を維持しつつ、順序性保証のあるリモートコピーを行う）、コピー元のシーケンシャルライト性能の問題及び転送効率の問題のうち少なくとも１つを解決可能なリモートコピー方法及びストレージシステムを実現することができる。
【発明を実施するための最良の形態】
【００２０】
本発明では、分散キャッシュメモリ型のストレージシステムのスケーラビリティの優位性を維持しつつ、順序性保証のあるリモートコピー行うために、以下のようなリモートコピーを行う。
【００２１】
先ず、各コントローラモジュール毎にコピーするデータを格納するバッファを用意する。ライトされたデータを直接バッファに格納せずに、どの領域にライトされたかだけを示す情報を保持しておく。ライトが完了した後に任意のタイミングでディスク等の記録媒体からデータを読み出してバッファへ格納する。いずれかのコントローラモジュールでバッファがフルになるか、最初の格納から一定時間が経過した場合に、全てのコントローラモジュールへの格納を同時に一旦停止して、コピーするデータの固まりを確定させる。データの固まりの確定後に、全てのコントローラモジュールでバッファを切り替えて夫々新しいバッファへの格納処理を継続する。確定されたデータの固まりは、コピー先へ転送される。コピー先では、コピー元で作成された前のデータの固まりを全て受信した後にデータの展開を行う。この処理は、コピー処理が継続不可能となるような致命的な異常以外では中断されることがないようにしておく。このような処理を行うことにより、全てのコントローラモジュールへの格納が同時に停止される時点で、データの順序性保証が実現されることになる。又、ライト毎にコントローラモジュール間の通信を行うことなく、順序性保証されたリモートコピーを達成することができる。
【００２２】
以下に、本発明になるリモートコピー方法及びストレージシステムの各実施例を、図２以降と共に説明する。
【実施例】
【００２３】
先ず、リモートコピー方法及びストレージシステムの一実施例で採用する（２．１）まとめ送り方式、（２．２）バッファセット制御、（２．３）バッファセットオーバラップ処理、（２．４）遠隔地対応シーケンス、（２．５）記録専用バッファ、（２．６）ライト・格納・切出処理及び（２．７）バッファ切替について説明する。
【００２４】
２．１  まとめ送り方式
図２は、まとめ送り方式を説明する図である。
【００２５】
本発明になるストレージシステム１０は、データコンシステンシを保証するコンシステンシモードでは、コピーデータを図２に示すコピー元の第１の記憶装置１−１からコピー先の第２の記憶装置１−２へ転送する際に記録専用バッファ１１を使用する。つまり、コピー元からコピー先へコピーデータを逐次転送するのではなく、一旦コピー元のディスク等の記録媒体１２から記録専用バッファ１１に格納しておく。
【００２６】
コピー元では、記録専用バッファ１１がフルになるか、コピーデータの格納が一定時間経過した後に、まとめてコピー先の記録専用バッファ１１に転送する。コピー先では、受信したコピーデータを即時にコピー先の記録媒体１２の領域へ反映させるのではなく、記録専用バッファ１１でコピーデータの受信が完了するのを待ち合わせる。このように、コピー先では、全てのコピーデータを記録専用バッファ１１に格納した後にまとめてコピー先の記録媒体１２へ展開する。コピー先でのコピーデータの展開が完了すると、コピー元へ展開完了が通知され、コピー先のコピーデータが開放される。尚、一連の処理を絶え間なく行えるように、記録専用バッファ１１は複数存在し、パイプラインで動作する。
【００２７】
記録専用バッファ１１に対してライトされたコピーデータを即時に記録専用バッファ１１に実際に格納すると、格納処理と次のライト処理が干渉するため、ライト処理の性能が低下する。このため、本発明では、ライト処理と格納処理を完全に切り離し、干渉が発生しないようにする。
【００２８】
ライト処理では、格納するべきコピーデータの情報を記録専用バッファ１１内のバッファインデックステーブルに格納するだけで、コピー処理は一切行わない。格納処理は、このバッファインデックステーブルを参照してコピーデータを実際に記録専用バッファ１１に格納する。
【００２９】
２．２  バッファセット制御
図３は、バッファセット制御を説明する図である。
【００３０】
図３に示す記録専用バッファ１１には、記憶装置１−１，１−２内に設けられているキャッシュメモリの一部を使用可能である。後述するように、本発明を適用可能な記憶装置１−１，１−２には複数の制御モジュールが設けられており、キャッシュメモリは各制御モジュール内に設けられるようなアーキテクチャになっている。もし、１つの制御モジュールのみで記録専用バッファ１１を獲得すると、その制御モジュールの通常の入出力（Ｉ／Ｏ）処理のために使用できるキャッシュメモリのメモリ容量が小さくなってしまう。そこで、ハードウエアを効率的に使用するために、記録専用バッファ１１を制御モジュール毎に分散して持つようにする。
【００３１】
このような分散した記録専用バッファ１１を使用して順序性保証のあるまとめ送り方式のコピーを行うためには、制御モジュールＣＭ１，ＣＭ２，．．．毎に分散した個別の記録専用バッファ１１をバッファセットＢ１，Ｂ２，．．．として一括で制御する仕組みを用いる。記録専用バッファ１１へのコピーデータの格納及び記録専用バッファ１１からのコピーデータの展開をバッファセットＢ１，Ｂ２，．．．の単位で一括で行うことで、ストレージシステム全体の順序性が保証される。
【００３２】
バッファセットＢ１，Ｂ２，．．．は、次の表１のような状態を持つ。
【００３３】
【表１】
2006260292.tif 000003
各バッファセットＢ１，Ｂ２，．．．は、最初にコピー元で定義され、セット格納状態となる。各バッファセットＢ１，Ｂ２，．．．は、各制御モジュールＣＭ１，ＣＭ２，．．．で格納状態の記録専用バッファ１１を持っている。制御モジュールＣＭ１，ＣＭ２，．．．のいずれかにおいて記録専用バッファ１１がフルになるか、或いは、コピーデータの格納が一定時間経過した場合は、バッファセット制御により新しいバッファセットを作成し、セット格納状態のバッファセットに切替る。このバッファセットの切替は、順序性保証と密接に関係があるため、Ｉ／Ｏ処理を停止して行う必要がある。セット切出状態のバッファセットは、バッファ切替時に未格納であったコピーデータが全て格納済みになると、セット転送状態に遷移する。セット転送状態のバッファセットは、バッファセットの各記録専用バッファ１１からのコピーデータの転送を指示し、更に、コピー先に対してバッファセットの通知を行う。
【００３４】
コピー先では、バッファセットの通知を受けると、バッファセットがセット受信状態に遷移する。各制御モジュールＣＭ１，ＣＭ２，．．．の記録専用バッファ１１でコピーデータの受信が完了すると、バッファセットはセット受信完了状態に遷移する。セット受信完了状態では、各記録専用バッファ１１に対してコピーデータの展開を指示する。全ての記録専用バッファ１１からのコピーデータの展開が完了すると、バッファセットはセット展開完了状態に遷移する。セット展開完了状態のバッファセットは、コピー元に対してバッファセット開放通知をする。コピー元のバッファセットがセット完了状態になると、全てのバッファセットの処理が完了する。
【００３５】
２．３  バッファセットオーバラップ処理
図４は、バッファセットオーバラップ処理を説明する図である。同図中、格納処理はコピー元でコピーデータを記録専用バッファ１１へ格納する処理を示し、切出処理はコピー元で記録専用バッファ１１に格納されたコピーデータを切出す処理を示し、送受信処理はコピー元の記録専用バッファ１１から切出したコピーデータを送信する処理及びコピー先の記録専用バッファ１１でコピー元から送信されてくるコピーデータを受信する処理を示し、展開処理はコピー先で記録専用バッファ１１で受信されたコピーデータを記録媒体１２へ展開する処理を示す。
【００３６】
バッファセットＢ１，Ｂ２，．．．の処理は、重ね合わせ（オーバラップ）させることで効率的にコピーデータを転送することができる。特に送受信処理は、ネットワークを介して行われるため、図４中破線Ｉで示すように、オーバラップ処理を可能とする。格納処理及び切出処理は、図４中一点鎖線ＩＩで示すように、バッファセットの切替時には２つのバッファセットが協調して動作する必要がある。又、展開処理は、図４中二点鎖線ＩＩＩで示すように、順序性保証のためにオーバラップさせることはできない。
【００３７】
送信処理は、２つまでのバッファセットに対して同時に行うようにする。これにより、より古いバッファセットのコピーデータは早く送信するという状態を守りつつ、絶え間なく送信処理を行うことでネットワークの帯域を有効用できる。
【００３８】
２．４  遠隔地対応シーケンス
図５は、遠隔地対応シーケンスを説明する図である。
【００３９】
コピー元とコピー先の間のパスでの遅延時間が大きい場合には、コピー元とコピー先のハンドシェイクが多いと往復の通信に時間がかかり、ストレージシステムの性能に悪影響を及ぼす可能性があるので、待ち合わせを極力減らすシーケンスになるようにする。
【００４０】
図５に示すように、最初に、パス開通時にコピー元から必要な記録専用バッファ１１の個数と希望するバッファサイズを要求するバッファリクエストをコピー先に送信する（ステップＳＴ１）。コピー先では、バッファリクエストにより要求された記録専用バッファ１１の個数を用意し、用意した記録専用バッファ１１のバッファＩＤとバッファサイズを空きバッファ通知によりコピー元に通知する（ステップＳＴ２）。これにより、コピー元は、空きバッファ通知に基づいて記録専用バッファ１１を割り当てられる。コピー先では、要求された記録専用バッファ１１の個数を用意できない場合には、コピー元へ空きバッファ通知に代わるエラー通知をする（ステップＳＴ２）。バッファサイズについては、コピー先で用意できるだけを空きバッファ通知により通知すれば良い。コピー先は、要求された記録専用バッファ１１の個数を用意できる場合には、この後、任意のタイミングでコピーデータがコピー元から転送されてくるため（ステップＳＴ３）、コピー先では記録専用バッファ１１が受信可能に準備できた時点でその旨をコピー元に通知する（ステップＳＴ４−１，ＳＴ４−２，．．．）。記録専用バッファ１１は、バッファＩＤにより相手装置から識別される。制御モジュールのデグレード等により記録専用バッファ１１が使用できなくなったら、記録専用バッファ１１を再構成してコピー元へ通知すれば良いので、コピー元は以前に通知された記録専用バッファ１１の情報を保持する必要はない。
【００４１】
図５の場合、コピー元では、データ送信処理ＤＴＰ１，ＤＴＰ２，．．．が例えば最大８回まで（データ送信処理ＤＴＰ８まで）コピー先からの応答を待たずに行われる。コピー先では、各データ送信処理ＤＴＰ１，ＤＴＰ２，．．．に対して、全コピーデータが記録専用バッファ１１に格納されるまで待ち合わせ、その後に対応するデータ展開処理ＤＤＰ１，ＤＤＰ２，．．．を行って空きバッファ通知をコピー元に対して行う（ステップＳＴ４−１，ＳＴ４−２，．．．）。
【００４２】
２．５  記録専用バッファ
図６及び図７は、記録専用バッファ１１を説明する図である。
【００４３】
記録専用バッファ１１は、図６に示すように、コピーデータを格納するバッファ本体１１１と、各コピーデータについてコピー元とコピー先の情報を格納するバッファインデックステーブル１１２とから構成される。バッファ本体１１１は、例えば８ＫＢ固定単位でコピーデータを格納できるようになっており、バッファインデックステーブル１１２は、８ＫＢのコピーデータのコピー元とコピー先のＬＵやＬＢＡ（Logical Unit, Logical Block Address）、サイズ、コピーセッションの番号等の論理アドレス情報及びコピー制御情報を格納している。
【００４４】
記録専用バッファ１１からの送信時には、バッファ本体１１１とバッファインデックステーブル１１２の双方の情報を同時に送ることで、コピー先で展開可能なコピーデータとなる。
【００４５】
図７に示すように、バッファインデックステーブル１１２は、同じ領域の論理アドレス情報を別々に保持しないようにする。又、バッファインデックステーブル１１２に論理アドレス情報を格納する場合には、ハッシュテーブル等により論理アドレス情報が格納済みであるか否かを判断し、未格納の場合には新しい領域に格納する。論理アドレス情報が格納済みの場合には、ＭＳ１，ＭＳ２で示すように、格納されている領域に再度格納する。論理アドレス情報が格納済みの領域と重なる領域に論理アドレス情報を格納しようとする場合には、ＭＳ３で示すように、上記８ＫＢ毎に論理アドレス情報を分割して別々に格納する。これにより、コピー先でのコピーデータの展開時に順序を意識することなく、コピーデータを展開することができる。
【００４６】
２．６  ライト・格納・切出処理
図８及び図９は、ライト処理、格納処理及び切出処理を説明する図である。
【００４７】
ライト処理は、図８に実線の矢印で示すように、通常はサーバからのコピー要求に対して、バッファインデックステーブル１１２にコピー処理に必要な論理アドレス情報及びコピー制御情報を格納するだけでサーバに対して応答を返す。このため、データをコピーするために必要な処理によるコピー元の記憶装置１−１への負荷が小さくて済む。ただし、前のバッファセットの未格納の領域に対してライト処理を行ってしまうとコピーデータが破壊されてしまうため、切出処理が行われている時には前のバッファセットの未格納領域とライト処理の領域の重なりが無いか否かを判定し、重なっている場合には格納処理を待ち合わせる。
【００４８】
格納処理は、図８に一点鎖線の矢印で示すように、ライト処理とは全く非同期にバッファインデックステーブル１１２を参照してコピーデータの格納を行う。シーケンシャルライト処理と干渉しないように、ライト処理を行った直後に格納処理が行われないようにする。
【００４９】
切出処理は、未格納のコピーデータを順次格納するがライト処理を待たせていることを検出したら、格納を優先的に行うようにする。
【００５０】
バッファセットの切替後に、前のバッファセットの未格納領域への更新があると、図９に実線の矢印で示すように、切替後のバッファセットのバッファインデックステーブル１１２に格納処理に必要な論理アドレス情報及びコピー制御情報を格納してから、一点鎖線で示すように、前のバッファセットに対するライト処理を行い、その他の格納領域については切替後のバッファセットに対して処理を行う。
【００５１】
２．７  バッファ切替
図１０は、バッファ切替処理を説明する図である。
【００５２】
記録専用バッファ１１の切替は、ライト処理の順序を保持して行う必要があるため、一旦Ｉ／Ｏ処理を停止する必要があるが、本発明が適用可能な記憶装置では複数の制御モジュールでＩ／Ｏ処理を処理するため、全制御モジュールで同期してＩ／Ｏ処理の停止を行って、記録専用バッファ１１の切替を行う。
【００５３】
図１０に示すように、最初に、マスタ制御モジュールから全制御モジュールに対してライト処理停止要求を行う（ステップＳＴ１１）。ライト処理停止要求を受けた各担当制御モジュールでは、記録専用バッファ１１への格納処理で新たな格納が行えないように格納停止（又は、ロック）を行いマスタ制御モジュールに応答を返す（ステップＳＴ１２）。次に、マスタ制御モジュールで全制御モジュールからのライト停止の応答を待ち合わせ、その後に全制御モジュールに対してバッファ切替要求を出す（ステップＳＴ１３）。バッファ切替要求を受けた各制御モジュールでは、上記格納停止（又は、ロック）の解除と記録専用バッファ１１の切替を行い、ライト処理再開が可能である旨の通知をマスタ制御モジュールに対して行う（ステップＳＴ１４）。
【００５４】
尚、記録専用バッファ１１の切替タイミングは、コピー元のいずれかの記録専用バッファ１１がフルになった場合か、或いは、一定時間記録専用バッファ１１が切り換わらなかった場合でも良い。
【００５５】
切替処理は、切替先の記録専用バッファ１１が無い場合には、リトライ処理を行っても良い。この場合、リトライ処理の間はコピー元のライト処理が待たされることになるが、記録専用バッファ１１が枯渇したことによるものであり、負荷調整の一貫と考えられる。コピー先から記録専用バッファ１１の空き通知が来た場合には、コピー元では即時に記録専用バッファ１１を切替る。これにより、待たされていたＩ／Ｏ処理は動作可能となる。例えば、記録専用バッファ１１の切替処理が失敗してから一定時間（例えば、１０秒）後に再度切替処理を試みて切替が行えない場合には、記録専用バッファ１１の枯渇による自動停止（HALT）機能を動作させるようにしても良い。
【００５６】
２．８  ストレージシステムの構成
図１１は、本発明になるストレージシステムの一実施例の要部を示すブロック図である。図１１に示すストレージシステム１０は、互いに接続されたサーバ２１−１と記憶装置１−１と、互いに接続されたサーバ２１−２と記憶装置１−２と、記憶装置１−１，１−２を接続するＳＡＮ（Storage Area Network）等のネットワーク２３からなる。説明の便宜上、サーバ２１−１，２１−２は同じ構成を有する汎用コンピュータからなり、記憶装置１−１，１−２は同じＲＡＩＤ（Redundant Array of Independent Disks）アレイ構成を有するものとする。
【００５７】
各記憶装置１−１，１−２は、対応するサーバ２１−１，２１−２との通信に使用される複数の通信アダプタ（ＣＡ：Communication  Adapter）１３、ネットワーク２３を介したリモートコピーに使用される複数のリモートアダプタ（ＲＡ：Remote  Adapter）１４、各記憶装置１−１，１−２の全体の動作を制御するマスタ制御モジュール（ＣＭ−Ｍ：Controller  Module  Master）１６−１、各記憶装置１−１，１−２の全体の動作をマスタ制御モジュール１６−１に対して従なる関係で制御するスレーブ制御モジュール（ＣＭ−Ｓ：Controller  Module−Slave）１６−２、ルータ（ＲＴ：Router）１７、記憶媒体１２との通信を制御する複数のデバイスアダプタ（ＤＡ：Device  Adapter）１８及び複数の記録媒体１２を含む。本実施例では、記録媒体１２は磁気ディスクドライブ（Disk）からなる。各制御モジュール１６−１，１６−２は、キャッシュメモリ１６０を備えている。尚、各記憶装置１−１，１−２内の制御モジュールの数は２つに限定されるものではない。
【００５８】
説明の便宜上、リモートコピーでは、サーバ２１−１からコピー元の記憶装置１−１に書き込まれたデータが、ネットワーク２３を介してサーバ２１−２の制御下にあるコピー先の記憶装置１−２に書き込まれるものとする。
【００５９】
２．９  ストレージシステムの動作
図１２は、リモートコピー時のデータの流れを示すブロック図である。同図中、図１１と同一部分には同一符号を付し、その説明は省略する。又、図１３及び図１４は、リモートコピーの手順を説明するフローチャートである。
【００６０】
図１２に示すように、各制御モジュール１６−１，１６−２内のキャッシュメモリ１６０は、バッファ本体（ＢＵＦ）１１１とバッファインデックステーブル（ＢＩＴ：Buffer Index Table）１１２とからなる記録専用バッファ１１を含む。又、マスタ制御モジュール１６−１内のキャッシュメモリ１６０は、バッファセット制御テーブル（ＢＳＣＴ：Buffer Set Control Table）１６１を更に含む。バッファセット制御テーブル１６１は、コピー元とコピー先のコピー用の記録専用バッファ１１の組合せをバッファセットとして格納して管理する。図１２に示す例では、コピー元（ＳＲＣ：Source）のバッファＩＤ「４００，６００」がコピー先（ＤＳＴ：Destination）のバッファＩＤ「５００，７００」と関連付けられてバッファセットとしてバッファセット制御テーブル１６１に格納され管理されている。記録専用バッファ１１のバッファ本体１１１は、コピーするデータ（コピーデータ）を格納する。記録専用バッファ１１のバッファインデックステーブル１１２は、バッファ本体１１１のコピーデータのインデックス情報（ＬＵＮ，ＬＢＡ等の論理アドレス情報及びコピー制御情報）を格納する。
【００６１】
図１３及び図１４において、コピー元の記憶装置２−１の処理はステップＳＳ１〜ＳＳ１３で示し、コピー先の記憶装置２−２の処理はステップＳＤ１〜ＳＤ１１で示す。
【００６２】
図１３において、コピー元及びコピー先では、記録専用バッファ１１のバッファセットの初期構成を決定する処理を行う（ステップＳＳ１，ＳＤ１）。コピー元では、記録専用バッファ１１を要求するバッファリクエストを行い（ステップＳＳ２）、コピー先では、バッファリクエストが受信されたか否かを判定する（ステップＳＤ２）。コピー先でバッファリクエストが受信されると（ステップＳＤ２でＹＥＳ）、空きバッファ通知を行う（ステップＳＤ３）。
【００６３】
コピー元では、空きバッファ通知を受信すると、バッファセットの初期作成が可能であるか否かを判定し（ステップＳＳ３）、判定結果がＹＥＳであると、バッファセットの初期作成を行い（ステップＳＳ４）、バッファセットに対する格納処理を行う（ステップＳＳ５）。コピー元では、バッファセットの切替が必要であるか否かを判定し（ステップＳＳ６）、判定結果がＮＯであると処理はステップＳＳ５へ戻る。コピー元では、ステップＳＳ６の判定結果がＹＥＳであると、バッファセットの切替処理が可能であるか否かを判定し（ステップＳＳ７）、判定結果がＹＥＳであると、バッファセットの切替処理を行う（ステップＳＳ８）。尚、切替ったバッファセットに対する処理の流れは、図１３中破線で示す。コピー元では、更に、バッファセットに対する格納処理が全て完了したか否かを判定し（ステップＳＳ９）、判定結果がＹＥＳであると、バッファセットに対するコピーデータの送信処理を行う（ステップＳＳ１０）。
【００６４】
コピー先では、送信されてくるバッファセットのコピーデータに対する受信処理を行い（ステップＳＤ４）、バッファセットの全てのコピーデータを受信したか否かを判定する（ステップＳＤ５）。コピー先では、ステップＳＤ５の判定結果がＹＥＳであると、図１４に示すように、バッファセットのコピーデータに対する展開処理が可能であるか否かを判定する（ステップＳＤ６）。コピー先では、ステップＳＤ６の判定結果がＹＥＳであると、バッファデットのコピーデータに対する展開処理を行い（ステップＳＤ７）、バッファセットのコピーデータに対する展開処理が完了した旨を示す完了通知をコピー元へ行う（ステップＳＤ８）。
【００６５】
コピー元では、コピー先からの完了通知を受信したか否かを判定し（ステップＳＳ１１）、判定結果がＹＥＳであると、バッファセットの開放処理を行い（ステップＳＳ１２）、バッファセットの再構成処理を行い（ステップＳＳ１３）、処理は図１３に示すステップＳＳ７へ戻りバッファセットの切替待ち状態となる。
【００６６】
他方、コピー先では、上記完了通知を行った後、バッファセットの開放処理を行い（ステップＳＤ９）、バッファセットの再構成処理を行う（ステップＳＤ１０）。
又、コピー先では、コピー元に空きバッファ通知を行い（ステップＳＤ１１）、処理は図１３に示すステップＳＤ４へ戻りバッファセットのコピーデータ受信待ち状態となる。
【００６７】
これにより、図１２中破線の矢印で示すようにコピー元の記憶装置１−１のマスタ制御モジュール１６−１内のバッファセット制御テーブル１６１内のバッファＩＤ「５００，７００」がコピー先の記憶装置１−２のマスタ制御モジュール１６−１内のバッファセット制御テーブル１６１にコピーされ、一点鎖線の矢印で示すようにコピー元の記憶装置１−１のマスタ制御モジュール１６−１内のバッファ本体１１１及びバッファインデックステーブル１１２の内容及びスレーブ制御モジュール１６−２内のバッファ本体１１１及びバッファインデックステーブル１１２の内容が、夫々コピー先の記憶装置１−２のマスタ制御モジュール１６−１内のバッファ本体１１１及びバッファインデックステーブル１１２及びスレーブ制御モジュール１６−２内のバッファ本体１１１及びバッファインデックステーブル１１２にコピーされる。
【００６８】
図１５は、バッファ切替を説明する図であり、図１６は、バッファ切替の手順を説明するフローチャートである。
【００６９】
図１５に示すように、コピー元の記憶装置１−１内のマスタ制御モジュール１６−１ではバッファＩＤ「４００」への格納処理が行われ、スレーブ制御モジュール１６−２ではバッファＩＤ「６００」への格納処理が行われているとする。この場合、マスタ制御モジュール１６−１に対するバッファＩＤ「４００」への格納停止指示（又は、停止要求）とスレーブ制御モジュール１６−２に対するバッファＩＤ「６００」への格納停止指示（又は、停止要求）があると、バッファＩＤ「４００」，「６００」への格納処理の停止が完了するまで待ち合わせを行うことで、図１５中太い破線で示すように順序保証された格納処理を保証するポイントが決定する。マスタ制御モジュール１６−１ではバッファＩＤ「４００」からバッファＩＤ「４０１」への切替指示（又は、切替要求）に応答してバッファＩＤ「４０１」への格納処理が行われ、スレーブ制御モジュール１６−２ではバッファＩＤ「６００」からバッファＩＤ「６０１」への切替指示（又は、切替要求）に応答してバッファＩＤ「６０１」への格納処理が行われる。
【００７０】
図１６において、コピー元の記憶装置１−１内のマスタ制御モジュール１６−１の処理はステップＳ１０１〜Ｓ１１１で示し、コピー元の記憶装置１−１内のスレーブ制御モジュール１６−２の処理はステップＳ２０１〜Ｓ２０６で示す。
【００７１】
図１６において、マスタ制御モジュール１６−１ではバッファＩＤ「４００」への格納処理が行われ（ステップＳ１０１）、スレーブ制御モジュール１６−２ではバッファＩＤ「６００」への格納処理が行われる（ステップＳ２０１）。マスタ制御モジュール１６−１では、バッファ切替が実行されているか否かを判定し（ステップＳ１０２）、判定結果がＹＥＳであると、格納停止指示を発行し、スレーブ制御モジュール１６−２へも供給する（ステップＳ１０３）。
【００７２】
マスタ制御モジュール１６−１では、格納停止指示がきているか否かを判定し（ステップＳ１０４）、判定結果がＹＥＳであると、格納中の処理があるか否かを判定し（ステップＳ１０５）、判定結果がＮＯであると、格納停止処理を行う（ステップＳ１０６）。同様に、スレーブ制御モジュール１６−２では、格納停止指示がきているか否かを判定し（ステップＳ２０２）、判定結果がＹＥＳであると、格納中の処理があるか否かを判定し（ステップＳ２０３）、判定結果がＮＯであると、格納停止処理を行う（ステップＳ２０４）。
【００７３】
マスタ制御モジュール１６−１では、全ての格納処理が格納停止状態となったか否かを判定し（ステップＳ１０７）、判定結果がＹＥＳであると、切替指示を発行し、スレーブ制御モジュール１６−２へも供給する（ステップＳ１０８）。
【００７４】
マスタ制御モジュール１６−１では、切替指示に応答して切替処理を行い切替指示の応答を通知し（ステップＳ１０９）、バッファＩＤ「４０１」への格納処理が行われる（ステップＳ１１０）。他方、スレーブ制御モジュール１６−２では、切替指示に応答して切替処理を行いマスタ制御モジュール１６−１へ切替指示の応答を通知し（ステップＳ２０５）、バッファＩＤ「６０１」への格納処理が行われる（ステップＳ２０６）、スレーブ制御モジュール１６−２の処理は終了する。マスタ制御モジュール１６−１では、マスタ及びスレーブ制御モジュール１６−１，１６−２からの切替指示の応答を受け取ったか否かを判定し（ステップＳ１１１）、判定結果がＹＥＳになるとマスタ制御モジュール１６−１の処理は終了する。
【００７５】
図１７は、バッファセット制御を説明する図であり、図１８は、バッファセット制御の手順を説明するフローチャートである。
【００７６】
図１７に示すように、コピー元の記憶装置１−１のマスタ制御モジュール１６−１内のバッファセット制御テーブル１６１内のバッファＩＤ「５００，７００」等がコピー先の記憶装置１−２のマスタ制御モジュール１６−１内のバッファセット制御テーブル１６１にコピーされ、コピー元の記憶装置１−１のマスタ制御モジュール１６−１内のバッファ本体１１１及びバッファインデックステーブル１１２の内容及びスレーブ制御モジュール１６−２内のバッファ本体１１１及びバッファインデックステーブル１１２の内容が、夫々コピー先の記憶装置１−２のマスタ制御モジュール１６−１内のバッファ本体１１１及びバッファインデックステーブル１１２及びスレーブ制御モジュール１６−２内のバッファ本体１１１及びバッファインデックステーブル１１２にコピーされる。バッファセット制御テーブル１６１にコピーされる論理アドレスについては順序保証があるが、バッファ本体１１１及びバッファインデックステーブル１１２にコピーされる内容については順序保証はなく、バッファセットが揃った時点でコピー処理を行う。
【００７７】
図１８において、コピー元の記憶装置１−１内の制御モジュール１６−１，１６−２によるバッファセット送信処理はステップＳＳ２１〜ＳＳ２７で示し、コピー先の記憶装置１−２内の制御モジュール１６−１，１６−２によるバッファセット受信処理はステップＳＤ２１〜ＳＤ２５で示す。
【００７８】
図１８中、コピー元の記憶装置１−１内の制御モジュール１６−１，１６−２では、バッファ切替処理が完了すると（ステップＳＳ２１）、全ての格納処理が完了しているか否かを判定し（ステップＳＳ２２）、判定結果がＹＥＳであると、バッファインデックステーブル１１２及びバッファ本体１１１の内容に関する送信処理をコピー元及びコピー先の記憶装置１−１，１−２内の制御モジュール１６−１，１６−２に対して起動する（ステップＳＳ２３）。
【００７９】
コピー元の記憶装置１−１内の制御モジュール１６−１，１６−２では、前のバッファセットのコピーデータの送信処理が完了しているか否かを判定し（ステップＳＳ２４）、判定結果がＹＥＳであると、バッファセット制御テーブル１６１内の情報に関する送信処理をコピー先の記憶装置１−２内の制御モジュール１６−１，１６−２に対して行う。
【００８０】
コピー先の記憶装置１−２内の制御モジュール１６−１，１６−２では、バッファセットのコピーデータを全て受信したか否かを判定し（ステップＳＤ２１）、判定結果がＹＥＳであると、前のバッファセットのコピーデータの展開処理が完了したか否かを判定し（ステップＳＤ２２）、判定結果がＹＥＳであると、今回のバッファセットのコピーデータに対する展開処理を行う（ステップＳＤ２３）。又、バッファセット開放通知をコピー元の記憶装置１−１内の制御モジュール１６−１，１６−２に対して行い（ステップＳＤ２４）、バッファセットのコピーデータに対する開放処理を行うと（ステップＳＤ２５）、処理は終了する。
【００８１】
コピー元の記憶装置１−１内の制御モジュール１６−１，１６−２では、コピー先からバッファセット開放通知を受信したか否かを判定し（ステップＳＳ２６）、判定結果がＹＥＳであると、バッファセットのコピーデータに対する開放処理を行い（ステップＳＳ２７）、処理は終了する。
【００８２】
ところで、図４と共に説明したように、バッファセットの処理は、重ね合わせ（オーバラップ）させることで効率的にコピーデータを転送することができる。特に送受信処理は、ネットワークを介して行われるため、図４中破線Ｉで示すように、オーバラップ処理を可能とする。
【００８３】
図１９は、転送多重度の最適化を説明する図である。同図に示すように、ケースＣ１のような１多重送信の場合、コピーデータの転送に隙間Ｇ１，Ｇ２が発生してしまう。又、ケースＣ３のような３多重送信の場合、早く転送しても展開できないコピーデータが早く転送して展開したいコピーデータの転送を妨げることとなり、好ましくない。従って、本実施例の場合、ケースＣ２のような２多重送信が転送多重度としては最適である。
【産業上の利用可能性】
【００８４】
本発明は、順序性保証、コピー元のシーケンシャルライト性能や転送効率が要求されるストレージシステムに適用可能である。
【００８５】
尚、本発明は、以下に付記する発明をも包含するものである。
（付記１）  第１の記憶装置内のデータをネットワークを介して第２の記憶装置内へコピーするリモートコピー方法であって、
該第１の記憶装置内において、第１の記録媒体のデータを第１の記録専用バッファに格納し、
該第１の記憶装置内において、該第１の記録専用バッファがフルになるか、或いは、データの格納から一定時間が経過すると、該第１の記録専用バッファ内のデータをまとめて該第２の記憶装置へ送信し、
該第２の記憶装置内において、受信したデータを第２の記録専用バッファに格納し、
該第２の記憶装置内において、データの受信を完了すると、該第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開することを特徴とする、リモートコピー方法。
（付記２）  該データの送信を複数の第１の記録専用バッファからなるバッファセットの単位で行うと共に、該データの受信を複数の第２の記録専用バッファからなるバッファセットの単位で行い、コピーされるデータの順序性保証を行うことを特徴とする、付記１記載のリモートコピー方法。
（付記３）  該バッファセットは、夫々送信及び受信が絶え間なく行われるように複数設けられ、パイプラインで動作することを特徴とする、付記２記載のリモートコピー方法。
（付記４）  任意の１つのバッファセットに対するデータの送信と、別の１つのバッファセットに対するデータの受信とのオーバラップ処理を行うことを特徴とする、付記３記載のリモートコピー方法。
（付記５）  該第１の記憶装置内において、必要な第２の記録専用バッファの個数と希望するバッファサイズを要求するバッファリクエストを該第２の記憶装置へ送信し、
該第２の記憶装置内において、該バッファリクエストにより要求された該第２の記録専用バッファの個数を用意し、用意した該第２の記録専用バッファのバッファＩＤとバッファサイズを空きバッファ通知により該第１の記憶装置へ通知し、
該データの送信は、該第２の記憶装置からの応答を待たずに所定回数行われることを特徴とする、付記２〜４のいずれか１項記載のリモートコピー方法。
（付記６）  該第１の記録媒体のデータの該第１の記録専用バッファへの格納は、該第１の記録専用バッファ内のバッファインデックステーブルに該データのコピー処理に必要なコピー元とコピー先の情報を格納し、該第１の記録媒体の該情報で指定されるデータを該第１の記録専用バッファ内のバッファ本体に格納することを特徴とする、付記２〜５のいずれか１項記載のリモートコピー方法。
（付記７）  該データの該バッファ本体への格納は、該バッファインデックステーブルを参照して、該情報の該バッファインデックステーブルへの格納とは非同期に行われることを特徴とする、付記６記載のリモートコピー方法。
（付記８）  該第１の記憶装置内において、該第１の記録専用バッファのいずれかがフルになるか、或いは、一定時間該第１の記録専用バッファが切替わらない場合に、該第１の記録専用バッファの切替を行うことを特徴とする、付記２〜７のいずれか１項記載のリモートコピー方法。
（付記９）  第１の制御モジュールと、第１の記録媒体と第１の記録専用バッファを備えた第１の記憶装置と、
該第１の記憶装置とネットワークを介して接続可能であり、第２の制御モジュールと、第２の記録媒体と第２の記録専用バッファを備えた第２の記憶装置とを備え、
該第１の記憶装置内のデータを該ネットワークを介して該第２の記憶装置内へコピーするリモートコピーを行うストレージシステムであって、
該第１の制御モジュールは、第１の記録媒体のデータを第１の記録専用バッファに格納し、該第１の記録専用バッファがフルになるか、或いは、データの格納から一定時間が経過すると、該第１の記録専用バッファ内のデータをまとめて該第２の記憶装置へ送信し、
該第２の制御モジュールは、受信したデータを第２の記録専用バッファに格納し、データの受信を完了すると、該第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開することを特徴とする、ストレージシステム。
（付記１０）  該第１の制御モジュールは、該データの送信を複数の第１の記録専用バッファからなるバッファセットの単位で行い、該第２の制御モジュールは、該データの受信を複数の第２の記録専用バッファからなるバッファセットの単位で行い、コピーされるデータの順序性保証を行うことを特徴とする、付記９記載のストレージシステム。
（付記１１）  該バッファセットは、夫々送信及び受信が絶え間なく行われるように複数設けられ、パイプラインで動作することを特徴とする、付記１０記載のストレージシステム。
（付記１２）  任意の１つのバッファセットに対するデータの送信と、別の１つのバッファセットに対するデータの受信とのオーバラップ処理を行うことを特徴とする、付記１１記載のストレージシステム。
（付記１３）  該第１の制御モジュールは、必要な第２の記録専用バッファの個数と希望するバッファサイズを要求するバッファリクエストを該第２の記憶装置へ送信し、
該第２の制御モジュールは、該バッファリクエストにより要求された該第２の記録専用バッファの個数を用意し、用意した該第２の記録専用バッファのバッファＩＤとバッファサイズを空きバッファ通知により該第１の記憶装置へ通知し、
該第１の制御モジュールは、該第２の記憶装置からの応答を待たずにデータの創始を所定回数行うことを特徴とする、付記１０〜１２のいずれか１項記載のストレージシステム。
（付記１４）  該第１の制御モジュールは、該第１の記録専用バッファ内のバッファインデックステーブルに該データのコピー処理に必要なコピー元とコピー先の情報を格納し、該第１の記録媒体の該情報で指定されるデータを該第１の記録専用バッファ内のバッファ本体に格納することにより、該第１の記録媒体のデータの該第１の記録専用バッファへの格納を行うことを特徴とする、付記１０〜１３のいずれか１項記載のストレージシステム。
（付記１５）  該第１の制御モジュールは、該データの該バッファ本体への格納を、該バッファインデックステーブルを参照して、該情報の該バッファインデックステーブルへの格納とは非同期に行うことを特徴とする、付記１４記載のストレージシステム。
（付記１６）  該第１の制御モジュールは、該第１の記録専用バッファのいずれかがフルになるか、或いは、一定時間該第１の記録専用バッファが切替わらない場合に、該第１の記録専用バッファの切替を行うことを特徴とする、付記１０〜１５のいずれか１項記載のストレージシステム。
（付記１７）  該第１及び第２の制御モジュールは、夫々複数設けられており、該第１及び第２の記録専用バッファは、対応する第１及び第２の制御モジュール内に設けられていることを特徴とする、付記９〜１６のいずれか１項記載のストレージシステム。
（付記１８）  第１の記憶装置内のデータをネットワークを介して第２の記憶装置内へコピーするリモートコピー方法であって、
該第１の記憶装置からのデータの送信を、該第１の記憶装置内の複数の第１の記録専用バッファからなるバッファセットの単位で行い、
該データの受信を、該第２の記憶装置内の複数の第２の記録専用バッファからなるバッファセットの単位で行い、コピーされるデータの順序性保証を行うことを特徴とする、リモートコピー方法。
（付記１９）  該バッファセットは、夫々送信及び受信が絶え間なく行われるように複数設けられ、パイプラインで動作することを特徴とする、付記１８記載のリモートコピー方法。
（付記２０）  第１の制御モジュールと、第１の記録媒体と第１の記録専用バッファを備えた第１の記憶装置と、
該第１の記憶装置とネットワークを介して接続可能であり、第２の制御モジュールと、第２の記録媒体と第２の記録専用バッファを備えた第２の記憶装置とを備え、
該第１の記憶装置内のデータを該ネットワークを介して該第２の記憶装置内へコピーするリモートコピーを行うストレージシステムであって、
該第１の制御モジュールは、第１の記録媒体のデータを第１の記録専用バッファに格納し、該第１の記録専用バッファ内のデータをまとめて複数の第１の記録専用バッファからなるバッファセットの単位で該第２の記憶装置へ送信し、
該第２の制御モジュールは、複数の第２の記録専用バッファからなるバッファセットの単位で該データを受信して第２の記録専用バッファに格納し、データの受信を完了すると、該第２の記録専用バッファ内のデータをまとめてコピー先の第２の記録媒体へ展開し、コピーされるデータの順序性保証を行うことを特徴とする、ストレージシステム。
（付記２１）  該バッファセットは、夫々送信及び受信が絶え間なく行われるように複数設けられ、パイプラインで動作することを特徴とする、付記２０記載のストレージシステム。
【００８６】
以上、本発明を実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
【図面の簡単な説明】
【００８７】
【図１】ストレージシステムのライト処理及びコピー処理の概略を説明する図である。
【図２】まとめ送り方式を説明する図である。
【図３】バッファセット制御を説明する図である。
【図４】バッファセットオーバラップ処理を説明する図である。
【図５】遠隔地対応シーケンスを説明する図である。
【図６】記録専用バッファを説明する図である。
【図７】記録専用バッファを説明する図である。
【図８】ライト処理、格納処理及び切出処理を説明する図である。
【図９】ライト処理、格納処理及び切出処理を説明する図である。
【図１０】バッファ切替処理を説明する図である。
【図１１】本発明になるストレージシステムの一実施例の要部を示すブロック図である。
【図１２】リモートコピー時のデータの流れを示すブロック図である。
【図１３】リモートコピーの手順を説明するフローチャートである。
【図１４】リモートコピーの手順を説明するフローチャートである。
【図１５】バッファ切替を説明する図である。
【図１６】バッファ切替の手順を説明するフローチャートである。
【図１７】バッファセット制御を説明する図である。
【図１８】バッファセット制御の手順を説明するフローチャートである。
【図１９】転送多重度の最適化を説明する図である。
【符号の説明】
【００８８】
１−１，１−２      記憶装置
１１      記録専用バッファ
１２      記録媒体
１６−１，１６−１      制御モジュール
２１−１，２１−２      サーバ
２３      ネットワーク
１１１      バッファ本体
１１２      バッファインデックステーブル
【図１】
2006260292.tif 000004
【図２】
2006260292.tif 000005
【図３】
2006260292.tif 000006
【図４】
2006260292.tif 000007
【図５】
2006260292.tif 000008
【図６】
2006260292.tif 000009
【図７】
2006260292.tif 000010
【図８】
2006260292.tif 000011
【図９】
2006260292.tif 000012
【図１０】
2006260292.tif 000013
【図１１】
2006260292.tif 000014
【図１２】
2006260292.tif 000015
【図１３】
2006260292.tif 000016
【図１４】
2006260292.tif 000017
【図１５】
2006260292.tif 000018
【図１６】
2006260292.tif 000019
【図１７】
2006260292.tif 000020
【図１８】
2006260292.tif 000021
【図１９】
2006260292.tif 000022