(57)【要約】【課題】同期データコピーの処理時間を適切化する。【解決手段】他のストレージ装置に送信するデータを格納する複数種類のコピーバッファ２２と、ストレージ装置１と他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定する第１遅延時間測定部１１１と、第１遅延時間と閾値との大きさの比較に基づき、他のストレージ装置に送信するデータを格納するコピーバッファ２２を複数種類のコピーバッファ２２の中から選択するコピーバッファ選択部１１５と、を備える。【選択図】図１
2015161999.tif 000002
【特許請求の範囲】
【請求項１】
他のストレージ装置と通信可能に接続されるストレージ装置であって、
前記他のストレージ装置に送信するデータを格納する複数種類のコピーバッファと、
当該ストレージ装置と前記他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定する第１遅延時間測定部と、
前記第１遅延時間と閾値との大きさの比較に基づき、前記他のストレージ装置に送信するデータを格納するコピーバッファを前記複数種類のコピーバッファの中から選択するコピーバッファ選択部と、
を備えることを特徴とする、ストレージ装置。
【請求項２】
当該ストレージ装置と上位装置との間の通信経路上で発生する第２遅延時間を測定する第２遅延時間測定部と、
当該ストレージ装置が備える記憶装置へのデータアクセスにおいて発生する第３遅延時間を測定する第３遅延時間測定部と、
を備え、
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間とに基づき、前記閾値を算出する、
ことを特徴とする、請求項１に記載のストレージ装置。
【請求項３】
前記複数種類のコピーバッファのそれぞれへのデータアクセスにおいて発生する第４遅延時間をそれぞれ測定する第４遅延時間測定部を備え、
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間との和が前記第１遅延時間の２倍の値以下である場合に、前記第４遅延時間が最小となるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、請求項２に記載のストレージ装置。
【請求項４】
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間との和が前記第１遅延時間の２倍の値より大きい場合に、前記第３遅延時間が前記第１遅延時間の２倍の値と前記第４遅延時間との和以上となるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、請求項３に記載のストレージ装置。
【請求項５】
前記コピーバッファ選択部は、前記第３遅延時間が前記第１遅延時間の２倍の値と前記第４遅延時間との和に最も近くなるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、請求項４に記載のストレージ装置。
【請求項６】
データ書き込み処理の開始前と実行中とにおいて、前記第１遅延時間測定部による前記第１遅延時間の測定と、前記コピーバッファ選択部による前記コピーバッファの選択とを繰り返し行なう、
ことを特徴とする、請求項１〜５のいずれか１項に記載のストレージ装置。
【請求項７】
他のストレージ装置と通信可能に接続されるストレージ装置に備えられる制御装置であって、
前記ストレージ装置と前記他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定する第１遅延時間測定部と、
前記第１遅延時間と閾値との大きさの比較に基づき、前記他のストレージ装置に送信するデータを格納するコピーバッファを前記ストレージ装置が備える複数種類のコピーバッファの中から選択するコピーバッファ選択部と、
を備えることを特徴とする、制御装置。
【請求項８】
他のストレージ装置と通信可能に接続されるストレージ装置に備えられるコンピュータに、
当該ストレージ装置と前記他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定し、
前記第１遅延時間と閾値との大きさの比較に基づき、前記他のストレージ装置に送信するデータを格納するコピーバッファを当該ストレージ装置が備える複数種類のコピーバッファの中から選択する、
処理を実行させることを特徴とする、制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置，制御装置及び制御プログラムに関する。
【背景技術】
【０００２】
ストレージシステムにおいては、システム全体としての信頼性を向上させるために、Disaster Recovery（ＤＲ；災害復旧）システムを構築するものが知られている。ＤＲシステムは、プライマリサイトに格納されたデータの冗長化を図るため、プライマリサイトからＤＲサイトに対してデータのコピー処理を実施する。
なお、ＤＲシステムにおけるデータのコピー方式には、同期方式及び非同期方式が知られている。
【０００３】
図１０は、従来例としてのストレージ装置における同期データコピー処理を例示する図である。
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
図１０に示すストレージネットワーク２０００は、２つのストレージシステム２００を備え、ＤＲシステムを構築する。
【０００４】
各ストレージシステム２００はストレージ装置（ストレージ装置＃０，＃１）４及びサーバ装置（サーバ装置＃０，＃１）５を備え、これらのストレージ装置４とサーバ装置５とは互いに通信可能に接続される。
以下、複数のストレージ装置のうち１つを特定する必要があるときには「ストレージ装置＃０」又は「ストレージ装置＃１」と表記するが、任意のストレージ装置を指すときには「ストレージ装置４」と表記する。また、以下、複数のサーバ装置のうち１つを特定する必要があるときには「サーバ装置＃０」又は「サーバ装置＃１」と表記するが、任意のサーバ装置を指すときには「サーバ装置５」と表記する。
【０００５】
サーバ装置５は、例えば、サーバ機能を備えたコンピュータ（情報処理装置）である。
図１０に示す例において、ストレージ装置＃０はプライマリサイトであり、ストレージ装置＃１はＤＲサイトである。また、ストレージ装置＃０とストレージ装置＃１とは、例えばネットワークを介して互いに通信可能に接続される。
ストレージ装置４は、Controller Module（ＣＭ）４０及びDisk Enclosure（ＤＥ）５０を備える。ＣＭ４０とＤＥ５０とは、例えばバス線を介して互いに通信可能に接続される。
【０００６】
ＣＭ４０は、種々の制御を行なう制御装置であり、サーバ装置５からのストレージアクセス要求（アクセス制御信号：以下、ホストＩ／Ｏという）に従って、各種制御を行なう。ＣＭ４０は、キャッシュメモリ４２０，１次コピーバッファ４２１及びCentral Processing Unit（ＣＰＵ）等の図示しない種々の機能構成を備える。
キャッシュメモリ４２０は、サーバ装置５から受信したデータや、後述する記憶装置５１から読み出したデータを格納する。サーバ装置５から受信し、記憶装置５１に書き込まれるデータ（ライトデータ，ライトキャッシュデータ）は、キャッシュメモリ４２０における所定の領域（ユーザ領域）に格納された後、記憶装置５１に転送される。
【０００７】
１次コピーバッファ４２１は、他のストレージ装置４との間で送受信するパケットを格納するFirst In, First Out（ＦＩＦＯ）型のメモリである。
ＤＥ５０は、記憶装置５１及び２次コピーバッファ５２を備える。
記憶装置５１は、データを読み書き可能に格納する既知の装置であり、例えば、Hard Disk Drive（ＨＤＤ）やSolid State Drive（ＳＳＤ）である。なお、図１０に示す例においては、ＤＥ５０は、１つの記憶装置５１を備えているが、種類の異なる複数の記憶装置５１を備えても良い。
【０００８】
２次コピーバッファ５２は、上述したキャッシュメモリ４２０のキャッシュ領域を補完する記憶装置である。上述したキャッシュメモリ４２０が同期データコピー処理とは関係のないリード／ライト処理に対する共有領域として使用されるため、キャッシュメモリ４２０の容量は減少する。そこで、ＤＥ５０が備えるデバイスの一部を２次コピーバッファ５２として設定することにより、同期データコピー処理におけるキャッシュ容量の減少を補完する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００７−３２８４６８号公報
【特許文献２】特開２００７−１１５１３８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
以下、図１０に示すストレージネットワーク２０００における同期データコピー処理を説明する。
サーバ装置＃０は記憶装置５１に書き込むデータをストレージ装置＃０に送信し、ＣＭ４０は受信したデータをキャッシュメモリ４２０に一時記憶させる（符号Ｃ１参照）。
ＣＭ４０は、キャッシュメモリ４２０に一時記憶させたデータを記憶装置５１に格納する（符号Ｃ２参照）。
【００１１】
一方、ＣＭ４０は、ストレージ装置＃１に格納するデータとして、キャッシュ４２０が吐き出したデータを２次コピーバッファ５２に一時記憶させる（符号Ｃ３参照）。
ＣＭ４０は、２次コピーバッファ５２に一時記憶させたデータを読み出し、１次コピーバッファ４２１に一時記憶させる（符号Ｃ４参照）。
ＣＭ４０は、１次コピーバッファ４２１に一時記憶させたデータを読み出し、ストレージ装置＃１に送信する。ストレージ装置＃１のＣＭ４０は、受信したデータをキャッシュメモリ４２０に一時記憶させる（符号Ｃ５参照）。
【００１２】
ストレージ装置＃１のＣＭ４０は、受信したデータをキャッシュメモリ４２０に一時記憶させたことをトリガとして、応答データをストレージ装置＃０に送信する。ストレージ装置＃０のＣＭ４０は、受信した応答データを一次コピーバッファ４２１に一時記憶させる（符号Ｃ６参照）。
そして、ストレージ装置＃０のＣＭ４０は、一次コピーバッファ４２１に一時記憶させた応答データを読み出し、サーバ装置＃０に送信する（符号Ｃ７）。これにより、サーバ装置＃０は、同期データコピー処理の完了を認識できる。
【００１３】
一方、ストレージ装置＃１のＣＭ４０は、キャッシュメモリ４２０に一時記憶させたデータを記憶装置５１に格納する（符号Ｃ８参照）。
以下、符号Ｃ１及びＣ２で示した処理に要する時間を非同期コピー処理時間といい、符号Ｃ１，Ｃ３，Ｃ４，Ｃ５及びＣ６で示した処理に要する時間を同期コピー処理時間という。
【００１４】
従来例としてのストレージシステム２００においては、記憶装置５１に対するアクセス時間（符号Ｃ２参照）や２次コピーバッファ５２に対するアクセス時間（符号Ｃ３及びＣ４参照），ストレージ装置４間の回線遅延時間（符号Ｃ５及びＣ６参照）が変化する可能性がある。例えば、使用する記憶装置５１及び２次コピーバッファ５２の種類やストレージ装置４間の回線負荷により、非同期コピー処理時間及び同期コピー処理時間が変動する。
【００１５】
これにより、従来例としてのストレージシステム２００においては、非同期コピー処理時間に比べて同期コピー処理時間が長くなり、サーバ応答時間を短くするべきコピー処理の処理時間が長くなってしまうという課題がある。
【課題を解決するための手段】
【００１６】
このため、このストレージ装置は、他のストレージ装置と通信可能に接続されるストレージ装置であって、前記他のストレージ装置に送信するデータを格納する複数種類のコピーバッファと、当該ストレージ装置と前記他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定する第１遅延時間測定部と、前記第１遅延時間と閾値との大きさの比較に基づき、前記他のストレージ装置に送信するデータを格納するコピーバッファを前記複数種類のコピーバッファの中から選択するコピーバッファ選択部と、を備える。
【発明の効果】
【００１７】
開示の情報処理装置によれば、同期データコピーの処理時間を適切化できる。
【図面の簡単な説明】
【００１８】
【図１】実施形態の一例としてのストレージシステムの機能構成を模式的に示す図である。
【図２】実施形態の一例としてのコピーバッファの選択処理の第１の例を示す図である。
【図３】実施形態の一例としてのコピーバッファの選択処理の第２の例を示す図である。
【図４】実施形態の一例としてのストレージ装置におけるリモートコピー処理を示すフローチャートである。
【図５】実施形態の一例としてのストレージ装置におけるリモートコピー処理の詳細例を示すフローチャートである。
【図６】実施形態の一例としてのストレージ装置におけるリモートコピー処理の詳細例を示すフローチャートである。
【図７】実施形態の一例としてのストレージ装置におけるリモートコピー処理の詳細例を示すフローチャートである。
【図８】実施形態の一例としてのストレージ装置におけるリモートコピー処理の詳細例を示すフローチャートである。
【図９】実施形態の一例としてのストレージ装置におけるリモートコピー処理の詳細例を示すフローチャートである。
【図１０】従来例としてのストレージ装置における同期データコピー処理を例示する図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照してストレージ装置，制御装置及び制御プログラムに係る一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００２０】
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
〔Ａ〕実施形態の一例
〔Ａ−１〕システム構成
図１は、実施形態の一例としてのストレージシステムの機能構成を模式的に示す図である。
【００２１】
本実施形態の一例におけるストレージシステム１００は、階層制御システムであり、ＤＲシステムを構築する。階層制御システムは、論理ボリューム領域に対するアクセス頻度に応じて、対応する実物理領域のデータの配置を変化させる制御を行なう。つまり、階層制御システムは、アクセス頻度が高いデータをアクセス速度が高い記憶装置に配置し、アクセス頻度が低いデータをアクセス速度が低い記憶装置に配置する。図１に示すように、ストレージシステム１００は、ストレージ装置１，サーバ装置（上位装置）２及び管理コンソール３を備える。サーバ装置２とストレージ装置１とは例えばLocal Area Network（ＬＡＮ）ケーブルで互いに通信可能に接続され、ストレージ装置１と管理コンソール３とも例えばＬＡＮケーブルで互いに通信可能に接続される。
【００２２】
サーバ装置２は、例えば、サーバ機能を備えたコンピュータ（情報処理装置）である。図１に示す例では、１つのサーバ装置２を備えているが、２つ以上のサーバ装置２を備えても良い。
管理コンソール３は、モニタ，キーボード及びマウス等のユーザインタフェース（図示省略）を備え、このユーザインタフェースを介してユーザがストレージ装置１を制御するための装置である。
【００２３】
ストレージ装置１は、後述する複数の記憶装置２１を搭載し、サーバ装置２に対して記憶領域を提供する装置であり、Redundant Arrays of Inexpensive Disks（ＲＡＩＤ）を用いて複数の記憶装置２１にデータを分散し、冗長化した状態で保存する。ストレージ装置１はＣＭ（制御装置）１０及びＤＥ２０を備え、これらのＣＭ１０とＤＥ２０とは例えばバス線で互いに通信可能に接続される。なお、図示する例においては、ストレージ装置１は、１つのＣＭ１０を備えているが、冗長化のために複数のＣＭ１０を備えても良い。
【００２４】
ＤＥ２０は、複数（図示する例では２つ）の記憶装置２１及び複数（図示する例では２つ）の２次コピーバッファ（コピーバッファ）２２を備える。
記憶装置２１は、データを読み書き可能に格納する既知の装置であり、例えば、ＨＤＤやＳＳＤである。本実施形態の一例において、図示する２つの記憶装置２１は、互いに異なる種類の記憶装置であり、例えば図２を用いて後述するようにＳＳＤ２１ａ及びNear Line（ＮＬ）２１ｂである。
【００２５】
２次コピーバッファ２２は、後述するキャッシュメモリ１２０のキャッシュ領域を補完する記憶装置である。本実施形態の一例において、図示する２つの２次コピーバッファ２２は、互いに異なる種類の記憶装置であり、例えば図２を用いて後述するように高速２次コピーバッファ２２ａ及び低速２次コピーバッファ２２ｂである。
ＣＭ１０は、種々の制御を行なう制御装置であり、サーバ装置２からのストレージアクセス要求（アクセス制御信号：以下、ホストＩ／Ｏという）に従って、各種制御を行なう。ＣＭ１０は、ＣＰＵ（コンピュータ）１１，メモリ１２，ホストInterface（ＩＦ）１３，ディスクＩＦ１４，リモート接続部１５及びメンテナンスＩＦ１６を備える。
【００２６】
ホストＩＦ１３は、ＣＭ１０とサーバ装置２とを通信可能に接続するインタフェースコントローラであり、例えばＬＡＮカードである。
ディスクＩＦ１４は、ＣＭ１０とＤＥ２０とを通信可能に接続するインタフェースであり、例えばFiber Channel（ＦＣ）アダプタである。
リモート接続部１５は、ＣＭ１０をネットワークＮＷ（図２等を用いて後述）と接続し、このネットワークＮＷを介して遠隔地に備えられた他のストレージ装置１ａ（図２等を用いて後述）と通信を行なうためのインタフェース装置である。リモート接続部１５としては、例えば、有線ＬＡＮや無線ＬＡＮ，Wireless Wide Area Network（ＷＷＡＮ）のネットワークＮＷの規格に対応する各種インタフェースカードを用いることができる。
【００２７】
メンテナンスＩＦ１６は、ＣＭ１０と管理コンソール３とを通信可能に接続するインタフェースであり、例えばＬＡＮカードである。
メモリ１２は、Read Only Memory（ＲＯＭ）及びRandom Access Memory（ＲＡＭ）を含む記憶装置である。メモリ１２のＲＯＭには、Basic Input/Output System（ＢＩＯＳ）等のプログラムが書き込まれている。メモリ１２上のソフトウェアプログラムは、ＣＰＵ１１に適宜読み込まれて実行される。また、メモリ１２のＲＡＭは、一次記録メモリ（キャッシュメモリ）１２０あるいはワーキングメモリとして利用される。更に、メモリ１２は、１次コピーバッファ１２１としての領域を備える。
【００２８】
１次コピーバッファ１２１は、他のストレージ装置1ａとの間で送受信するパケットを格納するＦＩＦＯ型のメモリである。
ＣＰＵ１１は、種々の制御や演算を行なう処理装置であり、メモリ１２に格納されたOperating System（ＯＳ）やプログラムを実行することにより、種々の機能を実現する。すなわち、ＣＰＵ１１は、図１に示すように、第１遅延時間測定部１１１，第２遅延時間測定部１１２，第３遅延時間測定部１１３，第４遅延時間測定部１１４及びコピーバッファ選択部１１５として機能する。
【００２９】
なお、これらの第１遅延時間測定部１１１，第２遅延時間測定部１１２，第３遅延時間測定部１１３，第４遅延時間測定部１１４及びコピーバッファ選択部１１５としての機能を実現するためのプログラム（制御プログラム）は、例えばフレキシブルディスク，ＣＤ（ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ等），ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−Ｒ，ＤＶＤ＋Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋ＲＷ，ＨＤ  ＤＶＤ等），ブルーレイディスク，磁気ディスク，光ディスク，光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体から図示しない読取装置を介してプログラムを読み取って内部記録装置または外部記録装置に転送し格納して用いる。又、制御プログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供してもよい。
【００３０】
第１遅延時間測定部１１１，第２遅延時間測定部１１２，第３遅延時間測定部１１３，第４遅延時間測定部１１４及びコピーバッファ選択部１１５としての機能を実現する際には、内部記憶装置（本実施形態ではメモリ１２）に格納されたプログラムがコンピュータのマイクロプロセッサ（本実施形態ではＣＰＵ１１）によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行してもよい。
【００３１】
第１遅延時間測定部１１１は、ストレージ装置１と他のストレージ装置１ａ（図２等を用いて後述）との間の通信経路上で発生する第１遅延時間ｔ１を測定する。具体的には、第１遅延時間測定部１１１は、ストレージ装置１，１ａ間の伝送遅延時間が予め設定された第１遅延時間テーブル（図示省略）又はリモート接続部１５を用いることにより、第１遅延時間ｔ１を測定する。第１遅延時間測定部１１１は、Remote Equipment Copy（ＲＥＣ；リモートコピー）スケジュール時間が到来した場合には、第１遅延時間テーブルから第１遅延時間ｔ１を読み出すことにより、第１遅延時間ｔ１を測定する。なお、第１遅延時間テーブルは、リモートコピーの距離（プライマリサイトとＤＲサイトとの距離）に基づき定義され、例えばメモリ１２に予め格納されている。また、第１遅延時間測定部１１１は、リモートコピー動作状態におけるコマンド処理実施中には、リモート接続部１５を用いて、他のストレージ装置１ａにデータ送信を開始してストレージ装置１ａから応答データを受信するまでに要する時間を測定することにより、片道の第１遅延時間ｔ１を測定する。
【００３２】
第２遅延時間測定部１１２は、ストレージ装置１とサーバ装置２との間の通信経路上で発生する第２遅延時間ｔ２を測定する。具体的には、第２遅延時間測定部１１２は、ストレージ装置１が起動してサーバ装置２に認識された場合、又は、スケジュールされたコピー処理が開始する直前に、ホストＩＦ１３を用いて第２遅延時間ｔ２を測定する。なお、スケジュールされたコピー処理が開始する直前における第２遅延時間ｔ２の測定は、省略しても良い。
【００３３】
ここで、ファイバチャネル接続におけるサーバ装置２とストレージ装置１との間のＩ／Ｏ処理について説明する。ストレージ装置１は、サーバ装置２が送信したコマンドを受信すると、サーバ装置２に対してコマンド受信の応答を送信する。サーバ装置２は、ストレージ装置１が送信したコマンド受信の応答を受信すると、ストレージ装置１に対してデータを送信する。ストレージ装置１は、サーバ装置２が送信したデータを受信すると、サーバ装置２に対してデータ受信の応答を送信する。そして、サーバ装置２がストレージ装置１の送信したデータ受信の応答を受信することにより、一連のＩ／Ｏ処理が完了する。第２遅延時間測定部１１２は、コマンド受信の応答を送信してからデータの受信までに要する時間を測定することにより、第２遅延時間ｔ２を測定する。
【００３４】
第３遅延時間測定部１１３は、ストレージ装置１が備える記憶装置２１へのデータアクセスにおいて発生する第３遅延時間ｔ３を測定する。具体的には、第３遅延時間測定部１１３は、コピー処理の対象となるＲＡＩＤグループを構成する記憶装置２１の種類に応じたアクセス処理時間が予め設定された第３遅延時間テーブル（図示省略）又はディスクＩＦ１４を用いることにより、第３遅延時間ｔ３を測定する。第３遅延時間測定部１１３は、リモートコピースケジュール時間が到来した場合には、第３遅延時間テーブルから第３遅延時間ｔ３を読み出すことにより、第３遅延時間ｔ３を測定する。なお、第３遅延時間テーブルは、例えばメモリ１２に予め格納されている。また、第３遅延時間１１３は、リモートコピー動作状態におけるコマンド処理実施中には、ディスクＩＦ１４を用いて、キャッシュ領域（キャッシュメモリ１２０）からＲＡＩＤグループ領域にデータを転送するまでに要する時間を測定することにより、第３遅延時間ｔ３を測定する。
【００３５】
第４遅延時間測定部１１４は、複数種類の２次コピーバッファ２２のそれぞれへのデータアクセスにおいて発生する第４遅延時間ｔ４をそれぞれ測定する。具体的には、第４遅延時間測定部１１４は、リモートコピースケジュール時間が到来した場合に、ディスクＩＦ１４を用いて、キャッシュメモリ１２０から２次コピーバッファ２２にデータを転送するまでに要する時間を測定することにより、第４遅延時間ｔ４を測定する。
【００３６】
第１遅延時間測定部１１１，第２遅延時間測定部１１２，第３遅延時間測定部１１３及び第４遅延時間測定部１１４は、それぞれ測定した第１遅延時間ｔ１，第２遅延時間ｔ２，第３遅延時間ｔ３及び第４遅延時間ｔ４を、例えばメモリ１２に格納する。
コピーバッファ選択部１１５は、第１遅延時間ｔ１と閾値との大きさの比較に基づき、他のストレージ装置１ａに送信するデータの格納に使用する２次コピーバッファ２２を複数種類の２次コピーバッファ２２の中から選択する。また、コピーバッファ選択部１１５は、第２遅延時間ｔ２と第３遅延時間ｔ３とに基づき、閾値を算出する。言い換えれば、コピーバッファ選択部１１５は、非同期コピー処理時間Ｔａｓとストレージ装置１，１ａ間の伝送遅延時間（第１遅延時間ｔ１）との比較に基づき、複数の２次コピーバッファ２２中から他のストレージ装置１ａへのデータ送信に用いる２次コピーバッファ２２を選択する。これにより、コピーバッファ選択部１１５は、複数の２次コピーバッファ２２を切り換えて他のストレージ装置１ａへのデータ送信に使用する。
【００３７】
具体的には、コピーバッファ選択部１１５は、データ書き込み処理の開始前と実行中とにおいて、サーバ装置２から受信したデータをストレージ装置１の記憶装置２１に格納するまでに要する非同期コピー処理時間
Ｔａｓ＝ｔ２＋ｔ３
を算出する。また、コピーバッファ選択部１１５は、データ書き込み処理の開始前と実行中とにおいて、サーバ装置２から受信したデータをストレージ装置１ａの記憶装置２１にコピーし、コピー処理の完了が確認されるまでに要する同期コピー時間
Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４
を算出する。
【００３８】
そして、コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する。上述したように、第１遅延時間ｔ１は、ストレージ装置１と他のストレージ装置１ａとの間の通信経路上で発生する片道の遅延時間である。ストレージ装置１が他のストレージ装置１ａにデータを送信して応答データを受信するまでの時間ｔ１×２の間、ストレージ装置１はサーバ装置２に同期コピー処理完了の応答を返すことができない。そこで、コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する。
【００３９】
コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つ場合に、複数種類の２次コピーバッファ２２のうち処理速度が大きい２次コピーバッファ２２（例えば図２を用いて後述する高速２次コピーバッファ２２ａ）を選択する。また、コピーバッファ選択部１１５は、Ｔａｓ＞ｔ１×２が成り立つ場合に、複数種類の２次コピーバッファ２２のうち処理速度が小さい２次コピーバッファ２２（例えば図２を用いて後述する低速２次コピーバッファ２２ｂ）を選択する。ここで、処理速度が小さい２次コピーバッファ２２が複数ある場合には、コピーバッファ選択部１１５は、例えば処理速度が最小の２次コピーバッファ２２から順次Ｔａｓ≧Ｔｓを満たすかを判定し、最初にＴａｓ≧Ｔｓを満たす２次コピーバッファ２２を選択する。
【００４０】
つまり、コピーバッファ選択部１１５は、第２遅延時間ｔ２と第３遅延時間ｔ３との和が第１遅延時間ｔ１の２倍の値以下である場合に、第４遅延時間ｔ４が最小となる２次コピーバッファ２２を複数種類の２次コピーバッファ２２の中から選択する。すなわち、コピーバッファ選択部１１５は、非同期コピー処理時間Ｔａｓがストレージ装置１，１ａ間の往復データ伝送時間以下である場合に、処理速度が最大の２次コピーバッファ２２を選択する。
【００４１】
また、コピーバッファ選択部１１５は、第２遅延時間ｔ２と第３遅延時間ｔ３との和が第１遅延時間ｔ１の２倍の値より大きい場合に、第３遅延時間ｔ３が第１遅延時間ｔ１の２倍の値と第４遅延時間ｔ４との和以上となる２次コピーバッファ２２を複数種類の２次コピーバッファ２２の中から選択する。すなわち、コピーバッファ選択部１１５は、非同期コピー処理時間がストレージ装置１，１ａ間の往復データ伝送時間より大きい場合に、処理速度が比較的小さい２次コピーバッファ２２を選択する。
【００４２】
更に、コピーバッファ選択部１１５は、第３遅延時間ｔ３が第１遅延時間ｔ１の２倍の値と第４遅延時間ｔ４との和に最も近くなる２次コピーバッファ２２を複数種類の２次コピーバッファ２２の中から選択する。
図２は、実施形態の一例としてのコピーバッファの選択処理の第１の例を示す図である。
【００４３】
図２に示すストレージネットワーク１０００は、複数（図示する例では３つ）のストレージシステム１００，１００ａを備える。
ストレージシステム１００ａは、例えば従来例としてのストレージシステム２００と同様のシステムであっても良いし、本実施形態の一例におけるストレージシステム１００であっても良い。ストレージシステム１００ａは、ストレージ装置（ストレージ装置＃１，＃２）１ａ及びサーバ装置（サーバ装置＃１，＃２）２を備える。ストレージ装置１ａは、ＣＭ１０ａ及びＤＥ２０ａを備える。
【００４４】
ストレージシステム１００においては、ストレージ装置（ストレージ装置＃０）１及びサーバ装置（サーバ装置＃０）２のみを図示し、管理コンソール３の図示は簡単のため省略した。また、ストレージ装置１，１ａがそれぞれ備えるＣＭ１０，１０ａにおいては、キャッシュメモリ１２０のみを図示し、その他の機能構成の図示は簡単のため省略した。なお、ＣＭ１０においては、説明のため２つのキャッシュメモリ１２０を図示している。
【００４５】
図２に示す例においては、ストレージ装置１のＤＥ２０はＳＳＤ２１ａ，ＮＬ２１ｂ，高速２次コピーバッファ２２ａ及び低速２次コピーバッファ２２ｂを備え、ストレージ装置１ａのＤＥ２０ａはＳＳＤ２１ａ及びＮＬ２１ｂを備える。
以下、複数のストレージ装置のうち１つを特定する必要があるときには「ストレージ装置＃０」，「ストレージ装置＃１」又は「ストレージ装置＃２」と表記するが、任意のストレージ装置を指すときには「ストレージ装置１，１ａ」と表記する。また、以下、複数のサーバ装置のうち１つを特定する必要があるときには「サーバ装置＃０」，「サーバ装置＃１」又は「サーバ装置＃２」と表記するが、任意のサーバ装置を指すときには「サーバ装置２」と表記する。
【００４６】
図２に示すように、ストレージ装置＃０とストレージ装置＃１とストレージ装置＃２とは、ネットワークＮＷを介して通信可能に接続される。
図２に示す例においては、第１遅延時間測定部１１１は、ストレージ装置＃０とストレージ装置＃１との間の第１遅延時間ｔ１として２．５ｍｓ（ミリ秒）を測定し、ストレージ装置＃０とストレージ装置＃２との間の第１遅延時間ｔ１として１０ｍｓを測定する。また、第２遅延時間測定部１１２は、第２遅延時間ｔ２として１ｍｓを測定する。更に、第３遅延時間測定部１１３は、ＳＳＤ２１ａの第３遅延時間ｔ３として１ｍｓを測定し、ＮＬ２１ｂの第３遅延時間ｔ３として３０ｍｓを測定する。そして、第４遅延時間測定部１１４は、高速２次コピーバッファ２２ａの第４遅延時間ｔ４として１ｍｓを測定し、低速２次コピーバッファ２２ｂの第４遅延時間ｔ４として１０ｍｓを測定する。
【００４７】
最初に、ストレージ装置＃０のＳＳＤ２１ａ及びストレージ装置＃１のＳＳＤ２１ａにデータを格納する場合のコピーバッファの選択処理を説明する。
コピーバッファ選択部１１５は、ＳＳＤ２１ａにデータを格納する場合の非同期コピー処理時間Ｔａｓとして、
Ｔａｓ＝ｔ２＋ｔ３＝１＋１＝２ｍｓ
を算出する。コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する。図２に示す例においては、
ｔ１×２＝２．５×２＝５ｍｓ
であるので、Ｔａｓ≦ｔ１×２が成り立つ。よって、コピーバッファ選択部１１５は、複数種類の２次コピーバッファ２２のうち処理速度が大きい高速２次コピーバッファ２２ａを選択する。これにより、選択された高速２次コピーバッファ２２ａを用いた同期コピー処理時間は、
Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４＝２．５＋２．５＋１＋１＝７ｍｓ
となる。そして、同期コピー処理時間Ｔｓは、選択さなかった低速２次コピーバッファ２２ｂを用いた同期コピー処理を行なう場合に比べて、非同期コピー処理時間Ｔａｓに対して近い値となる。
【００４８】
つまり、サーバ装置＃０はＳＳＤ２１ａに書き込むデータをストレージ装置＃０に送信し、ＣＭ１０は受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ａ１参照）。
ＣＭ１０は、キャッシュメモリ１２０に一時記憶させたデータをＳＳＤ２１ａに格納する（符号Ａ２参照）。
【００４９】
一方、ＣＭ１０は、ストレージ装置＃１に格納するデータとして、キャッシュメモリ１２０が吐き出したデータをコピーバッファ選択部１１５が選択した高速２次コピーバッファ２２ａに一時記憶させる（符号Ａ３参照）。
ＣＭ１０は、高速２次コピーバッファ２２ａに一時記憶させたデータを読み出し、図２に示さない１次コピーバッファ１２１に一時記憶させる。ＣＭ１０は、この１次コピーバッファ１２１に一時記憶させたデータを読み出し、ストレージ装置＃１に送信する。ストレージ装置＃１のＣＭ１０ａは、受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ａ４参照）。
【００５０】
ストレージ装置＃１のＣＭ１０ａは、キャッシュメモリ１２０に一時記憶させたデータをＳＳＤ２１ａに格納する（符号Ａ５参照）。
次に、図２を用いて、ストレージ装置＃０のＮＬ２１ｂ及びストレージ装置＃２のＮＬ２１ｂにデータを格納する場合のコピーバッファの選択処理を説明する。
コピーバッファ選択部１１５は、ＮＬ２１ｂにデータを格納する場合の非同期コピー処理時間Ｔａｓとして、
Ｔａｓ＝ｔ２＋ｔ３＝１＋３０＝３１ｍｓ
を算出する。コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する。図２に示す例においては、
ｔ１×２＝１０×２＝２０ｍｓ
であるので、Ｔａｓ≦ｔ１×２が成り立たない。よって、コピーバッファ選択部１１５は、複数種類の２次コピーバッファ２２のうち処理速度が小さい低速２次コピーバッファ２２ｂを選択する。これにより、選択された低速２次コピーバッファ２２ｂを用いた同期コピー処理時間は、
Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４＝１０＋１０＋１＋１０＝３１ｍｓ
となる。そして、同期コピー処理時間Ｔｓは、選択されなかった高速２次コピーバッファ２２ａを用いた同期コピー処理を行なう場合に比べて、非同期コピー処理時間Ｔａｓに対して近い値（同値）となる。
【００５１】
つまり、サーバ装置＃０はＮＬ２１ｂに書き込むデータをストレージ装置＃０に送信し、ＣＭ１０は受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ａ６参照）。
ＣＭ１０は、キャッシュメモリ１２０に一時記憶させたデータをＮＬ２１ｂに格納する（符号Ａ７参照）。
【００５２】
一方、ＣＭ１０は、ストレージ装置＃２に格納するデータとして、キャッシュメモリ１２０が吐き出したデータをコピーバッファ選択部１１５が選択した低速２次コピーバッファ２２ｂに一時記憶させる（符号Ａ８参照）。
ＣＭ１０は、低速２次コピーバッファ２２ｂに一時記憶させたデータを読み出し、図２に示さない１次コピーバッファ１２１に一時記憶させる。ＣＭ１０は、１次コピーバッファ１２１に一時記憶させたデータを読み出し、ストレージ装置＃２に送信する。ストレージ装置＃２のＣＭ１０ａは、受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ａ９参照）。
【００５３】
ストレージ装置＃２のＣＭ１０ａは、キャッシュメモリ１２０に一時記憶させたデータをＮＬ２１ｂに格納する（符号Ａ１０参照）。
図３は、実施形態の一例としてのコピーバッファの選択処理の第２の例を示す図である。
図３に示すストレージネットワーク１０００は、図２に示したストレージネットワーク１０００と同様に、複数（図示する例では３つ）のストレージシステム１００，１００ａを備える。ただし、図３に示す例においては、ストレージ装置＃０のＤＥ２０は、図２に示したＳＳＤ２１ａ，ＮＬ２１ｂ，高速２次コピーバッファ２２ａ及び低速２次コピーバッファ２２ｂに加えて、中速２次コピーバッファ２２ｃを更に備える。また、ストレージ装置＃０とストレージ装置＃１とストレージ装置＃２とは、図２に示したストレージネットワーク１０００とは異なり、１つの回線によって互いに通信可能に接続される。
【００５４】
図３に示す例においては、第１遅延時間測定部１１１は、ストレージ装置＃０とストレージ装置＃１との間及びストレージ装置＃０とストレージ装置＃２との間の第１遅延時間ｔ１として１０ｍｓを測定する。また、第２遅延時間測定部１１２は、第２遅延時間ｔ２として１ｍｓを測定する。更に、第３遅延時間測定部１１３は、ＳＳＤ２１ａの第３遅延時間ｔ３として１ｍｓを測定し、ＮＬ２１ｂの第３遅延時間ｔ３として３０ｍｓを測定する。そして、第４遅延時間測定部１１４は、高速２次コピーバッファ２２ａの第４遅延時間ｔ４として１ｍｓを測定し、中速２次コピーバッファ２２ｃの第４遅延時間ｔ４として１０ｍｓを測定し、低速２次コピーバッファ２２ｂの第４遅延時間ｔ４として２０ｍｓを測定する。
【００５５】
最初に、ストレージ装置＃０のＳＳＤ２１ａ及びストレージ装置＃１のＳＳＤ２１ａにデータを格納する場合のコピーバッファの選択処理を説明する。
コピーバッファ選択部１１５は、ＳＳＤ２１ａにデータを格納する場合の非同期コピー処理時間Ｔａｓとして、
Ｔａｓ＝ｔ２＋ｔ３＝１＋１＝２ｍｓ
を算出する。コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する。図３に示す例においては、
ｔ１×２＝１０×２＝２０ｍｓ
であるので、Ｔａｓ≦ｔ１×２が成り立つ。よって、コピーバッファ選択部１１５は、複数種類の２次コピーバッファ２２のうち処理速度が大きい高速２次コピーバッファ２２ａを選択する。これにより、選択された高速２次コピーバッファ２２ａを用いた同期コピー処理時間は、
Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４＝１０＋１０＋１＋１＝２２ｍｓ
となる。そして、同期コピー処理時間Ｔｓは、選択されなかった中速２次コピーバッファ２２ｃ又は低速２次コピーバッファ２２ｂを用いた同期コピー処理を行なう場合に比べて、非同期コピー処理時間Ｔａｓに対して近い値となる。
【００５６】
つまり、サーバ装置＃０はＳＳＤ２１ａに書き込むデータをストレージ装置＃０に送信し、ＣＭ１０は受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ｂ１参照）。
ＣＭ１０は、キャッシュメモリ１２０に一時記憶させたデータをＳＳＤ２１ａに格納する（符号Ｂ２参照）。
【００５７】
一方、ＣＭ１０は、ストレージ装置＃１に格納するデータとして、キャッシュメモリ１２０が吐き出したデータをコピーバッファ選択部１１５が選択した高速２次コピーバッファ２２ａに一時記憶させる（符号Ｂ３参照）。
ＣＭ１０は、高速２次コピーバッファ２２ａに一時記憶させたデータを読み出し、図３に示さない１次コピーバッファ１２１に一時記憶させる。ＣＭ１０は、１次コピーバッファ１２１に一時記憶させたデータを読み出し、ストレージ装置＃１に送信する。ストレージ装置＃１のＣＭ１０ａは、受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ｂ４参照）。
【００５８】
ストレージ装置＃１のＣＭ１０ａは、キャッシュメモリ１２０に一時記憶させたデータをＳＳＤ２１ａに格納する（符号Ｂ５参照）。
次に、図３を用いて、ストレージ装置＃０のＮＬ２１ｂ及びストレージ装置＃２のＮＬ２１ｂにデータを格納する場合のコピーバッファの選択処理を説明する。
コピーバッファ選択部１１５は、ＮＬ２１ｂにデータを格納する場合の非同期コピー処理時間Ｔａｓとして、
Ｔａｓ＝ｔ２＋ｔ３＝１＋３０＝３１ｍｓ
を算出する。コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する。図３に示す例においては、
ｔ１×２＝１０×２＝２０ｍｓ
であるので、Ｔａｓ≦ｔ１×２が成り立たない。よって、コピーバッファ選択部１１５は、処理速度が最小の２次コピーバッファ２２から順次Ｔａｓ≧Ｔｓを満たすかを判定し、最初にＴａｓ≧Ｔｓを満たす２次コピーバッファ２２を選択する。処理速度が最小の低速２次コピーバッファ２２ｂの非同期コピー処理時間は、
Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４＝１０＋１０＋１＋２０＝４１ｍｓ
となり、Ｔａｓ≧Ｔｓを満たさない。処理速度が次に小さい中速２次コピーバッファ２２ｃの非同期コピー処理時間は、
Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４＝１０＋１０＋１＋１０＝３１ｍｓ
となり、Ｔａｓ≧Ｔｓを満たす。そして、同期コピー処理時間Ｔｓは、選択されなかった高速２次コピーバッファ２２ａ又は低速２次コピーバッファ２２ｂを用いた同期コピー処理を行なう場合に比べて、非同期コピー処理時間Ｔａｓに対して近い値（同値）となる。よって、コピーバッファ選択部１１５は、中速２次コピーバッファ２２ｃを選択する。
【００５９】
つまり、サーバ装置＃０はＮＬ２１ｂに書き込むデータをストレージ装置＃０に送信し、ＣＭ１０は受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ｂ６参照）。
ＣＭ１０は、キャッシュメモリ１２０に一時記憶させたデータをＮＬ２１ｂに格納する（符号Ｂ７参照）。
【００６０】
一方、ＣＭ１０は、ストレージ装置＃２に格納するデータとして、キャッシュメモリ１２０が吐き出したデータをコピーバッファ選択部１１５が選択した中速２次コピーバッファ２２ｃに一時記憶させる（符号Ｂ８参照）。
ＣＭ１０は、中速２次コピーバッファ２２ｃに一時記憶させたデータを読み出し、図３に示さない１次コピーバッファ１２１に一時記憶させる。ＣＭ１０は、１次コピーバッファ１２１に一時記憶させたデータを読み出し、ストレージ装置＃２に送信する。ストレージ装置＃２のＣＭ１０ａは、受信したデータをキャッシュメモリ１２０に一時記憶させる（符号Ｂ９参照）。
【００６１】
ストレージ装置＃２のＣＭ１０ａは、キャッシュメモリ１２０に一時記憶させたデータをＮＬ２１ｂに格納する（符号Ｂ１０参照）。
〔Ａ−２〕動作
上述の如く構成された実施形態の一例としてのストレージ装置におけるリモートコピー処理を図４に示すフローチャート（ステップＳ１〜Ｓ８）に従って説明する。
【００６２】
図４に示すフローチャートにおいては、図２又は図３に示したストレージネットワーク１０００が備えるストレージ装置＃０における動作を説明する。
第２遅延時間測定部１１２は、ホストレスポンス初期値として、第２遅延時間ｔ２を測定する（ステップＳ１）。ホストレスポンス初期値測定の詳細例は、図５のステップＳ１１〜Ｓ２０を用いて後述する。
【００６３】
第１遅延時間測定部１１１，第３遅延時間測定部１１３及び第４遅延時間測定部１１４は、コピーレスポンスタイム初期値として、第１遅延時間ｔ１，第３遅延時間ｔ３及び第４遅延時間ｔ４をそれぞれ測定する（ステップＳ２）。コピーレスポンスタイム初期値測定の詳細例は、図６のステップＳ２２〜Ｓ２４を用いて後述する。
コピーバッファ選択部１１５は、ホストレスポンス初期値及びコピーレスポンスタイム初期値に基づき、２次コピーバッファ２２の選定及び位置調整を行なう（ステップＳ３）。２次コピーバッファの選定・位置調整の詳細例は、図７のステップＳ２７〜Ｓ３２を用いて後述する。
【００６４】
ストレージ装置１のＣＭ１０は、リモートコピー処理を開始する（ステップＳ４）。
第１遅延時間測定部１１１，第３遅延時間測定部１１３及び第４遅延時間測定部１１４は、コピーレスポンスタイム実動作値として、第１遅延時間ｔ１，第３遅延時間ｔ３及び第４遅延時間ｔ４をそれぞれ測定する（ステップＳ５）。コピーレスポンスタイム実動作値測定の詳細例は、図８のステップＳ３４〜Ｓ３６を用いて後述する。
【００６５】
コピーバッファ選択部１１５は、ホストレスポンス初期値及びコピーレスポンスタイム実測値に基づき、２次コピーバッファ２２の選定及び位置調整を行なう（ステップＳ６）。２次コピーバッファの選定・位置調整の詳細例は、図９のステップＳ３９〜Ｓ４４を用いて後述する。
ストレージ装置１のＣＭ１０は、リモートコピー処理を実施する（ステップＳ７）。
【００６６】
ストレージ装置１のＣＭ１０は、リモートコピー処理が完了したかを判定する（ステップＳ８）。
リモートコピー処理が完了していない場合には（ステップＳ８のＮｏルート参照）、ステップＳ７に戻る。
一方、リモートコピー処理が完了した場合には（ステップＳ８のＹｅｓルート参照）、ステップＳ２に戻る。
【００６７】
次に、実施形態の一例としてのストレージ装置におけるリモートコピー処理の詳細例を図５〜図９に示すフローチャート（ステップＳ１１〜Ｓ４６）に従って説明する。図５にはステップＳ１１〜Ｓ２０を示し、図６にはステップＳ２１〜Ｓ２６を示し、図７にはステップＳ２７〜Ｓ３２を示し、図８にはステップＳ３３〜Ｓ３８を示し、図９にはステップＳ３９〜Ｓ４６を示す。
【００６８】
図５〜図９に示すフローチャートにおいては、図３に示したストレージネットワーク１０００が備えるストレージ装置＃０における動作の詳細例を説明する。
ストレージ装置＃０が起動すると（図５のステップＳ１１）、第２遅延時間測定部１１２は、サーバ装置＃０（ホスト）からストレージ装置１の認識コマンドを受信したかを判定する（図５のステップＳ１２）。
【００６９】
ホストから認識コマンドを受信していない場合には（図５のステップＳ１２のＮｏルート参照）、図５のステップＳ１２に戻り待機する。
一方、ホストから認識コマンドを受信した場合には（図５のステップＳ１２のＹｅｓルート参照）、第２遅延時間測定部１１２は、コマンドＩＤを認識し、第２遅延時間ｔ２の測定を開始する（図５のステップＳ１３）。
【００７０】
第２遅延時間測定部１１２は、コマンドが終了したかを判定する（図５のステップＳ１４）。
コマンドが終了していない場合には（図５のステップＳ１４のＮｏルート参照）、図５のステップＳ１４に戻り、第２遅延時間ｔ２の測定を継続する。
一方、コマンドが終了した場合には（図５のステップＳ１４のＹｅｓルート参照）、第２遅延時間測定部１１２は、コマンドＩＤを認識し、第２遅延時間ｔ２の測定を完了する（図５のステップＳ１５）。
【００７１】
第２遅延時間測定部１１２は、サーバ装置＃０が認識できたかを判定する（図５のステップＳ１６）。
サーバ装置＃０が認識できなかった場合には（図５のステップＳ１６のＮｏルート参照）、図５のステップＳ１６に戻り、サーバ装置＃０が認識できるまで待機する。
一方、サーバ装置＃０が認識できた場合には（図５のステップＳ１６のＹｅｓルート参照）、サーバ装置＃０（ホスト）から書き込み処理のコマンドを受信したかを判定する（図５のステップＳ１７）。
【００７２】
ホストから書き込み処理のコマンドを受信していない場合には（図５のステップＳ１７のＮｏルート参照）、図５のステップＳ１７に戻り、ホストから書き込み処理のコマンドを受信するまで待機する。
一方、ホストから書き込みコマンドを受信した場合には（図５のステップＳ１７のＹｅｓルート参照）、第２遅延時間測定部１１２は、コマンドＩＤを認識し、第２遅延時間ｔ２の測定を開始する（図５のステップＳ１８）。
【００７３】
第２遅延時間測定部１１２は、コマンドが終了したかを判定する（図５のステップＳ１９）。
コマンドが終了していない場合には（図５のステップＳ１９のＮｏルート参照）、図５のステップＳ１９に戻り、第２遅延時間ｔ２の測定を継続する。
一方、コマンドが終了した場合には（図５のステップＳ１９のＹｅｓルート参照）、第２遅延時間測定部１１２は、コマンドＩＤを認識し、第２遅延時間ｔ２の測定を完了する（図５のステップＳ２０）。
【００７４】
以上、図５のステップＳ１１〜Ｓ２０の処理により、図４のステップＳ１に示したホストレスポンス初期値測定の処理が完了する。
図５のステップＳ１１〜Ｓ２０に示す例においては、第２遅延時間測定部１１２は、ステップＳ１３〜Ｓ１５とステップＳ１８〜Ｓ２０とにおいて、第２遅延時間ｔ２の測定をそれぞれ行なっている。以下では、コピーバッファ選択部１１５は、ステップＳ１８〜Ｓ２０において測定した第２遅延時間ｔ２を用いて、２次コピーバッファ２２の選択を行なう。
【００７５】
ストレージ装置＃０のＣＭ１０は、リモートコピー（ＲＥＣ）スケジュール時間が到来したかを判定する（図６のステップＳ２１）。
ＲＥＣスケジュール時間が到来していない場合には（図６のステップＳ２１のＮｏルート参照）、図６のステップＳ２１に戻り、ＲＥＣスケジュール時間が到来するまで待機する。
【００７６】
一方、ＲＥＣスケジュール時間が到来した場合には（図６のステップＳ２１のＹｅｓルート参照）、第４遅延時間測定部１１４は、キャッシュメモリ１２０から２次コピーバッファ２２にデータを書き込むために要する時間を、第４遅延時間ｔ４として測定する（図６のステップＳ２２）。
第１遅延時間測定部１１１は、ストレージ装置＃０とストレージ装置＃１との間及びストレージ装置＃０とストレージ装置＃２との間の伝送経路によって発生する第１遅延時間ｔ１を測定する（図６のステップＳ２３）。
【００７７】
第３遅延時間測定部１１３は、キャッシュメモリ１２０からＲＡＩＤグループを構成する記憶装置２１にデータを書き込む時間を、第３遅延時間ｔ３として測定する（図６のステップＳ２４）。
以上、図６のステップＳ２２〜Ｓ２４の処理により、図４のステップＳ２に示したコピーレスポンス初期値測定の処理が完了する。
【００７８】
コピーバッファ選択部１１５は、同期コピー処理時間Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４
を計算する（図６のステップＳ２５）。
コピーバッファ選択部１１５は、非同期コピー処理時間Ｔａｓ＝ｔ２＋ｔ３を計算する（図６のステップＳ２６）。
コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する（図７のステップＳ２７）。
【００７９】
Ｔａｓ≦ｔ１×２が成り立つ場合には（図７のステップＳ２７のＹｅｓルート参照）、コピーバッファ選択部１１５は、高速２次コピーバッファ２２ａを選択し（図７のステップＳ３０）、図８のステップＳ３３に移行する。
一方、Ｔａｓ≦ｔ１×２が成り立たない場合には（図７のステップＳ２７のＮｏルート参照）、コピーバッファ選択部１１５は、第４遅延時間ｔ４が最大の場合に、Ｔａｓ≧Ｔｓが成り立つかを判定する（図７のステップＳ２８）。
【００８０】
第４遅延時間ｔ４が最大の場合にＴａｓ≧Ｔｓが成り立つ場合には（図７のステップＳ２８のＹｅｓルート参照）、コピーバッファ選択部１１５は、低速２次コピーバッファ２２ｂを選択し（図７のステップＳ３１）、図８のステップＳ３３に移行する。
一方、第４遅延時間ｔ４が最大の場合にＴａｓ≧Ｔｓが成り立たない場合には（図７のステップＳ２８のＮｏルート参照）、コピーバッファ選択部１１５は、第４遅延時間ｔ４が次に大きい場合に、Ｔａｓ≧Ｔｓが成り立つかを判定する（図７のステップＳ２９）。
【００８１】
第４遅延時間ｔ４が次に大きい場合にＴａｓ≧Ｔｓが成り立つ場合には（図７のステップＳ２９のＹｅｓルート参照）、コピーバッファ選択部１１５は、中速２次コピーバッファ２２ｃを選択し（ステップＳ３２）、図８のステップＳ３３に移行する。
一方、第４遅延時間ｔ４が次に大きい場合にＴａｓ≧Ｔｓが成り立たない場合には（図７のステップＳ２９のＮｏルート参照）、ステップＳ３０に移行する。
【００８２】
以上、図７のステップＳ２７〜Ｓ３２の処理により、図４のステップＳ３に示した２次コピーバッファの選定・位置調整の処理が完了する。
ストレージ装置＃０のＣＭ１０は、ＲＥＣ動作状態におけるコマンド処理を実施する（図８のステップＳ３３）。
第４遅延時間測定部１１４は、キャッシュメモリ１２０から２次コピーバッファ２２にデータを書き込むために要する時間を、第４遅延時間ｔ４として測定する（図８のステップＳ３４）。
【００８３】
第１遅延時間測定部１１１は、ストレージ装置＃０とストレージ装置＃１との間及びストレージ装置＃０とストレージ装置＃２との間の伝送経路によって発生する第１遅延時間ｔ１を測定する（図８のステップＳ３５）。
第３遅延時間測定部１１３は、キャッシュメモリ１２０からＲＡＩＤグループを構成する記憶装置２１にデータを書き込むために要する時間を、第３遅延時間ｔ３として測定する（図８のステップＳ３６）。
【００８４】
以上、図８のステップＳ３４〜Ｓ３６の処理により、図４のステップＳ５に示したコピーレスポンス実測値測定の処理が完了する。以下、コピーバッファ選択部１１５は、図８のステップＳ３４〜Ｓ３６において第４遅延時間測定部１１４，第１遅延時間測定部１１１及び第３遅延時間測定部１１３がそれぞれ測定した第４遅延時間ｔ４，第１遅延時間ｔ１及び第３遅延時間ｔ３を用いて、２次コピーバッファ２２の選択を行なう。
【００８５】
コピーバッファ選択部１１５は、同期コピー処理時間Ｔｓ＝ｔ１＋ｔ１＋ｔ２＋ｔ４を計算する（図８のステップＳ３７）。
コピーバッファ選択部１１５は、非同期コピー処理時間Ｔａｓ＝ｔ２＋ｔ３を計算する（図８のステップＳ３８）。
コピーバッファ選択部１１５は、Ｔａｓ≦ｔ１×２が成り立つかを判定する（図９のステップＳ３９）。
【００８６】
Ｔａｓ≦ｔ１×２が成り立つ場合には（図９のステップＳ３９のＹｅｓルート参照）、コピーバッファ選択部１１５は、高速２次コピーバッファ２２ａを選択し（図９のステップＳ４２）、図９のステップＳ４５に移行する。
一方、Ｔａｓ≦ｔ１×２が成り立たない場合には（図９のステップＳ３９のＮｏルート参照）、コピーバッファ選択部１１５は、第４遅延時間ｔ４が最大の場合に、Ｔａｓ≧Ｔｓが成り立つかを判定する（図９のステップＳ４０）。
【００８７】
第４遅延時間ｔ４が最大の場合にＴａｓ≧Ｔｓが成り立つ場合には（図９のステップＳ４０のＹｅｓルート参照）、コピーバッファ選択部１１５は、低速２次コピーバッファ２２ｂを選択し（図９のステップＳ４３）、図９のステップＳ４５に移行する。
一方、第４遅延時間ｔ４が最大の場合にＴａｓ≧Ｔｓが成り立たない場合には（図９のステップＳ４０のＮｏルート参照）、コピーバッファ選択部１１５は、第４遅延時間ｔ４が次に大きい場合に、Ｔａｓ≧Ｔｓが成り立つかを判定する（図９のステップＳ４１）。
【００８８】
第４遅延時間ｔ４が次に大きい場合にＴａｓ≧Ｔｓが成り立つ場合には（図９のステップＳ４１のＹｅｓルート参照）、コピーバッファ選択部１１５は、中速２次コピーバッファ２２ｃを選択し（ステップＳ４４）、図９のステップＳ４５に移行する。
一方、第４遅延時間ｔ４が次に大きい場合にＴａｓ≧Ｔｓが成り立たない場合には（図９のステップＳ４１のＮｏルート参照）、図９のステップＳ４２に移行する。
【００８９】
以上、図９のステップＳ３９〜Ｓ４４の処理により、図４のステップＳ６に示した２次コピーバッファの選定・位置調整の処理が完了する。
ストレージ装置＃０のＣＭ１０は、ＲＥＣ動作状態におけるコマンド処理を実施する（図９のステップＳ４５）。
ストレージ装置＃０のＣＭ１０は、ＲＥＣスケジュールが終了したかを判定する（図９のステップＳ４６）。
【００９０】
ＲＥＣスケジュールが終了していない場合には（図９のステップＳ４６のＮｏルート参照）、図９のステップＳ４６に戻り、コマンド処理を継続する。
一方、ＲＥＣスケジュールが終了した場合には（図９のステップＳ４６のＹｅｓルート参照）、図６のステップＳ２１に戻る。
〔Ａ−３〕効果
このように、本実施形態の一例におけるストレージ装置１によれば、以下の効果を奏することができる。
【００９１】
コピーバッファ選択部１１５は、第１遅延時間測定部１１１が測定した第１遅延時間ｔ１と閾値との大きさの比較に基づき、他のストレージ装置１ａに送信するデータを格納するコピーバッファ２２を複数種類のコピーバッファ２２の中から選択する。これにより、同期データコピーの処理時間を適切化することができる。
コピーバッファ選択部１１５は、第２遅延時間ｔ２と第３遅延時間ｔ３との和が第１遅延時間ｔ１の２倍の値以下である場合に、第４遅延時間ｔ４が最小となるコピーバッファ２２を複数種類のコピーバッファ２２の中から選択する。これにより、非同期コピー処理時間Ｔａｓが同期コピー処理時間Ｔｓ以下である場合に、ストレージ装置１ａ宛てのデータを例えば高速２次コピーバッファ２２ａに格納することができ、同期データコピーにおけるサーバ応答時間を短くすることができる。
【００９２】
コピーバッファ選択部１１５は、第２遅延時間ｔ２と第３遅延時間ｔ３との和が第１遅延時間ｔ１の２倍の値より大きい場合に、第３遅延時間ｔ３が第１遅延時間ｔ１の２倍の値と第４遅延時間ｔ４との和以上となるコピーバッファ２２を複数種類のコピーバッファ２２の中から選択する。これにより、非同期コピー処理時間Ｔａｓが同期コピー処理時間Ｔｓより大きい場合に、ストレージ装置１ａ宛てのデータを例えば低速２次コピーバッファ２２ｂに格納することができ、高速２次コピーバッファ２２ａの負荷を低減させることができる。
【００９３】
コピーバッファ選択部１１５は、第３遅延時間ｔ３が第１遅延時間ｔ１の２倍の値と第４遅延時間ｔ４との和に最も近くなるコピーバッファ２２を複数種類のコピーバッファ２２の中から選択する。これにより、非同期コピー処理時間Ｔａｓと同期コピー処理時間Ｔｓとの値を可能な限り近づけることができ、同期データコピーの処理時間を最適化することができる。
【００９４】
データ書き込み処理の開始前と実行中とにおいて、第１遅延時間測定部１１１による第１遅延時間ｔ１の測定と、コピーバッファ選択部１１５によるコピーバッファ２２の選択とを繰り返し行なう。これにより、データ書き込み処理の開始後において通信経路の負荷が変化した場合においても、適切なコピーバッファ２２を選択することができる。
ここで、図２を用いて上述したコピー元のストレージ装置＃０とコピー先のストレージ装置＃１，＃２とがそれぞれ異なる回線を使用するストレージネットワーク１０００においては、以下のような制約がある。
【００９５】
（１）コピー先のストレージ装置１ａ毎に通信経路上で発生する第１遅延時間ｔ１が異なる。
（２）コピー元のストレージ装置１とコピー先のストレージ装置１ａとにおいて、同一のデータを格納する記憶装置２１の種類が異なる場合があり、サーバ装置２に対する応答時間の上限値が異なる可能性がある。
【００９６】
また、図３を用いて上述したコピー元のストレージ装置＃０とコピー先のストレージ装置＃１，＃２とが同一の回線を使用するストレージネットワーク１０００においても、上記（２）に挙げたような制約がある。
本実施形態の一例におけるストレージ装置１によれば、上記（１）及び（２）の制約がある場合においても、コピーバッファ選択部１１５が適切な２次コピーバッファ２２を選択することができ、サーバ応答時間を短くするべきコピー処理の時間を短くすることができる。
【００９７】
更に、階層制御システムにおいては、データのアクセス頻度によってコピー元のストレージ装置１におけるデータの格納領域が変化する可能性がある。しかしながら、本実施形態の一例におけるストレージ装置１によれば、コピーバッファ選択部１１５がデータの格納領域の変化に応じた適切な２次コピーバッファ２２を選択することができる。
〔Ｂ〕変形例
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
【００９８】
上述した実施形態の一例においては、ストレージ装置１のＤＥ２０が複数種類の２次コピーバッファ２２（例えば図２に示した高速２次コピーバッファ２２ａ及び低速２次コピーバッファ２２ｂ）を備えているが、これに限定されるものではない。
本実施形態の変形例におけるストレージ装置１のＤＥ２０は、１つ以上の２次コピーバッファ２２を備える。
【００９９】
そして、コピーバッファ選択部１１５は、上述した実施形態の一例のように算出した同期コピー処理時間Ｔｓと非同期コピー処理時間Ｔａｓとに基づき、他のストレージ装置１ａ宛てのデータについて２次コピーバッファ２２を使用するか否かを判断する。
例えば、複数種類の２次コピーバッファ２２のうち処理速度が最大の高速２次コピーバッファ２２ａを選択しても、Ｔａｓ≧Ｔｓが成り立たない場合には、コピーバッファ選択部１１５は、２次コピーバッファ２２を使用しないことを決定する。
【０１００】
このように、本実施形態の変形例においても、上述した実施形態の一例と同様の効果を奏することができる他に以下の効果を奏することができる。
非同期コピー処理時間Ｔａｓが同期コピー処理時間Ｔｓ未満である場合に、他のストレージ装置１ａ宛てのデータを２次コピーバッファ２２に格納させないことができ、同期データコピーにおけるサーバ応答時間を短くすることができる。
【０１０１】
〔Ｃ〕付記
（付記１）
他のストレージ装置と通信可能に接続されるストレージ装置であって、
前記他のストレージ装置に送信するデータを格納する複数種類のコピーバッファと、
当該ストレージ装置と前記他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定する第１遅延時間測定部と、
前記第１遅延時間と閾値との大きさの比較に基づき、前記他のストレージ装置に送信するデータを格納するコピーバッファを前記複数種類のコピーバッファの中から選択するコピーバッファ選択部と、
を備えることを特徴とする、ストレージ装置。
【０１０２】
（付記２）
当該ストレージ装置と上位装置との間の通信経路上で発生する第２遅延時間を測定する第２遅延時間測定部と、
当該ストレージ装置が備える記憶装置へのデータアクセスにおいて発生する第３遅延時間を測定する第３遅延時間測定部と、
を備え、
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間とに基づき、前記閾値を算出する、
ことを特徴とする、付記１に記載のストレージ装置。
【０１０３】
（付記３）
前記複数種類のコピーバッファのそれぞれへのデータアクセスにおいて発生する第４遅延時間をそれぞれ測定する第４遅延時間測定部を備え、
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間との和が前記第１遅延時間の２倍の値以下である場合に、前記第４遅延時間が最小となるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、付記２に記載のストレージ装置。
【０１０４】
（付記４）
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間との和が前記第１遅延時間の２倍の値より大きい場合に、前記第３遅延時間が前記第１遅延時間の２倍の値と前記第４遅延時間との和以上となるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、付記３に記載のストレージ装置。
【０１０５】
（付記５）
前記コピーバッファ選択部は、前記第３遅延時間が前記第１遅延時間の２倍の値と前記第４遅延時間との和に最も近くなるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、付記４に記載のストレージ装置。
【０１０６】
（付記６）
データ書き込み処理の開始前と実行中とにおいて、前記第１遅延時間測定部による前記第１遅延時間の測定と、前記コピーバッファ選択部による前記コピーバッファの選択とを繰り返し行なう、
ことを特徴とする、付記１〜５のいずれか１項に記載のストレージ装置。
【０１０７】
（付記７）
他のストレージ装置と通信可能に接続されるストレージ装置に備えられる制御装置であって、
前記ストレージ装置と前記他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定する第１遅延時間測定部と、
前記第１遅延時間と閾値との大きさの比較に基づき、前記他のストレージ装置に送信するデータを格納するコピーバッファを前記ストレージ装置が備える複数種類のコピーバッファの中から選択するコピーバッファ選択部と、
を備えることを特徴とする、制御装置。
【０１０８】
（付記８）
前記ストレージ装置と上位装置との間の通信経路上で発生する第２遅延時間を測定する第２遅延時間測定部と、
前記ストレージ装置が備える記憶装置へのデータアクセスにおいて発生する第３遅延時間を測定する第３遅延時間測定部と、
を備え、
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間とに基づき、前記閾値を算出する、
ことを特徴とする、付記７に記載の制御装置。
【０１０９】
（付記９）
前記複数種類のコピーバッファのそれぞれへのデータアクセスにおいて発生する第４遅延時間をそれぞれ測定する第４遅延時間測定部を備え、
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間との和が前記第１遅延時間の２倍の値以下である場合に、前記第４遅延時間が最小となるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、付記８に記載の制御装置。
【０１１０】
（付記１０）
前記コピーバッファ選択部は、前記第２遅延時間と前記第３遅延時間との和が前記第１遅延時間の２倍の値より大きい場合に、前記第３遅延時間が前記第１遅延時間の２倍の値と前記第４遅延時間との和以上となるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、付記９に記載の制御装置。
【０１１１】
（付記１１）
前記コピーバッファ選択部は、前記第３遅延時間が前記第１遅延時間の２倍の値と前記第４遅延時間との和に最も近くなるコピーバッファを前記複数種類のコピーバッファの中から選択する、
ことを特徴とする、付記１０に記載の制御装置。
【０１１２】
（付記１２）
データ書き込み処理の開始前と実行中とにおいて、前記第１遅延時間測定部による前記第１遅延時間の測定と、前記コピーバッファ選択部による前記コピーバッファの選択とを繰り返し行なう、
ことを特徴とする、付記７〜１１のいずれか１項に記載の制御装置。
【０１１３】
（付記１３）
他のストレージ装置と通信可能に接続されるストレージ装置に備えられるコンピュータに、
当該ストレージ装置と前記他のストレージ装置との間の通信経路上で発生する第１遅延時間を測定し、
前記第１遅延時間と閾値との大きさの比較に基づき、前記他のストレージ装置に送信するデータを格納するコピーバッファを当該ストレージ装置が備える複数種類のコピーバッファの中から選択する、
処理を実行させることを特徴とする、制御プログラム。
【０１１４】
（付記１４）
当該ストレージ装置と上位装置との間の通信経路上で発生する第２遅延時間を測定し、
当該ストレージ装置が備える記憶装置へのデータアクセスにおいて発生する第３遅延時間を測定し、
前記第２遅延時間と前記第３遅延時間とに基づき、前記閾値を算出する、
処理を前記コンピュータに実行させることを特徴とする、付記１３に記載の制御プログラム。
【符号の説明】
【０１１５】
ＮＷ      ネットワーク
１０００  ストレージネットワーク
１００    ストレージシステム
１        ストレージ装置
１ａ      ストレージ装置
１０      ＣＭ（制御装置）
１０ａ    ＣＭ
１１      ＣＰＵ（コンピュータ）
１２      メモリ
１２０    キャッシュメモリ
１２１    １次コピーバッファ
１３      ホストＩＦ
１４      ディスクＩＦ
１５      リモート接続部
１６      メンテナンスＩＦ
２０      ＤＥ
２０ａ    ＤＥ
２１      記憶装置
２１ａ    ＳＳＤ（記憶装置）
２１ｂ    ＮＬ（記憶装置）
２２      ２次コピーバッファ（コピーバッファ）
２２ａ    高速２次コピーバッファ（コピーバッファ）
２２ｂ    低速２次コピーバッファ（コピーバッファ）
２２ｃ    中速２次コピーバッファ（コピーバッファ）
２        サーバ装置
３        管理コンソール
２０００  ストレージネットワーク
２００    ストレージシステム
４        ストレージ装置
４０      ＣＭ
４２０    キャッシュメモリ
４２１    １次コピーバッファ
５０      ＤＥ
５１      記憶装置
５２      ２次コピーバッファ
【図１】
2015161999.tif 000003
【図２】
2015161999.tif 000004
【図３】
2015161999.tif 000005
【図４】
2015161999.tif 000006
【図５】
2015161999.tif 000007
【図６】
2015161999.tif 000008
【図７】
2015161999.tif 000009
【図８】
2015161999.tif 000010
【図９】
2015161999.tif 000011
【図１０】
2015161999.tif 000012