(57)【要約】【課題】  記憶領域ネットワーク相互運用関係の取得および拡張のための方法、システム、および製造品を提供する。【解決手段】  記憶領域ネットワークの複数のコンポーネントを複数のコンポーネント・グループに分類し、コンポーネント・グループは記憶領域ネットワークの複数のコンポーネントの１つ以上を含む。グループ関係データ構造は、複数のコンポーネント・グループの１つ以上の間の関係を提供し、関係は記憶領域ネットワークのサポートされるコンフィグレーションを示す。【選択図】  図１
2011501253.tif 000002
【特許請求の範囲】
【請求項１】
記憶領域ネットワークの複数のコンポーネントを複数のコンポーネント・グループに分類するステップであって、コンポーネント・グループが前記記憶領域ネットワークの前記複数のコンポーネントの１つ以上を含む、前記ステップと、
グループ関係データ構造において、前記複数のコンポーネント・グループの１つ以上の間の関係を提供するステップであって、関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示す、前記ステップと、
を含む、方法。
【請求項２】
前記複数のコンポーネント・グループの前記１つ以上の間の関係が、前記記憶領域ネットワークにおける前記複数のコンポーネントの全てのサポートされる組み合わせに比べて少数である、請求項１に記載の方法。
【請求項３】
前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいて、記憶領域ネットワーク相互運用性データベースにおいてエントリを記憶するステップであって、前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいた前記記憶領域ネットワーク相互運用性データベースを発生することが、前記記憶領域ネットワークにおいて前記複数のコンポーネントの全てのサポートされる組み合わせに対応してエントリを前記記憶領域ネットワーク相互運用性データベースに記憶することに基づいて前記記憶領域ネットワーク相互運用性データベースを発生することに比べて迅速に実行される前記ステップを更に含む、請求項２に記載の方法。
【請求項４】
前記記憶領域ネットワークに新しいコンポーネントを追加するステップであって、前記記憶領域ネットワークの他のコンポーネントとの相互運用性についての前記新しいコンポーネントの特徴が示される、前記ステップと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更するステップであって、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示す、前記ステップと、
を更に含む、前出の請求項のいずれかに記載の方法。
【請求項５】
前記記憶領域ネットワークの少なくとも１つのコンポーネントの相互運用性に対する少なくとも１つの例外を指示するステップと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更するステップであって、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示す、前記ステップと、
を更に含む、前出の請求項のいずれかに記載の方法。
【請求項６】
システムであって、
メモリと、
前記メモリに結合されたプロセッサであって、
（ｉ）記憶領域ネットワークの複数のコンポーネントを複数のコンポーネント・グループに分類し、コンポーネント・グループが前記記憶領域ネットワークの前記複数のコンポーネントの１つ以上を含むことと、
（ｉｉ）グループ関係データ構造において、前記複数のコンポーネント・グループの１つ以上の間の関係を提供し、関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示すことと、
を含む動作を実行する前記プロセッサと、
を含む、前記システム。
【請求項７】
前記複数のコンポーネント・グループの前記１つ以上の間の関係が、前記記憶領域ネットワークにおける前記複数のコンポーネントの全てのサポートされる組み合わせに比べて少数である、請求項６に記載のシステム。
【請求項８】
前記動作が、
前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいて、記憶領域ネットワーク相互運用性データベースにおいてエントリを記憶し、前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいた前記記憶領域ネットワーク相互運用性データベースを発生することが、前記記憶領域ネットワークにおいて前記複数のコンポーネントの全てのサポートされる組み合わせに対応してエントリを前記記憶領域ネットワーク相互運用性データベースに記憶することに基づいて前記記憶領域ネットワーク相互運用性データベースを発生することに比べて迅速に実行されることを更に含む、請求項７に記載のシステム。
【請求項９】
前記動作が、
前記記憶領域ネットワークに新しいコンポーネントを追加し、前記記憶領域ネットワークの他のコンポーネントとの相互運用性についての前記新しいコンポーネントの特徴が示されることと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更し、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示すことと、
を更に含む、請求項６から８のいずれか１項に記載のシステム。
【請求項１０】
前記動作が、
前記記憶領域ネットワークの少なくとも１つのコンポーネントの相互運用性に対する少なくとも１つの例外を指示することと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更し、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示すことと、
を更に含む、請求項６から９のいずれか１項に記載のシステム。
【請求項１１】
コンピュータ・プログラム・コードを含むコンピュータ・プログラムであって、コンピュータ・システムにロードされてそこで実行されると、前記コンピュータ・システムに、請求項１から５のいずれか１項に記載の前記方法の前記ステップを全て実行させる、前記コンピュータ・プログラム。
【請求項１２】
コンピューティング・インフラストラクチャを展開するための方法であって、コンピュータ読み取り可能コードをコンピューティング・システム内に統合するステップを含み、前記コードが前記コンピューティング・システムと組み合わされて、
記憶領域ネットワークの複数のコンポーネントを複数のコンポーネント・グループに分類し、コンポーネント・グループが前記記憶領域ネットワークの前記複数のコンポーネントの１つ以上を含むことと、
グループ関係データ構造において、前記複数のコンポーネント・グループの１つ以上の間の関係を提供し、関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示すことと、
を実行可能である、前記方法。
【請求項１３】
前記複数のコンポーネント・グループの前記１つ以上の間の関係が、前記記憶領域ネットワークにおける前記複数のコンポーネントの全てのサポートされる組み合わせに比べて少数である、請求項１２に記載のコンピューティング・インフラストラクチャを展開するための方法。
【請求項１４】
前記コードが前記コンピューティング・システムと組み合わされて、
前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいて、記憶領域ネットワーク相互運用性データベースにおいてエントリを記憶し、前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいた前記記憶領域ネットワーク相互運用性データベースを発生することが、前記記憶領域ネットワークにおいて前記複数のコンポーネントの全てのサポートされる組み合わせに対応してエントリを前記記憶領域ネットワーク相互運用性データベースに記憶することに基づいて前記記憶領域ネットワーク相互運用性データベースを発生することに比べて迅速に実行されることを更に実行可能である、請求項１３に記載のコンピューティング・インフラストラクチャを展開するための方法。
【請求項１５】
前記コードが前記コンピューティング・システムと組み合わされて、
前記記憶領域ネットワークに新しいコンポーネントを追加し、前記記憶領域ネットワークの他のコンポーネントとの相互運用性についての前記新しいコンポーネントの特徴が示されることと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更し、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示すことと、
を更に実行可能である、請求項１２から１４のいずれか１項に記載のコンピューティング・インフラストラクチャを展開するための方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、記憶領域ネットワーク相互運用関係の取得および拡張のための方法、システム、および製造品に関する。
【背景技術】
【０００２】
記憶領域ネットワークは、ＳＡＮとも称され、サーバ、クライアント、オペレーティング・システム、記憶デバイス、スイッチ、ホスト・バス・アダプタ等の多くのコンポーネントから成る場合がある。更に、かかる記憶領域ネットワークにおいてコンポーネントを追加したり除去したりすることができる。ある特定のコンポーネントは、記憶領域ネットワークの他のコンポーネントと相互運用すなわち共に機能しない場合がある。例えば、タイプＡのサーバは、タイプＢのオペレーティング・システムとだけ相互運用するが、タイプＣのオペレーティング・システムとは相互運用しないことがある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ある特定のユーザにとって、記憶領域ネットワーク内に含むことができるコンポーネントの相互運用能力を知ることが望ましいことがある。かかる記憶領域ネットワーク相互運用能力の保守は、複雑であり、誤りを犯しやすく、かつ労働集約型である場合がある。記憶領域ネットワーク・コンポーネントは多数の組み合わせが可能であるが、コンフィグレーションの例外および異常が発生し得る。
【０００４】
ある特定の機構は、手作業で記憶領域ネットワークの要素間の相互運用能力を捕獲し文書化することができる。例えば、ある特定の解決策においては、記憶領域ネットワークでサポートされるコンポーネント・コンフィグレーションを、オンラインまたは印刷されたマニュアルで維持することができ、多くの例外の指示は、サポートされるコンフィグレーションに対する脚注で示される。
【課題を解決するための手段】
【０００５】
提供される方法、システム、および製造品において、記憶領域ネットワークの複数のコンポーネントを複数のコンポーネント・グループに分類し、コンポーネント・グループは記憶領域ネットワークの複数のコンポーネントの１つ以上を含む。グループ関係データ構造は、複数のコンポーネント・グループの１つ以上の間の関係を提供し、関係は記憶領域ネットワークのサポートされるコンフィグレーションを示す。
【０００６】
追加の実施形態においては、複数のコンポーネント・グループの１つ以上の間の関係は、記憶領域ネットワークにおける複数のコンポーネントの全てのサポートされる組み合わせに比べて少数である。
【０００７】
更に別の実施形態においては、グループ関係データ構造において提供された関係および複数のコンポーネント・グループに基づいて、記憶領域ネットワーク相互運用性データベースにおいてエントリを記憶する。グループ関係データ構造において提供された関係および複数のコンポーネント・グループに基づいた記憶領域ネットワーク相互運用性データベースを発生することは、記憶領域ネットワークにおいて複数のコンポーネントの全てのサポートされる組み合わせに対応してエントリを記憶領域ネットワーク相互運用性データベースに記憶することに基づいて記憶領域ネットワーク相互運用性データベースを発生することに比べて、迅速に実行される。更に別の実施形態では、記憶領域ネットワークに新しいコンポーネントを追加し、記憶領域ネットワークの他のコンポーネントとの相互運用性についての新しいコンポーネントの特徴を示す。グループ関係発生アプリケーションによって、コンポーネント・グループおよびグループ関係データ構造における関係を変更し、変更済みの関係は記憶領域ネットワークのサポートされるコンフィグレーションを示す。
【０００８】
更に別の実施形態においては、記憶領域ネットワークの少なくとも１つのコンポーネントの相互運用性に対する少なくとも１つの例外を指示する。グループ関係発生アプリケーションによって、コンポーネント・グループおよびグループ関係データ構造における関係を変更し、変更済みの関係は記憶領域ネットワークのサポートされるコンフィグレーションを示す。
【０００９】
これより、本発明の好適な実施形態について、添付図面を参照して、一例としてのみ説明する。
【図面の簡単な説明】
【００１０】
【図１】ある特定の実施形態に従ったコンピューティング環境における計算プラットフォームのブロック図を示す。
【図２】ある特定の実施形態に従った、ＳＡＮの例示的なコンポーネント、例示的なグループ関係データ構造、および例示的なコンポーネント・グループを示す。
【図３】ある特定の実施形態に従って、グループ関係を維持することによって相互運用性関係のいっそうコンパクトな表現がどのように得られるかを示す。
【図４】ある特定の実施形態に従ったＳＡＮのコンポーネントの追加を示す。
【図５】ある特定の実施形態に従った、一般にサポートされるコンフィグレーションの例外の処理を示す。
【図６】ある特定の実施形態に従った第１の動作を示す。
【図７】ある特定の実施形態に従った第２の動作を示す。
【図８】ある特定の実施形態に従った、コンピューティング環境の計算プラットフォームに含むことができるいくつかの要素を示すブロック図である。
【発明を実施するための形態】
【００１１】
ある特定の実施形態では、記憶領域ネットワークの様々な関連するコンポーネントをグループに分類し、グループをコンポーネント・グループと称する。コンポーネント・グループ間の相互運用能力は、グループ関係発生アプリケーションによって、グループ関係データ構造において維持される。グループ関係データ構造およびコンポーネント・グループを用いて、記憶領域ネットワーク相互運用データベース内にエントリを記憶することができる。記憶領域ネットワーク相互運用データベースを用いて、記憶領域ネットワーク内にコンポーネントを含ませるための、様々な個々のコンポーネントの相互運用能力を要求するユーザまたは自動化クエリに対して応答する。
【００１２】
記憶領域ネットワーク内でサポートされるコンポーネント・コンフィグレーションが、コンポーネント・グループを形成することなく発生された場合、すなわち、サポートされるコンフィグレーションが個々のコンポーネントの相互運用性の指示に基づく場合、記憶領域ネットワーク相互運用データベースのエントリのためのロード時間は、グループ関係データ構造およびコンポーネント・グループを用いて記憶領域ネットワーク相互運用データベース内にエントリがロードされるある特定の実施形態によって与えられるよりも、著しく長くなり得る。
【００１３】
例示的な実施形態
図１は、計算プラットフォーム１０２を含むコンピューティング環境１００のブロック図を示す。図１は単一の計算プラットフォーム１０２を示すが、代替的な実施形態においては、異なる数の計算プラットフォームを用いてある特定の実施形態を実施することも可能である。例えば、ある特定の実施形態は、複数の計算プラットフォームが共同である特定の動作を実行する分散型コンピューティング環境において実施することができる。計算プラットフォーム１０２は、サーバ、パーソナル・コンピュータ、ワークステーション、メインフレーム、中型コンピュータ、ネットワーク機器、パームトップ・コンピュータ、電話通信デバイス、ブレード・コンピュータ、手持ち型コンピュータ等、当業者に既知のものを含めて、いずれかの適切な計算プラットフォームを含むことができる。
【００１４】
計算プラットフォーム１０２は、グループ関係発生アプリケーション１０４およびデータベース発生アプリケーション１０６を含む。データベース発生アプリケーション１０６は、データベース内にエントリを記憶してデータベースを発生することができるので、データベース発生／記憶アプリケーションとも称することがある。代替的な実施形態においては、グループ関係発生アプリケーション１０４およびデータベース発生アプリケーション１０６が実行する動作は、単一のアプリケーションまたは３つ以上のアプリケーションによって実施することができる。グループ関係発生アプリケーション１０４は、異なる例示的な実施形態において様々に実施することができ、ある特定の実施形態では、グループ関係発生アプリケーション１０４は、ＳＡＮコンフィグレーションを認定する一連の試験の結果に基づいて専門家が発生した入力を得る表計算ソフトとすることができる。
【００１５】
グループ関係発生アプリケーション１０４は、１組の関連したコンポーネントをコンポーネント・グループ１０８に分類し、コンポーネント・グループの相互運用能力をグループ関係データ構造１１０に記憶することができる。グループ関係データ構造１１０は、表計算ソフト、１組のタプル、テキスト・ファイル、データベースとして、または、他のいずれかの適切なデータ構造を介して、実施することができる。コンポーネント・グループ１０８に含まれる個々のコンポーネントは、ＳＡＮに含ませる候補となり得る。
【００１６】
データベース発生アプリケーション１０６は、相互運用コンフィグレーションを生成し、管理し、ＳＡＮ相互運用データベース１１２に入力しロードするために、コンポーネント・グループ１０８およびグループ関係データ構造１１０を用いることができる。ＳＡＮ相互運用データベース１１２を用いて、ユーザからのクエリに応答することができる。このクエリは、ＳＡＮに含める可能性のあるコンポーネントの相互運用に関するものである。
【００１７】
従って、図１が例示するある特定の実施形態においては、グループ関係発生アプリケーション１０４は、コンポーネントのグループをコンポーネント・グループ１０８に記憶し、グループ関係データ構造１１０に記憶するために個々のコンポーネント・グループ間の関係を発生する。データベース発生アプリケーション１０６は、コンポーネント・グループ１０８およびグループ関係データ構造１００に含まれる情報に基づいて、ＳＡＮ相互運用データベース１１２内にエントリをロードする。
【００１８】
図２は、ある特定の実施形態に従った、ＳＡＮの例示的なコンポーネント２００、例示的なグループ関係データ構造１１０（先に図１に示した）、および例示的なコンポーネント・グループ１０８（先に図１に示した）を例示する。
【００１９】
図２に示す例示的なコンポーネント２００は、以下を含むことができる。
（ｉ）サーバＳ１  ２０２およびサーバＳ２  ２０４として示す例示的なサーバ、（ｉｉ）オペレーティング・システムＯＳ１  ２０６およびオペレーティング・システムＯＳ２  ２０８として示すオペレーティング・システム、
（ｉｉｉ）ホスト・バス・アダプタＨＢＡ１  ２１０およびホスト・バス・アダプタＨＢＡ２  ２１２として示す例示的なホスト・バス・アダプタ、
（ｉｖ）ＳＡＮスイッチＳＳ１  ２１４、ＳＡＮスイッチＳＳ２  ２１６、およびＳＡＮスイッチＳＳ３  ２１８として示す例示的なＳＡＮスイッチ。
【００２０】
代替的な実施形態においては、他のタイプの例示的なコンポーネントも検出される場合がある。更に、各タイプの例示的なコンポーネントの数は、図２に示す例示的なコンポーネント２００の数よりも少ないかまたは多い場合がある。
【００２１】
図２に示す（および先に図１に示した）例示的なグループ関係データ構造１１０は、第１のグループ関係２２０および他のグループ関係２２２等、１つ以上の例示的なグループ関係を含むことができる。例示的な第１のグループ関係２２０は、サーバ・グループＳＧ１  ２２４、オペレーティング・システム・グループＯＳＧ１  ２２６、ホスト・バス・アダプタ・グループＨＢＡＧ１  ２２８、およびＳＡＮスイッチ・グループＳＳＧ１  ２３０を含むことができる。グループ関係データ構造１１０は、サーバ・グループＳＧ１  ２２４内のいずれかのコンポーネントを、相互運用性のために、オペレーティング・システムＯＳＧ１  ２２６のいずれかのコンポーネントに結合可能であること、ホスト・バス・アダプタ・グループＨＢＡＧ１  ２２８のいずれかのコンポーネントに結合可能であること、更に、ＳＡＮスイッチ・グループＳＳＧ１  ２３０のいずれかのコンポーネントに結合可能であることを示す。第１のグループ関係２２０に合致したコンポーネントを含むＳＡＮコンフィグレーションを、ＳＡＮのためのベンダーまたはサポート・プロバイダによってサポートすることができる。
【００２２】
また、図２は、グループ関係データ構造１１０の第１のグループ関係２２０に示したコンポーネント・グループの各々におけるコンポーネントも示す。例えば、サーバ・グループＳＧ１はサーバＳ１  ２０２およびサーバＳ２  ２０４を含み、オペレーティング・システム・グループＯＳＧ１  ２２６はオペレーティング・システムＯＳ１  ２０６およびオペレーティング・システムＯＳ２  ２０８を含み、ホスト・バス・アダプタ・グループＳＢＡＧ１  ２２８はホスト・バス・アダプタＨＢＡ１  ２１０およびホスト・バス・アダプタＨＢＡ２  ２１２を含み、ＳＡＮスイッチ・グループＳＳＧ１  ２３０はＳＡＮスイッチＳＳ１  ２１４およびＳＡＮスイッチＳＳ２  ２１６を含む。また、例示的なコンポーネント・グループ１０８に、他のグループ２３２も含むことができる。
【００２３】
図３は、ある特定の実施形態に従って、グループ関係２２０を維持することによって、相互運用性関係のいっそうコンパクトな表現３００がどのように得られるかを示す。
【００２４】
図３から、第１のグループ関係２２０に含まれるグループのコンポーネントの全ての可能な組み合わせ３０２が、サーバ・グループＳＧ１  ２２４、オペレーティング・システム・グループＯＳＧ１  ２２６、ホスト・バス・アダプタ・グループＨＢＡＧ１  ２２８、およびＳＡＮスイッチ・グループＳＳＧ１  ２３０間で維持される単一の関係を大きく超えることがわかる。従って、第１のグループ関係２２０を含むグループ関係データ構造１１０（先に図１および図２に示した）をコンポーネント・グループ１０８（先に図１および図２に示した）と共に用いた場合、ＳＡＮ相互運用データベース１１２内へのエントリのロードは、コンポーネントの全ての可能な組み合わせ３０２をＳＡＮ相互運用データベース１１２内へのエントリのロードに用いた場合よりも迅速にすることができる。ある特定の例示的なシステムにおいては、組み合わせ３０２は、何十万、何百万、または潜在的には何千万を超えるエントリとなる場合があり、かかる多数の組み合わせに対応するエントリの記憶は、グループ関係データ構造１１０（先に図１および図２に示した）およびコンポーネント・グループ１０８（先に図１および図２に示した）の関係２２０、２２２に対応するエントリの記憶に比べて、非常に時間が長くかかるものとなり得る。
【００２５】
図４は、ある特定の実施形態に従った、ＳＡＮに対して行われる可能性がある新しいコンポーネントの追加４００の効果を示す。図４において、新しく追加したコンポーネント４０２をサーバＳ３  ４０４として示す。ある特定の実施形態においては、サーバＳ３  ４０４が追加されると、２つのコンポーネント・サーバＳ１  ２０２およびサーバＳ２  ２０４を有したサーバ・グループＳＧ１  ２２４（図２に示した）を更新して、更新済みのサーバ・グループ４０６に示すようにサーバＳ３  ４０４を含ませる。例示的な第１のグループ関係２２０は、何ら変更されない（が、例示の容易さのために、サーバ・グループＳＧ１は図４において参照番号４０８を用いて参照される）。従って、ある特定の実施形態においては、ＳＡＮに新しいコンポーネントを追加するために必要な変更は、個々のコンポーネント間の相互運用性について全ての有効な組み合わせを明示的に列挙する状況に比べ、はるかに少なくすることができる。グループ関係を変更しなければならない場合がある実施形態であっても、その変更は、個々のコンポーネント間の相互運用性について全ての有効な組み合わせを明示的に列挙する状況に比べて、はるかに少なくすることができる。
【００２６】
図５は、ある特定の実施形態に従った、一般にサポートされるコンフィグレーションに対する例外処理５００を示す。一般にサポートされるコンフィグレーションに対する例外５０２は、以下のように示される。
（ｉ）オペレーティング・システムＯＳ２  ２０８（先に図２に示した）がサーバＳ１  ２０２（先に図２に示した）上でサポートされない。
（ｉｉ）ＳＡＮスイッチＳＳ１  ２１４（先に図２に示した）がサーバＳ２  ２０４（先に図２に示した）上でサポートされない。
【００２７】
図５に示すある特定の実施形態においては、コンポーネント・グループおよびグループ関係は、変更または拡張あるいはその両方を行う必要がある場合がある。図２に示したコンフィグレーションにおける例示的な例外処理５０２について、動作は以下を含むことができる。
（ｉ）第１のグループ関係（図５において参照番号５０４で、図２において参照番号２２０で表される）に対して変更は行わないが、図５の第１のグループ関係５０４に含まれるグループ５１０、５１２、５１４、５１６は、図２の第１のグループ関係２２０に含まれるものとは異なる場合がある。
（ｉｉ）サーバ・グループＳＧ１  ５１８、オペレーティング・システム・グループＯＳＧ２  ５２０、ホスト・バス・アダプタ・グループＨＢＡＧ１  ５２２、およびＳＡＮスイッチ・グループＳＳＧ２  ５２４を有する第２のグループ関係５０６を追加する。
（ｉｉｉ）変更済みのコンポーネント・グループ５０８を発生させるためにコンポーネント・グループに対して変更を行う。変更済みのコンポーネント・グループ５０８に示す表現は、符号「−＞」の左側にコンポーネント・グループを示し（例えばＳＧ１、ＳＧ２等）、対応するコンポーネントは、符号「−＞」の右側にカッコで囲まれている。例えば、コンポーネント・グループＯＳＧ１は、変更済みのコンポーネント・グループ５０８内にコンポーネントＯＳ１を有するものとして示されている。
【００２８】
また、図５には、グループ関係５０４、５０６に対応する、充分に拡張したコンフィグレーション５２６も示されている。充分に拡張したコンフィグレーション５２６において、ある特定のエントリを取り消し線のマークで示して、図２に示したＳＡＮコンフィグレーション内には存在したこれらのエントリが例外５０２に従えば可能でないことを示す。
【００２９】
ある特定の実施形態は、ＳＡＮにおいて一般にサポートされるコンフィグレーションに対する例外を示すために、脚注も追加のステートメントも必要としない。グループ関係エントリ５０４、５０６は、充分に拡張したコンフィグレーション５２６よりも少なく、従って、ある特定の実施形態においては、充分に拡張したコンフィグレーション５２６をＳＡＮ相互運用データベース１１２に記憶する状況に比べて、ＳＡＮ相互運用データベース１１２に記憶する必要のあるエントリを少なくすることができる。
【００３０】
図６は、ある特定の実施形態に従った第１の動作を示す。図６に示す動作は、コンピューティング環境１００における計算プラットフォーム１０２のグループ関係発生アプリケーション１０４およびデータベース発生アプリケーション１０６によって実施することができる。
【００３１】
制御はブロック６００において開始して、ＳＡＮコンポーネントの相互運用性に関するデータを収集する。（ブロック６０２において）グループ関係発生アプリケーション１０４（先に少なくとも図１に示した）は、グループ関係データ構造１１０（先に少なくとも図１に示した）および対応するコンポーネント・グループ１０８（先に少なくとも図１に示した）を発生する。
【００３２】
制御はブロック６０４に進み、更新済みの相互運用性データにおいて、新しいコンポーネント（例えば図４に示した新しいサーバＳ３  ４０４）または新しい例外（例えば図５に示した例外５０２）が指示されているか否かを判定する。指示されている場合、（ブロック６０６において）グループ関係発生アプリケーション１０４は、グループ関係データ構造１１０および対応するコンポーネント・グループ１０８を更新する。次いで、（ブロック６０８において）データベース発生／記憶アプリケーション１０６は、グループ関係データ構造１１０および対応するコンポーネント・グループ１０８に基づいて、ＳＡＮ相互運用性データベース１１２にエントリを記憶する。更新済みの相互運用性データにおいて新しいコンポーネントまたは新しい例外が指示されていない場合、ブロック６０４から制御はブロック６０８に進む。
【００３３】
図７は、ある特定の実施形態に従った第２の動作を示す。図７に示す動作は、コンピューティング環境１００における計算プラットフォーム１０２のグループ関係発生アプリケーション１０４およびデータベース発生アプリケーション１０６によって実施することができる。制御はブロック７００において開始して、記憶領域ネットワークの複数のコンポーネント（例えば図２の例示的なコンポーネント２００）を複数のコンポーネント・グループ（例えば図１および図２の例示的なコンポーネント・グループ１０８）に分類することを実行する。ここで、１つのコンポーネント・グループは、記憶領域ネットワークの複数のコンポーネントの１つ以上を含む。グループ関係データ構造１１０（先に少なくとも図１および図２に示した）を発生させて、（ブロック７０２において）複数のコンポーネント・グループの１つ以上の間の関係（例えば図２に示した関係２２０、２２２）の指示を与える。ここで、関係は、記憶領域ネットワークのサポートされるコンフィグレーションを示す。
【００３４】
制御はブロック７０４に進み、グループ関係データ構造１１０および複数のコンポーネント・グループ１０８において与えられた関係に基づいて、記憶領域ネットワーク相互運用データベース１１２（先に図１に示した）にエントリを記憶する。（ブロック７０６において）記憶領域ネットワークに対して、新しいコンポーネントの任意の追加を行う。ここで、記憶領域ネットワークの他のコンポーネントとの相互運用性について、新しいコンポーネント（例えば先に図４に示した例示的なサーバＳ３  ４０４）の特徴を示す。更に、（ブロック７０８において）記憶領域ネットワークの少なくとも２つのコンポーネントの相互運用性に対する少なくとも１つの例外（先に図５に示した例外５０２等）の任意の指示を行う。
【００３５】
制御は７１０に進み、グループ関係発生アプリケーション１０４（先に少なくとも図１に示した）は、コンポーネント・グループ１０８およびグループ関係データ構造１１０内の関係を変更する。変更済みの関係は、記憶領域ネットワークのサポートされるコンフィグレーションを示す。制御はブロック７１０からブロック７０４に戻ることができる。
【００３６】
従って、ある特定の実施形態は、記憶領域コンフィグレーションが共通のサポート特徴を共有するパターンについての認識および最適化を可能とする。同時に、ある特定の実施形態は、サポート特徴において多数の例外のために効率的に準備することができる。更に、ある特定の実施形態は、同様のサポート特徴を共有する全てのコンポーネントを共にグループ化することができ、異なるサポート特徴を有する固有のグループを生成することができる。ある特定の実施形態は、記憶領域ネットワークにおいて様々なコンポーネントの相互運用性の収集および伝達を可能とし、記憶領域ネットワークにおけるコンポーネントの所与のコンフィグレーションがベンダーによってサポートされるとユーザが判定することを可能とする。全ての可能な組み合わせがデータベースに記憶されている状況に比べて、データベースに入力するためのエントリの検索およびロードが軽減される。
【００３７】
追加の実施形態の詳細
記載した技法は、ソフトウェア、ファームウェア、マイクロコード、ハードウェア、またはそれらのいずれかの組み合わせあるいはその両方を伴う方法、装置、または製造品として実施することができる。「製造品」という言葉は、本発明において用いる場合、媒体において実施されるコードまたは論理を指す。かかる媒体は、ハードウェア論理（例えば集積回路チップ、プログラマブル・ゲート・アレイ（ＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等）、または、磁気記憶媒体（例えばハード・ディスク・ドライブ、フレキシブルディスク、テープ等）、光記憶装置（ＣＤ−ＲＯＭ、光ディスク等）、揮発性および不揮発性メモリ・デバイス（例えば電気的消去可能書き込み可能ＲＯＭ（ＥＥＰＲＯＭ）、読み出し専用メモリ（ＲＯＭ）、プログラマブル読み出し専用メモリＲＯＭ（ＰＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、フラッシュ、ファームウェア、プログラマブル論理等）等のコンピュータ読み取り可能記憶媒体を含むことができる。コンピュータ読み取り可能媒体におけるコードは、プロセッサによってアクセスされて実行される。また、コードまたは論理が符号化されている媒体は、空間または光ファイバや銅ワイヤ等の伝送媒体を介して伝搬する伝送信号を含むことができる。コードまたは論理が符号化されている伝送信号は、更に、無線信号、衛星伝送、無線波、赤外線信号、Bluetooth（Ｒ）等を含むことができる。コードまたは論理が符号化されている伝送信号は、送信局によって送信されて受信局によって受信されることができ、伝送信号で符号化されているコードまたは論理は、受信局および送信局または受信デバイスおよび送信デバイスにおいてハードウェアまたはコンピュータ読み取り可能媒体において復号し記憶することができる。更に、「製造品」は、コードを具現化し、処理し、更に実行するハードウェアおよびソフトウェア・コンポーネントの組み合わせを含むことができる。むろん、実施形態の範囲から逸脱することなく多くの変更が可能であること、および、製造品がいずれかの情報担持媒体を含むことができることは、当業者には認められよう。例えば、製造品は、命令が記憶された記憶媒体を含み、この命令が機械によって実行されると、動作が実行されることになる。
【００３８】
ある特定の実施形態は、全体的にハードウェアの実施形態、全体的にソフトウェアの実施形態、またはハードウェアおよびソフトウェア要素の双方を含む実施形態の形態を取ることができる。好適な実施形態では、本発明はソフトウェアにおいて実施され、このソフトウェアは、限定ではないが、ファームウェア、常駐ソフトウェア、マイクロコード等を含む。
【００３９】
更に、ある特定の実施形態は、コンピュータまたはいずれかの命令実行システムによってまたはこれと接続して使用されるプログラム・コードを提供するコンピュータ使用可能またはコンピュータ読み取り可能媒体からアクセス可能なコンピュータ・プログラムの形態を取ることができる。この説明の目的のために、コンピュータ使用可能またはコンピュータ読み取り可能媒体は、命令実行システム、装置、またはデバイスによってまたはこれと接続して使用されるプログラムを含有、記憶、伝達、伝搬、または移送することができるいずれかの装置とすることができる。媒体は、電子、磁気、光学、電磁気、赤外線、または半導体システム（または装置またはデバイス）または伝搬媒体とすることができる。コンピュータ読み取り可能媒体の例は、半導体または固体メモリ、磁気テープ、着脱可能コンピュータ・ディスケット、ランダム・アクセス・メモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、剛性（rigid）磁気ディスク、および光ディスクを含む。光ディスクのいくつかの例は、コンパクト・ディスク−読み出し専用メモリ（ＣＤ−ＲＯＭ）、コンパクト・ディスク−読み取り／書き込み（ＣＤ−Ｒ／Ｗ）、およびＤＶＤを含む。
【００４０】
「ある特定の実施形態」、「１つの実施形態」、「実施形態」、「複数の実施形態」、「その実施形態」、「その複数の実施形態」、「１つ以上の実施形態」、「いくつかの実施形態」、および「一実施形態」という言葉は、特に明示的に指定しない限り、１つ以上の（ではあるが全てではない）実施形態を意味する。「含む（including）」、「含む（comprising）」、「有する」という言葉およびそれらの変形は、特に明示的に指定しない限り、「限定ではないが含む」という意味である。項目の列挙は、特に明示的に指定しない限り、それらの項目のいずれかまたは全てが相互に排他的であることを意味しない。「１つの」および「その」という言葉は、特に明示的に指定しない限り、「１つ以上の」を意味する。
【００４１】
相互に通信し合うデバイスは、特に明示的に指定しない限り、相互に連続的に通信し合っている必要はない。更に、相互に通信し合うデバイスは、直接的にまたは１つ以上の媒介物を介して間接的に通信することができる。更に、いくつかのコンポーネントが相互に通信し合う実施形態の記載は、かかるコンポーネントの全てが必須であることを意味しない。逆に、様々な任意のコンポーネントを記載して、可能な実施形態の多様性を示している。
【００４２】
更に、プロセス・ステップ、方法ステップ、アルゴリズム等は、順次記載することができるが、かかるプロセス、方法、およびアルゴリズムは、代替的な順序で機能するように構成することも可能である。換言すると、記載することができるステップのいずれかのシーケンスまたは順序は、必ずしも、ステップをその順序で実行することを要求するものではない。本発明において記載したプロセスのステップは、いずれかの実用的な順序で実行可能である。更に、いくつかのステップは、同時に、並列して、または並行して実行することができる。
【００４３】
本発明において単一のデバイスまたは物品が記載されている場合、単一のデバイス／物品の代わりに２つ以上のデバイス／物品（それらが協働するにせよしないにせよ）を使用可能であることは明らかであろう。同様に、本発明において２つ以上のデバイスまたは物品（それらが協働するにせよしないにせよ）が記載されている場合、２つ以上のデバイス／物品の代わりに単一のデバイス／物品を使用可能であることは明らかであろう。あるデバイスの機能またはフィーチャあるいはその両方は、かかる機能／フィーチャを有するものとして明示的に記載されていない１つ以上の他のデバイスによって代替的に具現化することができる。従って、他の実施形態は、そのデバイス自体を含む必要はない。
【００４４】
図８は、ある特定の実施形態に従った、計算プラットフォーム１０２に含むことができるある特定の要素を示すブロック図である。計算プラットフォーム１０２の１つ以上は、個別にまたは集合的にシステムと称される場合もあり、ある特定の実施形態ではプロセッサ８０４を含むことができる回路８０２を含むことができる。また、システム８００は、メモリ８０６（例えば揮発性メモリ・デバイス）および記憶装置８０８も含むことができる。記憶装置８０８は、不揮発性メモリ・デバイス（例えばＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、フラッシュ、ファームウェア、プログラマブル論理等）、磁気ディスク・ドライブ、光ディスク・ドライブ、テープ・ドライブ等を含むことができる。記憶装置８０８は、内部記憶デバイス、添付された記憶装置、またはネットワーク・アクセス可能記憶デバイスまたはそれら全てを含むことができる。システム８００は、コード８１２を含むプログラム論理８１０を含むことができる。コード８１２は、メモリ８０６にロードし、プロセッサ８０４または回路８０２によって実行することができる。ある特定の実施形態においては、コード８１２を含むプログラム論理８１０は、記憶装置８０８に記憶することができる。ある特定の他の実施形態では、プログラム論理８１０は回路８０２において実施することができる。従って、図８はプログラム論理８１０を他の要素とは別個に示すが、プログラム論理８１０は、メモリ８０６または回路８０２あるいはその両方において実施することも可能である。
【００４５】
ある特定の実施形態では、人によってまたは自動化処理でコンピュータ読み取り可能コードをコンピューティング・システム内に統合することによってコンピューティング命令を展開するための方法を対象とする場合がある。コードは、コンピューティング・システムと組み合わされて、記載した実施形態の動作を実行することが可能となる。
【００４６】
図１から図８に示した動作の少なくともいくつかは、並列におよび順次、実行することができる。代替的な実施形態においては、動作のいくつかは、異なる順序で実行するか、変更するか、または除去することも可能である。
【００４７】
更に、例示の目的のために、ソフトウェアおよびハードウェア・コンポーネントの多くを別個のモジュールとして記載した。かかるコンポーネントは、もっと少数のコンポーネントに統合するか、またはもっと多数のコンポーネントに分割することも可能である。更に、特定のコンポーネントによって実行されるとして記載されたある特定の動作は、他のコンポーネントによって実行することができる。
【００４８】
図１から図８において示したか参照したデータ構造およびコンポーネントは、特定のタイプの情報を有するものとして記載されている。代替的な実施形態においては、データ構造およびコンポーネントは、異なるように構成することができ、図面において示したか参照したものよりも少ないか、多いか、もしくは異なるフィールドまたは異なる機能を有する。
【００４９】
従って、実施形態の前述の記載は、例示および説明の目的のために提示したものである。これは、網羅的であることも、実施形態を開示した形態に厳密に限定することも意図していない。上述の教示に照らし合わせて、多くの変更および変形が可能である。
【図１】
2011501253.tif 000003
【図２】
2011501253.tif 000004
【図３】
2011501253.tif 000005
【図４】
2011501253.tif 000006
【図５】
2011501253.tif 000007
【図６】
2011501253.tif 000008
【図７】
2011501253.tif 000009
【図８】
2011501253.tif 000010
【手続補正書】
【提出日】平成22年8月3日(2010.8.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
記憶領域ネットワークの複数のコンポーネントを複数のコンポーネント・グループに分類するステップであって、コンポーネント・グループが前記記憶領域ネットワークの前記複数のコンポーネントの１つ以上を含む、前記ステップと、
グループ関係データ構造において、前記複数のコンポーネント・グループの１つ以上の間の関係を提供するステップであって、関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示し、前記複数のコンポーネント・グループの前記１つ以上の間の前記関係が、前記記憶領域ネットワークにおける前記複数のコンポーネントの全てのサポートされる組み合わせに比べて少数である、前記ステップと、
前記記憶領域ネットワークに新しいコンポーネントを追加するステップであって、前記記憶領域ネットワークの他のコンポーネントとの相互運用性についての前記新しいコンポーネントの特徴が示される、前記ステップと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更するステップであって、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示す、前記ステップと、
を含む、前記方法。
【請求項２】
前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいて、記憶領域ネットワーク相互運用性データベースにおいてエントリを記憶するステップであって、前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいた前記記憶領域ネットワーク相互運用性データベースを発生することが、前記記憶領域ネットワークにおいて前記複数のコンポーネントの全てのサポートされる組み合わせに対応してエントリを前記記憶領域ネットワーク相互運用性データベースに記憶することに基づいて前記記憶領域ネットワーク相互運用性データベースを発生することに比べて迅速に実行される前記ステップを更に含む、請求項１に記載の方法。
【請求項３】
前記記憶領域ネットワークの少なくとも１つのコンポーネントの相互運用性に対する少なくとも１つの例外を指示するステップと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更するステップであって、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示す、請求項１または２に記載の方法。
【請求項４】
システムであって、
メモリと、
前記メモリに結合されたプロセッサであって、
（ｉ）記憶領域ネットワークの複数のコンポーネントを複数のコンポーネント・グループに分類し、コンポーネント・グループが前記記憶領域ネットワークの前記複数のコンポーネントの１つ以上を含むことと、
（ｉｉ）グループ関係データ構造において、前記複数のコンポーネント・グループの１つ以上の間の関係を提供し、関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示し、前記複数のコンポーネント・グループの前記１つ以上の間の前記関係が、前記記憶領域ネットワークにおける前記複数のコンポーネントの全てのサポートされる組み合わせに比べて少数であることと、
前記記憶領域ネットワークに新しいコンポーネントを追加するステップであって、前記記憶領域ネットワークの他のコンポーネントとの相互運用性についての前記新しいコンポーネントの特徴が示されることと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更するステップであって、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示すことと、
を含む動作を実行する前記プロセッサと、
を含む、前記システム。
【請求項５】
前記動作が、
前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいて、記憶領域ネットワーク相互運用性データベースにおいてエントリを記憶し、前記グループ関係データ構造において提供された前記関係および前記複数のコンポーネント・グループに基づいた前記記憶領域ネットワーク相互運用性データベースを発生することが、前記記憶領域ネットワークにおいて前記複数のコンポーネントの全てのサポートされる組み合わせに対応してエントリを前記記憶領域ネットワーク相互運用性データベースに記憶することに基づいて前記記憶領域ネットワーク相互運用性データベースを発生することに比べて迅速に実行されることを更に含む、請求項４に記載のシステム。
【請求項６】
前記動作が、
前記記憶領域ネットワークの少なくとも１つのコンポーネントの相互運用性に対する少なくとも１つの例外を指示することと、
グループ関係発生アプリケーションによって、前記コンポーネント・グループおよび前記グループ関係データ構造における前記関係を変更し、前記変更済みの関係が前記記憶領域ネットワークのサポートされるコンフィグレーションを示すことと、
を更に含む、請求項４または５に記載のシステム。
【請求項７】
コンピュータ・プログラム・コードを含むコンピュータ・プログラムであって、コンピュータ・システムにロードされてそこで実行されると、前記コンピュータ・システムに、請求項１から３のいずれか１項に記載の前記方法の前記ステップを全て実行させる、前記コンピュータ・プログラム。
【請求項８】
コンピューティング・インフラストラクチャを展開するための方法であって、コンピュータ読み取り可能コードをコンピューティング・システム内に統合するステップを含み、前記コードが前記コンピューティング・システムと組み合わされて、前記コンピュータ・システムに、請求項１から３のいずれか１項に記載の前記方法の前記ステップを全て実行させることができる、前記方法。
【国際調査報告】
2011501253.tif 000011
2011501253.tif 000012
2011501253.tif 000013