(57)【特許請求の範囲】
【請求項１】
ミドルウェアマシン環境をサポートするためのシステムであって、
１つ以上のマイクロプロセッサと、
前記ミドルウェアマシン環境において前記１つ以上のマイクロプロセッサ上で実行される１つ以上のノード上に存在するサブネットマネージャインスタンスのセットとを含み、前記サブネットマネージャインスタンスのセットは、サブネット内で可用性の高いサブネットマネージャサービスを提供するよう協働し、前記サブネットマネージャインスタンスの各々は、異なるプライベートセキュアキーに関連付けられており、
前記サブネットマネージャインスタンスのセットは、互いに交渉を行うことが可能であるとともに、マスターサブネットマネージャに関連付けられる前記プライベートセキュアキーを用いて前記ミドルウェアマシン環境を構成および管理することを担うマスターサブネットマネージャを選択可能である、システム。
【請求項２】
ミドルウェアマシン環境をサポートするための方法であって、
サブネットマネージャインスタンスのセットにおける各サブネットマネージャインスタンスに異なるプライベートセキュアキーを関連付けるステップを含み、前記サブネットマネージャインスタンスの各々は、前記ミドルウェアマシン環境において１つ以上のマイクロプロセッサ上で実行される１つ以上のノード上に存在し、前記サブネットマネージャインスタンスのセットは、サブネット内で可用性の高いサブネットマネージャサービスを提供するよう協働し、前記方法はさらに、
前記サブネットマネージャインスタンスのセットが互いに交渉を行うとともにマスターサブネットマネージャを選択することを可能にするステップと、
前記マスターサブネットマネージャに関連付けられる前記プライベートセキュアキーを用いて前記ミドルウェアマシン環境を構成および管理するステップとを含む、方法。
【請求項３】
１つ以上のネットワークスイッチの各々は、外部ネットワークに接続するよう用いられる１つ以上の外部ポートと、前記ミドルウェアマシン環境における複数のホストサーバに接続するよう用いられる１つ以上の内部ポートとを提供する、請求項２に記載の方法。
【請求項４】
前記１つ以上のネットワークスイッチを通じて前記複数のホストサーバに接続する別個のストレージシステムを設けるステップをさらに含む、請求項３に記載の方法。
【請求項５】
前記サブネットはインフィニバンド（ＩＢ）サブネットである、請求項２〜４のいずれか１項に記載の方法。
【請求項６】
ゲストによってアクセス可能である１つ以上のゲートウェイインスタンスを設けるステップをさらに含む、請求項２〜５のいずれか１項に記載の方法。
【請求項７】
前記サブネットマネージャインスタンスが帯域内通信プロトコルを用いて互いに通信するステップをさらに含む、請求項２〜６のいずれか１項に記載の方法。
【請求項８】
前記サブネットをサブネットパーティションによって実現される資源ドメインの動的なセットに分けるステップをさらに含む、請求項２〜７のいずれか１項に記載の方法。
【請求項９】
パーティショニングポリシーが特定されていない場合、前記マスターサブネットマネージャが、初期化のためのデフォルトのパーティショニングポリシーを使用するステップをさらに含む、請求項２〜８のいずれか１項に記載の方法。
【請求項１０】
前記プライベートセキュアキーは、前記サブネットにおける認証されたエンティティにのみ知られる６４ビットの秘密値であるＭ＿キーである、請求項２〜９のいずれか１項に記載の方法。
【請求項１１】
前記サブネットにおけるポートに関連付けられるサブネット管理エージェント（ＳＭＡ）がＭ＿キー値を有するよう構成される場合、帯域内リクエストは、前記ポートに関連付けられる状態を変更するよう前記Ｍ＿キー値を特定する必要がある、請求項２〜１０のいずれか１項に記載の方法。
【請求項１２】
異なるサブネットマネージャインスタンスが前記マスターサブネットマネージャとして選択される場合、前記サブネットを異なるプライベートセキュアキーに関連付けられるよう再構成するステップをさらに含む、請求項２〜１１のいずれか１項に記載の方法。
【請求項１３】
各異なるプライベートセキュアキーを、前記サブネットにおける他のサブネットマネージャインスタンスに知られる前記各異なるプライベートセキュアキーと異なる範囲内に定義するステップをさらに含む、請求項２〜１２のいずれか１項に記載の方法。
【請求項１４】
前記サブネットにおける前記サブネットマネージャインスタンスのセットが互いに前記交渉を行い、各サブネットマネージャインスタンスに関連付けられたプライベートセキュアキーを知るステップと、
前記サブネットにおける前記サブネットマネージャインスタンスのセットが、どのサブネットマネージャインスタンスが現在前記マスターサブネットマネージャであるかによって、現在前記マスターサブネットマネージャであるサブネットマネージャインスタンスに関連付けられた既知のプライベートセキュアキーを参照して定義された範囲のどのプライベートセキュアキーが用いられているかを動的に判断するステップをさらに含む、請求項２〜１３のいずれか１項に記載の方法。
【請求項１５】
スプリットブレインシナリオを防止するよう、新しいマスターサブネットマネージャが選択された後で、古いマスターサブネットマネージャがマスターサブネットマネージャとして通常動作を再開するのを自動的に防止される、請求項２〜１４のいずれか１項に記載の方法。
【請求項１６】
１つ以上のアップデートされたサブネット構成ポリシーは、前記アップデートされたサブネット構成ポリシーに関連付けられるプライベートセキュアキーを認識可能な１つ以上のサブネットマネージャを通じて前記サブネットに適用可能であり、前記サブネットにおける前記プライベートセキュアキーを認識できない他のサブネットマネージャは、前記１つ以上のアップデートされたサブネット構成ポリシーによる影響を受けないままにされることが可能である、請求項２〜１５のいずれか１項に記載の方法。
【請求項１７】
前記マスターサブネットマネージャが、新しいサブネットマネージャが前記サブネットにおいて用いられるプライベートセキュアキーを認識できないので、前記新しいサブネットマネージャへの接続は意図的なものではないと判断し、かつ前記新しいサブネットマネージャが前記サブネットにおける如何なる状態も変更することを防止するステップをさらに含む、請求項２〜１６のいずれか１項に記載の方法。
【請求項１８】
新しいノードを含む遠隔のサブネットにおけるマスターサブネットマネージャは、前記サブネットにおける状態を変更することを許可されず、前記サブネットにおける前記マスターサブネットマネージャは、前記遠隔のサブネットにおける状態を変更することを許可されない、請求項２〜１７のいずれか１項に記載の方法。
【請求項１９】
プログラム可読命令を含むコンピュータプログラムであって、前記プログラム可読命令は、１つ以上のコンピュータシステムにロードおよび実行されると、前記１つ以上のコンピュータシステムに請求項２〜１８のいずれか１項に記載の方法を行わせる、コンピュータプログラム。
【請求項２０】
ミドルウェアマシン環境におけるサブネット内のサブネットマネージャであって、
異なるプライベートセキュアキーを前記サブネットマネージャに関連付けるよう構成される関連付けモジュールと、
前記サブネットマネージャが前記サブネット内の他のサブネットマネージャと交渉を行うことを可能にするとともに、マスターサブネットマネージャに関連付けられた前記プライベートセキュアキーを用いて前記ミドルウェアマシン環境を構成および管理することを担うマスターサブネットマネージャを選択することを可能にするよう構成される交渉モジュールとを含む、サブネットマネージャ。
【請求項２１】
請求項２０に記載の１つのサブネットマネージャと、
外部ネットワークに接続するよう用いられる１つ以上の外部ポートと、
前記ミドルウェアマシン環境における複数のホストサーバに接続するよう用いられる１つ以上の内部ポートとを含む、ネットワークスイッチ。
【請求項２２】
請求項２１に記載の１つ以上のネットワークスイッチを含む、ミドルウェアマシン環境をサポートするためのシステム。
【請求項２３】
ミドルウェアマシン環境をサポートするためのシステムであって、
サブネット内で可用性の高いサブネットマネージャサービスを提供するよう協働するサブネットマネージャのセットを含み、前記サブネットマネージャの各々は、異なるプライベートセキュアキーに関連付けられ、
前記サブネットマネージャのセットは、互いに交渉可能であるとともに、マスターサブネットマネージャに関連付けられる前記プライベートセキュアキーを用いて前記ミドルウェアマシン環境を構成および管理することを担うマスターサブネットマネージャを選択可能である、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
著作権表示
この特許文書の開示の一部は、著作権の保護下にある内容を含む。著作権所有者は、特許商標庁の特許ファイルまたはレコードに現れるので、誰でも当該特許文書または特許開示を複製することについて異議はないが、そうでなければ如何なる場合でもすべての著作権を留保する。
【０００２】
発明の分野
本発明は一般的に、コンピュータシステムおよびミドルウェアのようなソフトウェアに関し、特定的にはミドルウェアマシン環境をサポートすることに関する。
【背景技術】
【０００３】
背景
インフィニバンド（ＩＢ）アーキテクチャは、１つ以上のコンピュータシステムのために、Ｉ／Ｏおよびプロセッサ間の通信をサポートする通信および管理インフラストラクチャである。ＩＢアーキテクチャシステムは、いくつかのプロセッサおよびいくつかのＩ／Ｏデバイスを有する小さなサーバから、何百ものプロセッサおよび何千ものＩ／Ｏデバイスを有する大規模並列インストレーションまでスケール変更できる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
当該ＩＢアーキテクチャは、保護された遠隔管理された環境において、高帯域かつ低レイテンシで、多くの装置が同時に通信することを可能にするスイッチド通信ファブリックを定義する。エンドノードは、多数のＩＢアーキテクチャポート上で通信し得るとともに、ＩＢアーキテクチャファブリックを通る多数のパスを用い得る。多数のＩＢアーキテクチャポートおよびネットワークを通るパスは、障害の許容およびデータ転送帯域幅の増加の両方のために設けられる。
【０００５】
これらは、本発明の実施例が対応することを意図する一般的な領域である。
【課題を解決するための手段】
【０００６】
概要
本願明細書において、ミドルウェアマシン環境をサポートするためのシステムおよび方法を記載する。ミドルウェアマシン環境は、ミドルウェアマシン環境において１つ以上のノード上に存在するとともにサブネット内で可用性の高いサブネットマネージャサービスを提供するよう協働するサブネットマネージャインスタンスのセットとを含み得、上記サブネットマネージャインスタンスの各々は、異なるプライベートセキュアキーに関連付けられる。サブネットマネージャインスタンスのセットは、互いに交渉を行うことが可能であるとともに、マスターサブネットマネージャに関連付けられるプライベートセキュアキーを用いてミドルウェアマシン環境を構成および管理することを担うマスターサブネットマネージャを選択可能である。新しいサブネットマネージャインスタンスがマスターサブネットマネージャとして選択される場合、サブネットは、異なるプライベートセキュアキーに関連付けられるよう再構成される。「スプリットブレイン」シナリオのような望ましくない結果を回避するよう、古いマスターサブネットマネージャが、マスターサブネットマネージャとして通常動作を再開するのを自動的に防止され得る。
【０００７】
１つの局面では、ミドルウェアマシン環境におけるサブネット内のサブネットマネージャが提供される。当該サブネットマネージャは、異なるプライベートセキュアキーをサブネットマネージャに関連付けるよう構成される関連付けモジュールと、サブネットマネージャがサブネット内の他のサブネットマネージャと交渉を行うことを可能にするとともに、マスターサブネットマネージャに関連付けられたプライベートセキュアキーを用いてミドルウェアマシン環境を構成および管理することを担うマスターサブネットマネージャを選択することを可能にするよう構成される交渉モジュールとを含む。
【０００８】
いくつかの実施例では、サブネットはインフィニバンド（ＩＢ）サブネットである。
いくつかの実施例では、サブネットマネージャは、サブネットマネージャが帯域内通信プロトコルを用いてサブネット内の他のサブネットマネージャと通信するのを可能にするよう構成される通信モジュールをさらに含む。
【０００９】
いくつかの実施例では、サブネットは、サブネットパーティションによって実現される資源ドメインの動的なセットに分けられることが可能である。
【００１０】
いくつかの実施例では、サブネットマネージャは、パーティショニングポリシーが特定されていない場合、サブネットマネージャがマスターサブネットマネージャとして選択されたことに応答して、デフォルトのパーティショニングポリシーを用いてマスターサブネットマネージャを初期化するよう構成される初期化モジュールをさらに含む。
【００１１】
いくつかの実施例では、プライベートセキュアキーは、サブネットにおける認証されたエンティティにのみ知られる６４ビットの秘密値であるＭ＿キーである。
【００１２】
いくつかの実施例では、サブネットにおけるポートに関連付けられるサブネット管理エージェント（ＳＭＡ）がＭ＿キー値を有するよう構成される場合、帯域内リクエストは、ポートに関連付けられる状態を変更するようＭ＿キー値を特定する必要がある。
【００１３】
いくつかの実施例では、異なるサブネットマネージャがマスターサブネットマネージャとして選択される場合、サブネットは、異なるプライベートセキュアキーに関連付けられるよう再構成される。
【００１４】
いくつかの実施例では、各異なるプライベートセキュアキーは、サブネットにおける他のサブネットマネージャに知られる異なる範囲内に定義される。
【００１５】
いくつかの実施例では、サブネットマネージャは、どのサブネットマネージャが現在マスターサブネットマネージャであるかによって、定義された範囲のどのプライベートセキュアキーが用いられているかを動的に判断するよう構成される判断モジュールをさらに含む。
【００１６】
いくつかの実施例では、スプリットブレインシナリオを防止するよう、新しいマスターサブネットマネージャが選択された後で、古いマスターサブネットマネージャがマスターサブネットマネージャとして通常動作を再開するのを自動的に防止される。
【００１７】
いくつかの実施例では、マスターサブネットマネージャが、新しいサブネットマネージャがサブネットにおいて用いられるプライベートセキュアキーを認識できないので、新しいサブネットマネージャへの接続は意図的なものではないと判断可能であり、かつ新しいサブネットマネージャがサブネットにおける如何なる状態も変更することが防止される。
【００１８】
別の局面では、本開示の１つの局面に従った１つのサブネットマネージャと、外部ネットワークに接続するよう用いられる１つ以上の外部ポートと、ミドルウェアマシン環境における複数のホストサーバに接続するよう用いられる１つ以上の内部ポートとを含むネットワークスイッチが提供される。
【００１９】
さらに別の局面では、本開示の別の局面に従った１つ以上のネットワークスイッチを含む、ミドルウェアマシン環境をサポートするためのシステムが提供される。
【００２０】
いくつかの実施例では、システムは、上記１つ以上のネットワークスイッチを通じて複数のホストサーバに接続する別個のストレージシステムをさらに含む。
【００２１】
いくつかの実施例では、システムは、ゲストによってアクセス可能である１つ以上のゲートウェイをさらに含む。
【００２２】
いくつかの実施例では、１つ以上のアップデートされたサブネット構成ポリシーは、アップデートされたサブネット構成ポリシーに関連付けられるプライベートセキュアキーを認識可能な１つ以上のサブネットマネージャを通じてサブネットに適用可能であり、サブネットにおけるプライベートセキュアキーを認識できない他のサブネットマネージャは、１つ以上のアップデートされたサブネット構成ポリシーによる影響を受けないままにされることが可能である。
【００２３】
さらに別の局面では、ミドルウェアマシン環境をサポートするためのシステムが提供される。当該システムは、サブネット内で可用性の高いサブネットマネージャサービスを提供するよう協働するサブネットマネージャのセットを含み、サブネットマネージャの各々は、異なるプライベートセキュアキーに関連付けられ、サブネットマネージャのセットは、互いに交渉可能であるとともに、マスターサブネットマネージャに関連付けられるプライベートセキュアキーを用いてミドルウェアマシン環境を構成および管理することを担うマスターサブネットマネージャを選択可能である。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施例に従った、Ｍ＿キーを用いるミドルウェアマシン環境の図を示す図である。
【図２】本発明の実施例に従った、明示的な引継ぎスキームを用いるミドルウェアマシン環境の図を示す図である。
【図３】本発明の実施例に従った、Ｍ＿キーを用いるミドルウェアマシン環境の図を示す図である。
【図４】本発明の実施例に従った、Ｍ＿キーを用いてＩＢファブリックにおいてルーティングロジックをセットアップするための例示的なフローチャートを示す図である。
【図５】本発明の実施例に従った、Ｍ＿キーを用いてＩＢファブリックにおいてルーティングロジックをセットアップするための例示的なフローチャートを説明する図である。
【図６】本発明の実施例に従った、明示的な引継ぎスキームをサポートするミドルウェアマシン環境の図を示す図である。
【図７】本発明の実施例に従った、ミドルウェアマシン環境において明示的な引継ぎスキームをサポートするための例示的なフローチャートを示す図である。
【図８】本発明の実施例に従った、アップデートされたサブネット構成ポリシーを受信できないサブネットマネージャインスタンスの堅牢なフェンシングをサポートするミドルウェアマシン環境の図を示す図である。
【図９】本発明の実施例に従った、ミドルウェアマシン環境においてアップデートされたサブネット構成ポリシーを受信できないサブネットマネージャインスタンスの堅牢なフェンシングをサポートするための例示的なフローチャートを示す図である。
【図１０】本発明の実施例に従った、偶発的なサブネットマージを有するミドルウェアマシン環境の図を示す図である。
【図１１】本発明の実施例に従った、ミドルウェアマシン環境において偶発的なサブネットマージのマイナスの影響からの保護を行うための例示的なフローチャートを示す図である。
【図１２】本発明のいくつかの実施例に従った、ミドルウェアマシン環境におけるサブネット内のサブネットマネージャの機能ブロック図である。
【図１３】本発明のいくつかの実施例に従ったネットワークスイッチの機能ブロック図である。
【図１４】本発明のいくつかの実施例に従った、ミドルウェアマシン環境をサポートするためのシステムの機能ブロック図である。
【発明を実施するための形態】
【００２５】
詳細な説明
本願明細書において、ミドルウェアマシンまたは同様のプラットフォームを提供するためのシステムおよび方法を記載する。本発明の実施例に従うと、当該システムは、高性能ハードウェア（たとえば６４ビットプロセッサ技術、高性能な大きなメモリ、ならびに冗長なインフィニバンドおよびイーサネット（登録商標）ネットワーキング）と、ＷｅｂＬｏｇｉｃ  Ｓｕｉｔｅのようなアプリケーションサーバまたはミドルウェア環境との組合せを含み、これにより、迅速に備えられ得るとともにオンデマンドでスケール変更可能な大規模並列メモリグリッドを含む完全なＪａｖａ（登録商標）  ＥＥアプリケーションサーバコンプレックスを提供する。本発明の実施例に従うと、当該システムは、アプリケーションサーバグリッド、ストレージエリアネットワーク、およびインフィニバンド（ＩＢ）ネットワークを提供するフルラック、ハーフラック、もしくはクォーターラック、または他の構成として展開され得る。ミドルウェアマシンソフトウェアは、たとえばＷｅｂＬｏｇｉｃ  Ｓｅｒｖｅｒ、ＪＲｏｃｋｉｔまたはＨｏｔｓｐｏｔ  ＪＶＭ、Ｏｒａｃｌｅ  Ｌｉｎｕｘ（登録商標）またはＳｏｌａｒｉｓ、およびＯｒａｃｌｅ  ＶＭといった、アプリケーションサーバと、ミドルウェアと、他の機能性とを提供し得る。本発明の実施例に従うと、当該システムは、ＩＢネットワークを介して互いに通信する複数の計算ノードと、１つ以上のＩＢスイッチゲートウェイと、ストレージノードまたはユニットとを含み得る。ラック構成として実施される場合、当該ラックの未使用部分は、空のままとされるか、またはフィラー（filler）によって占有され得る。
【００２６】
本願明細書において「Ｓｕｎ  Ｏｒａｃｌｅ  Ｅｘａｌｏｇｉｃ」または「Ｅｘａｌｏｇｉｃ」と称される本発明の実施例に従うと、当該システムは、Ｏｒａｃｌｅ  Ｍｉｄｄｌｅｗａｒｅ  ＳＷ  ｓｕｉｔｅまたはＷｅｂｌｏｇｉｃといったミドルウェアまたはアプリケーションサーバソフトウェアをホスティングするための、展開が容易なソリューションである。本願明細書に記載されるように、実施例に従うと、当該システムは、１つ以上のサーバと、ストレージユニットと、ストレージネットワーキングのためのＩＢファブリックと、ミドルウェアアプリケーションをホストするために要求されるすべての他のコンポーネントとを含む「グリッド・イン・ア・ボックス（grid in a box）」である。たとえばＲｅａｌ  Ａｐｐｌｉｃａｔｉｏｎ  ＣｌｕｓｔｅｒｓおよびＥｘａｌｏｇｉｃ  ｏｐｅｎ  ｓｔｏｒａｇｅを用いて大規模並列グリッドアーキテクチャを活用することにより、すべてのタイプのミドルウェアアプリケーションのために有意な性能が与えられ得る。このシステムは、線形のＩ／Ｏスケーラビリティとともに向上した性能を与え、使用および管理が簡易であり、ミッションクリティカルな可用性および信頼性を与える。
【００２７】
図１は、本発明の実施例に従った、ミドルウェアマシンのための例示的な構成の図を示す図である。図１に示されるように、ミドルウェアマシン１００は、２８のサーバノードに接続する２つのゲートウェイネットワークスイッチまたはリーフネットワークスイッチ１０２および１０３を含む単一のラック構成を用いる。さらに、ミドルウェアマシンについては、異なる構成が存在する。たとえば、サーバノードの一部を含むハーフラック構成が存在し得るとともに、多数のサーバを含むマルチラック構成も存在する。
【００２８】
図１に示されるように、サーバノードは、ゲートウェイネットワークスイッチによって与えられるポートに接続し得る。図１に示されるように、各サーバマシンは、２つのゲートウェイネットワークスイッチ１０２および１０３への接続を別個に有し得る。たとえば、ゲートウェイネットワークスイッチ１０２は、サーバ１〜１４のポート１である１０６と、サーバ１５〜２８のポート２である１０７とに接続し、ゲートウェイネットワークスイッチ１０３は、サーバ１〜１４のポート２である１０８と、サーバ１５〜２８のポート１である１０９とに接続する。
【００２９】
本発明の実施例に従うと、各ゲートウェイネットワークスイッチは、異なるサーバと接続するのに用いられる複数の内部ポートを有し得るとともに、ゲートウェイネットワークスイッチは、既存のデータセンタサービスネットワークといった外部ネットワークと接続するのに用いられる外部ポートも有し得る。
【００３０】
本発明の実施例に従うと、当該ミドルウェアマシンは、ゲートウェイネットワークスイッチを通ってサーバに接続する別個のストレージシステム１１０を含み得る。さらに、当該ミドルウェアマシンは、２つのゲートウェイネットワークスイッチ１０２および１０３に接続するスパインネットワークスイッチ（spine network switch）１０１を含み得る。図１に示されるように、ストレージシステムからスパインネットワークスイッチへの２つのリンクが随意に存在し得る。
【００３１】
ＩＢファブリック／サブネット
本発明の実施例に従うと、ミドルウェアマシン環境におけるＩＢファブリック／サブネットは、ファット・ツリー・トポロジ（fat-tree topology）において相互接続される多数の物理的なホストまたはサーバ、スイッチインスタンス、およびゲートウェイインスタンスを含み得る。
【００３２】
図２は、本発明の実施例に従った、ミドルウェアマシン環境の図を示す図である。図２に示されるように、ミドルウェアマシン環境２００は、複数のエンドノードに接続するＩＢサブネットまたはファブリック２２０を含む。ＩＢサブネットは、各々が複数のネットワークスイッチ２０１〜２０４の１つといったノード上に存在する複数のサブネットマネージャ２１１〜２１４を含む。これらのサブネットマネージャは、管理データグラム（Management Datagram；ＭＡＤ）／サブネット管理パケット（Subnet Management Packet；ＳＭＰ）に基づくプロトコルのような帯域内通信プロトコル２１０、またはインターネットプロトコル・オーバー・ＩＢ（Internet Protocol over IB；ＩＰｏＩＢ）のような他のプロトコルを用いて互いに通信し得る。
【００３３】
本発明の実施例に従うと、単一のＩＰサブネットは、同じＩＢファブリックにおいてスイッチ同士が確実に互いに通信すること（すなわちすべてのスイッチの間での完全な接続性）を可能にするＩＢファブリック上に構成され得る。このファブリックに基づくＩＰサブネットは、作動状態のリンクを有する少なくとも１つルートが任意の対のスイッチの間に存在する場合に、当該２つのスイッチ同士の間の接続性を提供し得る。リルーティングにより代替的なルートが存在する場合には、リンク障害からの回復が達成され得る。
【００３４】
これらのスイッチの管理イーサネット（登録商標）インターフェイスは、すべてのスイッチ同士の間にＩＰレベルの接続性を提供する単一のネットワークに接続され得る。各スイッチは、外部の管理イーサネット（登録商標）のためのＩＰアドレスと、ファブリックに基づくＩＰサブネットのためのＩＰアドレスとの２つの主なＩＰアドレスによって識別され得る。各スイッチは、両方のＩＰアドレスを用いて、すべての他のスイッチへの接続性を監視し得るとともに、通信のために、いずれかの使用可能なアドレスを用い得る。さらに、各スイッチは、ファブリック上において、各々の直接的に接続されたスイッチへのポイント・ツー・ポイントＩＰリンクを有し得る。したがって、少なくとも１つの付加的なＩＰアドレスが存在し得る。
【００３５】
ＩＰルーティングセットアップにより、ネットワークスイッチが、ファブリックＩＰサブネットと、外部の管理イーサネット（登録商標）ネットワークと、スイッチの対の間の１つ以上のファブリックレベルのポイント・ツー・ポイントＩＰリンクとの組合せを用いて、中間のスイッチを介して別のスイッチにトラフィックをルーティングすることが可能になる。ＩＰルーティングにより、ネットワークスイッチへの外部の管理アクセスが、ネットワークスイッチ上の外部のイーサネット（登録商標）ポートを介して、かつファブリック上の専用のルーティングサービスを通じて、ルーティングされることが可能になる。
【００３６】
ＩＢファブリックは、管理ネットワークへの管理イーサネット（登録商標）アクセスを有する複数のネットワークスイッチを含む。ファブリックにおけるスイッチ同士の間の帯域内の物理的な接続性が存在する。一例では、ＩＢファブリックが劣化しない場合には、スイッチの各対同士の間に１つ以上のホップの少なくとも１つの帯域内ルートが存在する。ＩＢファブリックのための管理ノードは、ネットワークスイッチと、ＩＢファブリックに接続される管理ホストとを含む。
【００３７】
サブネットマネージャは、そのプライベートＩＰアドレスのいずれかを介してアクセスされ得る。サブネットマネージャはさらに、サブネットマネージャがマスターサブネットマネージャとしての役割を担う際に、マスターサブネットマネージャのために構成されるフローティングＩＰアドレスを介してアクセス可能であり得、当該サブネットマネージャは、当該役割から明示的に解放される際には、構成解除される。外部の管理ネットワークと、ファブリックに基づく管理ＩＰネットワークとの両方のためにマスターＩＰアドレスが定義され得る。ポイント・ツー・ポイントＩＰリンクのために特別なマスターＩＰアドレスが定義される必要はない。
【００３８】
本発明の実施例に従うと、各物理的なホストは、バーチャルマシンに基づくゲストを用いて仮想化され得る。たとえばＣＰＵコアごとに１つのゲストといったように、物理的なホストごとに同時に複数のゲストが存在し得る。さらに、各物理的なホストは、デュアルポートが設けられた少なくとも１つのホストチャネルアダプタ（ＨＣＡ）を有し得る。当該ホストチャネルアダプタは、仮想化されるとともに、ゲスト同士の間で共有され得る。そのため、仮想化されたＨＣＡのファブリックビューは、ちょうど仮想化／共有されていないＨＣＡのような、デュアルポートが設けられた単一のＨＣＡである。
【００３９】
ＩＢファブリックは、ＩＢパーティションによって実現される資源ドメインの動的なセットへと分けられ得る。ＩＢファブリックにおける各物理的なホストおよび各ゲートウェイインスタンスは、複数のパーティションのメンバーであり得る。さらに、同じまたは異なる物理的なホスト上の複数のゲストが、同じまたは異なるパーティションのメンバーとなり得る。ＩＢファブリックのためのＩＢパーティションの数は、Ｐ＿キーのテーブルサイズによって制限されてもよい。
【００４０】
本発明の実施例に従うと、ゲストは、当該ゲストにおけるｖＮＩＣドライバから直接的にアクセスされる２つ以上のゲートウェイインスタンス上にて、仮想ネットワークインターフェイスカード（ｖＮＩＣｓ）のセットを開き得る。ゲストは、更新されたｖＮＩＣ関連付けを保持しつつまたは有しつつ、物理的なホスト同士の間を移行し得る。
【００４１】
本発明の実施例に従うと、スイッチは、任意の順番で始動し得、たとえばＩＢが特定された交渉プロトコルのような異なる交渉プロトコルに従って、マスターサブネットマネージャを動的に選択し得る。パーティショニングポリシーが特定されていない場合、デフォルトのパーティショニングイネーブルポリシーが用いられ得る。さらに、管理ノードパーティションおよびファブリックに基づく管理ＩＰサブネットは、任意の付加的なポリシー情報と独立して、かつ完全なファブリックポリシーをマスターサブネットマネージャが知っているかどうかから独立して、確立され得る。ファブリックレベル構成ポリシー情報がファブリックに基づくＩＰサブネットを用いて同期されるよう、サブネットマネージャは、デフォルトのパーティションポリシーを用いて最初に始動し得る。ファブリックレベルの同期が達成されると、ファブリックについて現在のパーティション構成が、マスターサブネットマネージャによってインストールされ得る。
【００４２】
Ｍ＿キー
本発明の実施例に従うと、サブネットマネージャインスタンスのセットは、プライベートセキュアキーを用いてＩＢサブネット内で可用性の高いサブネットマネージャサービスを提供するよう協働し得る。このようなプライベートセキュアキーの一例は、ＩＢファブリックにおけるさまざまなネットワーク異常の望ましくない結果からの保護を促進するよう用いられ得るＭ＿キーである。一実施例では、当該Ｍ＿キーは、パスワードの機能を有するとともに、ＩＢファブリックにおける認証されたエンティティにのみ知られる６４ビットの秘密値である。ＩＢファブリックにおけるポートに関連付けられるサブネット管理エージェント（Subnet Management Agent；ＳＭＡ）がＭ＿キー値を有するよう構成される場合、当該ポートに関連付けられる状態を変更する如何なる帯域内ＳＭＰリクエストも正しいＭ＿キー値を特定する必要がある。
【００４３】
図３は、本発明の実施例に従った、Ｍ＿キーを用いるミドルウェアマシン環境の図を示す。図３に示されるように、ミドルウェアマシン環境３００におけるＩＢサブネットまたはファブリック３２０は、複数のサブネットマネージャ３１１〜３１４を含む。各サブネットマネージャは、複数のネットワークスイッチ３０１〜３０４の１つに存在し、異なるＭ＿キー３２１〜３２４に関連付けられる。サブネットマネージャは、帯域内通信プロトコル３１０を用いて互いに通信し得る。
【００４４】
サブネットマネージャは、互いに交渉を行い得、ミドルウェアマシン環境においてＩＢファブリックを構成および管理することを担うマスターサブネットマネージャを選択し得る。図３に示されるような例では、サブネットマネージャＡ３１１がマスターサブネットマネージャとして選択される。その結果、サブネットマネージャＡに関連付けられるＭ＿キーＡ３２１が、ＩＢサブネットを構成および管理するために選択される。さらに、図３に示されるようなサブネットマネージャＢ〜Ｄ３１２〜３１４の各々は、サブネットマネージャＡを監視し得るとともに、必要な場合、マスターサブネットマネージャを引き継ぐ準備をし得る。
【００４５】
図４は、本発明の実施例に従った、Ｍ＿キーを用いてＩＢファブリックにおいてルーティングロジックをセットアップするための例示的なフローチャートを示す図である。図４に示されるように、ステップ４０１では、当該システムは、Ｍ＿キーのような異なるプライベートセキュアキーを、ＩＢファブリックにおける各サブネットマネージャインスタンスに関連付け得る。サブネットマネージャインスタンスは、ＩＢサブネットにおいて、可用性の高いサブネットマネージャサービスを提供するよう協働する。次いでステップ４０２では、サブネットマネージャインスタンスは、互いに交渉を行い得、マスターサブネットマネージャを選択し得る。最後にステップ４０３では、マスターサブネットマネージャは、マスターサブネットマネージャに関連付けられたプライベートセキュアキーを用いて、ミドルウェアマシン環境を構成および管理し得る。
【００４６】
図５は、本発明の実施例に従った、Ｍ＿キーを用いてＩＢファブリックにおいてルーティングロジックをセットアップするための例示的なフローチャートを示す図である。図５に示されるように、ステップ５０１では、マスターサブネットマネージャはまず、ＳＭＰリクエストパケットを用いて、物理的なＩＢサブネットにおいて、完全な接続されたポートトポロジを発見することを試み得る。次いで、ステップ５０２では、マスターサブネットマネージャは、Ｍ＿キーを用いてどのポートを制御することが許されているかを判断、および／または帯域外ポリシー入力を介して定義される明示的なノード／ポートリスト構成情報を判断し得る。最後に、ステップ５０３では、マスターサブネットマネージャは、発見されたポートトポロジに基づき、ＩＢファブリックにおいて通常のデータパケット通信を可能にする前に、ＩＢファブリックにおいてルーティングロジックをセットアップし得る。
【００４７】
「ランナウェイ（run-away）」サブネットマネージャインスタンスからの保護
本発明の一実施例に従うと、各サブネットマネージャインスタンスは、同じＩＢファブリックにおける他のサブネットマネージャインスタンスに知られている特定のＭ＿キー値／範囲に関連付けられ得る。ＩＢファブリックにおけるサブネットマネージャインスタンスのセットは、どのサブネットマネージャが現在マスターサブネットマネージャであるかによって、定義された範囲におけるどのＭ＿キーが使用されているかを動的に判断し得る。
【００４８】
図６は、本発明の実施例に従った、明示的な引継ぎスキームをサポートするミドルウェアマシン環境の図を示す。図６に示されるように、サブネットマネージャＡ６１１は、停止または故障しており、たとえば、サブネットマネージャＡがある期間の間、通常動作の実行およびスタンバイしたサブネットマネージャインスタンスとのハンドシェイクを行うことを防止されており、サブネットマネージャＣ６１３は、次いでＩＢサブネット６２０を引き継ぐ。したがって、サブネットマネージャＣに関連付けられるＭ＿キーＣ６２３は、古いＭ＿キーであるＭ＿キーＡを置き換え、ＩＢファブリック６２０において用いられる。
【００４９】
本発明の一実施例に従うと、古い「ランナウェイ」マスターサブネットマネージャ、たとえば図６に示されるようなサブネットマネージャＡは、（たとえば自身が実行されるプラットフォーム上でのスケジューリング問題により）かなりの期間の間、実行が中断および／または防止され得る。サブネットマネージャＡが再びＩＢファブリックに接続すると、サブネットマネージャＡは、新しいマスターサブネットマネージャが当該ＩＢサブネットのために選択されており、新しいＭ＿キーがＩＢファブリックにおいて用いられていることを認識し得る。次いで、当該システムは、「スプリットブレイン（split brain）」シナリオといったような望ましくない結果を回避するために、当該サブネットマネージャＡがマスターサブネットマネージャとして通常動作を再開することを自動的に防止し得る。この「スプリットブレイン」シナリオは、サブネットにおいて、新しいマスターサブネットマネージャからの同時アップデートと相反する態様で、古いマスターサブネットマネージャがノードおよびポート上にて状態アップデートを行う際に発生し得る。
【００５０】
図７は、本発明の実施例に従った、ミドルウェアマシン環境において明示的な引継ぎスキームをサポートするための例示的なフローチャートを示す図である。図７に示されるように、ステップ７０１では、当該システムは、かなりの期間の間の古いマスターサブネットマネージャの中断を検出し得る。次いで、ステップ７０２では、サブネットマネージャインスタンスのセットが、新しいマスターサブネットマネージャを選択し得る。ＩＢファブリックは、ステップ７０３において、古いマスターサブネットマネージャに関連付けられる古いＭ＿キーを、新しいマスターサブネットマネージャに関連付けられる新しいＭ＿キーに置換し得る。最後に、ステップ７０４では、ＩＢファブリックは、「スプリットブレイン」シナリオのような望ましくない結果を回避するために、古いサブネットマネージャがマスターサブネットマネージャとして通常動作を再開することを自動的に防止し得る。
【００５１】
アップデートされたサブネット構成ポリシーを受信できないサブネットマネージャインスタンスの堅牢なフェンシング（fencing）
本発明の実施例に従うと、サブネット構成ポリシーのような新しいポリシーは、存在するサブネットマネージャインスタンスの動作状態または到達可能性によることなく、サブネットマネージャインスタンスの新しいセットを実現することまたはサブネットマネージャインスタンスの古いセットをアップデートすることによってＩＢサブネットに適用され得る。
【００５２】
図８は、本発明の実施例に従った、アップデートされたサブネット構成ポリシーを受信できないサブネットマネージャインスタンスの堅牢なフェンシングをサポートするミドルウェアマシン環境の図を示す。図８に示されるように、アップデートされたサブネット構成ポリシー８０９は、サブネットマネージャＡ８１１およびサブネットマネージャＣ８１３を介して、ＩＢサブネット８２０に適用され得る。サブネットマネージャＡおよびサブネットマネージャＣは、それらの間でのみ認識可能なＭ＿キー値範囲を有し得る。
【００５３】
本発明の実施例に従うと、当該システムは、ＡＣＩＤに準拠した態様のような調整された態様で、アップデートされたサブネット構成ポリシーを受信できないサブネットマネージャインスタンスの堅牢なフェンシングを確実にし得る。図８に示されるような例では、ＩＢサブネットに存在するサブネットマネージャであるサブネットマネージャＢ８１２およびサブネットマネージャＤ８１４は、アップデートされたサブネット構成ポリシーに関連付けられたＭ＿キー値を認識できない。したがって、サブネットマネージャＢおよびサブネットマネージャＤは、アップデートされたサブネット構成ポリシーを受信できない。その結果、サブネットマネージャＢおよびＤは新しいポリシーに影響されないまま、アップデートされた構成ポリシーがサブネットマネージャＡおよびＣを通じてＩＢサブネットに適用され得る。さらに、サブネットマネージャＢまたはＤのいずれも、対応するノード上にローカルに格納される任意の古いおよび潜在的に古い構成ポリシーに基づき、サブネットの状態を変更し得ない。
【００５４】
図９は、本発明の実施例に従った、ミドルウェアマシン環境においてアップデートされたサブネット構成ポリシーを受信できないサブネットマネージャインスタンスの堅牢なフェンシングをサポートするための例示的なフローチャートを示す。図９に示されるように、ステップ９０１では、ユーザは、ＩＢファブリックのためにアップデートされたサブネット構成ポリシーを提供し得る。ステップ９０２では、ＩＢファブリックは、アップデートされたサブネット構成ポリシーに関連付けられるＭ＿キーを認識し得る１つ以上のサブネットマネージャを通じて、アップデートされたサブネット構成ポリシーを適用し得る。次いで、ステップ９０３では、ＩＢサブネットにおけるＭ＿キーを認識し得ないサブネットマネージャは、新しいポリシーによる影響を受けないままにされ得る。これにより、このようなサブネットマネージャは、このサブネットにおける協働するサブネットマネージャの群から実際上除外される。
【００５５】
偶発的なサブネットマージのマイナスの影響からの保護
図１０は、本発明の実施例に従った、偶発的なサブネットマージを有するミドルウェアマシン環境の図を示す。図１０に示されるように、ミドルウェアマシン環境１０００におけるＩＢサブネットまたはファブリック１０２０は、複数のエンドノードを管理する。サブネットマネージャＡ１００１は、Ｍ＿キーＡ１０２１を用いてＩＢサブネットを構成および管理するマスターサブネットマネージャである。
【００５６】
本発明の実施例に従うと、当該システムは、偶発的なサブネットマージに関連付けられる起こり得るマイナスの影響から保護し得る。図１０に示されるような例において、ＩＢファブリックの一部ではないサブネットマネージャＥ１００５は、ネットワーク接続１０３０を介して誤ってＩＢサブネット１０２０に偶発的に接続される。サブネットマネージャＥ１０１５はまず、Ｍ＿キーまたは明示的なノード／ポートリスト構成を用いて、ポートトポロジを発見するよう試み得る。ＩＢファブリックへのサブネットマネージャＥの接続は意図的なものではないので、サブネットマネージャＥは、ＩＢサブネット１０２０において用いられるＭ＿キーＣ１０２１を認識し得ない。したがって、サブネットマネージャＥは、不正アクセスといった望ましくない結果を防止するために、ＩＢサブネット１０２０におけるポート／ノードと通信することはない。さらに、サブネットマネージャＡは、サブネットマネージャＥが一部である他のサブネットにおいて用いられるＭ＿キー値を知らなくてもよい。したがって、当該サブネットマネージャＡは、他のサブネットにおいて如何なる状態も変更することを試みることはなくなるか、または変更することが可能ではなくなる。したがって、２つのＩＢサブネット同士の間に確立された上記偶発的な接続性の結果、ＩＢサブネット１０２０または他のＩＢサブネットのいずれにおいても、状態の変化は発生し得ない。
【００５７】
図１１は、本発明の実施例に従った、ミドルウェアマシン環境における偶発的なサブネットマージのマイナスの影響からの保護のための例示的なフローチャートを示す。図１１に示されるように、ステップ１１０１では、ＩＢサブネットにおけるマスターサブネットマネージャは、別のＩＢサブネットからの新しいサブネットマネージャを検出し得る。次いで、ステップ１１０２では、マスターサブネットマネージャは、新しいサブネットマネージャが当該ＩＢサブネットにおいて用いられるＭ＿キーを認識し得ないので、当該接続が意図しないものであると判断し得る。したがって、ＩＢファブリックは、ステップ１１０３において、新しいサブネットマネージャがＩＢサブネットにおいて如何なる状態も変更することを防止し得る。
【００５８】
いくつかの実施例に従うと、図１２は、ミドルウェアマシン環境におけるサブネット内において、上述したような本発明の原理に従って構成されるサブネットマネージャ１２００の機能ブロック図を示す。図１３は、図１２に示されるようなサブネットマネージャ１２００を含む、上述したような本発明の原理に従って構成されるネットワークスイッチ１３００の機能ブロック図を示す。図１４は、図１３に示されるようなネットワークスイッチ１３００を含む、上述したような本発明の原理に従って構成されるサポートシステム１４００の機能ブロック図を示す。当該サブネットマネージャ、ネットワークスイッチ、およびサポートシステムの機能ブロックは、本発明の原理を実施するために、ハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組合せによって実現され得る。当業者であれば、図１２〜図１４に記載される機能ブロックは、上述したような本発明の原理を実現するために、組み合されてもよく、またはサブブロックへと分離されてもよいということが理解される。したがって、本願明細書における記載は、本願明細書において記載される機能ブロックの任意の可能な組合せ、分離、またはさらに他の定義をサポートし得る。
【００５９】
図１２に示されるように、サブネットマネージャ１２００は、関連付けモジュール１２０２と交渉モジュール１２０４とを含み得る。いくつかの実施例では、関連付けモジュール１２０２は、異なるプライベートセキュアキーをサブネットマネージャに関連付けるよう構成され得る。交渉モジュール１２０４は、サブネットマネージャがサブネット内の他のサブネットマネージャと交渉することを可能にするよう構成され得るとともに、マスターサブネットマネージャに関連付けられるプライベートセキュアキーを用いてミドルウェアマシン環境を構成および管理することを担うマスターサブネットマネージャを選択することを可能にするよう構成され得る。
【００６０】
いくつかの実施例では、サブネットは、インフィニバンド（ＩＢ）サブネットである。いくつかの実施例では、サブネットは、サブネットパーティションによって実現される資源ドメインの動的なセットへと分けられ得る。
【００６１】
いくつかの実施例では、代替的には、サブネットマネージャ１２００は、サブネットマネージャが帯域内通信プロトコルを用いて当該サブネット内の他のサブネットマネージャと通信することを可能にするよう構成される通信モジュール１２０６をさらに含み得る。いくつかの実施例では、代替的には、パーティショニングポリシーが特定されていない場合、サブネットマネージャ１２００は、サブネットマネージャ１２００がマスターサブネットマネージャとして選択されたことに応答して、デフォルトのパーティショニングポリシーを用いてマスターサブネットマネージャを初期化するよう構成される初期化モジュール１２０８をさらに含み得る。
【００６２】
いくつかの実施例では、プライベートセキュアキーは、当該サブネットにおける認証されたエンティティにのみ知られる６４ビットの秘密値であるＭ＿キーである。当該サブネットにおけるポートに関連付けられるサブネット管理エージェント（ＳＭＡ）が、Ｍ＿キー値を有するよう構成される場合、帯域内リクエストは、当該ポートに関連付けられる状態を変更するようＭ＿キー値を特定する必要がある。
【００６３】
いくつかの実施例では、サブネットは、異なるサブネットマネージャがマスターサブネットマネージャとして選択される場合、異なるプライベートセキュアキーに関連付けられるよう再構成される。いくつかの実施例では、異なるプライベートセキュアキーの各々は、当該サブネット内の他のサブネットマネージャに知られる異なる範囲において定義される。
【００６４】
いくつかの実施例では、代替的には、サブネットマネージャ１２００は、どのサブネットマネージャインスタンスが現在マスターサブネットマネージャであるかによって、定義された範囲内のどのプライベートセキュアキーが用いられているかを動的に判断するよう構成される判断モジュール１２１０をさらに含み得る。いくつかの実施例では、古いマスターサブネットマネージャは、スプリットブレインシナリオを防止するよう新しいマスターサブネットマネージャが選択された後、マスターサブネットマネージャとして通常動作を再開することが自動的に防止される。
【００６５】
いくつかの実施例では、マスターサブネットマネージャは、新しいサブネットマネージャは、サブネットにおいて用いられるプライベートセキュアキーを認識し得ないので、新しいサブネットマネージャへの接続は意図しないものであると判断し得、当該新しいサブネットマネージャは、サブネットにおいて如何なる状態も変更することを防止される。
【００６６】
図１３に示されるように、ネットワークスイッチ１３００は、図１２に示されるような１つのサブネットマネージャ１２００と、１つ以上の外部ポート１３０４と、１つ以上の内部ポート１３０８とを含み得る。外部ポート１３０４は、外部ネットワークに接続するよう用いられる。内部ポート１３０８は、ミドルウェアマシン環境における複数のホストサーバに接続するよう用いられる。
【００６７】
図１４に示されるように、サポートシステム１４００はさらに、図１３に示されるような１つ以上のネットワークスイッチ１３００を含み得る。いくつかの実施例では、代替的には、当該サポートシステム１４００はさらに、上記１つ以上のネットワークスイッチを通じて複数のホストサーバに接続する別個のストレージシステム１４０４を含み得る。いくつかの実施例では、代替的には、サポートシステム１４００は、ゲストがアクセス可能である１つ以上のゲートウェイ１４０８をさらに含み得る。ゲートウェイ１４０８は、ネットワークスイッチ１３００とは別個のコンポーネントとして示されているが、いくつかの実施例では、ゲートウェイ１４０８はネットワークスイッチ１３００上に存在し得る。
【００６８】
いくつかの実施例では、１つ以上のアップデートされたサブネット構成ポリシーは、アップデートされたサブネット構成ポリシーに関連付けられるプライベートセキュアキーを認識できる１つ以上のサブネットマネージャ１２００を通じてサブネットに適用され得、当該サブネットにおける上記プライベートセキュアキーを認識できない他のサブネットマネージャ１２００は、当該１つ以上のアップデートされたサブネット構成ポリシーによる影響を受けないままにされ得る。
【００６９】
本発明は、１つ以上のプロセッサ、メモリ、および／または本開示の教示に従ってプログラムされたコンピュータ可読記憶媒体を含む１つ以上の従来の汎用または専用デジタルコンピュータ、コンピューティング装置、マシン、またはマイクロプロセッサを用いて簡便に実施され得る。ソフトウェア技術の当業者には明らかであるように、適切なソフトウェアコーディングは、熟練したプログラマによって本開示の教示に基づき容易に用意され得る。
【００７０】
いくつかの実施例では、本発明は、本発明の処理のいずれかを実行するようコンピュータをプログラムするのに用いられ得る命令を格納した記憶媒体またはコンピュータ可読媒体であるコンピュータプログラムプロダクトを含む。当該記憶媒体は、フロッピー（登録商標）ディスク、光ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、マイクロドライブ、および光磁気ディスクを含む任意のタイプのディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＤＲＡＭ、ＶＲＡＭ、フラッシュメモリ素子、磁気または光学カード、ナノシステム（分子メモリＩＣを含む）、または命令および／またはデータを格納するのに好適な任意のタイプの媒体もしくは装置を含み得るが、これらに限定されない。
【００７１】
本発明の上記の記載は、例示および説明目的で与えられている。網羅的であることまたは開示されたそのものの形態に本発明を限定することを意図したものではない。当業者にとっては、多くの修正例および変形例が明確であろう。上記の実施例は、本発明の原理およびその実際的な適用をもっともよく説明するために選択および記載されたものであり、これにより他の当業者が、特定の使用に好適なさまざまな修正例を考慮して、さまざまな実施例について本発明を理解するのが可能になる。本発明の範囲は、添付の特許請求の範囲およびそれらの均等物によって定義されることが意図される。
【図１】
0005844373.tif 000002
【図２】
0005844373.tif 000003
【図３】
0005844373.tif 000004
【図４】
0005844373.tif 000005
【図５】
0005844373.tif 000006
【図６】
0005844373.tif 000007
【図７】
0005844373.tif 000008
【図８】
0005844373.tif 000009
【図９】
0005844373.tif 000010
【図１０】
0005844373.tif 000011
【図１１】
0005844373.tif 000012
【図１２】
0005844373.tif 000013
【図１３】
0005844373.tif 000014
【図１４】
0005844373.tif 000015