【手続補正書】
【提出日】平成20年3月25日(2008.3.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
２つの仮想サーバとそれぞれがホスト・デバイスおよび各仮想サーバに結合された複数の仮想コントローラとを有し、各仮想サーバは２つのストレージ・ライブラリのうちの１つにさらに結合された、データ・ストレージ・システム内に、データを格納するための方法であって、
データのボリュームを格納するためにホスト・デバイスからの書き込み要求を第１の仮想コントローラ内で受信するステップと、
第１のライブラリに格納するために前記ボリュームを第１の仮想サーバへ送信するステップと、
前記第１の仮想コントローラのキューに前記ボリュームをコピーする旨の要求をキューイングするステップと、
前記コピー要求が前記第１の仮想コントローラによって所定の時間内に処理されない場合は、
（ａ）  前記コピー要求を各々の他の仮想コントローラにブロードキャストするステップと、
（ｂ）  前記コピー要求を各々の他の仮想コントローラのコピー・キュー内に配置するステップと、
（ｃ）  前記コピー要求を前記仮想コントローラのうちの１つによって処理するステップと、
（ｄ）  前記処理中の仮想コントローラから各々の処理中でない仮想コントローラへ、「完了」メッセージをブロードキャストするステップと、
前記第１の仮想コントローラから前記ホスト・デバイスへ「コピー完了」メッセージを送信するステップと、
を有する方法。
【請求項２】
前記コピー要求を各々の他の仮想コントローラにブロードキャストするステップが、
コピー要求を、前記第１の仮想コントローラから、前記第１および第２の仮想サーバのうちの１つにあるルーティング・デバイスへ送信するステップと、
前記コピー要求を、前記ルーティング・デバイスから各々の他の仮想コントローラへブロードキャストするステップと、
を有する、請求項１に記載の方法。
【請求項３】
前記「完了」メッセージを、各々の処理中でない仮想コントローラへブロードキャストするステップが、
前記「完了」メッセージを、前記処理中の仮想コントローラから、前記第１および第２の仮想サーバのうちの１つにあるルーティング・デバイスへ送信するステップと、
前記「完了」メッセージを、前記ルーティング・デバイスから各々の他の仮想コントローラへブロードキャストするステップと、
を有する、請求項１に記載の方法。
【請求項４】
前記コピー要求を各々の他の仮想コントローラへブロードキャストするステップが、
コピー要求を、前記第１の仮想コントローラから、前記第１および第２の仮想サーバのうちの１つにあるルーティング・デバイスへ送信するステップと、
前記コピー要求を、前記ルーティング・デバイスから他の各仮想コントローラへブロードキャストするステップと、
を有し、
前記「完了」メッセージを、各々の処理中でない仮想コントローラへブロードキャストするステップが、
前記「完了」メッセージを、前記処理中の仮想コントローラから、前記第１および第２の仮想サーバのうちの１つにあるルーティング・デバイスへ送信するステップと、
前記「完了」メッセージを、前記ルーティング・デバイスから各々の他の仮想コントローラへブロードキャストするステップと、
を有する、
請求項１に記載の方法。
【請求項５】
前記コピー要求の処理に続いて、各々の処理中でない仮想コントローラのキューから前記コピー要求をデキューイングするステップをさらに有する、請求項１に記載の方法。
【請求項６】
各々の仮想コントローラが、各種遅延期間について前記コピー要求を処理しようとするのを防止するステップをさらに有する、請求項１に記載の方法。
【請求項７】
各種遅延の各々がランダムな遅延を有する、請求項６に記載の方法。
【請求項８】
各種遅延期間の各々が複数の所定の時間単位からランダムに選択される、請求項６に記載の方法。
【請求項９】
前記所定の時間がほぼ１秒である、請求項１に記載の方法。
【請求項１０】
前記仮想コントローラが仮想テープ・コントローラであり、前記仮想サーバが仮想テープ・サーバである、請求項１に記載の方法。
【請求項１１】
その各々がホスト・デバイスに接続された複数の仮想コントローラと、
その各々が各仮想コントローラに接続された第１および第２の仮想サーバと、
その各々が第１および第２の仮想サーバにそれぞれ接続された、第１および第２のストレージ・ライブラリと、
データのボリュームを格納するための前記ホスト・デバイスからの書き込み要求を第１の仮想コントローラ内で受信するための手段と、
前記第１のストレージ・ライブラリに格納するために前記第１の仮想サーバへ前記ボリュームを送信するための手段と、
前記第１の仮想コントローラのキューに前記ボリュームをコピーする旨の要求をキューイングするための手段と、
前記コピー要求が前記第１の仮想コントローラによって所定の時間枠内に処理されない場合は、前記コピー要求を各々の他の仮想コントローラにブロードキャストするための手段と、
前記コピー要求を各々の他の仮想コントローラのキューにキューイングするための手段と、
前記コピー要求を前記仮想コントローラのうちの１つによって処理するための手段と、
前記処理中の仮想コントローラから各々の処理中でないコントローラへ、「完了」メッセージをブロードキャストするための手段と、
前記第１の仮想コントローラから前記ホスト・デバイスへ「コピー完了」メッセージを送信するための手段と、
を有する、データ・ストレージ・システム。
【請求項１２】
ホスト・デバイスに接続するためのホスト・アダプタと、
第１および第２の仮想ストレージ・サーバにそれぞれ接続するための第１および第２のアダプタであって、前記第１および第２の仮想サーバはそれぞれ第１および第２のストレージ・ライブラリに結合され、さらに複数の他の仮想ストレージ・コントローラの各々に結合される、第１および第２のアダプタと、
前記ホスト・デバイスから受信したコピー要求を格納するためのコピー・キューと、
（１）  データのボリュームを格納するために前記ホスト・デバイスから書き込み要求を受信するための命令、
（２）  前記第１のライブラリに格納するために前記ボリュームを前記第１の仮想ストレージ・サーバへ送信するための命令、
（３）  前記ボリュームをコピーする旨の要求を前記コピー・キューにキューイングするための命令、
（４）  前記コピー要求が所定の時間内に前記仮想ストレージ・コントローラによって処理されない場合は、前記コピー要求を各々の他の仮想コントローラにブロードキャストし、それによって前記コピー要求が各々の他の仮想ストレージ・コントローラ内のコピー・キューにキューイングされるための命令、
（５）  前記コピー要求を前記仮想コントローラのうちの１つによって処理するための命令、
（６）  前記コピー要求を処理した仮想ストレージ・コントローラから「完了」メッセージを受信し、前記「完了」メッセージが各々の処理中でないストレージ・コントローラへブロードキャストされるための命令、
（７）  前記ホスト・デバイスへ「コピー完了」メッセージを送信するための命令、
を実行するようにプログラムされたプロセッサと、
を有する、仮想ストレージ・コントローラ。
【請求項１３】
ホスト・デバイスに接続するためのホスト・アダプタと、
第１および第２の仮想ストレージ・サーバにそれぞれ接続するための第１および第２のアダプタであって、前記第１および第２の仮想サーバはそれぞれ第１および第２のストレージ・ライブラリに結合され、さらに、第１の仮想ストレージ・コントローラを含む複数の他の仮想ストレージ・コントローラの各々に結合される、第１および第２のアダプタと、
コピー要求を格納するためのコピー・キューと、
（１）前記第１の仮想ストレージ・コントローラからボリュームをコピーする旨の要求を受信するための命令、
（２）前記ボリュームをコピーする旨の要求を前記コピー・キューにキューイングするための命令、
（３）他の仮想ストレージ・コントローラから「完了」メッセージが受信されない場合に、前記コピー要求を処理するための命令、
（４）各々の他の仮想ストレージ・コントローラに「完了」メッセージをブロードキャストするための命令、
を実行するようにプログラムされたプロセッサと、
を有する、仮想ストレージ・コントローラ。
【請求項１４】
前記仮想ストレージ・コントローラが、他の仮想ストレージ・コントローラと実質的に同時に前記コピー要求を処理しようとする可能性、を減少させるための命令をさらに有する、請求項１３に記載の仮想ストレージ・コントローラ。
【請求項１５】
前記コピー要求を処理するための前記命令が、
他の仮想ストレージ・コントローラから「完了」メッセージが受信されない場合、遅延期間後に前記要求を処理するための命令と、
前記遅延期間中に他の仮想ストレージ・コントローラから「完了」メッセージが受信された場合、前記コピー要求を取り消し、前記コピー・キューから前記コピー要求を除去するための命令と、
を有する、請求項１４に記載の仮想ストレージ・コントローラ。
【請求項１６】
前記遅延期間が、前記コピー要求の対象である前記ボリュームの名前と組み合わされた仮想ストレージ・コントローラのユニット番号から生成された番号を有する、請求項１５に記載の仮想ストレージ・コントローラ。
【請求項１７】
プログラム可能コンピュータと共に使用可能なコンピュータ読取り可能媒体のコンピュータ・プログラムであって、前記コンピュータ・プログラムは、顧客データを格納するために具体化され、複数のうちの第１の仮想ストレージ・コントローラ上で実行可能なコンピュータ読取り可能コードを有し、各々の仮想ストレージ・コントローラは、ホスト・デバイスと第１および第２の仮想ストレージ・サーバとに結合され、前記コンピュータ読取り可能コードは、
データのボリュームを格納するために前記ホスト・デバイスから前記第１の仮想ストレージ・コントローラによって書き込み要求が受信された場合に、
（１）  第１のライブラリに格納するために前記ボリュームを前記第１の仮想ストレージ・サーバに送信し、
（２）  前記ボリュームをコピーする旨の要求を前記第１の仮想ストレージ・コントローラ内のキューにキューイングし、
（３）  前記コピー要求が前記第１の仮想ストレージ・コントローラによって所定の時間内に処理されない場合には、
（３−１）  前記コピー要求を各々の他の仮想ストレージ・コントローラにブロードキャストし、それによって前記コピー要求が各々の他の仮想ストレージ・コントローラのキュー内にキューイングされ、
（３−２）  前記コピー要求を処理中の第２の仮想ストレージ・コントローラから「完了」メッセージを受信し、
（４）  前記コピー要求が前記第１の仮想ストレージ・コントローラによって所定の時間内に処理される場合には、
（４−１）  第２のライブラリに格納するために前記ボリュームを前記第２の仮想ストレージ・サーバに送信し、
（４−２）  「完了」メッセージを各々の他の仮想ストレージ・コントローラにブロードキャストし、それによって各々の他の仮想ストレージ・コントローラ内のコピー・キューから前記コピー要求が除去され、
（５）  前記ホスト・デバイスへ「コピー完了」メッセージを送信し、
データのボリュームを格納するために前記ホスト・デバイスから前記第２の仮想ストレージ・コントローラによって書き込み要求が受信された場合に、
（６）  前記第２の仮想ストレージ・コントローラからボリュームをコピーする旨の要求を受信し、
（７）  前記コピー要求を前記キューにキューイングし、
（８）  「完了」メッセージが他の仮想ストレージ・コントローラから受信されない場合には、
（８−１）  前記コピー要求を処理し、
（８−２）  「完了」メッセージを各々の他のストレージ・コントローラにブロードキャストする、
ための命令を有する、コンピュータ・プログラム。
【請求項１８】
前記コピー要求が前記第１の仮想ストレージ・コントローラによって所定の時間内に処理されない場合に、前記「完了」メッセージの受信に続いて、各々の処理中でない仮想コントローラの前記キューから前記コピー要求をデキューイングするための命令と、
データのボリュームを格納するために前記第２の仮想ストレージ・コントローラによって前記ホスト・デバイスから書き込み要求が受信された場合に、前記コピー要求の前記処理に続いて、前記コピー要求を前記キューから除去するための命令と、
をさらに有する、請求項１７に記載のコンピュータ・プログラム。
【請求項１９】
前記ボリュームをコピーする旨の要求が、前記第１の仮想ストレージ・コントローラによって前記第２の仮想ストレージ・コントローラから受信された場合、前記第１の仮想ストレージ・コントローラが、他の仮想ストレージ・コントローラと実質的に同時に前記コピー要求を処理しようとする可能性、を減少させるための命令をさらに有する、請求項１７に記載のコンピュータ・プログラム。