(57)【特許請求の範囲】
【請求項１】
多重レベルネットワーク内の層間に多重経路接続性を提供するための、コンピュータ実装の方法であって、
リーフ−スパイン型アーキテクチャにおけるリーフスイッチの第１のネットワーク層とスパインスイッチの第２のネットワーク層とを含む前記多重レベルネットワークに接続された、複数のコンピューティングデバイスをアドレス指定することと、
前記第１のネットワーク層において複数のリーフスイッチを構成して、前記コンピューティングデバイス間にローカルエリアネットワークアクセスを提供することと、
前記第２のネットワーク層において複数のスパインスイッチを構成して、前記コンピューティングデバイスに広域ネットワークへのアクセスを提供することと、
各リーフスイッチを複数の前記スパインスイッチに接続して、前記第１のネットワーク層のリーフスイッチと前記第２のネットワーク層のスパインスイッチとの間に多重層間通信経路を提供する複数の層間リンクを構成することと、
複数の前記スパインスイッチの各々に共通ネットワークアドレスを割り当てることと、
各リーフスイッチに関して、前記リーフスイッチを所定の層間リンク選択プロトコルで構成することによって、前記リーフスイッチと前記スパインスイッチとの間にアクティブ層間リンクを１つだけ選択的に接続する一方で、前記リーフスイッチと前記スパインスイッチとの間のその他の全ての利用可能な層間リンクを無効にすることと、
特定のリーフスイッチを前記スパインスイッチに接続するアクティブ層間リンクの故障
の検出に応答して、前記所定の層間リンク選択プロトコルに従って、前記特定のリーフスイッチと前記スパインスイッチとの間の単一の代替層間リンクをアクティブ化する一方で、前記リーフスイッチと前記スパインスイッチとの間のその他の全ての利用可能な層間リンクを無効にすることと、
を含む方法。
【請求項２】
前記代替層間リンクを通じて互いに新たに接続されたスパインスイッチ及びリーフスイッチが、前記代替層間リンク上での通信を許可する前に初期化される、請求項１に記載のコンピュータ実装の方法。
【請求項３】
前記スパインスイッチによって、多くのリンクの透過的な相互接続（ｔｒａｎｓｐａｒｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ  ｏｆ  ｌｏｔｓ  ｏｆ  ｌｉｎｋｓ：ＴＲＩＬＬ）プロトコルを実装して、ブリッジループを回避することをさらに含む、請求項１記載のコンピュータ実装の方法。
【請求項４】
前記リーフスイッチによって、等コスト多重経路（ｅｑｕａｌ  ｃｏｓｔ  ｍｕｌｔｉｐａｔｈ：ＥＣＭＰ）プロトコルを実装して、前記スパインスイッチと前記リーフスイッチとの間のアクティブ層間リンクを選択することをさらに含む、請求項１に記載のコンピュータ実装の方法。
【請求項５】
前記スパインスイッチの全てに、スパインゲートウェイに関連づけられた共通のＩＰ及びＭＡＣアドレスが割り当てられる、請求項１に記載のコンピュータ実装の方法。
【請求項６】
前記多重レベルネットワークがイーサネットを含む、請求項１に記載のコンピュータ実装の方法。
【請求項７】
前記第１のネットワーク層が、ローカルエリアネットワークルータを含む、請求項１に記載のコンピュータ実装の方法。
【請求項８】
前記第２のネットワーク層がインターネットゲートウェイを含む、請求項１に記載のコンピュータ実装の方法。
【請求項９】
前記多重レベルネットワークが、多層イーサネットプロトコルに従って構成されたイーサネットを含み、前記第１のネットワーク層が、前記多層イーサネットプロトコルの第２層において構成されたローカルエリアネットワークルータを含み、前記第２のネットワーク層が、前記イーサネットプロトコルの第３層において構成されたインターネットゲートウェイを含む、請求項６に記載のコンピュータ実装の方法。
【請求項１０】
多重レベルネットワーク内の層間に多重経路接続性を提供するためのシステムであって、
複数のコンピューティングデバイスと、
前記多重レベルネットワークであって、前記コンピューティングデバイス間にローカルネットワークアクセスを提供するように構成された複数のリーフスイッチを含む第１のネットワーク層と、前記コンピューティングデバイスに広域ネットワークへのアクセスを提供する複数のスパインスイッチを含む第２のネットワーク層とを含む、前記多重レベルネットワークと、
各リーフスイッチを複数の前記スパインスイッチに接続して、前記リーフスイッチと前記スパインスイッチとの間に多重層間通信経路を提供するように構成された、複数の層間リンクと、を含み、
前記スパインスイッチの各々が、割り当てられた共通ネットワークアドレスを有し、従って共通のネットワークゲートウェイに関連付けられ、
各リーフスイッチは、前記リーフスイッチと前記スパインスイッチとの間にアクティブ層間リンクを１つだけ選択的に接続する一方で、前記リーフスイッチと前記スパインスイッチとの間のその他の全ての利用可能な層間リンクを無効にするように構成された、層間リンク選択プロトコルを含み、
アクティブ層間リンクの故障の検出に応答して、各リーフスイッチは、前記層間リンク選択プロトコルに従って、前記リーフスイッチと前記スパインスイッチとの間の代替層間リンクを１つだけ選択的にアクティブ化する一方で、前記リーフスイッチと前記スパインスイッチとの間のその他の全ての利用可能な層間リンクを無効にするように構成された、システム。
【請求項１１】
各リーフスイッチが、前記代替層間リンク上で新たに接続されたスパインスイッチへの通信をアドレス指定する前に、前記新たに接続されたスパインスイッチの初期化を要求する、請求項１０に記載のシステム。
【請求項１２】
各スパインスイッチが、ブリッジループを回避するために、多くのリンクの透過的な相互接続（ＴＲＩＬＬ）プロトコルを実装する、請求項１０に記載のシステム。
【請求項１３】
各リーフスイッチは、前記スパインスイッチと前記リーフスイッチとの間のアクティブ層間リンクを選択するために、前記リーフスイッチによる等コスト多重経路（ＥＣＭＰ）プロトコルを実装する、請求項１０に記載のシステム。
【請求項１４】
前記スパインスイッチの全てに、共通のＩＰ及びＭＡＣアドレスが割り当てられる、請求項１０に記載のシステム。
【請求項１５】
前記多重レベルネットワークが、多重イーサネットプロトコルに従って構成されたイーサネットを含み、前記リーフスイッチが、前記イーサネットプロトコルの第２層において構成されたローカルエリアネットワークルータを含み、前記スパインスイッチが、前記イーサネットプロトコルの第３層において構成されたインターネットゲートウェイを含む、請求項１０に記載のシステム。
【請求項１６】
多重レベルネットワーク内の層間に多重経路接続性を実装するためのコンピュータプログラムであって、
複数のリーフスイッチを含む第１のネットワーク層と複数のスパインスイッチを含む第２のネットワーク層とを含み、各リーフスイッチが複数の前記スパインスイッチに接続されて前記第１のネットワーク層と前記第２のネットワーク層との間に複数の層間通信経路を与える前記多重レベルネットワークに接続された、複数のコンピューティングデバイスに対するアドレスを格納することと、
前記スパインスイッチの各々に共通に割り当てられた同じネットワークアドレスを格納することと、
特定のリーフスイッチを前記第２のネットワーク層内の単一の前記スパインスイッチに接続するアクティブ層間リンクの故障を検出することと、
前記特定のリーフスイッチと前記スパインスイッチとの間の単一の代替層間リンクをアクティブ化する一方で、前記リーフスイッチと前記スパインスイッチとの間のその他の全ての利用可能な層間リンクを無効にすることと、
を前記特定のリーフスイッチのプロセッサに実行させる、コンピュータプログラム。
【請求項１７】
前記代替層間リンクを通じて互いに接続された第２のネットワーク層において新たに接続されたスパインスイッチ及び第１のネットワーク層におけるリーフスイッチは、前記代替層間リンク上での通信を許可する前に初期化される、請求項１６に記載のコンピュータプログラム。
【請求項１８】
ブリッジループを回避するために、前記スパインスイッチによって、多くのリンクの透過的な相互接続（ＴＲＩＬＬ）プロトコルが実装される、請求項１６に記載のコンピュータプログラム。
【請求項１９】
前記第１のネットワーク層と前記第２のネットワーク層との間のアクティブ層間リンクを選択するために、前記リーフスイッチによって、等コスト多重経路（ＥＣＭＰ）プロトコルが実装される、請求項１８に記載のコンピュータプログラム。
【請求項２０】
前記多重レベルネットワークが、多重層イーサネットプロトコルに従って構成されたイーサネットを含み、前記リーフスイッチが、前記イーサネットプロトコルの第２層において構成されたローカルエリアネットワークを含み、前記スパインスイッチが、前記イーサネットプロトコルの第３層において構成されたインターネットゲートウェイを含む、請求項１９に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にコンピュータネットワーク通信システムに関し、より詳細には、第１のネットワーク層のスイッチと第２のネットワーク層との間に層間多重経路冗長性を提供する多重レベルネットワークに関する。
【背景技術】
【０００２】
イーサネットローカルエリアネットワーク（ＬＡＮ）通信ネットワークは、多数の接続されたデバイス間のローカルエリア接続性、並びにインターネット接続性などの広域アクセスを与えるために配備されている。企業用途は、伝統的に、ＬＡＮ上のローカルデバイスの高い可用性を必要としてきた。従って、イーサネットトポロジは、ローカルデバイスとＬＡＮネットワークとの間に多重経路を与える高レベルの相互接続及び冗長性を組み入れている。高いイーサネット信頼性を提供することは、典型的にはスパニングツリープロトコル（ＳＴＰ）を利用しており、これは、任意のブリッジされたイーサネットＬＡＮを通る、ループなしの通信を保証するネットワークプロトコルである。ＳＴＰは、ブリッジループを防止する一方で、ネットワークトポロジが、アクティブリンクが故障した場合にバックアップリンクを手動で有効／無効にすることを必要とせずに自動バックアップ経路として働くスペア（冗長）リンクを含むことを可能にする。イーサネットプロトコルにおけるスパニングツリーアプローチは、典型的には、第２層ブリッジの通信経路を作成する一方で、スパニングツリーの一部ではない全ての可能な（冗長）リンクを無効にして、いずれの２つのネットワークノード間にも単一のアクティブ第２層経路を残す。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
多くのリンクの透過的な相互接続（ｔｒａｎｓｐａｒｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ  ｏｆ  ｌｏｔｓ  ｏｆ  ｌｉｎｋｓ：ＴＲＩＬＬ）プロトコルもまた、データセンタ内、又はインターネット上でアクセスされる広域ネットワークを与えるゲートウェイ間のいずれかにおいて、多重経路接続性を可能にするために実装されている。ＴＲＩＬＬは、第２層多重経路伝送（ｍｕｌｔｉｐａｔｈｉｎｇ）の形態も可能にするが、現在のところ、第３層多重経路伝送ソリューションを含まない。このことは、冗長性を有する高可用性ネットワークを設計する場合の関心事であり、なぜなら、ＴＲＩＬＬは他のネットワーキング層が典型的に想定する冗長な第３層経路伝送を与えることができないからである。例えば、ＶＲＲＰ（仮想ルータ冗長性プロトコル）などのプロトコルは、ネットワークプロトコルのどこか他のところで冗長性が実装されることを想定して、デフォルトのアクティブ第３層ゲートウェイルータを１つしか許容しない。
【課題を解決するための手段】
【０００４】
実施形態は、ローカルエリアネットワーク（一般にリーフ−スパイン型アーキテクチャとして知られる）の第１及び第２のスイッチイング層内に、又はローカルエリア層とネットワークの広域層との間に層間多重経路冗長性を有する、多重レベルネットワークを提供するための、方法、システム、又はコンピュータ製品を含む。幾つかのコンピューティングデバイスが、ローカルエリア層と広域層とを含む多重レベルネットワーク内でアドレス指定される。第１のネットワーク層において幾つかのリーフスイッチが構成され、コンピューティングデバイス間のローカルエリアネットワークアクセスを提供する。さらに、第２のネットワーク層において幾つかのスパインスイッチが構成され、多数のコンピューティングデバイス間の接続性又はインターネットへのアクセスを提供する。各リーフスイッチは、複数のスパインスイッチに接続され、ローカルエリア層のリーフスイッチとスパインスイッチとの間に多重層間通信経路を提供する。各スパインスイッチには、共通ネットワークアドレスが割り当てられ、一方、各リーフスイッチは、層間リンク選択プロトコルで構成されて、該リーフスイッチと他のネットワーク層との間にアクティブな層間リンクを１つだけ選択的に接続する一方で、該リーフスイッチと他のネットワーク層との間のその他の全ての利用可能な層間リンクを無効にする。より詳細には、リーフ−スパイン型ネットワークが第３層ＴＲＩＬＬスイッチを用いて構築される場合、各々の第３層ＴＲＩＬＬスイッチは、デフォルトの第３層ゲートウェイに対して同じＩＰアドレス及びＭＡＣアドレスで構成されることになる。パケットを送るとき、サーバは、第３層ゲートウェイを、いまや全てのリンク上で利用可能である（なぜなら、各ＴＲＩＬＬスパインスイッチは、あたかもネットワーク上に１つしか存在しないかのようにこのＭＡＣアドレスから始まるからである）このＩＰ及びＭＡＣアドレスに対して解決する。どの第３層スパインスイッチが実際にトラフィックフローを受け取るのかを決定するために、等コスト多重経路（ｅｑｕａｌ  ｃｏｓｔ  ｍｕｌｔｉ−ｐａｔｈ：ＥＣＰＭ）ハッシュが第２層リーフスイッチにおいて行われる。
【０００５】
アクティブな層間リンクの故障の検出に応答して、影響を受けるリーフスイッチは、その特定のリーフスイッチとネットワークの次層との間の代替層間リンクをアクティブ化する一方で、リーフスイッチとネットワークの次層との間のその他の全ての利用可能な層間リンクを無効にする。換言すれば、リーフ−スパイン接続性に影響を与える故障が検出されると、リーフスイッチは、別の第３層ゲートウェイに対して再ハッシュする。従って、代替層間リンクは、リーフスイッチを代替層間リンクのための新たなアドレスで再構成することも必要とせず、又は、リーフスイッチの上位のネットワーク層内に実装されたいずれかの多重経路機能にも頼ることもなく、アクティブ化される。同様のアプローチを用いて、ネットワークに付加されたファイアウォール又は負荷バランサなどのその他の設備に関して、高い可用性を与えることもできる。さらに、第３層ボトルネックを減らし、かつネットワーク故障ドメインのサイズを管理するために、我々は、仮想ＬＡＮセグメント毎に割り当てられるホストの数を制限する能力を優先的に含める。
【０００６】
実施形態であると見なされる主題を具体的に指摘し、本明細書の結論部の特許請求の範囲において明確に特許請求する。上記及び他の特徴、並びに実施形態の利点は、添付の図面と組み合わせて解釈される以下の詳細な説明から明らかである。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態による、ローカルエリア層内のローカルデバイスを相互接続するための第２層リーフスイッチと、広域ネットワークにアクセスするための広域層内のスパインスイッチとを利用する多重レベルネットワークトポロジを示す。
【図２】第２の実施形態による、ローカルエリア層内のローカルデバイスを相互接続するための第２層リーフスイッチと、インターネットにアクセスするための広域層内の第３層ＴＲＩＬＬスパインスイッチとを利用するイーサネットトポロジを示す。
【図３】実施形態による、図２のイーサネットトポロジを構成するためのプロトコルを示す。
【図４】実施形態による、リンク故障イーサネットトポロジ以前の、第２層リーフスイッチ及び第３層ＴＲＩＬＬスパインスイッチを利用する例証的なネットワーク接続を示す。
【図５】実施形態による、リンク故障イーサネットトポロジ後の、図４の例証的なネットワーク接続を示す。
【図６】実施形態による、多重経路層間冗長性を実装する多重レベルネットワークの構成及び動作を示す論理フロー図である。
【発明を実施するための形態】
【０００８】
本発明の実施形態は、リーフスイッチのローカルエリア層及びスパインスイッチの広域層を含む、多重レベルネットワークにおいて実現することができる。例えば、イーサネットの実施形態では、リーフスイッチのローカルエリア層は、イーサネット第２層において構成することができ、広域層は、イーサネット第３層において構成された、多くのリンクの透過的な相互接続（ＴＲＩＬＬ）スパインスイッチを含むことができる。リーフスイッチが、リーフスイッチにおいてＩＰアドレスを再構成することを必要とすることなく全てのスパインスイッチと通信することを可能にするために、全てのＴＲＩＬＬスパインスイッチに同じＩＰアドレス及び共通ＭＡＣアドレスを割り当てることができる。多重層間通信経路及びループを防止するために、各リーフスイッチは、等コスト多重経路（ｅｑｕａｌ−ｃｏｓｔ  ｍｕｌｔｉｐａｔｈ：ＥＣＭＰ）などの層間リンク選択プロトコルを実装して、該リーフスイッチからの単一の層間リンクをアクティブ化する一方で、該リーフスイッチと広域層との間のその他の全ての利用可能な層間リンクを無効にする。従って、リンク故障に応答して、代替層間リンクが、ローカルエリア層のリーフスイッチを代替層間リンクのための新たなアドレスで構成することも必要とせず、又は、広域層のＴＲＩＬＬスパインスイッチ内に実装されたいずれかの多重経路機能に頼ることもなく、アクティブ化される。しかしながら、リーフスイッチは、典型的には、広域層を通じたネットワークへの無許可アクセスを防止するために、新たに接続されたリーフスイッチと共に初期化を必要とする。
【０００９】
例えば、イーサネットの実施形態において層間多重経路接続性を実装するために、全ての第３層スパインスイッチに同じＩＰ及びＭＡＣアドレスが割り当てられる一方で、第２層リーフスイッチは、ＥＣＭＰ経路指定プロトコルを実装して、その中から単一のアクティブ層間リンクを選択する。ＥＣＭＰハッシングを利用して、既存のリンクが失われたときに新たな層間リンクへ自動的に切り換わる。ＥＣＭＰ一意的リンク選択の使用は、全ての第３層ＴＲＩＬＬスパインスイッチに共通のＭＡＣ及びＴＣＩ−ＩＰアドレスを割り当てることを可能にし、このことは、ひとたびＥＣＭＰプロトコルに従って層間接続が確立されると、任意のＴＲＩＬＬスパインスイッチが任意の第２層リーフスイッチから受け取った通信を処理することを可能にする。結果として、第２層リーフスイッチ上に実装されたＥＣＭＰプロトコルのみを利用して、第３層スパインスイッチに対するプログラミング又はプロトコル変更を何ら必要とすることなく、第２層リーフスイッチと第３層スパインスイッチとの間の層間多重経路接続が有効にされる。
【００１０】
この実施形態において、イーサネット通信プロトコルは、ＭＡＣアドレスを利用するローカルデバイスに対するＬＡＮ接続性、並びにＩＰアドレスを利用するインターネットアクセスを提供する。イーサネットプロトコルは、開放型システム相互接続（ＯＳＩ）スタックと呼ばれるメッセージヘッダを定義し、その中で、ＬＡＮ接続性は典型的には第２層「データリンク」レベルにおいて実装され、インターネット接続性は第３層「ネットワーク」レベルにおいて実装される。標準ＯＳＩスタックにおいて、デバイスは、ＭＡＣアドレスを利用してＬＡＮネットワーク上でアクセスされる一方で、ＩＰアドレスを利用してインターネット上でもアドレス指定される。両方のデバイスアドレスに適応するために、ＭＡＣアドレスは、典型的にはＯＳＩスタック内の第２層（データリンク）位置に割り当てられ、一方、ＩＰアドレスは、第３層（ネットワーク）に割り当てられる。本発明の実施形態は、イーサネットプロトコルにおいてＯＳＩスタック内で定義される第２層リーフスイッチと第３層スパインスイッチとの間の層間多重経路信頼性を提供する。
【００１１】
企業用途は、伝統的に、イーサネットＬＡＮ上のローカルデバイスの高い可用性を必要としてきた。従って、第２層ネットワークトポロジは、ローカルデバイスとＬＡＮネットワークとの間に多重経路を提供する高レベルの相互接続及び冗長性を組み入れている。ローカルデバイスに対して高い信頼性を提供することは、従来、スパニングツリープロトコル（ＳＴＰ）に依拠しており、これは任意のブリッジされたイーサネットＬＡＮを通る、ループなしの通信を保証するネットワークプロトコルである。ＳＴＰは、ブリッジループを防止する一方で、ネットワークが、バックアップ経路として働くスペア（冗長）リンクを含むことを可能にする。ＳＴＰは、アクティブリンクが故障したときに、手動で元のリンクを無効にすること及びバックアップリンクを有効にすることを必要とせずに、自動バックアップリンク切換えを可能にする。従って、スパニングツリーアプローチは、第２層ブリッジの単一のアクティブ通信経路を結果としてもたらす一方で、スパニングツリーの一部ではない全ての可能な（冗長）リンクを無効にして、いずれの２つのネットワークノード間にも単一のアクティブなポイントツーポイント経路を残す。アクティブリンクの喪失に応答して、冗長な経路が、自動的に接続性に切り換えられる。
【００１２】
インターネットアクセスが多くの用途にとって不可欠なリソースになってくるにつれて、ＩＰアドレス指定されたデバイスに対する多重経路接続性を可能にするために、多くのリンクの透過的な相互接続（ｔｒａｎｓｐａｒｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ  ｏｆ  ｌｏｔｓ  ｏｆ  ｌｉｎｋｓ：ＴＲＩＬＬ）プロトコルが開発された。ＴＲＩＬＬネットワークをイーサネットＬＡＮに組み入れることは有利ではあるが、ＴＲＩＬＬプロトコルは、イーサネットからＴＲＩＬＬデバイスへの多重経路アクセスのための機能を提供しない。ＴＲＩＬＬプロトコルは、ＴＲＩＬＬスイッチ間の多重経路接続性は提供するが、一方で、各ＴＲＩＬＬスイッチは、インターネットゲートウェイに直接接続されることになり、従って下位レベルのネットワークからＴＲＩＬＬスイッチへの多重経路アクセスのための機能は提供しないと推定される。従って、従来のＴＲＩＬＬプロトコルを用いてＴＲＩＬＬネットワークをＯＳＩスタックの第３層においてイーサネットに接続すると、ネットワークの第２層と第３層との間の層間リンク内に単一の非冗長経路を残すことになるであろう。
【００１３】
ＴＲＩＬＬネットワークプログラミング又はプロトコルを変更することは、ＴＲＩＬＬ動作のために開発された規格を混乱させることになる。従って、本発明は、第３層デバイスによって実装されるＴＲＩＬＬプロトコルを変更することを要さずにＴＲＩＬＬスイッチをイーサネットに接続することにより、課題を解決する。リーフスイッチがイーサネットプロトコルの第２層に割り当てられ、ＴＲＩＬＬスパインスイッチがイーサネットプロトコルの第３層に割り当てられ、一方で、多重経路層間リンクが第２層リーフスイッチと第３層スパインスイッチとの間に接続される。層間多重経路接続性は、イーサネットプロトコルを通じて、同じＩＰ及びＭＡＣアドレスを全ての第３層スパインスイッチに割り当て、同時に、第２層リーフスイッチにおいてＥＣＭＰハッシングを利用して単一のアクティブ層間リンクを選択する一方で、選択されなかった全ての層間リンクを無効にすることにより、実装される。ＥＣＭＰハッシングを利用して、既存の層間リンクが喪失したときに新たな層間リンクへと自動的に切り換えられ、これは、多重経路冗長性を与える一方で、一度に１つの層間リンクのみがアクティブ化されることを保証する。
【００１４】
第２層におけるＥＣＭＰリンク選択の使用は、全ての第３層ＴＲＩＬＬスパインスイッチに同じＭＡＣ及びＴＣＰ−ＩＰアドレスが割り当てられることを可能にする。このことは、ひとたびＥＣＭＰプロトコルに従って層間接続が確立されると、任意のＴＲＩＬＬスパインスイッチが任意の第２層リーフスイッチから受け取った通信を処理することを可能にする。結果として、第２層リーフスイッチ上に実装されたＥＣＭＰプロトコルのみを利用して、第３層スパインスイッチに対するプログラミング又はプロトコル変更を何ら必要とすることなく、第２層リーフスイッチと第３層スパインスイッチとの間の層間多重経路接続が有効にされる。
【００１５】
ここで図面を参照すると、図１は、ローカルデバイス１２Ａ−１２Ｎにローカルエリアネットワーク接続性並びにインターネット１４への接続性を提供する多重レベルコンピュータネットワーク１０を示す。この特定の例において、ローカルデバイスは、サーバ、ワークステーションなどを含むことができる。ローカルエリア層１６は、ローカルデバイス１２Ａ−１２Ｎにローカルエリア層１６内のローカルエリアネットワークアクセスを提供する、幾つかのリーフスイッチ１８Ａ−１８Ｎを含む。コンピュータネットワーク１０は、ローカルエリア層１６内の多重経路ローカルエリアネットワークアクセスを与えるスパニングツリープロトコルを実装することができる。他方、広域層２０は、ローカルデバイス１２Ａ−１２Ｎにインターネット１４への多重経路アクセスを提供する幾つかのスパインスイッチ２２Ａ−２２Ｎを含む。例えば、スパインスイッチ２２Ａ−２２Ｎは、ＴＲＩＬＬプロトコルを利用してローカルデバイス１２Ａ−１２Ｎに広域層２０内の多重経路接続性を提供する、インターネットゲートウェイとすることができる。一実施形態によれば、層間多重経路接続性が、ローカルエリア層１６と広域層２０との間に実装される。
【００１６】
図２は、ローカルデバイス１２Ａ−１２Ｎにローカルエリアネットワーク接続性並びにインターネット１４への接続性を提供する多重レベルイーサネットネットワーク１１を示す。この特定の例において、イーサネット第２層において構成されたリーフスイッチ１８Ａ−１８Ｎは、ローカルデバイス１２Ａ−１２Ｎにローカルエリア層１６内のローカルエリアネットワークアクセスを提供する。イーサネット１１は、ローカルエリア層１６内の多重経路ローカルエリアネットワークアクセスを提供するためにＳＴＰプロトコルを実装することができる。他方、広域層２０は、ローカルデバイス１２Ａ−１２Ｎにインターネット１４への多重経路アクセスを提供する、イーサネット第３層において構成された幾つかのスパインスイッチ２２Ａ−２２Ｎを含む。例えば、スパインスイッチ２２Ａ−２２Ｎは、ＴＲＩＬＬプロトコルを利用してローカルデバイス１２Ａ−１２Ｎに広域層２０内の多重経路接続性を提供する、インターネットゲートウェイとすることができる。この実施形態において、層間多重経路接続性が、イーサネット第２層において構成されたローカルエリア層１６と、イーサネット第３層において構成された広域層２０との間に実装される。
【００１７】
図３は、図２の多重レベルネットワーク１１、この例ではイーサネットを構成するためのイーサネット開放型システム相互接続（ＯＳＩ）スタック４０を示す。ローカルエリア層１６のリーフスイッチ１８Ａ−１８Ｎは、イーサネットＯＳＩスタック４０内の第２層（データリンク層）に割り当てられ、一方、広域層２０のＴＲＩＬＬスパインスイッチ２２Ａ−２２Ｎは、イーサネットＯＳＩスタック４０の第３層（ネットワーク層）に割り当てられる。イーサネットプロトコルに従い、ＭＡＣアドレスが、ローカルデバイス１２Ａ−Ｎ、並びにＯＳＩスタック４０の第２層においてローカルエリア層１６を形成するリーフスイッチ１８Ａ−１８Ｎに割り当てられる。さらに、ＩＰアドレスが、広域層２０を形成する第３層のＴＲＩＬＬゲートウェイ２２Ａ−２２Ｎに割り当てられる。ＴＲＩＬＬゲートウェイ２２Ａ−２２Ｎには、ＭＡＣアドレスも割り当てられる。
【００１８】
再び図２を参照すると、ローカルデバイス１２Ａとそれぞれリーフスイッチ１８Ａ及び１８Ｂとの間の一対のリンク３０Ａ、３０Ｂで表されるように、多重経路又はリンクがローカルデバイス１２Ａ−Ｎと第２層ルータとの間に接続される。同様に、一対のリンク３２Ａ、３２Ｂが、ローカルデバイス１２Ｂとそれぞれリーフスイッチ１８Ａ、１８Ｂとの間に接続される。リーフスイッチ１８ＡとそれぞれＴＲＩＬＬスパインスイッチ２２Ａ及び２２Ｂとの間の一対のリンク３４Ａ、３４Ｂで表されるように、多重経路又はリンクはが第２層ルータと第３層ゲートウェイとの間にも接続される。同様に、一対のリンク３６Ａ、３６Ｂが、リーフスイッチ１８Ｂとそれぞれスパインスイッチ２２Ａ及び２２Ｂとの間に接続される。これは、典型的には、高度に複雑なネットワークトポロジであり得る多重レベルネットワークのローカルデバイスと、ローカルエリア層と、広域層との間に多数の多重経路接続を含む、多重経路接続性の単純化した描写であることが理解できる。いずれにしても、図面に示された単純な多重経路接続を参照して説明される実施形態の技術を反復して、任意の数の多重経路層間リンクに一般化することができることもまた認識される。
【００１９】
第２層デバイス１８Ａ−１８Ｎは、典型的にはスパニングツリープロトコルで構成されており、従来のイーサネットプロトコルに従ってローカルエリア層１６の第２層デバイス間にブリッジループが生じることを防ぐようになっていることが認識される。例えば、これは、利用可能な冗長リンクによる喪失リンクの自動置換えを実装するときに第２層レベルにおける利用可能なリンクの中から選択する、スパニングツリープロトコル（ＳＴＰ）を含むことができる。第３層デバイス２２Ａ−２２Ｎは、ＴＲＩＬＬプロトコルで構成されており、従来のＴＲＩＬＬプロトコルに従って広域層２０の第３層デバイス間にブリッジループが生じることを防ぐようになっていることがさらに認識される。しかしながら、ローカルエリア層１６と広域層２０との間に層間多重経路接続性を提供するための、従来的な機構は存在しない。実施形態によれば、多重経路接続性は、第２層デバイス１８Ａ−１８Ｎによって実装されたＥＣＭＰハッシングを通じて、ローカルエリア層１６と広域層２０との間に実装され、この特定の例では層間リンク３４Ａ−３４Ｂ及び３６Ａ−３６Ｂを含む、第２層と第３層との間の利用可能な層間リンクの中から選択される。
【００２０】
実施形態によれば、喪失リンク層間リンクの自動置換えを実装するときに第２層デバイスと第３層デバイスとの間の利用可能な層間リンクの中から選択するために、ＥＣＭＰハッシングが利用される。ＥＣＭＰリンク置換えを第３層におけるＴＲＩＬＬスパインスイッチに対して透過的にするために、各スパインスイッチ２２Ａ−２２Ｎに、イーサネットＯＳＩスタック４０内で同じＭＡＣアドレス及び同じＩＰアドレスが割り当てられる。このことは、任意の第３層スパインスイッチが第２層リーフスイッチからの通信を適正に処理することができることを保証する。ＥＣＭＰハッシングを使用して、各々の第２層デバイスから第３層レベルへ、一度に１つだけの選択された層間リンクをアクティブ化することは、第３層でのメッセージ経路選択の重複を防ぐ。結果として得られるトポロジは、第２層リーフスイッチ１８Ａ−１８Ｎ上に実装されたＥＣＭＰプロトコルのみを利用して、第３層スパインスイッチ２２Ａ−２２ＮのＴＲＩＬＬプロトコルを変更する必要なく、第２層と第３層との間に多重経路接続性を提供する。ＥＣＭＰプロトコルは、第３層において新たに接続された各々のＴＲＩＬＬスパインスイッチが、新たに接続された第２層リーフスイッチとの通信を初期化することを要求し、これが第３層レベルを通じたネットワークへの無許可接続を防止することに留意されたい。
【００２１】
図４は、層間リンク故障以前の、第２層リーフスイッチ１８Ａ−１８Ｂ及び第３層ＴＲＩＬＬスパインスイッチ２２Ａ−２２Ｂを利用する例証的なネットワーク５０を示す。このトポロジは、第２層デバイス１８Ａと第３層スパインスイッチ２２Ａ、２２Ｂとの間にそれぞれ多重リンク３４Ａ、３４Ｂを含む。例えば、第１の層間リンク３４Ａは、リーフスイッチ１８Ａのポート１を第１のＴＲＩＬＬスパインスイッチ２２Ａに接続することができ、一方、第２の層間リンク３４Ｂは、リーフスイッチ１８Ａのポート２を第２のＴＲＩＬＬスパインスイッチ２２Ｂに接続することができる。スパインスイッチ２２Ａ及び２２Ｂには、両方とも同じＩＰアドレス及び同じＭＡＣアドレスが割り当てられ、リーフスイッチ１８Ａが再構成なしでどちらのスパインスイッチとも通信することを可能にする。この例において、第２層リーフスイッチ１８Ａによって実装されるＥＣＭＰハッシングは、最初にポート１を選択して第２層リーフスイッチ１８Ａと第３層ＴＲＩＬＬスパインスイッチ２２Ａとの間のデータリンクを確立する。ＥＣＭＰプロトコルはまた、第１の層間リンク３４Ａが有効にされている限りは、第２の層間リンク３４Ｂを無効にして、第２層リーフスイッチ１８Ａから第３層への多重アクティブ層間リンクを回避する。従って、第２層リーフスイッチ１８Ａは、第１の層間リンク３４Ａを用いて、データパケットを、全ての第３層スパインスイッチに割り当てられたＭＡＣアドレス又はＩＰアドレスを用いて第３層ＴＲＩＬＬスパインスイッチ２２Ａへ転送する。
【００２２】
図５は、第２層リーフスイッチ１８Ａのポート１と第３層ＴＲＩＬＬスパインスイッチ２２Ａとの間の接続上でのリンク故障後の例示的なネットワーク接続５０を示す。第２層リーフスイッチ１８Ａは、第１の層間リンク３４Ａの喪失を検出し、第２層デバイス上で動作するＥＣＭＰを始動して、故障リンク（すなわちポート１）を可能なゲートウェイリンクのリストから除外して再ハッシュを計算し、代替の利用可能ゲートウェイを見つけ出す。この単純化された例において、再ハッシュは、ポート２に接続された第２の層間リンク３４Ｂを識別するが、その理由は、これが第２層デバイス１８Ａに接続された他の唯一のゲートウェイだからである。ＥＣＭＰプロトコルはまた、第２の層間リンク３４Ｂが有効にされている限りは、その他のいずれの層間リンクも無効にして、第２層リーフスイッチ１８Ａから第３層への多重アクティブ層間リンクを回避する。従って、第２層リーフスイッチ１８Ａは、第２の層間リンク３４Ｂを用いて、データパケットを、全ての第３層スパインスイッチに割り当てられたＭＡＣアドレス又はＩＰアドレスを用いて第３層ＴＲＩＬＬスパインスイッチ２２Ｂへ転送する。
【００２３】
リーフスイッチ１８Ａに対して２つの層間リンク３４Ａ−３４Ｂだけ示されているが、ＥＣＭＰプロトコルは、任意の数の利用可能な代替層間リンク間の接続を有効にすることが認識される。各々の事例において、一度に１つの層間リンクのみが有効にされ、同じＩＰ又はＭＡＣアドレスを用いて、リーフスイッチ１８Ａに接続することができる任意の第３層ＴＲＩＬＬスパインスイッチに対してパケットをアドレス指定する。層間リンク変更に適応するために第２層デバイス１８Ａを新たなＩＰ又はＭＡＣアドレスで再構成される必要はなく、第３層ＴＲＩＬＬデバイスは、標準ＴＲＩＬＬプロトコルの変更を必要としないが、ＥＣＭＰプロトコルは、新たに接続されたＴＲＩＬＬスパインスイッチ２２Ｂが、新たに接続された第２層リーフスイッチ１８Ａとの通信を初期化することを要求し、これが、第３層レベルを通じたネットワーク１１の第２層への無許可接続を防止する。
【００２４】
図６は、実施形態による図１に示す多重レベルネットワーク１１における多重経路層間冗長性の構成及び動作を示す論理フロー図６０である。ブロック６２において、サーバ及びワークステーションなどの幾つかのコンピューティングデバイスが準備される。ブロック６４において、コンピューティングデバイスは、ローカルエリア層及び広域層を含む多重レベルネットワーク内に接続される。ブロック６６において、幾つかのリーフスイッチがローカルエリア層において構成されて、コンピューティングデバイス間のローカルエリアネットワークアクセスを提供する。ブロック６８において、幾つかのスパインスイッチが広域層において構成され、コンピューティングデバイスに対してインターネットアクセスを提供する。ブロック７０において、各リーフスイッチが複数のスパインスイッチに接続され、ローカルエリア層のリーフスイッチとスパインスイッチとの間に多重層間通信経路を提供する。各リーフスイッチが、該リーフスイッチにて維持されたＩＰアドレスを再構成することを要さずに各スパインスイッチと通信することを可能にするために、ブロック７２において、各スパインスイッチに同じネットワークアドレスが割り当てられる。さらに、ローカルエリア層と広域層との間に多重経路冗長性を実装するために、ブロック７４において、各リーフスイッチを層間リンク選択プロトコルで構成して、リーフスイッチと広域層との間にアクティブ層間リンクを１つだけ選択的に接続する一方、リーフスイッチと広域層との間のその他の全ての利用可能な層間リンクを無効にする。
【００２５】
ブロック７６において、各リーフスイッチは、リーフスイッチと選択されたスパインスイッチとの間のアクティブリンクをアクティブ化する一方で、リーフスイッチと広域層との間のその他の全ての利用可能な層間リンクを無効にする。ブロック７８において、リーフスイッチは、アクティブ層間リンクの故障を検出する。ブロック８０において、影響を受けたリーフスイッチは、その特定のリーフスイッチと広域層との間の代替層間リンクをアクティブ化する一方で、リーフスイッチと広域層との間のその他の全ての利用可能な層間リンクを無効にする。例えば、アクティブ化する代替層間リンクを選択する一方で選択されない全ての代替層間リンクを無効にするために、ＥＣＭＰハッシングが典型的に用いられる。従って、代替層間リンクは、リーフスイッチを代替層間リンクのための新たなアドレスで再構成することも必要とせず、又は、広域層内に実装されたいずれかの多重経路機能に頼ることもなく、アクティブ化される。しかしながら、リーフスイッチは、典型的には、広域層を通じたネットワークへの無許可アクセスを防止するために、新たに接続されたスパインスイッチと共に初期化を必要とする。
【００２６】
実施形態において、各リーフスイッチは、典型的なイーサネットルータとすることができ、各スパインスイッチは、典型的なインターネットゲートウェイとすることができる。従って、各スイッチは、プロセッサ、メモリ、ネットワークインタフェース及びその他の通常の構成要素を有する。同様に、各サーバは、プロセッサ、メモリ、ネットワークインタフェース及びその他の当該技術で知られた通常の構成要素を有する、従来のワークステーション又はその他のネットワークコンピューティングデバイスとすることができる。実施形態を説明したように動作させるために、上述のもの以外の特別なソフトウェア又はハードウェア機能は必要とされない。
【００２７】
当業者には認識されるように、実施形態の態様は、システム、方法又はコンピュータプログラム製品として具体化することができる。従って、実施形態の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）又はソフトウェアとハードウェアの態様を組み合わせた実施形態の形態を取ることができ、これらは全て一般的に本明細書において、例えば「回路」、「モジュール」又は「システム」と呼ぶことができる。さらに、具体化された実施形態の態様は、コンピュータ可読プログラムコードを有する１つ又は複数のコンピュータ可読記憶デバイス内に具体化されたコンピュータプログラム製品の形態を取ることができる。
【００２８】
実施形態の１つ又は複数の機能は、ソフトウェア、ファームウェア、ハードウェア、又はそれらの幾つかの組合せで実装することができる。さらに、１つ又は複数の機能をエミュレートすることができる。
【００２９】
実施形態は、プロセッサ回路が本発明の要素を行うことを可能にするためのコンピュータプログラム製品とすることができ、コンピュータプログラム製品は、処理回路により可読の、処理回路が方法を行うために実行する命令を格納する、コンピュータ可読記憶媒体を含む。
【００３０】
コンピュータ可読記憶媒体（又は複数の媒体）は、プロセッサ回路に方法を行わせるための記録された命令を有する、有形の非一時的な記憶媒体である。「コンピュータ可読記憶媒体」は、少なくとも、ひとたび命令が媒体上に記録されると、その後、記録された命令を記録した時点とは無関係の時点でプロセッサ回路によって１回又は複数回読み出すことができるという理由で、非一時的である。非一時的な「コンピュータ可読記憶媒体」は、通電している間のみ記録された情報を保持するデバイス（揮発性デバイス）と、通電とは無関係に記録された情報を保持するデバイスとを含む。例えば、「非一時的記憶媒体」の非網羅的なリストは、限定はされないが、例えば、記録された命令を有する、例えば、ＲＡＭなどのメモリアレイ又はラッチなどのメモリ回路を含む、半導体記憶デバイス；記録された命令を有する、パンチカード又は溝の中に隆起した構造体；記録された命令を有する、ＣＤ又はＤＶＤなどの光学可読デバイス；並びに、記録された命令を有する、磁気テープ又は磁気ディスクなどの磁気コード化デバイス、を含む。
【００３１】
コンピュータ可読記憶媒体の例の非網羅的なリストは、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、消去可能プログラム可能読み出し専用メモリ（ＥＰＲＯＭ又はフラッシュメモリ）、ポータブルコンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）を含む。プログラムコードは、それぞれのコンピューティング／処理デバイスに、外部コンピュータ又は外部記憶デバイスからネットワーク、例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク及び／又は無線ネットワークを経由して分散することができる。ネットワークは、銅通信ケーブル、光通信ファイバ、無線通信、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び／又はエッジサーバを含むことができる。各コンピューティング／処理デバイス内のネットワークアダプタカード又はネットワークインタフェースカードは、ネットワークからプログラムを受け取り、該プログラムをそれぞれのコンピューティング／処理デバイス内のコンピュータ可読記憶デバイス内でのストレージのために転送する。
【００３２】
実施形態の態様のための動作を行うためのコンピュータプログラム命令は、例えば、Ｊａｖａ、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのようなオブジェクト指向プログラミング言語及び「Ｃ」プログラミング言語又は類似のプログラミング言語などの従来の手続型プログラミング言語を含む１つ又は複数のプログラミング言語のいずれかの組合せで記述された、アセンブラコード、機械コード、マイクロコード、又はソース若しくはオブジェクトいずれかのコードとすることができる。プログラムコードは、完全にユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして実行される場合もあり、一部がユーザのコンピュータ上で実行され、一部が遠隔コンピュータ上で実行される場合もあり、又は完全に遠隔コンピュータ若しくはサーバ上で実行される場合もある。後者のシナリオにおいては、遠隔コンピュータは、ローカルエリアネットワーク（ＬＡＮ）若しくは広域ネットワーク（ＷＡＮ）を通じてユーザのコンピュータに接続される場合もあり、又は（例えば、インターネットサービスプロバイダを用いたインターネットを通じて）外部コンピュータへの接続が為される場合もある。
【００３３】
実施形態の態様は、本発明の実施形態による方法、装置（システム）及びコンピュータプログラム製品のフローチャート図及び／又はブロック図を参照して後述される。フローチャート図及び／又はブロック図の各ブロック、並びにフローチャート図及び／又はブロック図内のブロックの組合せは、コンピュータプログラム命令によって実装することができることが理解される。
【００３４】
これらのコンピュータプログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えてマシンを製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャート及び／又はブロック図の１つ又は複数のブロック内で指定された機能／動作を実装するための手段を作り出すようにすることができる。これらのコンピュータプログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイスを特定的に機能させるように指示することができるコンピュータ可読媒体内に格納することもできる。
【００３５】
コンピュータプログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上にロードして、一連の動作ステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で行わせてコンピュータ実施のプロセスを生成し、それにより、コンピュータ又は他のプログラム可能装置上で実行される命令が、フローチャート及び／又はブロック図の１つ又は複数のブロックにおいて指定された機能／動作を実行するためのプロセスを提供するようにすることもできる。
【００３６】
図面内のフローチャート及びブロック図は、種々の実施形態によるシステム、方法、及びコンピュータプログラム製品の可能な実装のアーキテクチャ、機能及び動作を示す。この点に関して、フローチャート又はブロック図内の各ブロックは、指定された論理機能を実装するための１つ又は複数の実行可能命令を含む、モジュール、セグメント、又はコードの一部を表すことができる。幾つかの代替的な実装において、ブロック内に記された機能は、図中に記された順序とは異なる順序で行われることがあることにもまた留意されたい。例えば、連続して示された２つのブロックは、関与する機能に応じて、実際には実質的に同時に実行されることもあり、又はこれらのブロックはときとして逆順で実行されることもある。ブロック図及び／又はフローチャート図の各ブロック、並びにブロック図及び／又はフローチャート図中のブロックの組合せは、指定された機能又は動作を実行する専用ハードウェア・ベースのシステム又は専用のハードウェアとコンピュータ命令との組合せによって実装することができることにも留意されたい。
【符号の説明】
【００３７】
１２Ａ−１２Ｎ：ローカルデバイス
１８Ａ−１８Ｎ：リーフスイッチ
２２Ａ−２２Ｎ：スパインスイッチ
３０Ａ、３０Ｂ、３２Ａ、３２Ｂ、３４Ａ、３４Ｂ、３６Ａ、３６Ｂ：リンク
【図１】
0006474411.tif 000002
【図２】
0006474411.tif 000003
【図３】
0006474411.tif 000004
【図４】
0006474411.tif 000005
【図５】
0006474411.tif 000006
【図６】
0006474411.tif 000007