(57)【要約】      （修正有）【課題】複数のサイトにおけるストレージリソースの管理。【解決手段】ローカルサイト内のコントローラは、ホストコンピュータ、バックアップサーバおよび階層マネージャなどのリクエスタからのストレージリソースを求める要求を処理する。コントローラは、要求に基づく要件に従って、ローカルサイト内のストレージリソースに関する情報を含むそれ自体のリソース情報を検査する。コントローラは、リモートサイト内の他のコントローラにも、各リモートサイト内のストレージリソースを検査するように求める。ローカルサイト内のコントローラは、要件の下で利用可能なストレージリソースに関する応答を収集する。ローカルサイト内のコントローラは、選択されたストレージリソースをリクエスタに通知する。コンピュータおよびバックアップサーバは、コントローラによって提供されたこれらの機能を利用してストレージリソースを取得し解放する。【選択図】図２
2008146627.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ化されたストレージシステムであって、
ａ．少なくとも１つのローカルストレージリソースと、
ｂ．前記コンピュータ化されたストレージシステムを少なくとも１つのリクエスタに接続するように動作可能なネットワークインターフェースと、
ｃ．ストレージコントローラであって、
ｉ．少なくとも１つのストレージリソース要件を含む、前記少なくとも１つのリクエスタからストレージリソースを求める要求を受信し、
ｉｉ．前記少なくとも１つのストレージリソース要件に従って前記少なくとも１つのローカルストレージリソースに関する情報を含むリソース情報を検査し、
ｉｉｉ．リモートサイトにあるストレージリソースを検査するために、前記リモートサイトにある少なくとも１つのリモートコントローラにストレージリソースを求める第２要求を発行し、
ｉｖ．前記少なくとも１つのストレージリソース要件に従って前記リモートサイトにある利用可能なストレージリソースに関する前記少なくとも１つのリモートコントローラからの応答を収集し、
ｖ．前記少なくとも１つのローカルストレージリソースおよび前記リモートサイトにある利用可能なストレージリソースから使用されるべきストレージリソースを選択し、
ｖｉ．前記選択されたストレージリソースを前記少なくとも１つのリクエスタに通知する
ように動作可能なストレージコントローラと
を含むコンピュータ化されたストレージシステム。
【請求項２】
前記少なくとも１つのリクエスタが、ホストコンピュータ、バックアップサーバまたは階層マネージャである、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項３】
前記コントローラが、前記選択されたストレージリソースが解放されるようにするようにさらに動作可能である、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項４】
前記コンピュータ化されたストレージシステムとリモートストレージシステムとの間でのデータの転送を最適化するように動作可能なネットワーク最適化コントローラをさらに含む、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項５】
前記少なくとも１つのローカルストレージリソースおよび前記ストレージコントローラを相互接続するストレージエリアネットワークをさらに含む、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項６】
エクステンダをさらに含む、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項７】
前記ストレージコントローラがディレクタ、キャッシュメモリ、スイッチおよびストレージインターフェースコントローラをさらに含む、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項８】
前記ストレージコントローラが、
ａ．データの場所を最適化するために移動されるべきデータを決定し、
ｂ．前記データの新しい場所のために必要なストレージリソースの要件を決定し、
ｃ．前記決定された要件を使用して前記必要なストレージリソースを取得し、
ｄ．前記データを前記取得されたストレージリソースに移動し、
ｅ．前記データのマッピング情報を変更し、
ｆ．前記データの古い場所に対応する古いストレージリソースを解放する
ように動作可能である、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項９】
前記リクエスタがコンピュータ上で実行するアプリケーションソフトウェアであって、前記アプリケーションソフトウェアが、
ｉ．必要なストレージリソースの要件を決定し、
ｉｉ．前記ストレージコントローラにストレージリソースを求める前記要求を生成し、
ｉｉｉ．前記ストレージコントローラから前記選択されたストレージリソースの前記通知を受信し、
ｉｖ．前記選択されたストレージリソースの使用を開始する
ように動作可能である、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項１０】
前記リクエスタがコンピュータ上で実行するアプリケーションソフトウェアであって、前記アプリケーションソフトウェアが、
ｉ．前記ストレージリソースの使用を中断し、
ｉｉ．前記ストレージリソースの解放を前記ストレージコントローラに通知し、
ｉｉｉ．前記ストレージコントローラから前記ストレージリソースの解放の完了の通知を受信する
ように動作可能である、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項１１】
前記リクエスタがバックアップサーバ上で実行するバックアップアプリケーションであって、前記アプリケーションが、
ｉ．必要なストレージリソースの要件を決定し、
ｉｉ．前記ストレージコントローラにストレージリソースを求める要求を生成し、
ｉｉｉ．前記ストレージコントローラから前記選択されたストレージリソースの前記通知を受信し、
ｉｖ．前記選択されたストレージリソースにバックアップデータを転送する
ように動作可能である、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項１２】
前記リクエスタがバックアップサーバ上で実行するバックアップアプリケーションであって、前記バックアップアプリケーションが、
ｉ．バックアップデータの少なくとも一部分および前記ストレージリソースの解放を決定し、
ｉｉ．前記ストレージリソースの解放を前記ストレージコントローラに通知し、
ｉｉｉ．前記ストレージコントローラから前記ストレージリソースの解放の完了の通知を受信する
ように動作可能である、請求項１に記載のコンピュータ化されたストレージシステム。
【請求項１３】
前記少なくとも１つのローカルストレージリソースおよびリモートストレージシステム内の利用可能なストレージリソースを示すグラフィカルユーザインタフェースをさらに含む請求項１に記載のコンピュータ化されたストレージシステム。
【請求項１４】
ａ．少なくとも１つのストレージリソース要件を含む、少なくとも１つのリクエスタからストレージリソースを求める要求を受信し、
ｂ．前記少なくとも１つのストレージリソース要件に従って少なくとも１つのローカルストレージリソースに関する情報を含むリソース情報を検査し、
ｃ．前記リモートサイト内のストレージリソースを検査するために、リモートサイトにある少なくとも１つのリモートコントローラにストレージリソースを求める第２要求を発行し、
ｄ．前記少なくとも１つのストレージリソース要件に従ってリモートサイトにある利用可能なストレージリソースに関する前記少なくとも１つのリモートコントローラから少なくとも１つの応答を収集し、
ｅ．前記少なくとも１つのローカルストレージリソースおよびリモートサイトにある利用可能なストレージリソースから使用されるべきストレージリソースを選択し、
ｆ．前記選択されたストレージリソースを前記少なくとも１つのリクエスタに通知する
ように動作可能なストレージコントローラ。
【請求項１５】
ａ．データの場所を最適化するために移動されるべきデータを決定し、
ｂ．前記データの新しい場所に必要なストレージリソースの要件を決定し、
ｃ．前記決定された要件を使用して前記必要なストレージリソースを取得し、
ｄ．前記取得されたストレージリソースに前記データを移動し、
ｅ．前記データのマッピング情報を変更し、
ｆ．前記データの古い場所に対応する古いストレージリソースを解放する
ようにさらに動作可能な、請求項１４に記載のストレージコントローラ。
【請求項１６】
複数のサイトにおいてストレージリソースを管理するための方法であって、
ａ．少なくとも１つのストレージリソース要件を含む、少なくとも１つのリクエスタからストレージリソースを求める要求を受信するステップと、
ｂ．前記少なくとも１つのストレージリソース要件に従って少なくとも１つのローカルストレージリソースに関する情報を含むリソース情報を検査するステップと、
ｃ．リモートサイトにあるストレージリソースを検査するために、前記リモートサイトにある少なくとも１つのリモートコントローラにストレージリソースを求める第２要求を発行するステップと、
ｄ．前記少なくとも１つのストレージリソース要件に従って前記リモートサイトにある利用可能なストレージリソースに関する前記少なくとも１つのリモートコントローラから応答を収集するステップと、
ｅ．前記少なくとも１つのローカルストレージリソースおよび前記リモートサイトにある利用可能なストレージリソースから使用されるべきストレージリソースを選択するステップと、
ｆ．前記選択されたストレージリソースを前記少なくとも１つのリクエスタに通知するステップと
を含む方法。
【請求項１７】
前記少なくとも１つのリクエスタがホストコンピュータ、バックアップサーバまたは階層マネージャである、請求項１６に記載の方法。
【請求項１８】
解放されるべきストレージリソースを選択するステップをさらに含む、請求項１６に記載の方法。
【請求項１９】
前記少なくとも１つのローカルストレージリソースおよびリモートストレージシステム内の利用可能なストレージリソースを示すグラフィカル表示を生成するステップをさらに含む、請求項１６に記載の方法。
【請求項２０】
複数のサイト内のデータの場所を管理するための方法であって、
ａ．データの場所を最適化するために移動されるべきデータを決定するステップと、
ｂ．前記データの新しい場所に必要なストレージリソースの要件を決定するステップと、
ｃ．前記少なくとも１つのローカルストレージリソースおよびリモートサイトにある利用可能なストレージリソースから必要なストレージリソースを選択することにより、前記決定された要件を使用して前記必要なストレージリソースを取得するステップと、
ｄ．前記取得されたストレージリソースに前記データを移動するステップと、
ｅ．前記データのマッピング情報を変更するステップと、
ｆ．前記データの古い場所に対応する古いストレージリソースを解放するステップと
を含む方法。
【請求項２１】
ａ．ローカルサイト内の少なくとも１つのデバイスから故障メッセージを受信し、
ｂ．ローカルサイト内の少なくとも１つのコントローラおよびリモートサイト内の少なくとも１つのコントローラから宛先コントローラを選択し、
ｃ．前記宛先コントローラが前記リモートサイト内にある場合、ストレージシステム専用データ転送パスを使用して前記宛先コントローラに前記故障メッセージを転送する
ように動作可能なストレージコントローラ。
【請求項２２】
デバイスからの故障メッセージを処理するための方法であって、
ａ．ローカルサイト内の少なくとも１つのデバイスから故障メッセージを受信するステップと、
ｂ．前記ローカルサイト内の少なくとも１つのコントローラおよびリモートサイト内の少なくとも１つのコントローラから宛先コントローラを選択するステップと、
ｃ．前記宛先コントローラが前記リモートサイト内にある場合、ストレージシステム専用データ転送パスを使用して前記宛先コントローラに前記故障メッセージを転送するステップと
を含む方法。
【請求項２３】
ａ．ストレージリソースのタイプを示す第１カテゴリを表示し、
ｂ．複数のサイトの各サイトを示す第２カテゴリを表示し、
ｃ．前記第１カテゴリの透視図から前記第２カテゴリにストレージリソースに関する情報を示す
ように動作可能なグラフィカルユーザインタフェース。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  本発明は、一般に、ストレージ技術に関し、より詳細には、複数のサイトにおけるストレージリソース（たとえばボリュームまたは容量）の管理のための方法および装置に関する。
【背景技術】
【０００２】
[0002]  最近、多くの組織が、国、大陸または世界の広い地域に活動を拡大しており、これらの組織はそうした地域の分散された場所に複数の支部を有する。さらに、多くの組織が、ボリュームまたはデータを格納する領域などのストレージリソースを提供するストレージシステムを有する複数のサイト（データセンタ、支部オフィスおよびリモートオフィス）を所有する。多くの場合、これらのサイトはＷＡＮまたはインターネットを介して互いに接続されている。この環境では、１つのサイト内のストレージリソースがＷＡＦＳなどの従来技術によってＷＡＮを介して他のサイト内のコンピュータによって使用されることができる。これらのサイトはまた、組織のデータのための災害回復機能を実現するためにも使用される。十分な距離を置いた別のサイト内に複製によるデータのコピーを保持することにより、１つのサイトが災害（地震など）に襲われてもデータの損失が回避される。しかし、現在、ストレージリソースの管理および使用が各サイトで独立して行われているので、リソースの使用効率が非常に低く管理コストが非常に高い。特に、サイト間のパスに関する影響が、管理において自動的に考慮されない。
【０００３】
[0003]  さらに、ストレージリソースを管理するための従来の手段は、複数のサイト内でのストレージリソースの階層管理および情報ライフサイクル管理をサポートしていない。これらの管理方法では、適切なデータの配置および費用効果を達成するために、ストレージリソースがストレージ装置の性能、信頼性およびコストなどのリソースの属性に基づいて複数の階層に分類される。データ（内容）も分類され、データの値およびデータの要件に基づいて選択される１つの階層に配置される。しかし、従来の方法は、ストレージリソースの管理および使用が各サイトで独立して行われるので、複数のサイト内のストレージリソースの階層管理を実現することができない。
【０００４】
[0004]  さらに、リモートサイトで生成された故障情報（故障メッセージ）を処理するための従来の方法は問題を有する。従来の方法では、これらのメッセージの転送は、メッセージがリモートサイト内のコンピュータによって使用される同じＬＡＮおよびＷＡＮを介して大量の他の情報と共に転送されるので、遅延される可能性があるが、そのような故障メッセージは優先して独占的に転送されるべきである。
【０００５】
[0005]  したがって、現在の技術は、複数のサイト内のストレージリソースのための統合された管理環境を提供し、サイト間のパスの影響を考慮して複数のサイト内のストレージリソースの階層管理を実現する機能が不十分である。最後に、既存のシステムは、サイト間で故障情報を優先して管理することができない。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
[0006]  本発明は、ストレージリソースの管理のための従来の技法に関連する１つまたは複数の上記およびその他の問題を実質的に除去する方法およびシステムを対象とする。
【課題を解決するための手段】
【０００７】
[0007]  本発明の方法の一態様によれば、コンピュータ化されたストレージシステムおよび関連方法が提供される。本発明システムは、少なくとも１つのローカルストレージリソースと、コンピュータ化されたストレージシステムを少なくとも１つのリクエスタおよびストレージコントローラに接続するように動作可能なネットワークインターフェースとを含む。ストレージコントローラは、少なくとも１つのリクエスタからストレージリソースを求める要求を受信し、要求は少なくとも１つのストレージリソース要件を含み、少なくとも１つのストレージリソース要件に従って少なくとも１つのローカルストレージリソースに関する情報を含むリソース情報を検査し、リモートサイトにあるストレージリソースを検査するためにリモートサイトにある少なくとも１つのリモートコントローラにストレージリソースを求める第２要求を発行し、少なくとも１つのストレージリソース要件に従ってリモートサイトで利用可能なストレージリソースに関する少なくとも１つのリモートコントローラからの応答を収集し、少なくとも１つのローカルストレージリソースおよびリモートサイトにある利用可能なストレージリソースから使用されるべきストレージリソースを選択し、選択されたストレージリソースを少なくとも１つのリクエスタに通知するように構成される。
【０００８】
[0008]  本発明の方法の他の態様によれば、ストレージコントローラが提供される。本発明のコントローラは、少なくとも１つのリクエスタからストレージリソースを求める要求を受信し、要求は少なくとも１つのストレージリソース要件を含み、少なくとも１つのストレージリソース要件に従って少なくとも１つのローカルストレージリソースに関する情報を含むリソース情報を検査し、リモートサイト内のストレージリソースを検査するためにリモートサイトにある少なくとも１つのリモートコントローラにストレージリソースを求める第２要求を発行し、少なくとも１つのストレージリソース要件に従ってリモートサイトにある利用可能なストレージリソースに関する少なくとも１つのリモートコントローラからの少なくとも１つの応答を収集し、少なくとも１つのローカルストレージリソースおよびリモートサイトにある利用可能なストレージリソースから使用されるべきストレージリソースを選択し、選択されたストレージリソースを少なくとも１つのリクエスタに通知するように構成される。
【０００９】
[0009]  本発明の方法の他の態様によれば、複数のサイト内のデータの場所を管理するための方法が提供される。本発明の方法は、データの場所を最適化するために移動されるべきデータを決定するステップと、データの新しい場所のために必要なストレージリソースの要件を決定するステップと、少なくとも１つのローカルストレージリソースおよびリモートサイトにある利用可能なストレージリソースから必要なストレージリソースを選択することにより決定された要件を使用して必要なストレージリソースを取得するステップと、取得されたストレージリソースにデータを移動するステップと、データのマッピング情報を変更するステップと、データの古い場所に対応する古いストレージリソースを解放するステップとを含む。
【００１０】
[0010]  本発明の方法の他の態様によれば、ストレージコントローラが提供される。本発明のコントローラは、ローカルサイト内の少なくとも１つのデバイスから故障メッセージを受信し、ローカルサイト内の少なくとも１つのコントローラおよびリモートサイト内の少なくとも１つのコントローラから宛先コントローラを選択し、宛先コントローラがリモートサイト内に配置されている場合は、ストレージシステム専用データ転送パスを使用して宛先コントローラに故障メッセージを転送するように構成される。
【００１１】
[0011]  本発明の方法の他の態様によれば、デバイスからの故障メッセージを処理するための方法が提供される。本発明の方法は、ローカルサイト内の少なくとも１つのデバイスから故障メッセージを受信するステップと、ローカルサイト内の少なくとも１つのコントローラおよびリモートサイト内の少なくとも１つのコントローラから宛先コントローラを選択するステップと、宛先コントローラがリモートサイト内に配置されている場合は、ストレージシステム専用データ転送パスを使用して故障メッセージを宛先コントローラに転送するステップとを含む。
【００１２】
[0012]  本発明の方法の他の態様によれば、グラフィカルユーザインタフェースが提供される。本発明のインターフェースは、ストレージリソースのタイプを示す第１カテゴリを表示し、複数のサイトの各サイトを示す第２カテゴリを表示し、第１カテゴリの透視図から第２カテゴリにストレージリソースに関する情報を示すように構成される。
【００１３】
[0013]  本発明に関する追加の諸態様が以下の説明で部分的に説明され、説明から部分的に明らかになり、あるいは、本発明の実施により学習されてもよい。本発明の諸態様は、要素および様々な要素の組合せ、ならびに以下の詳細な説明および添付の特許請求の範囲で特に指摘されている諸態様によって実現され、達成されてもよい。
【００１４】
[0014]  前述の説明および以下の説明はいずれも例示的および説明的だけであって、決して添付の特許請求の範囲に記載の本発明またはその適用を限定するものではないことを理解すべきである。
【００１５】
[0015]  本明細書に組み込まれ、本明細書の一部分を構成する添付の図面は本発明の諸実施形態を例示し、記述と相俟って本発明の技法の原理を説明し例示するのに役立つ。
【００１６】
[0037]  以下の詳細な説明では、同一の機能要素が同じ数字で示されている添付の１つまたは複数の図面が参照される。前述の添付の図面は、例として、限定としてではなく、本発明の原理に合致する特定の実施形態および実装形態を示す。これらの実施形態は、当業者が本発明を実施することができるようにするのに十分詳細に説明され、他の実施形態が利用されてもよく、様々な要素の構造的変更および／または代替が本発明の範囲と主旨から逸脱せずに行われてもよいことを理解すべきである。したがって、以下の詳細な説明は、限定された意味で解釈されるべきではない。さらに、説明された本発明の様々な実施形態は、汎用コンピュータ上で動作するソフトウェアの形態で実施されても、専用ハードウェアの形態で実施されても、ソフトウェアとハードウェアの組合せで実施されてもよい。
【００１７】
[0038]  本発明の一実施形態では、ローカルサイト内のコントローラがホストコンピュータ、バックアップサーバおよび階層マネージャなどのリクエスタからのストレージリソースを求める要求を処理することができる。コントローラが、要求に基づく要件に従って、ローカルサイト内のストレージリソースに関する情報を含むそれ自体のリソース情報を検査する。コントローラはまた、リモートサイト内の他のコントローラにも各リモートサイト内のストレージリソースを検査するように求める。ローカルサイト内のコントローラが、要件の下で利用可能なストレージリソース（ローカルサイト内のリソースを含む）に関する応答を収集し、使用されるべきストレージリソースを選択する。その後、ローカルサイト内のコントローラが選択されたストレージリソースをリクエスタに通知する。ストレージリソースの解放はまた、コントローラ間の通信によって行われることもできる。コンピュータおよびバックアップサーバは、コントローラによって提供されるこれらの機能を利用してストレージリソースを取得し解放することができる。
【００１８】
[0039]  本発明の一実施形態では、いくつかのタイプの統合管理ビュー（ＧＵＩ）が提供される。例示的実施形態では、複数のサイト内のストレージリソースに関する様々な情報が１つのウィンドウに統合様式で示される。
【００１９】
[0040]  ストレージリソースの階層管理では、データの要件の変更に応じてデータの場所を変更するために、階層管理機能が前述の機能を使用してデータの新しい場所を取得し、データの古い場所を解放することができる。したがって、複数のサイト間のデータの場所の最適化が行われることができる。一般に、データの要件の変更は、データの値、使用率、アクセス速度、寿命の長さなどの変更から取得される。
【００２０】
[0041]  本発明の一実施形態では、故障メッセージを優先して転送するために、コントローラが故障メッセージ（たとえばＳＮＭＰトラップ）を受信し、メッセージの宛先を検査し、宛先がリモートサイトである場合は、メッセージをＳＡＮおよびＷＡＮ（ストレージアクセスのためのパス）を介してリモートサイトに転送する。リモートサイト内のコントローラによって受信されたメッセージは、通常の故障メッセージと同様に、ＬＡＮを介してリモートサイト内の管理端末に送信される。
【発明を実施するための最良の形態】
【００２１】
[0042]  次に本発明の様々な実施形態が詳細に説明される。
【００２２】
１．複数のサイトを含むシステムの概要
[0043]  図１は、複数のサイトを含むシステムの１つの例示的実施形態を示す。示されているシステムは、データセンタ、リモートオフィス、支部オフィスなどでもよいサイト１０を含む。多くの組織が分散された場所にそのようなサイトを所有している可能性がある。これらのサイトはまた、組織のデータのための災害回復機能を実現するためにも使用される。十分な距離を置いた別のサイト内に複製によるデータのコピーを保持することは、１つのサイトが災害（地震など）に襲われても、データの損失を回避する。システムは、ホストコンピュータ５００、ディスク、ＮＡＳ、テープ、またはフラッシュメモリでもよいストレージデバイス６００をさらに含む。示されているシステムはまた、ＳＡＮ９００、ＷＡＮ最適化コントローラ（ＷＯＣ）９２０およびＷＡＮ９３０を含む。
【００２３】
[0044]  ＳＡＮ９００は、ホストコンピュータ５００およびストレージデバイス６００を相互に接続する。ＳＡＮ９００は、ファイバチャネル、ｉＳＣＳＩおよびその他同様の通信プロトコルを使用して実装されることができる。ＷＡＮ９３０は、ホストコンピュータ５００およびストレージデバイス６００などのコンピュータリソースを含むサイト１０を相互に接続する。ＷＯＣ９２０は、重複排除、圧縮およびキャッシングなどの技法を使用することによりサイト間でのデータの転送を低減し最適化するゲートウェイデバイスである。ＷＯＣ９２０は、ＷＡＮ９３０およびサイト１０内のコンピュータリソースに接続される。
【００２４】
２．サイト内のシステム構成
[0045]  図２は、サイト１０の構成の一例を示す。詳細には、サイト１０は、コントローラ１００、ホストコンピュータ５００、ＯＳ５０１、アプリケーションソフトウェア５０２、バックアップサーバ５１０、ＯＳ５１１、バックアップソフトウェア５１２、管理端末５２０、ＯＳ５２１、管理ソフトウェア５２２、およびディスク、ＮＡＳ、テープ、フラッシュメモリなどでもよいストレージデバイス６００を含んでもよい。
【００２５】
[0046]  サイト１０は、ＳＡＮ９００、ＳＡＮ９０１、エクステンダ９０２、ＬＡＮ９１０、ＬＡＮ９１１、ＷＯＣ９２０およびＷＡＮ９３０を含んでもよい。ホストコンピュータ５００、バックアップサーバ５１０および管理端末５２０は、アプリケーションソフトウェア５０２、バックアップソフトウェア５１２および管理ソフトウェア５２２、ＯＳならびにその他のプロセスを稼働させるためのプロセッサ、メモリおよびその他の手段を有する。
【００２６】
[0047]  ＳＡＮ９００およびＳＡＮ９０１は、上記のコンピュータ、コントローラ１００およびストレージデバイス６００を接続する。ＳＡＮ９００およびＳＡＮ９０１は、ＦＣおよびｉＳＣＳＩプロトコルを使用して実装されることができる。ＬＡＮ９１０は、ホストコンピュータ５００、バックアップサーバ５１０および管理端末５２０を接続する。ＬＡＮ９１１は、ストレージデバイス６００、コントローラ１００および管理端末５２０を接続する。ＬＡＮ９１０は、ＷＯＣ９２０および／またはＷＡＮ９３０に接続される。ＳＡＮ９００は、エクステンダ９０２を介してＷＯＣ９２０および／またはＷＡＮ９３０に接続される。
【００２７】
[0048]  コントローラ１００は、階層管理機能７０１、マッピング機能７０２および通信機能７０５を包含する。さらに、コントローラ１００は、ストレージリソース７０３を取得しストレージリソース７０４を解放するように動作可能である。
【００２８】
[0049]  コントローラ１００は、通信機能７０５を使用することにより、ホストコンピュータ５００、バックアップサーバ５１０、管理端末５２０および他のサイト１０内の他のコントローラ１００と通信することができる。マッピング機能は、ストレージデバイス６００のリソースの仮想化によって生成される論理ストレージリソース（たとえばボリュームまたは容量）を提供する。
【００２９】
[0050]  下記で諸機能の詳細が説明される。
【００３０】
３．コントローラ１００の構成
[0051]  図３は、コントローラ１００の構成を示す。詳細には、コントローラ１００は、スイッチ１０１、キャッシュ１０２、メモリ２００、ディレクタ３００、メインプロセッサ（ＭＰ）３０１、およびストレージインターフェース（Ｉ／Ｆ）コントローラ４００を包含する。図３はまた、ホストコンピュータ５００、バックアップサーバ５１０、管理端末５２０、ストレージデバイス（たとえば、ディスク、ＮＡＳ、テープ、フラッシュメモリ）６００、ＳＡＮ９００、ＳＡＮ９０１、エクステンダ９０２、ＬＡＮ９１０、ＬＡＮ９１１、ＷＯＣ９２０およびＷＯＣ９３０をも示す。
【００３１】
[0052]  メインプロセッサ３０１は、コントローラ１００に関連する様々な処理を実行する。メインプロセッサ３０１および他の構成要素は、メモリ２００に格納されている以下の情報を使用する。この情報は、後で述べられるいくつかの処理の説明において述べられる。詳細には、メモリ２００は、リソース情報２０１、使用情報２０２、パス情報２０３、階層詳細情報２０４、およびマッピング情報２０５を格納する。
【００３２】
[0053]  ホストコンピュータ５００、バックアップサーバ５１０および管理端末５２０は、ＳＡＮ９００を介してディレクタ３００に接続される。
【００３３】
４．ホストコンピュータによる動作
[0054]  図９は、ホストコンピュータ５００用のストレージリソースを取得するためのプロセスを示す。たとえば、ホストコンピュータ５００上のアプリケーションソフトウェア５０２またはＯＳ５０１が、新たにデータを格納しなければならない場合、ストレージリソース（たとえばボリュームまたは容量）を取得する。
【００３４】
[0055]  ステップ１００１で、アプリケーションソフトウェア５０２またはＯＳ５０１が必要なストレージリソースの要件を決定する。要件はストレージのタイプを含み、応答時間のターゲット、スループット、容量、保護方法、スナップショット機能などその他のストレージ機能などを含んでもよい。他の例として、要件は、特に災害回復を考慮して、距離に関する条件を含んでもよい。たとえば、データのコピーの場所として、１つの災害によって同時に起こる故障を回避するために、ローカルサイトから少なくともＸｋｍ離れたストレージリソースが必要とされる。
【００３５】
[0056]  ステップ１００２で、アプリケーションソフトウェア５０２またはＯＳ５０１が上記の要件でローカルサイト上のコントローラ１００にストレージリソースを要求する。
【００３６】
[0057]  ステップ１００３で、コントローラ１００がストレージリソースを取得する。このステップの詳細なプロセスは後ほど説明される。
【００３７】
[0058]  ステップ１００４で、コントローラ１００が取得されたストレージリソースを使用するための情報をアプリケーションソフトウェア５０２またはＯＳ５０１に通知する。
【００３８】
[0059]  ステップ１００５で、アプリケーションソフトウェア５０２またはＯＳ５０１が通知された情報に基づいてストレージリソースを使用し始める。
【００３９】
[0060]  図１０は、ホストコンピュータ５００に関するストレージリソースを解放するプロセスを示す。使用されないストレージリソースを解放することは、他のソフトウェアがそのストレージリソースを使用することができるようになるので、ストレージ使用効率をより良くする。
【００４０】
[0061]  ステップ１１０１で、アプリケーションソフトウェア５０２またはＯＳ５０１がストレージリソースの使用を中止する。
【００４１】
[0062]  ステップ１１０２で、アプリケーションソフトウェア５０２またはＯＳ５０１がストレージリソースの解放をローカルサイト上のコントローラ１００に通知する。
【００４２】
[0063]  ステップ１１０３で、コントローラ１００がストレージリソースを解放する。このステップの詳細なプロセスは後ほど説明される。
【００４３】
[0064]  ステップ１１０４で、コントローラ１００がストレージリソースの解放の完了をアプリケーションソフトウェア５０２またはＯＳ５０１に通知する。
【００４４】
５．バックアッププロセスのための動作
[0065]  図１１は、バックアップサーバ５１０用のストレージリソースを取得するプロセスを示す。たとえば、データのバックアッププロセスが準備されたとき、バックアップサーバ５１０上のバックアップソフトウェア５１２がストレージリソース（たとえばボリュームまたは容量）を取得する。
【００４５】
[0066]  ステップ１２０１で、バックアップソフトウェア５１２が必要なストレージリソースの要件を決定する。これらの要件はストレージのタイプを含み、応答時間のターゲット、スループット、容量、保護方法、ＷＯＲＭ（Ｗｒｉｔｅ  Ｏｎｃｅ  Ｒｅａｄ  Ｍａｎｙ（書き込みは１回、読み出しは何度でも可能））機能などその他のストレージ機能などを含んでもよい。他の例として、これらの要件は、特に災害回復を考慮して、距離に関する条件を含んでもよい。たとえば、データのコピーの場所として、１つの災害によって同時に起こる故障を回避するために、ローカルサイトから少なくともＸｋｍ離れたストレージリソースが必要とされる。
【００４６】
[0067]  ステップ１２０２で、バックアップソフトウェア５１２が上記の要件でローカルサイト上のコントローラ１００にストレージリソースを要求する。
【００４７】
[0068]  ステップ１２０３で、コントローラ１００がストレージリソースを取得する。このステップの詳細なプロセスは後ほど説明される。
【００４８】
[0069]  ステップ１２０４で、コントローラ１００が取得されたストレージリソースを使用するための情報をバックアップソフトウェア５１２に通知する。
【００４９】
[0070]  １２０５で、バックアップソフトウェア５１２が通知された情報に基づいてバックアップデータをストレージリソースに転送し始める。
【００５０】
[0071]  図１２は、バックアップソフトウェア５０２に関するストレージリソースを解放するプロセスを示す。
【００５１】
[0072]  ステップ１３０１で、バックアップソフトウェア５１２が、いくつかのバックアップデータの解放およびバックアップデータを格納するストレージリソースの解放を決定する。
【００５２】
[0073]  ステップ１３０２で、バックアップソフトウェア５１２がストレージリソースの解放をローカルサイト上のコントローラ１００に通知する。
【００５３】
[0074]  ステップ１３０３で、コントローラ１００がストレージリソースを解放する。このステップの詳細なプロセスは後ほど説明される。
【００５４】
[0075]  ステップ１３０４で、コントローラ１００がストレージリソースの解放の完了をバックアップソフトウェア５１２に通知する。
【００５５】
６．階層管理のための動作
[0076]  図１３は、ストレージの階層管理用のストレージリソースを取得し解放するためのプロセスを示す。階層管理では、階層管理機能７０１がデータの値の変更およびデータの要件に応じて定期的にデータの適切な配置を計画し、データの場所を変更する（たとえばデータを移動する）。この手順では、データの新しい場所が選択され（取得され）、古いデータの場所が解放される。
【００５６】
[0077]  ステップ１４０１で、階層管理機能７０１が移動されるべきデータを決定し、データの場所の最適化としてデータの移動を計画する。
【００５７】
[0078]  ステップ１４０２で、階層管理機能７０１がデータの新しい場所として必要なストレージリソースの要件を決定する。
【００５８】
[0079]  適切な配置を計画しデータの新しい場所を選択するための方法に関しては、いくつかの従来の方法が知られている。このプロセスでは、図７に記載の階層詳細情報２０４などの情報が使用される。階層詳細情報２０４は、たとえば、タイプ、応答時間、スループット、容量、保護方法、その他のストレージ機能などの各階層（ストレージリソースのグループ）に関する詳細（要件）情報を有する。データの新しい場所の要件は、ストレージのタイプを含み、応答時間のターゲット、スループット、容量、保護方法、その他のストレージ機能などを含んでもよい。
【００５９】
[0080]  ステップ１４０３で、コントローラ１００が要件に基づいてストレージリソースを取得する。このステップの詳細なプロセスは後ほど説明される。
【００６０】
[0081]  ステップ１４０４で、階層管理機能７０１がストレージリソース（すなわち新しい場所）にデータを移動（またはコピー）し、マッピング情報２０５を更新する。
【００６１】
[0082]  ステップ１４０５で、コントローラ１００がデータの古い場所のストレージリソースを解放する。このステップの詳細なプロセスは後ほど説明される。
【００６２】
[0083]  図８に記載のマッピング情報２０５は、コントローラ１００によって提供されたストレージリソース（仮想ストレージリソース）と複数のサイト内の実際のストレージリソースとの関係に関する情報を有する。図８では、たとえば、この表は、サイトＩＤ、タイプ、使用状態（「使用中」または「フリー」（すなわち使用されていない））、リクエスタＩＤ、仮想ストレージリソースに関する情報、実際のストレージリソースと仮想ストレージリソースとの間のオフセットおよびマウントポイント、容量および状態（「正常」および「故障中」）を含む実際のストレージリソースに関する情報を有する。リクエスタＩＤは、リクエスタまたはストレージリソースのユーザのためのＩＤ（たとえば、アプリケーションソフトウェア５０２、ＯＳ５０１／５１１、ホストコンピュータ５００、バックアップソフトウェア５１２、バックアップサーバ５１０などのＩＤ）である。
【００６３】
[0084]  一般に、階層管理機能７０１は、管理端末５２０、ホストコンピュータ５００およびその他のコンピュータ（図には示されていない）内に配置されることができ、コントローラ１００と通信することができるが、この実施形態ではコントローラ１００内にある。
【００６４】
７．ストレージリソースを取得するプロセス
[0085]  図１４は、前述のサイト１０内のコントローラ１００によってストレージリソースを取得するプロセスを示す。
【００６５】
[0086]  ステップ１５０１で、ローカルサイト内のコントローラ１００がリクエスタからの要求およびパス情報２０３に基づいて必要なストレージリソースに関するクエリの内容を決定する。
【００６６】
[0087]  図６に記載のパス情報２０３は、パスの利用可能性（質）、距離、遅延時間、帯域幅、代替パス間のスイッチング時間、ＷＯＣの利用可能性および詳細、状態（「正常」または「故障中」）など他のリモートサイト１０に関する情報およびローカルサイトとリモートサイトとの間のパスに関する情報を有する。ローカルサイト内のコントローラ１００は、リクエスタからの要求およびパス情報２０３から（たとえば応答時間から遅延時間を低減することにより）クエリの内容として真の要件を取得することができる。
【００６７】
[0088]  ステップ１５０２で、ローカルサイト内のコントローラ１００が他のリモートサイト内の他のコントローラにクエリを送信する。
【００６８】
[0089]  ステップ１５０３で、ローカルサイト内のコントローラ１００がそれ自体のリソース情報２０１および使用情報２０２を検査する。次いで、ローカルサイト内のコントローラ１００が、要求に従ってフリーな（使用されていない）リソースから１つまたは複数の適切なリソースを選択する。
【００６９】
[0090]  図４に記載のリソース情報２０１は、サイト１０内のストレージリソースに関する情報を有する。図５に記載の使用情報２０２は、サイト１０内のストレージリソースの使用状態（「使用中」または「フリー」）に関する情報を有する。使用情報２０２はまた、たとえば、リクエスタのサイトＩＤおよびリクエスタＩＤなど、リソースのユーザに関する情報をも有する。
【００７０】
[0091]  ステップ１５０４で、リモートサイト内で、コントローラ１００がリソース情報２０１および使用情報２０２を検査する。次いで、コントローラ１００が要求に従ってフリーの（使用されていない）リソースから適切な１つまたは複数のリソースを選択する。このステップは、ステップ１５０３および／または１５０５と同時に実行されることができる。
【００７１】
[0092]  ステップ１５０５で、リモートサイト内のコントローラ１００がローカルサイト内のコントローラ１００にクエリに対する応答を送信する。
【００７２】
[0093]  ステップ１５０６およびステップ１５０７で、ローカルサイト内のコントローラ１００がすべての照会されたコントローラ１００から応答を受信するのを待つ。
【００７３】
[0094]  ステップ１５０８で、ローカルサイト内のコントローラ１００が、選択されたアイテム（候補）すべてから使用されるべきストレージリソースを決定する。
【００７４】
[0095]  ステップ１５０９で、ローカルサイト内のコントローラ１００が選択の完了をリモートサイト内のコントローラ１００に通知する。選択されたストレージリソースがリモートサイト内にあり、通知がリモートサイトに送信されるべきである場合、通知は選択されたストレージリソースに関する情報を含む。
【００７５】
[0096]  ステップ１５１０で、選択されたストレージリソースを有するコントローラ１００がストレージリソースを利用可能にする。このプロセスは、サイト内のパスの割当ておよび／または変更を含んでもよい。さらに、コントローラ１００が使用情報２０２を更新する。
【００７６】
[0097]  ステップ１５１１で、リモートサイト内で通知を受信したコントローラ１００が確認応答をローカルサイト内のコントローラ１００に報告する。
【００７７】
[0098]  ステップ１５１２および１５１３で、ローカルサイト内のコントローラ１００がすべての照会されたコントローラ１００から確認応答を受信するのを待つ。
【００７８】
８．ストレージリソースを解放するプロセス
[0099]  図１５は、前述のサイト１０内のコントローラ１００によってストレージリソースを解放するプロセスを示す。
【００７９】
[00100]  ステップ１６０１で、ローカルサイト内のコントローラ１００が解放されるべきストレージリソースの場所を検査する。ストレージリソースがローカルサイト内にある場合は、プロセスはステップ１６０２に進む。ストレージリソースがリモートサイト内にある場合は、プロセスはステップ１６０３に進む。
【００８０】
[00101]  ステップ１６０２で、ローカルサイト内のコントローラ１００がストレージリソースを解放するために使用情報２０２を更新する。
【００８１】
[00102]  ステップ１６０３で、ローカルサイト内のコントローラ１００がストレージリソースの解放を解放されるべきストレージリソースを有するリモートサイト内のコントローラ１００に通知する。
【００８２】
[00103]  ステップ１６０４で、通知を受信したコントローラ１００がストレージリソースを解放するために使用情報２０２を更新する。次いで、リモートサイト内のコントローラ１００が更新の完了をローカルサイト内のコントローラ１００に報告する。
【００８３】
[00104]  ステップ１６０５で、ローカルサイト内のコントローラ１００が完了の通知を受信する。
【００８４】
９．故障情報を転送するプロセス
[00105]  図１６は、故障情報を転送するプロセスを示す。この実施形態では、サイト１０間での故障情報（たとえばＳＮＭＰトラップメッセージ）の転送は、（コンピュータへの大量の通信と共存する）混み合ったルートの使用および遅延を回避するためにコントローラ１００専用のＳＡＮ９００およびＷＡＮ９３０上のパスを介して行われる。
【００８５】
[00106]  ステップ１７０１で、ストレージデバイス６００がストレージリソースに関する故障についてのメッセージを生成する。
【００８６】
[00107]  ステップ１７０２で、ストレージデバイス６００がＬＡＮ９１１を介してストレージデバイス６００のローカルサイト内のコントローラ１００にメッセージを転送する。
【００８７】
[00108]  ステップ１７０３で、ローカルサイト内のコントローラ１００がメッセージを検出する。
【００８８】
[00109]  ステップ１７０４で、コントローラ１００がストレージリソースのリクエスタを知るためにそれ自体の使用情報２０２を検査する。次いで、コントローラ１００がメッセージの宛先を決定する。
【００８９】
[00110]  ステップ１７０５で、宛先がローカルサイト内にある場合は、プロセスはステップ１７０６に進む。宛先がリモートサイト内にある場合は、プロセスはステップ１７０７に進む。
【００９０】
[00111]  ステップ１７０６で、ローカルサイト内のコントローラ１００がＬＡＮ９１１を介してローカルサイト内の管理端末５２０にメッセージを転送する。次いで、プロセスはステップ１７１０に進む。
【００９１】
[00112]  ステップ１７０７で、ローカルサイト内のコントローラ１００がＳＡＮ９００およびＷＡＮ９３０を介してリモートサイト内のコントローラ１００にメッセージを転送する。
【００９２】
[00113]  ステップ１７０８で、メッセージを受信したコントローラ１００がＬＡＮ９１１を介してリモートサイト内の管理端末５２０にメッセージを転送する。
【００９３】
[00114]  ステップ１７０９で、メッセージを受信した管理端末５２０が、メッセージによって示された故障に関する情報を生成し、格納し、示す。
【００９４】
１０．統合管理パネル
[00115]  図１７、１８、１９および２０は、管理パネル（ＧＵＩ）の例１８００、１９００、２０００および２１００を示す。コントローラ１００が他のサイト１０内の他のコントローラ１００と通信し、情報を収集し、管理用の情報を生成する。コントローラ１００が管理端末５２０および／または他のコンピュータと情報を交換する。管理端末５２０および／または他のコンピュータがこれらの管理パネルを証明した。
【００９５】
[00116]  パネルの例は左の部分および右の部分を有する。左の部分はカテゴリに基づくアイテムのツリーを示す。右の部分は左の部分で選択されたアイテムに関する情報を示す。右の部分は、「フィルタセレクタ」部分、「フィルタリスト」部分、「アイテムリスト」部分および「情報」部分を有する。「フィルタセレクタ」を使用して、ユーザまたはマネージャが表示されるべきアイテムをフィルタリングするための条件を追加することができる。フィルタ条件が「フィルタリスト」に示され、ユーザまたはマネージャはこのリストから条件を削除しクリアすることもできる。「アイテムリスト」は左の部分で選択されたアイテムに関するサブアイテムを示す。「情報」は、左の部分で選択されたアイテムに関する情報を示す。
【００９６】
[00117]  一般に、コントローラ１００は、管理端末５２０、ホストコンピュータ５００およびその他のコンピュータ（図には示されていない）内に配置されることができる。コントローラ１００はまた、ストレージデバイス６００に統合されることもできる。
【００９７】
１１．例示的コンピュータプラットフォームの説明
[00118]  図２１は、本発明の方法の一実施形態が実施されることができるコンピュータ／サーバシステム２１００の一実施形態を示すブロック図である。システム２１００は、コンピュータ／サーバプラットフォーム２１０１、周辺デバイス２１０２およびネットワークリソース２１０３を含む。
【００９８】
[00119]  コンピュータプラットフォーム２１０１は、コンピュータプラットフォーム２１０１の様々な部分にわたっておよびそれらの間で情報を通信するためのデータバス２１０４またはその他の通信機構と、情報を処理し他の計算および制御タスクを実行するためのバス２１０１に結合されたプロセッサ２１０５とを含んでもよい。コンピュータプラットフォーム２１０１はまた、様々な情報ならびにプロセッサ２１０５によって実行されるべき命令を格納するためにバス２１０４に結合されたランダムアクセスメモリ（ＲＡＭ）またはその他の動的ストレージデバイスなどの揮発性ストレージ２１０６を含む。揮発性ストレージ２１０６はまた、プロセッサ２１０５による命令の実行中に一時変数またはその他の中間情報を格納するために使用されてもよい。コンピュータプラットフォーム２１０１は、基本入出力システム（ＢＩＯＳ）ならびに様々なシステム構成パラメータなどプロセッサ２１０５のための静的情報および命令を格納するためにバス２１０４に結合された読み出し専用メモリ（ＲＯＭまたはＥＰＲＯＭ）２１０７またはその他の静的ストレージデバイスをさらに含んでもよい。情報および命令を格納するために磁気ディスク、光ディスク、または半導体フラッシュメモリデバイスなどの永続ストレージデバイス２１０８が提供されバス２１０１に結合される。
【００９９】
[00120]  コンピュータプラットフォーム２１０１は、コンピュータプラットフォーム２１０１のシステム管理者またはユーザに情報を表示するために、バス２１０４を介して陰極線管（ＣＲＴ）、プラズマディスプレイ、または液晶ディスプレイ（ＬＣＤ）などのディスプレイ２１０９に結合されてもよい。情報およびコマンド選択をプロセッサ２１０５に通知するために、英数字およびその他のキーを含む入力デバイス２１１０がバス２１０１に結合される。他のタイプのユーザ入力デバイスは、方向情報およびコマンド選択をプロセッサ２１０４に通知しディスプレイ２１０９上でのカーソルの移動を制御するためのマウス、トラックボール、またはカーソル方向キーなどのカーソル制御デバイス２１１１である。この入力デバイスは、通常、デバイスが平面上で位置を指定することができるようにする第１の軸（たとえば、ｘ）および第２の軸（たとえば、ｙ）の２つの軸で２自由度を有する。
【０１００】
[00121]  コンピュータプラットフォーム２１０１に追加または取り外し可能ストレージ容量を提供するために、外部ストレージデバイス２１１２がバス２１０４を介してコンピュータプラットフォーム２１０１に接続されてもよい。コンピュータシステム２１００の一実施形態では、他のコンピュータシステムとのデータ交換を容易にするために、取り外し可能な外部ストレージデバイス２１１２が使用されてもよい。
【０１０１】
[00122]  本発明は、本明細書中に記載の技法を実施するためのコンピュータシステム２１００の使用に関する。一実施形態では、本発明のシステムはコンピュータプラットフォーム２１０１などの機械上にあってもよい。本発明の方法の一実施形態によれば、本明細書中に記載の技法が、揮発性メモリ２１０６に入っている１つまたは複数の命令の１つまたは複数のシーケンスを実行するプロセッサ２１０５に応答してコンピュータシステム２１００によって実施される。そのような命令は、揮発性メモリ２１０６に、永続ストレージデバイス２１０８など別のコンピュータ可読媒体から読み込まれてもよい。揮発性メモリ２１０６に入っている命令のシーケンスの実行は、プロセッサ２１０５に本明細書中に記載のプロセスステップを実行させる。代替実施形態では、本発明を実施するために、ソフトウェア命令の代わりにまたはそれらと組み合わせて、ハードワイヤード回路が使用されてもよい。したがって、本発明の諸実施形態は、ハードウェア回路およびソフトウェアのいかなる特定の組合せにも限定されない。
【０１０２】
[00123]  本明細書中で使用される用語「コンピュータ可読媒体」は、命令を実行すべくプロセッサ２１０５に提供することに関与するいかなる媒体をも表す。コンピュータ可読媒体は、本明細書中に記載の方法および／または技法のいずれかを実施するための命令を運ぶことができる機械可読媒体の単なる一例である。そのような媒体は、不揮発性媒体、揮発性媒体、および伝送媒体を含むがそれらに限定されない多くの形態を取ってもよい。たとえば、不揮発性媒体には、ストレージデバイス２１０８などの光ディスクまたは磁気ディスクなどがある。揮発性媒体には、揮発性ストレージ２１０６などの動的メモリなどがある。伝送媒体には、データバス２１０４を含むワイヤを含めて、同軸ケーブル、銅線および光ファイバなどがある。伝送媒体はまた、無線波および赤外線データ通信中に生成されるものなどの音波または光波の形態を取ることもできる。
【０１０３】
[00124]  たとえば、コンピュータ可読媒体の一般的形態には、フロッピディスク、フレキシブルディスク、ハードディスク、磁気テープ、またはその他あらゆる磁気媒体、ＣＤ−ＲＯＭ、その他あらゆる光媒体、パンチカード、紙テープ、その他穴のパターンを有するあらゆる物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュＥＰＲＯＭ、フラッシュドライブ、メモリカード、その他あらゆるメモリチップまたはカートリッジ、以下に記載の搬送波、またはその他コンピュータが読み取ることができるあらゆる媒体などがある。
【０１０４】
[00125]  実行すべき１つまたは複数の命令の１つまたは複数のシーケンスをプロセッサ２１０５に運ぶのにコンピュータ可読媒体の様々な形態が関与してもよい。たとえば、命令は最初、リモートコンピュータから磁気ディスク上に運ばれてもよい。あるいは、リモートコンピュータがその動的メモリに命令をロードし、モデムを使用して電話回線を介して命令を送信することもできる。コンピュータシステム２１００にローカルなモデムが電話回線でデータを受信し、赤外線送信機を使用してデータを赤外線信号に変換することができる。赤外線検出器が赤外線信号で運ばれたデータを受信することができ、適切な回路がデータをバス２１０４に乗せることができる。バス２１０４がデータを揮発性ストレージ２１０６に運び、そこからプロセッサ２１０５が命令を取り出して実行する。揮発性メモリ２１０６によって受信された命令は、任意選択で、プロセッサ２１０５による実行の前または後で永続ストレージデバイス２１０８に格納されてもよい。命令はまた、当技術分野でよく知られている様々なネットワークデータ通信プロトコルを使用してインターネットを介してコンピュータプラットフォーム２１０１にダウンロードされてもよい。
【０１０５】
[00126]  コンピュータプラットフォーム２１０１はまた、データバス２１０４に結合されたネットワークインターフェースカード２１１３などの通信インターフェースをも含む。通信インターフェース２１１３は、ローカルネットワーク２１１５に接続されているネットワークリンク２１１４に結合して双方向データ通信を提供する。たとえば、通信インターフェース２１１３は、対応するタイプの電話回線にデータ通信接続を提供する統合サービスデジタル網（ＩＳＤＮ）カードまたはモデムでもよい。他の例として、通信インターフェース２１１３は、適合するＬＡＮにデータ通信接続を提供するローカルエリアネットワークインターフェースカード（ＬＡＮ  ＮＩＣ）でもよい。よく知られている８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇおよびブルートゥースなどの無線リンクがネットワークの実施のために使用されてもよい。いかなるそのような実施においても、通信インターフェース２１１３は、様々なタイプの情報を表すデジタルデータストリームを運ぶ電気信号、電磁信号または光信号を送受信する。
【０１０６】
[00127]  ネットワークリンク２１１３は、通常、１つまたは複数のネットワークを介して他のネットワークリソースにデータ通信を提供する。たとえば、ネットワークリンク２１１４は、ホストコンピュータ２１１６、またはネットワークストレージ／サーバ２１１７にローカルネットワーク２１１５を介して接続を提供してもよい。追加としてまたは代替として、ネットワークリンク２１１３は、ゲートウェイ／ファイアウォール２１１７を介してインターネットなどの広域またはグローバルネットワーク２１１８に接続されてもよい。したがって、コンピュータプラットフォーム２１０１は、リモートネットワークストレージ／サーバ２１１９などのインターネット２１１８上のどこに配置されているネットワークリソースにもアクセスすることができる。一方、コンピュータプラットフォーム２１０１はまた、ローカルエリアネットワーク２１１５および／またはインターネット２１１８上のどこに配置されているクライアントによってでもアクセスされることがきる。ネットワーククライアント２１２０および２１２１はそれら自体、プラットフォーム２１０１と同様のコンピュータプラットフォームに基づいて実装されることができる。
【０１０７】
[00128]  ローカルネットワーク２１１５およびインターネット２１１８はいずれもデジタルデータストリームを運ぶ電気信号、電磁信号または光信号を使用する。コンピュータプラットフォーム２１０１へおよびそれからデジタルデータを運ぶ、様々なネットワークを通る信号、ならびに、ネットワークリンク２１１４によって通信インターフェース２１１３を通る信号は、情報を移送する搬送波の例示的形態である。
【０１０８】
[00129]  コンピュータプラットフォーム２１０１は、インターネット２１１８およびＬＡＮ２１１５を含む様々な１つまたは複数のネットワーク、ならびにリンク２１１４および通信インターフェース２１１３を介してメッセージを送信しプログラムコードを含むデータを受信することができる。インターネットの例では、システム２１０１は、ネットワークサーバとして機能する場合、インターネット２１１８、ゲートウェイ／ファイアウォール２１１７、ローカルエリアネットワーク２１１５および通信インターフェース２１１３を介して、１つまたは複数のクライアント２１２０および／または２１２１上で動作するアプリケーションプログラムのために要求されたコードまたはデータを送信することもできる。同様に、システム２１０１は他のネットワークリソースからコードを受信することもできる。
【０１０９】
[00130]  受信されたコードは受信されたときにプロセッサ２１０５によって実行されても、かつ／または後で実行されるべく永続ストレージデバイス２１０８または揮発性ストレージデバイス２１０６あるいは他の不揮発性ストレージに格納されてもよい。このようにして、コンピュータシステム２１０１は、搬送波の形態でのアプリケーションコードを取得することができる。
【０１１０】
[00131]  本発明はいかなる特定のファイアウォールシステムにも限定されないことに留意するべきである。本発明のポリシーベースのコンテンツ処理システムは、３つのファイアウォール動作モード、詳細にはＮＡＴモード、ルートモードおよび透過モードのうちのいずれででも使用されることができる。
【０１１１】
[00132]  最後に、本明細書中に記載のプロセスおよび技法は、いかなる特定の装置にも固有に関係せず、構成要素のいかなる適切な組合せによって実施されてもよいことを理解すべきである。さらに、様々なタイプの汎用デバイスが本明細書中に記載の技法に従って使用されてもよい。本明細書中に記載の方法ステップを実行するために専用装置を作成することが有利であることが判明する可能性もある。本発明は、すべての点で制限的ではなく例示的であるものとする特定の例に関して説明されてきた。ハードウェア、ソフトウェア、およびファームウェアの多くの様々な組合せが本発明を実施するのに適するであろうことを当業者は理解するであろう。たとえば、記載されたソフトウェアは、アセンブラ、Ｃ／Ｃ++、Ｐｅｒｌ、シェル、ＰＨＰ、ジャバなどの様々なプログラミング言語またはスクリプト言語で実施されてもよい。
【０１１２】
[00133]  さらに、本発明の他の諸実施形態は、本明細書中で開示された本発明の詳細および実施を熟慮することによって当業者には明らかになるであろう。記載された実施形態の様々な態様および／または構成要素は、データ複製機能を有するコンピュータ化されたストレージシステムで単独に使用されても、いかなる組合せで使用されてもよい。詳細および諸例は例示だけであると考えられるべきであり、本発明の真の範囲および主旨は添付の特許請求の範囲によって示されるものとする。
【図面の簡単な説明】
【０１１３】
【図１】[0016]  複数のサイトを含む例示的システムを示す図である。
【図２】[0017]  サイト内のシステム構成の一例を示す図である。
【図３】[0018]  コントローラの例示的構成を示す図である。
【図４】[0019]  例示的リソース情報を示す図である。
【図５】[0020]  例示的使用情報を示す図である。
【図６】[0021]  例示的パス情報を示す図である。
【図７】[0022]  例示的階層詳細情報を示す図である。
【図８】[0023]  例示的マッピング情報を示す図である。
【図９】[0024]  ホストコンピュータ用のストレージリソースを取得するための例示的プロセスを示す図である。
【図１０】[0025]  ホストコンピュータに関連するストレージリソースを解放するための例示的プロセスを示す図である。
【図１１】[0026]  バックアップサーバに関連するストレージリソースを取得するための例示的プロセスを示す図である。
【図１２】[0027]  バックアップソフトウェアに関連するストレージを解放するための例示的プロセスを示す図である。
【図１３】[0028]  ストレージの階層管理用のストレージリソースを取得し解放するための例示的プロセスを示す図である。
【図１４】[0029]  サイト内のコントローラによってストレージリソースを取得するための例示的プロセスを示す図である。
【図１５】[0030]  サイト内のコントローラによってストレージリソースを解放するための例示的プロセスを示す図である。
【図１６】[0031]  故障情報を転送するための例示的プロセスを示す図である。
【図１７】[0032]  管理パネル（ＧＵＩ）の例を示す図である。
【図１８】[0033]  管理パネル（ＧＵＩ）の他の例を示す図である。
【図１９】[0034]  管理パネル（ＧＵＩ）の他の例を示す図である。
【図２０】[0035]  管理パネル（ＧＵＩ）の他の例を示す図である。
【図２１】[0036]  本発明のシステムが実施されることができるコンピュータプラットフォームの例示的実施形態を示す図である。
【図１】
2008146627.tif 000003
【図２】
2008146627.tif 000004
【図３】
2008146627.tif 000005
【図４】
2008146627.tif 000006
【図５】
2008146627.tif 000007
【図６】
2008146627.tif 000008
【図７】
2008146627.tif 000009
【図８】
2008146627.tif 000010
【図９】
2008146627.tif 000011
【図１０】
2008146627.tif 000012
【図１１】
2008146627.tif 000013
【図１２】
2008146627.tif 000014
【図１３】
2008146627.tif 000015
【図１４】
2008146627.tif 000016
【図１５】
2008146627.tif 000017
【図１６】
2008146627.tif 000018
【図１７】
2008146627.tif 000019
【図１８】
2008146627.tif 000020
【図１９】
2008146627.tif 000021
【図２０】
2008146627.tif 000022
【図２１】
2008146627.tif 000023
【外国語明細書】
2008146627000001.pdf