(57)【特許請求の範囲】
【請求項１】
第１仮想ノードと第２仮想ノードを含むリンクアグリゲーショングループ（ＬＡＧ）内の仮想ノードを動作させる方法であって、前記第１仮想ノードは、少なくとも、第１仲間ノードと第２仲間ノードを含み、前記方法は、
前記第１仲間ノードが、
前記第１仲間ノードは前記第２仲間ノードと通信しているか否かを判断すること、及び、
前記判断に基づいて、
前記判断により前記第１仲間ノードは前記第２仲間ノードと通信していると示される時には、制御情報がシステムＩＤ及び前記ＬＡＧに関連付けられた第１設定情報を含むように、
前記第１仲間ノードがプライマリノードであり、かつ、前記判断により前記第１仲間ノードは前記第２仲間ノードと通信していないと示される時には、前記制御情報がシステムＩＤ及び前記ＬＡＧに関連付けられた前記第１設定情報を含むように、
前記第１仲間ノードが非プライマリノードであり、かつ、前記判断により前記第１仲間ノードは前記第２仲間ノードと通信していないと示される時には、前記制御情報が前記システムＩＤ及び前記ＬＡＧに関連付けられた、前記第１設定情報とは異なる第２設定情報を含むように、
前記第２仮想ノードに前記制御情報を送信することを含み、
前記第１設定情報及び前記第２設定情報は、設定キーとサービスダイジェストのうちの１つである、方法。
【請求項２】
第１仮想ノードと第２仮想ノードを含むリンクアグリゲーショングループ（ＬＡＧ）内の第１仲間ノードとしての使用のために構成されたネットワークノードであって、前記第１仮想ノードは、少なくとも、前記第１仲間ノードと第２仲間ノードを含み、前記第１仲間ノードは、
前記第１仲間ノードが前記第２仲間ノードと通信しているか否かを判断し、かつ、
前記判断に基づいて、
前記判断により前記第１仲間ノードは前記第２仲間ノードと通信していると示される時には、制御情報がシステムＩＤ及び前記ＬＡＧに関連付けられた第１設定情報を含むように、
前記第１仲間ノードがプライマリノードであり、かつ、前記判断により前記第１仲間ノードは前記第２仲間ノードと通信していないと示される時には、前記制御情報が前記システムＩＤ及び前記ＬＡＧに関連付けられた第１設定情報を含むように、
前記第１仲間ノードが非プライマリノードであり、かつ、前記判断により前記第１仲間ノードは前記第２仲間ノードと通信していないと示される時には、前記制御情報が前記システムＩＤ及び前記ＬＡＧに関連付けられた、前記第１設定情報とは異なる第２設定情報を含むように、
前記第２仮想ノードに前記制御情報を送信するよう構成され、
前記第１設定情報及び前記第２設定情報は、設定キーとサービスダイジェストのうちの１つである、ネットワークノード。
【請求項３】
前記第１設定情報及び前記第２設定情報は、リンクアグリゲーション制御プロトコルデータユニット（ＬＡＣＰＤＵ）メッセージ内で搬送される、請求項２に記載のネットワークノード。
【請求項４】
第１仮想ノードと第２仮想ノードを含むリンクアグリゲーショングループ（ＬＡＧ）内の仮想ノードを動作させる方法であって、前記第１仮想ノードは、少なくとも、第１仲間ノードと第２仲間ノードを含み、前記方法は、
前記第１仲間ノードが、前記第２仮想ノードから、システムＩＤ及び前記ＬＡＧに関連付けられた第１設定情報を含む第１制御情報を受信すること、及び、
前記第１設定情報を前記ＬＡＧに関連付けられた参照設定情報と比較することを含み、
比較により、前記第１設定情報が前記参照設定情報に一致しないと示される場合、
前記第１仲間ノードが前記第２仲間ノードと通信していないと検知することと、
前記第２仲間ノードが前記第２仮想ノードと通信しており、かつ、前記第１設定情報が、前記第２仮想ノードによって前記第２仲間ノードに提供された第２設定情報に一致しないこと、
のうちの少なくとも１つに応答して、前記ＬＡＧ内にスプリットブレイン状態が存在すると判断することを含み、
前記参照設定情報は、既に確立された、前記ＬＡＧに関連付けられた予想設定情報を表し、
前記第１設定情報と前記参照設定情報の各々は、設定キーと設定ダイジェストのうちの１つである、方法。
【請求項５】
前記スプリットブレイン状態が存在すると判断することは、前記第１仲間ノードは前記第２仲間ノードと通信していないと検知することに応答して、前記ＬＡＧ内にデュアルスプリットブレイン状態が存在すると判断することを含む、請求項４に記載の方法。
【請求項６】
更に、前記ＬＡＧ内にデュアルスプリットブレイン状態が存在すると判断される場合に、前記第１と第２の仮想ノードを接続する非プライマリ接続リンク、又は非デフォルト接続リンクを前記ＬＡＧから除外することを含む、請求項５に記載の方法。
【請求項７】
前記スプリットブレイン状態が存在すると判断することは、前記第２仲間ノードが前記第２仮想ノードと通信しており、かつ、前記第１設定情報が、前記第２仮想ノードによって前記第２仲間ノードに提供された第２設定情報に一致しないことに応答して、前記ＬＡＧ内にシングルスプリットブレイン状態が存在すると判断することを含む、請求項４に記載の方法。
【請求項８】
前記第１設定情報は、リンクアグリゲーション制御プロトコルデータユニット（ＬＡＣＰＤＵ）メッセージ内で搬送される、請求項４から７のいずれか一項に記載の方法。
【請求項９】
第１仮想ノードと第２仮想ノードを含むリンクアグリゲーショングループ（ＬＡＧ）内の第１仲間ノードとしての使用のために構成されたネットワークノードであって、前記第１仮想ノードは、少なくとも、前記第１仲間ノードと第２仲間ノードを含み、前記第１仲間ノードは、
前記第２仮想ノードから、システムＩＤ及び前記ＬＡＧに関連付けられた第１設定情報を含む第１制御情報を受信し、かつ、
前記第１設定情報を前記ＬＡＧに関連付けられた参照設定情報と比較し、
前記第１設定情報が前記参照設定情報に一致しない場合、
前記第１仲間ノードが前記第２仲間ノードと通信していないという検知と、
前記第２仲間ノードが前記第２仮想ノードと通信しており、かつ、前記第１設定情報が、前記第２仮想ノードによって前記第２仲間ノードに提供された第２設定情報に一致しないこと、
のうちの少なくとも１つに応答して、前記ＬＡＧ内にスプリットブレイン状態が存在すると判断するよう構成され、
前記参照設定情報は、既に確立された、前記ＬＡＧに関連付けられた予想設定情報を表し、
前記第１設定情報と前記参照設定情報の各々は、設定キーと設定ダイジェストのうちの１つである、ネットワークノード。
【請求項１０】
前記スプリットブレイン状態が存在するという判断は、前記第１仲間ノードが前記第２仲間ノードと通信していないという検知に応答して、前記ＬＡＧ内にデュアルスプリットブレイン状態が存在すると判断することを含む、請求項９に記載のネットワークノード。
【請求項１１】
前記スプリットブレイン状態が存在するという判断は、前記第２仲間ノードが前記第２仮想ノードと通信しており、かつ、前記第１設定情報が、前記第２仮想ノードによって前記第２仲間ノードに提供された第２設定情報に一致しないことに応答して、前記ＬＡＧ内にシングルスプリットブレイン状態が存在すると判断することを含む、請求項９に記載のネットワークノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１２年５月１５日に出願された米国仮特許出願第６１／６４７，２１１号への優先権を主張する。
【０００２】
本発明は概してリンクアグリゲーションに関し、より具体的には、リンクアグリゲーショングループにおけるスプリットブレイン状態を検知し、それに対処するための方法及び装置に関する。
【背景技術】
【０００３】
リンクアグリゲーションは、リンクアグリゲーショングループ（ＬＡＧ）に加わっている各リンク上のユーザデータの送信を可能にすることを目的に、ノード対の間の複数のリンクを集約するために広く使用されている（例えばＩＥＥＥ８０２．１ＡＸを参照のこと）。この様態における複数のネットワーク接続の集約は、単一接続が維持できることを超えてスループットを増大させ、かつ／又は、リンクのうちの１つに障害がある場合に冗長性を提供するために使用されうる。「ＤｉｓｔｒｉｂｕｔｅｄＲｅｓｉｌｉｅｎｔＮｅｔｗｏｒｋＩｎｔｅｒｃｏｎｎｅｃｔ」（ＤＲＮＩ）（ＩＥＥＥ８０２．１ＡＸ−ＲＥＶ／Ｄ０．２の第８条を参照のこと）は、例えば図１に示されたＡ、Ｂ、Ｃ及びＤの４つのノードの間のような、２つ以上のノード間であっても、ネットワークインターフェース上のリンクアグリゲーションを使用可能にするために、リンクアグリゲーションに対する拡張の仕様を定める。この出願の図１及び後続の多くの図では、「ＤＲＮＩ」という表示は、４つのノードＡ、Ｂ、Ｃ及びＤを含むＬＡＧを示すために使用される。
【０００４】
図１に示すように、ＬＡＧは、ネットワーク１とネットワーク２の間に形成される。より具体的には、ＬＡＧは、ＬＡＧ仮想ノード３０、３２の間に形成される。第１ＬＡＧ仮想ノード３０は、第１ノード（Ａ）及び第２ノード（Ｂ）を含む。第２ＬＡＧ仮想ノード３２は、第３ノード（Ｃ）及び第４ノード（Ｄ）を含む。ＬＡＧノードＡとＣはピアノードとして接続され、ＬＡＧノードＢとＤも、ピアノードとして接続される。仮想ノード３０内で、ノードＡとＢは「仲間ノード」として接続され、同様に仮想ノード３２内では、ノードＣとＤは「仲間ノード」として接続される。この出願で使用されているように、「ＬＡＧ仮想ノード」とは、上述のＩＥＥＥ参照文献におけるＤＲＮＩポータル（すなわち、それぞれのピアにとって単一ノードとして発現する２つのノード）を表す。加えて、仮想ノード３０は２つのノードＡ、Ｂを「含む」という記述は、仮想ノード３０が、ノードＡ、Ｂによってエミュレートされるという意味である。同様に、仮想ノード３２は２つのノードＣ、Ｄを「含む」という記述は、仮想ノード３２が、ノードＣ、Ｄによってエミュレートされるという意味である。
【０００５】
ＬＡＧに加わっている複数のノードは、ＬＡＧ内のそれらのピアリングパートナーに、単一システムＩＤを備えた同一の仮想ノードと認識される。システムＩＤは、各ノード（ノードＡ、ノードＢ、ノードＣ、ノードＤなど）を識別するために使用される。システムＩＤは、ＬＡＧの個々のノード間で送信される、リンクアグリゲーション制御プロトコルデータユニット（ＬＡＣＰＤＵ）に含まれる。仲間ノードのうちの１つのシステムＩＤを、それらに対応するＬＡＧ仮想ノードのための共通システムＩＤとして使用することは実際的である。ゆえに、図１に示すように、ノードＡ及びノードＢは、同一のネットワーク１に属し、かつそれらは、同一のＤＲＮＩポータル（すなわち同一のＬＡＧ仮想ノード３０）の一部であり、エミュレートされたＬＡＧ仮想ノード３０のために、「Ａ」という共通システムＩＤを使用する。同様に、ネットワーク２のノードＣ及びＤは、ノードＡとＢによって、システムＩＤ「Ｃ」を備えた単一ＬＡＧ仮想ノード３２として受け止められる。
【０００６】
図１はまた、特定のサービスのＤＲＮＩハンドオフを示す（図１の太線「サービス」を参照のこと）。インターフェース上のサービスハンドオフは仮想局所的エリアネットワーク（ＶＬＡＮ）であり、サービスのための識別子は、サービスＶＩＤ（すなわち「Ｓ  ＶＩＤ」）（通常、ネットワーク・ネットワークインターフェース（ＮＮＩ）上のサービスを識別する）、又は、顧客ＶＩＤ（すなわち「Ｃ−ＶＩＤ」）（通常ユーザ対ネットワークのインターフェース（ＵＮＩ）上のサービスを識別する）のような、ＶＬＡＮ識別子（ＶＩＤ）でありうる。図１の実施例では、ネットワーク１と２の両方が、「アクティブゲートウェイノード」として上位ノードを選択し、かつ、サービスハンドオフのために上部リンクを選択したことから、サービスは上部リンク上で（ノードＡ、Ｃの間で）ハンドオフされる。この出願全体にわたり、アクティブゲートウェイノードは、太線で囲まれて図示される。このゲートウェイ機能は、ループ防止のためにＤＲＮＩによって導入される。ゆえに、ノードＢとＤは、ＤＲＮＩとそれら自身の各ネットワークの間でサービスがハンドオフされるのを妨げる。
【０００７】
ＤＲＮＩによって対処される必要がある、様々な種類の障害が存在する。それらのうちの１つは、図２に示した「ポータルノード障害」である（「ポータルノード」及び「ＬＡＧノード」は、この文脈において同義に使用されている）。図２に示すように、ノードＡに障害が発生し、ノードＢ及びノードＣと通信できなくなっている。従来技術では、ノードＢはＬＡＧのために、図１の実施例でノードＡのシステムＩＤであった、既に使用されていた共通ＩＤの代わりに、それ自身のシステムＩＤの使用を開始することになる。ノードＣはノードＡの非到達性を知覚し、ノードＤもそれを知覚しうる。ノードＣ及びノードＤは、ＬＡＧ接続性を提供するために、新たなパートナーシステムＩＤ（Ｂ）を受容する必要がある。より円滑な移行のために、また、アクティブアグリゲーションを漏れなく再確立するために、旧システムＩＤ（Ａ）から新システムＩＤ（Ｂ）へのグレースフルな名称変更が適用されうる（例えば、Ｎ．Ｆｉｎｎ氏が２０１１年に寄稿した「ＧｒａｃｅｆｕｌＮａｍｅＣｈａｎｇｅｉｎＬＡＣＰ，ｈｔｔｐ：／／ｗｗｗ．ｉｅｅｅ８０２．ｏｒｇ／１／ｆｉｌｅｓ／ｐｕｂｌｉｃ／ｄｏｃｓ２０１１／ａｘｂｑ−ｎｆｉｎｎ−ｇｒａｃｅｆｕｌ−ｎａｍｅ−ｃｈａｎｇｅ−０５１１−ｖ１．ｐｄｆ」を参照のこと）。
【０００８】
ただし、図２に示した挙動は、ポータルを含む個々のノードのシステムＩＤに基づく、ポータルのシステムＩＤの変更に基づくものであることから、疑わしい。相応して、この従来技術の解決法は、個々のシステムに視認性を与える（すなわち、ノードＣとＤはノードＡに障害が生じたと知覚する）が、このことは、単一ＬＡＧ仮想ノードの外観をそのピアに提示するＤＲＮＩの内部システムの詳細を秘匿するというＤＲＮＩの主たる設計原則に反する。ゆえに、ＤＲＮＩ原則の下では、たとえノード障害が発生しても、システムＩＤの変更は避けることが望ましい。
【０００９】
図３は、同一ポータル上のノード間の接続性（すなわち「ポータルリンク」）が切断され、それによって仲間ノードＡとＢの間のリンク切れを起こしている時における、別の不具合事象を示している。従来技術では、ノードは、ポータルリンク障害とポータルノード障害を弁別することは不可能であり、ポータルリンク障害に対するノードＢ’の反応は、上述のポータルノード障害に対するものと同一（すなわち、ノードＢは共通システムＩＤの代わりにそれ自身のシステムＩＤの使用を開始する）である。それにもかかわらず、図２に示すように、ノードＡは作動中であり、かつ、ＬＡＣＰＤＵ中のそれ自身のシステムＩＤを使用している。ノードＣとＤは次いで、単に共通システムＩＤを使用するＬＡＧ仮想ノード３０に対するリンク（すなわち、この実施例ではノードＡへのリンク）を維持する。他のノードへのリンクは、図４に図示されているように、ＬＡＧからのリンクを無効化することにより、ノードＣとＤによって無効化される（ノードＢとノードＤの間の点線を参照のこと−この表記は、この出願全体にわたり無効化されたリンクを示すために使用される）。
【００１０】
図３から図４のポータルリンク障害によって生じた状況は、単一ＬＡＧ仮想ノード３０をエミュレートするノードＡとＢの両方が作動中であるが、互いに接続されていないことから、「スプリットブレイン（ＳＢ）」と称される。スプリットブレインノードの両方がアクティブゲートウェイになっている場合には、ループが発現することになる。それにもかかわらず、ピアリングパートナーノードＣとＤは、スプリットブレインノードＡとＢに、それらが図４に示すようなスプリットブレイン状況にあると伝えることができる。それはつまり、ノードＣとＤの両方が、それらの各ピアノードに、ＬＡＧ仮想ノード３０でスプリットブレイン状況が発生したと伝えるために、ＬＡＣＰＤＵを使用するということである。ゆえに、どちらのノードも、他方からアクティブゲートウェイの役割を引き継がない（例えば、ノードＢは図１のサービスのためのアクティブゲートウェイにならない）。ノードＣとＤの間の接続性が妥当に機能している場合、それらは単一ＬＡＧ仮想ノード３２をエミュレートし、かつ、それらの両方が、それらの各ピアノードＡ及びＢから受信された異なるシステムＩＤを知覚することに留意されたい。
【００１１】
スプリットブレイン状況がＬＡＧの両側で同時に発現している場合には、「ダブルスプリットブレイン（ＤＳＢ）」状態（「デュアルスプリットブレイン」としても知られる）が発生していると言われる（図５を参照のこと）。ＬＡＧの両側にスプリットブレインが発生している場合には、いずれのポータル内にも接続が存在しないことから、ＬＡＧ仮想ノード３０、３２のどちらも、他方のＬＡＧ仮想ノード３０、３２のスプリットブレイン状況を検知できない。ゆえに、同一のポータルのノードは、それらの各ＬＡＣＰＤＵ内でそれらが異なるシステムＩＤを受信するという事実を互いに通知できず、このことは、従来技術のシングルスプリットブレイン対処法の原理である。従って、全てのノードはポータル内にあるそれらの仲間ノードがダウンしているとみなすことになり、全てのノードは、あらゆるサービスのためのアクティブゲートウェイになる。この結果として、図５に示すように、データフレームの転送ループが生じる。ダブルスプリットブレイン状況に対処するための、有効な方法はない。
【発明の概要】
【００１２】
第１仮想ノードと第２仮想ノードを含む、リンクアグリゲーショングループ（ＬＡＧ）内の仮想ノードを動作させるためのいくつかの方法が開示される。第１の例示的な方法により、第１仮想ノードと第２仮想ノードを含むＬＡＧ内の仮想ノードを動作させる方法が開示されている。第１仮想ノードは、少なくとも、第１仲間ノード及び第２仲間ノードを含む。方法により、第１仲間ノードは、第１仲間ノードが第２仲間ノードと通信しているか否かを判断する。第１仲間ノードはまた、判断に基づいて、判断により第１仲間ノードは第２仲間ノードと通信していると示される時には、制御情報がシステムＩＤ及びＬＡＧに関連付けられた第１設定情報を含むように、判断により第１仲間ノードは第２仲間ノードと通信していないと示される時には、制御情報がシステムＩＤ及びＬＡＧに関連付けられた第２設定情報を含むように、第２仮想ノードに制御情報を送信し、第２設定情報は第１設定情報とは異なる。
【００１３】
一実施例では、第１設定情報及び第２設定情報は、設定キーとサービスダイジェストのうちの１つである。同一の、又は別の実施例では、第１設定情報及び第２設定情報は、リンクアグリゲーション制御プロトコルデータユニット（ＬＡＣＰＤＵ）メッセージ内で搬送される。例示的な方法を実装するよう構成された対応するネットワークノードも開示される。
【００１４】
別の例示的な実施形態により、第１仮想ノードと第２仮想ノードを含むＬＡＧ内の仮想ノードを動作させる方法が開示されている。第１仮想ノードは、少なくとも、第１仲間ノード及び第２仲間ノードを含む。方法により、第１仲間ノードは、第２仮想ノードから、システムＩＤ及びＬＡＧに関連付けられた第１設定情報を含む第１制御情報を受信する。第１設定情報は、ＬＡＧに関連付けられた参照設定情報と比較される。比較により、第１設定情報が参照設定情報に一致しないと示される場合、第１仲間ノードは第２仲間ノードと通信していないと検知すること、及び、第２仲間ノードは第２仮想ノードと通信しており、かつ、第１設定情報が、第２仮想ノードによって第２仲間ノードに提供された第２設定情報に一致しないこと、のうちの少なくとも１つに応答して、ＬＡＧ内にスプリットブレイン状態が存在すると判断される。参照設定は、既に確立された、ＬＡＧに関連付けられた予想設定情報を表す。
【００１５】
一実施例では、スプリットブレイン状態が存在すると判断することは、第１仲間ノードは第２仲間ノードと通信していないと検知することに応答して、ＬＡＧ内にデュアルスプリットブレイン状態が存在すると判断することを含む。この実施例では、第１と第２の仮想ノードを接続する非プライマリ接続リンク、又は非デフォルト接続リンクは、ＬＡＧ内にデュアルスプリットブレイン状態が存在すると判断される場合、ＬＡＧから除外されることがある。
【００１６】
一実施例では、スプリットブレイン状態が存在すると判断することは、第２仲間ノードは第２仮想ノードと通信しており、第１設定情報が、第２仮想ノードによって第２仲間ノードに提供された第２設定情報に一致しないことに応答して、ＬＡＧ内にシングルスプリットブレイン状態が存在すると判断することを含む。第１設定情報、第２設定情報及び参照設定情報は、設定キーと設定ダイジェストのうちの１つでありうる。また、設定情報は、リンクアグリゲーション制御プロトコルデータユニット（ＬＡＣＰＤＵ）メッセージ内で搬送されることがある。この追加の例示的な方法を実装するよう構成された、対応するネットワークノードも開示される。
【００１７】
言うまでもなく、本発明は、上記の特性及び利点に限定されない。実際には、当業者は、下記の詳細な説明を読み添付の図面を参照することで、追加的な特性及び利点を認識するであろう。
【図面の簡単な説明】
【００１８】
【図１】サービスに対応可能なＬＡＧを示すブロック図である。
【図２】ＬＡＧ内のポータルノード障害のブロック図である。
【図３】スプリットブレイン状態を発生させる、ＬＡＧ内のポータルリンク障害のブロック図である。
【図４】図３のスプリットブレイン状態に対処するための従来技術の解決法のブロック図である。
【図５】ダブルスプリットブレイン状態のブロック図である。
【図６】新規のシステムＩＤ命名措置を使用する、通常のＬＡＧ動作状態のブロック図である。
【図７】新規のシステムＩＤ命名措置を使用する、通常のＬＡＧ動作状態のブロック図である。
【図８】図６から図７のＬＡＧ内のノード障害のブロック図である。
【図９】共通キーを使用するＬＡＧノードの通常の動作状態のブロック図である。
【図１０】図９のＬＡＧ内の非プライマリＬＡＧノード障害のブロック図である。
【図１１】図９のＬＡＧ内のプライマリＬＡＧノード障害のブロック図である。
【図１２】図９のＬＡＧにおける、シングルスプリットブレイン対処法のブロック図である。
【図１３】図９のＬＡＧにおける、シングルスプリットブレイン対処法のブロック図である。
【図１４】サービス割当ダイジェストを使用するＬＡＧノードの通常の動作状態のブロック図である。
【図１５】図１４のＬＡＧ内のＬＡＧノード障害のブロック図である。
【図１６】図１４のＬＡＧにおける、シングルスプリットブレイン対処法のブロック図である。
【図１７】図１４のＬＡＧにおける、シングルスプリットブレイン対処法のブロック図である。
【図１８】スプリットブレイン状態を検知するためにＬＡＧ内の仮想ノードを動作させる、例示的な方法を示している。
【図１９】スプリットブレイン状態を検知するためにＬＡＧ内の仮想ノードを動作させる、別の例示的な方法を示している。
【図２０】ＬＡＧにおける、ダブルスプリットブレイン対処法のブロック図である。
【図２１】ＬＡＧにおける、ダブルスプリットブレイン対処法のブロック図である。
【図２２】完全にメッシュ化されたＤＲＮＩにおける、ダブルスプリットブレイン対処法のブロック図である。
【図２３】ダブルスプリットブレインの誤った対処により切断されたＬＡＧ接続性のブロック図である。
【図２４】ＬＡＧ内の仮想ノードを動作させる、例示的な方法を示している。
【図２５】ＬＡＧ内の仮想ノードを動作させる、別の例示的な方法を示している。
【図２６】例示的なＬＡＧノードを示している。
【発明を実施するための形態】
【００１９】
図６から図７は、ＬＡＧ仮想ノード３０、３２の各々で同一のノード識別システムＩＤが使用される、システムＩＤ命名方法を示す。図６から図７に示すように、ノードＡとＢは、ネットワーク２に対してＬＡＧ仮想ノード３０内の単一仮想ノードＡ’であると主張する。それはつまり、図６に示すようにノードＣとノードＤのパートナーのシステムＩＤがＡ’であるように、かつ、ノードＣとノードＤが、それらは単一ノードＡ’に接続されていると認知するようなＬＡＣＰＤＵを、ノードＣとノードＤの両方が受信するということである。他方の側での動作も同じであり、ノードＣとノードＤは、ネットワーク１に対してＣ’というシステムＩＤを備えた単一ＬＡＧ仮想ノード３２であると主張する。一実施例では、各仮想ノードのシステムＩＤは、仮想ノードを実装しているポータルノードのうちの１つのＩＤのものと同一である。それはつまり、一実施例では、システムＩＤ  Ａ’＝システムＩＤ  Ａであり、かつ、システムＩＤ  Ｃ’＝システムＩＤ  Ｃであるということである。
【００２０】
ＤＲＮＩ動作の原則によれば、障害の場合であっても、ＬＡＧ仮想ノードの内部動作をそのピアリングネットワークから秘匿することが望ましい。図８は、図６から図７のＬＡＧ内のノード障害のブロック図であり、その中でこの所望の挙動が追及されている。それはつまり、ノードＡの機能停止にもかかわらず、ノードＢは、ピアリングネットワークに対してシステムＩＤ  Ａ’を依然として使用し、それ自身のＩＤには変更しないということである。システムＩＤ  Ａ’＝システムＩＤ  Ａである場合には、ノードＢは、ノードＡの機能停止にもかかわらず、ネットワーク２に対してシステムＩＤ  Ａを依然として使用する。従って、図６から図７のＬＡＧノードＡ、Ｂ、Ｃ、ＤはＬＡＧに対して告知しているシステムＩＤを変更しないことから、ＤＲＮＩ動作原則が常に適用され、維持されることを目指すものである場合、従来のスプリットブレイン対処方法は適用されえない。
【００２１】
スプリットブレイン状況が発現する可能性を最小化するための、実現可能性のある一ステップは、仲間ポータルノードの相互接続のために、ポータル内で保護されたリンクを適用する（Ａ−Ｂ間及びＣ−Ｄ間に保護されたポータルリンクを有する）ことである。例えば、ＬＡＧによってグループ化された複数の物理リンクにより、仲間ポータルノードは互いに接続される可能性がある。この方法と組み合わせて、或いはこの方法の代替として使用されうる他の方法を、下記で説明する。
【００２２】
キー変更を使用するシングルスプリットブレイン回避
図９から図１３は、シングルスプリットブレイン状態を検知し、それに対処するためにキー変更を使用する、例示的な一方法を示す。これらの図（及び図７から図８）では、ノードを囲む二重円は、ノードがその各ＬＡＧ仮想ノード３０又は３２内にある「プライマリノード」であることを示している。
【００２３】
図９から図１３の方法は、システムＩＤが障害発生時に変更されず、かつ、いかなる状態下においても変更されない場合に、シングルスプリットブレインに対処するために提案されている。提案されている方法は、仲間ポータルノードがダウンしていると認知される場合、アグリゲーションキーの変更に依拠する。アグリゲーションキー（又は「アグリゲータキー」或いは「アクターキー」若しくは単に「キー」）は、ノードＡとＣの間、及びノードＢとＤの間で送信されたＬＡＣＰＤＵ内で使用される。図９を参照するに、通常の動作状態では、ノードＡとＢの各々は、それらのピアノードへの送信においてキー「Ｋ」を使用する。
【００２４】
図１０は、ノードＢに障害が生じている、図９のＬＡＧにおける非プライマリポータルノード障害を示す。仮想ノードのシステムＩＤが、仮想ノードをエミュレートしているポータルノードのうちの１つのシステムＩＤと同一の場合には、共通システムＩＤを有するノードがプライマリノードである（例えば、システムＩＤ  Ａ’＝システムＩＤ  Ａの時はノードＡがプライマリノードである）。図１０に示すように、たとえ非プライマリノードに故障が生じても、プライマリノードはそのアグリゲーションキーを変更しない。
【００２５】
しかし、プライマリノードＡに故障が生じている場合には、図１１に示すように、非プライマリノードＢはそのアグリゲーションキーを変更する。それはつまり、ノードＡに故障が生じている場合には、ノードＢは、そのＬＡＣＰＤＵ内のキーを、既に使用していた共通キー「Ｋ」に替えて「Ｌ」に変更するということである。キー変更による中断を回避するために、旧キー値と新キー値は、変更中、及びその少し後に、ＬＡＣＰＤＵ内で搬送されうる。ゆえに、旧キー又は新キーのいずれかとの一致があれば、ＬＡＧは維持されうる。Ａ’という同一のシステムＩＤが、ノードＢはノードＡに障害が生じたと認知しているにも関わらず、ノードＢによって使用され続けることは、注目に値する。
【００２６】
例示的な一実施形態による、キー変更によるシングルスプリットブレイン状態の対処法が、図１２から図１３に示されている。図１２を参照するに、仮想ノード３０のポータル内で接続性が切断されている場合には、ポータルノードＡ、Ｂの両方は、仲間ポータルノードがダウンしていると認知する。ただし、ノードＡ又はノードＢのいずれも、両方がそれらのピアノードＣ、Ｄに対してシステムＩＤ  Ａ’の使用を継続することから、そのシステムＩＤを変更しない。プライマリノード（すなわち実施例ではノードＡ）も、そのキーを変更せず、共通キー「Ｋ」を使用し続ける。対象的に、非プライマリノードであるノードＢは、そのキー値をキー「Ｌ」へと変更する。
【００２７】
ピアノード（ノードＣ及びノードＤ）は、ＬＡＣＰＤＵ内の別々のキー値を受信し、これを使用して、ＬＡＧ仮想ノード３０でシングルスプリットブレインが発生したと検知する。予想キーＫが受信されるリンクは、ＬＡＧ内に保たれる（すなわち、ノードＡとＣの間のリンク）。受信されたキーが予想キーと異なるそれらのリンクは、図１３に示すようにＬＡＧから除外される（すなわち、ＢとＤの間のリンクは除外される−ＢとＤの間の点線により示す）。
【００２８】
ノード障害の場合、たとえキーが変更されても、ピアによって単一キーが受信されることが、ノード障害とスプリットブレイン状態の間の相違であることに留意されたい。しかし、スプリットブレイン状況の場合、複数の異なるキーが受信される。従って、図１３に示すように、ピアはスプリットブレイン状況を認識し、かつ、スプリットブレイン内のノードに、それらのノードがスプリットブレイン内にあるという事実について伝えることが可能である。
【００２９】
サービス割当変更に基づくシングルスプリットブレインの回避
図１４から図１７は、シングルスプリットブレイン状態を検知し、それに対処するためにサービス割当ダイジェストを使用する、例示的な方法を示す。下記に説明するダイジェストを組み込む実施形態においては、「プライマリ」及び「非プライマリ」ノードが存在せず、ゆえに、どのノードも二重円で囲まれていないことは、注目に値する。しかしこれらの実施形態は、同様の様態において、「デフォルトリンク」及び「非デフォルトリンク」という概念を利用する。
【００３０】
ある状況において（例えば、ＬＡＧ適合が必要な場合）、ＬＡＧ内に集約されている個々のリンクへの実際のサービス割当の情報は、ダイジェストの形態で、交換されたＬＡＣＰＤＵ内で搬送される可能性がある（例として、「ＭｅｔｈｏｄｆｏｒＥｎｓｕｒｉｎｇＣｏｎｇｒｕｅｎｃｙｉｎＬｉｎｋＡｇｇｒｅｇａｔｉｏｎ」と題された、Ｅｒｉｃｓｓｏｎ社の仮出願特許番号６１／６０５，８１８、識別番号４０１５−８０２７／Ｐ３６１１３を参照のこと）。かかる構成においては、あるサービスが特定のＬＡＧピアリンクに割り当てられ、ダイジェストは、ＬＡＧノードの間で送信され、これらのサービス割当を示す。ＬＡＧの２つのエンドで交換された割当の比較により、搬送されたサービスの適合の検証が可能になる。
【００３１】
下記の説明では、スプリットブレインの回避方法は、リンク割当に対するサービスの変更（すなわち、ダイジェストで受信されると予想されるサービス割当情報と比較した相違）の検知に依拠している。以下でずっと詳細に説明するように、ＬＡＣＰＤＵ内のＬＡＧサービス割当を表すためにサービス割当ダイジェストの形をとることにより、あるダイジェスト変更に基づいて、スプリットブレイン状態が検知されうる。
【００３２】
図１４は、サービス割当ダイジェストを使用するＬＡＧの通常の動作状態のブロック図である。図１４では全てのリンクが動作可能であることから、ＬＡＧ全体にわたって同一のサービス割当が使用され、ＬＡＧ内のピアノード間で同一のサービスダイジェスト「Ｇ」が送信される。それはつまり、集約された各リンク上で、例としては物理リンクへのＶＬＡＮ識別子（ＶＩＤ）割当についての情報を搬送する、追加的なサービスダイジェストが交換されるということである。ＶＩＤは合目的的な様態でハンドオフされることから、図１４に示すように、全てのダイジェスト値は同一であり、かつ、ＬＡＧ仮想ノード３０、３２の両方の間で同一のサービスダイジェスト「Ｇ」が交換される。ＶＩＤがＬＡＧの両側で同一の物理リンクに割り当てられ、かつ、ダイジェストがあらゆるＶＩＤの割当を対象とする場合、割当は一貫性を有する。ゆえに、送信されるダイジェストと同一のダイジェストが受信されることが予想される。
【００３３】
図１５は、ノード障害の場合の動作を示している。この場合、ピアリンクＢ−Ｄによって搬送された全てのサービスが、ピアリンクＡ−Ｃによって搬送されるようになっている。これは、ネットワーク２に新たなダイジェストＨが伝達され、サービスの移転を示すことになることを意味する。また、ネットワーク２のＬＡＧ仮想ノード３２は、ＬＡＧのリンクを喪失することによって障害を知覚し、従って、仮想ノード３２は、全てのサービスをリンクＡ−Ｃへと移動させてダイジェストを更新するために、適切な措置の変更も行う。ゆえに、ダイジェストの交換は図１５に図示したようなものになる。
【００３４】
サービス割当の変更に基づくシングルスプリットブレイン状態に対処する例示的な一方法を、図１６及び図１７に示す。ポータル内で接続性が切断されている（例えば、ノードＡとノードＢの間のリンクが切れている）場合、ポータルノードＡとＢの両方は、それらの仲間ノードがダウンしていると認知する。集約された各リンクは、以前は他のリンク上で搬送されていた全てのサービスを引き継ぐ。その結果として、ノードＡによって送信されたダイジェスト「Ｈ」は、全てのサービスがＡ−Ｃリンクを介して搬送されるように算出される。ノードＢも、全てのサービスがＢ−Ｄリンクを介して搬送されるように算出される、ダイジェスト「Ｊ」を送信する。ゆえに、スプリットブレイン内のポータルノードは、図１６に示すように、別々のダイジェストを送信する。その結果、ノードＣとＤの各々は、それらのピアノードＡ及びＢから、Ａ−Ｃ及びＢ−Ｄのリンクを介して別々のダイジェストを受信する。ノードＣ及びＤは、この情報を使用して、それらのピアにスプリットブレイン状態が発生していると判断することができ、かつ、下部ＩＤリンクを分離させる（すなわち、ノードＢとノードＤの間の「非デフォルトリンク」を無効化する）こと、及び、ＬＡＧ内の「デフォルトリンク」（図１６から図１７の実施例ではノードＡとノードＣの間のＡ−Ｃリンク）を保つことによってＬＡＧが分割されるように、適切な処置を取りうる。同時に、ノードＣとＤは、それらの各ピアノードＡ及びＢに、ＬＡＧ仮想ノード３０におけるスプリットブレイン状態について伝える（図１７の「ＳＢ」通知を参照のこと）。
【００３５】
この点を考慮して、図２４は、第１仮想ノード（例えばＬＡＧ仮想ノード３０）、及び第２仮想ノード（例えばＬＡＧ仮想ノード３２）を含むＬＡＧ内の仮想ノードを動作させる例示的な方法３００を示している。一例として、方法３００は、少なくとも、第１仲間ノードと第２仲間ノード（例えばノードＡ及びＢ）を含むＬＡＧ仮想ノード３０である、「第１仮想ノード」と共に説明される。第１仲間ノードは、第１仲間ノードが第２仲間ノードと通信しているか否かを判断し（ステップ３０２）、判断に基づいて制御情報を第２仮想ノードに送信する（ステップ３０４、３０６）。判断により第１仲間ノードは第２仲間ノードと通信していると示される時には、制御情報は、システムＩＤ、及びＬＡＧに関連付けられた第１設定情報を含む（ステップ３０４）。判断により第１仲間ノードは第２仲間ノードと通信していないと示される時には、制御情報は、システムＩＤ、及びＬＡＧに関連付けられた第２設定情報を含み、第２設定情報は第１設定情報とは異なる（ステップ３０６）。
【００３６】
上述のように、第１設定情報と第２設定情報は、設定キー及び／又はサービスダイジェストでありうる。また、第１設定情報と第２設定情報は、任意ではあるが有利には、ＬＡＣＰＤＵメッセージ内で搬送されうる。
【００３７】
シングルスプリットブレイン及びダブルスプリットブレインの対処法
図１８から図１９は、スプリットブレイン状態を検知するためにＬＡＧ内の仮想ノードを動作させる、例示的な方法の詳細を示している。各実施形態では、ＬＡＧノード（Ａ、Ｂ、Ｃ、Ｄ）の各々は、そのＬＡＧピアからある情報を得ることを予想するよう構成され、ダブルスプリットブレイン状態は、一旦検知されると、接続ピアリンクを除外することにより対処されうる。
【００３８】
図１８は、ピアノードからのＬＡＣＰＤＵの受信に基づいてシングルスプリットブレイン又はダブルスプリットブレインの対処を促進する、例示的な方法１００を示している。方法１００は、例示の目的で、ＬＡＧ仮想ノード３２のノードＤの観点から説明される。
【００３９】
制御情報が他の仮想ノードから（例えばノード３０から）受信されたか否かを判断するための確認が実行される（ステップ１０２）。情報は、例えばＬＡＣＰＤＵ内で、受信されることがある。制御情報は、システムＩＤ並びに第１設定情報を含む。第１設定情報が参照設定情報に一致するか否かを判断するための確認が実行される（ステップ１０４）。参照設定は、既に確立された、ＬＡＧに関連付けられた予想設定情報（例えば予想キー）を表す。第１設定情報が参照設定情報に一致しない場合、ノードＤはその仲間ノードＣと通信可能か否か（すなわち、ノードＣは到達可能か否か）を判断するための確認が実行される（ステップ１０６）。ノードＣとＤが互いに通信可能である場合には、第２設定情報が仲間ノードＣで受信されるか否かを判断するための確認が実行される（ステップ１０７）。規定の時間が経過した後に第２設定情報が受信されない場合には、ピアノードＡに障害が生じたと判断されうる（ステップ１０８）。或いは、第２設定情報が受信され、かつ、第１設定情報に一致しない（例えば、仲間ノードＣとＤが、それらのピアノードＡとＣから異なる設定情報を受信している）場合には、ＬＡＧ仮想ノード３０でシングルスプリットブレイン状態が発生したと判断される（ステップ１０９）。これに基づいて、当該リンクが依然としてＬＡＧのメンバであるか否かを判断するための確認が実行される（ステップ１１２）。これは、ノードＤの例では、ノードＢとＤを接続するピアリンクであるはずである。リンクが依然としてＬＡＧのメンバである場合には、それはＬＡＧから除外され（ステップ１１４）、シングルＳＢ通知を有するＬＡＣＰＤＵが、ノードＢであるはずのＬＡＧピアに送信される（ステップ１１６）。
【００４０】
ステップ１０６を再度参照するに、ノードＣとＤが互いに通信できない場合には、ダブルスプリットブレイン状態が検知され（ステップ１１０）、ステップ１１２からステップ１１６が、シングルＳＢ通知に替えてＤＳＢ通知がステップ１１６で提供されることになることを除き同様の様態で実行される。ゆえに、当該リンクが依然としてＬＡＧのメンバであるか否かを判断するための確認が実行され（ステップ１１２）るが、ＬＡＧのメンバとは、ノードＤの例では、ノードＢとＤを接続するピアリンクであるはずである。リンクが依然としてＬＡＧのメンバである場合には、それはＬＡＧから除外され（ステップ１１４）、ＤＳＢ通知を有するＬＡＣＰＤＵが、ノードＢであるはずのＬＡＧピアに送信される（ステップ１１６）。本書で提案されている方法は、他の不具合事象の対処法を改変する、又は損なうものではないことに留意されたい。
【００４１】
ステップ１０４を再度参照するに、ＬＡＣＰＤＵに予想情報が含まれる場合、仲間ノードが到達可能であるか否かを判断するための確認が実行される（ステップ１１８）。ゆえに、ノードＤがノードＣと通信可能か否かを判断するための確認が実行される。ノードＣ、Ｄが通信可能である場合には、以前のダブルスプリットブレイン状態はもはや存在しない。従って、ノードＢとノードＤの間のピアリンクが現時点でＬＡＧの一部であるか否かを判断するための確認が実行され（ステップ１２０）、それがＬＡＧの一部ではない場合、再びＬＡＧに付加される（ステップ１２２）。
【００４２】
加えて、従来技術のシングルスプリットブレイン方法（障害発生の際にノードＢがそのシステムＩＤを変更するはずの方法）と方法４００（キー変更によってシングルスプリットブレイン状態を検知する方法）はどちらも、方法１００で提案されたダブルスプリットブレイン対処法と共に、良好に機能する。
【００４３】
方法１００は、（ノードＡとＣの間のプライマリピアリンクが保持されることになるように）ノードＢとＤの間の非プライマリ接続ピアリンクを無効化するために、（ノードＤとノードＣはどちらも、それらの各仲間ノードから同一の参照設定情報を得ることを予想している状況で）ノードＤによって実装されている設定情報と説明されたが、これは一例に過ぎないことを理解すべきである。方法１００はノードＣによっても実行され、例えばノードＣは、ステップ１０２からステップ１０４において、やはりその予想情報を受信することになる。これは、ノードＡとＣは、同一の情報（例えば、同一のシステムＩＤ及び／又はキー）の使用を継続し、ノードＣとＤのみが別の情報を使用することになるからである。従って、ノードＡとノードＣの間のピアリンクは、たとえダブルスプリットブレインの際でも無効化されないはずである。一実施形態では、ノードＡ、Ｂ、Ｃ及びＤの４つ全てが、方法１００を実行して、ＬＡＧ仮想ノード３０、３２の両方で、シングルスプリットブレイン及びダブルスプリットブレインを検知を行う。
【００４４】
上述のように、参照設定情報は、例えば情報検証に使用される、アグリゲーションキーを含む可能性がある。参照設定情報は、例えば初期設定アクションによって決定される、或いは、通常の動作下で（例えば初期ＬＡＣＰＤＵ交換中に）ＬＡＣＰＤＵによって搬送された価に基づく可能性がある。図９の実施例では、ノードＣとＤは両方、それらのピアの予想キーＫを保存するよう構成される。図１８で説明されている方法の情報の不一致は、ＬＡＣＰＤＵ内で受信されたキーがと局所的予想キーと異なる場合に発生することになる。
【００４５】
図１９は、設定情報が、物理ＬＡＧリンクへのサービスの割当を示すサービス割当ダイジェストである、スプリットブレイン状態を検知するよう、ＬＡＧ内の仮想ノードを動作させる例示的な方法を示している。ダイジェストはＬＡＣＰＤＵ内で受信され、サービスダイジェストは、予想サービスダイジェストと異なることがある。図１８のダブルスプリットブレイン対処機構は、リンクに対するサービスの、受信された割当と、予想割当の不一致の検知に依拠する。
【００４６】
方法２００は、例示の目的で、ノードＤの観点から説明される。図１９のステップ２０２からステップ２１２、及びステップ２１４からステップ２２２は、（キー又はシステムＩＤとは対照的に）予想情報がサービス割当ダイジェストに対応することを除き、図１８のステップ１０２からステップ１１２、及びステップ２１４からステップ２２２と同様の様態で実行される。方法１００、２００の間の顕著な一相違点は、方法２００には、当該ＬＡＧピアリンク（例えばノードＢとノードＤを接続するリンクＢ−Ｄ）はデフォルトＬＡＧリンクであるか否かを判断するための、追加的なステップ２１３が含まれていることである。このステップにより、非デフォルトリンク（すなわちノードＢ、Ｄの間のリンク）のみが無効化され、プライマリリンク（すなわちノードＡ、Ｃの間のリンク）は無効化されないことが確実になる。ゆえに、スプリットブレイン状況が予測され、かつ、受信されたダイジェストと予想ダイジェストの不一致が存在する場合には、リンクは、デフォルトＬＡＧリンクではない限り、ＬＡＧから除外される必要がある。一実施例では、デフォルトＬＡＧリンクは、別のリンクがデフォルトＬＡＧリンクとして構成されていない限り、数値的に最も低いリンクＩＤ値を有するリンクである。
【００４７】
図１８から図１９がより詳細に図示しているのに対して、図２５は、第１仮想ノードと第２仮想ノードを含むＬＡＧ内の仮想ノードを動作させる、一般化された方法４００を示している。方法４００の実施例では、ＬＡＧ仮想ノード３２は例示的な「第１仮想ノード」であり、ＬＡＧ仮想ノード３０は例示的な「第２仮想ノード」となるが、異なる状況においては、これらが逆になる可能性もある。第１仲間ノード（例えばノードＣ）は、第２仮想ノード３０から、システムＩＤ及びＬＡＧに関連付けられた第１設定情報を含む第１制御情報を受信する（ステップ４０２）。第１設定情報は、ＬＡＧに関連付けられた参照設定情報と比較される（ステップ４０４）。第１設定情報が参照設定情報と異なる（一致しない）場合（ステップ４０４に対する答えが「いいえ」）、ノード（ノードＣ）はその仲間ノード（例えばノードＤ）と通信しているか否かという判断がなされる（ステップ４０６）。通信していない場合には、ＬＡＧ内にダブルスプリットブレイン状態が存在すると判断される（ステップ４１０）。仲間ノードＣ、Ｄが通信している場合には、第２仲間ノードが第２仮想ノードと通信していること（ステップ４０７）、及び、第１設定情報が、第２仮想ノードによって第２仲間ノードに提供された第２設定情報に一致しないこと（ステップ４０９）に応答して、シングルスプリットブレイン状態が存在すると判断される。ステップ４０８は、ノード障害（例えばノードＡ）の検知を表す。参照設定は、既に確立された、ＬＡＧに関連付けられた予想設定情報を表しうる。
【００４８】
スプリットブレイン状態が存在すると判断することは、第１仲間ノードは第２仲間ノードと通信していないと検知すること（ステップ４０６）に応答して、ＬＡＧ内にデュアルスプリットブレイン状態が存在すると判断することを含みうる。この実施例では、第１と第２の仮想ノードを接続する非プライマリ接続リンク、又は非デフォルト接続リンクは、ＬＡＧ内にデュアルスプリットブレイン状態が存在すると判断される場合、ＬＡＧから除外されることがある。
【００４９】
スプリットブレイン状態が存在すると判断することは、第２仲間ノードが第２仮想ノードと通信しており、第１設定情報が、第２仮想ノードによって第２仲間ノードに提供された第２設定情報に一致しないこと（ステップ４０７、４０９）に応答して、ＬＡＧ内にシングルスプリットブレイン状態が存在すると判断することを含みうる。
【００５０】
方法３００、４００の両方において、設定情報は、設定キー又は設定ダイジェストのいずれかであることがあり、かつ、所望であれば、リンクアグリゲーション制御プロトコルデータユニット（ＬＡＣＰＤＵ）メッセージ内で搬送されうる。
【００５１】
図２０から図２１は、システムＩＤに基づき、方法１００を使用する、ＬＡＧにおけるダブルスプリットブレイン対処法のブロック図である。図２０を参照するに、ノードＡとノードＢを接続するリンクは消失しており、ノードＢは新たなシステムＩＤの使用を開始する。同様に、ノードＣとＤの間の接続も消失しており、ノードＤは新たなシステムＩＤの使用を開始する。従って、ノードＢとＤは、それらの予想情報を受信しない（ステップ１０２、１０４）。また、ノードＢとＤの各々は、それぞれ、それらの仲間ノードＡ及びＣに到達することができない（ステップ１０６）。従って、ダブルスプリットブレイン状態が検知され（ステップ１１０）、ダブルスプリットブレイン表示を有するＬＡＣＰＤＵが、ノードＢからノードＤへと送信され、かつ、同様のＬＡＣＰＤＵがノードＤからノードＢへと送信される（ステップ１１６）（図２１の「ＤＳＢ」通知を参照のこと）。
【００５２】
ノードＡとＣの観点から、これらのノードの各々は、それらのＬＡＧピアから（すなわち互いから）、局所的に予想される基本システムＩＤである同一のシステムＩＤを受信する。従って、ノードＡとＣの間のピアリンクはＬＡＧグループ内で保たれ、かつ、ピアリンクＡ−Ｃは、ネットワーク１とネットワーク２の間の接続性を継続的に提供する。しかし、ノードＢとＤによってＬＡＣＰＤＵ内で受信されるシステムＩＤは、局所的に予想される基本システムＩＤと一致せず、ノードＢとＣはそれらの仲間ポータルノードへの接続性を喪失している。従って、ノードＢとＤは、ダブルスプリットブレイン状況を明示し、かつ、それらの間のピアリンクＢ−ＤをＬＡＧグループから除去する（上述のステップ１１２からステップ１１４を参照のこと）。更にノードＢとＤは、任意的に、互いにＤＳＢ通知を送信しうる（ステップ１１６）。ＬＡＧグループからのリンクＢ−Ｄの除去は局所的決定であり、どの他のノードとのいかなる合意も必要ないことに留意されたい。
【００５３】
図２２は、ＬＡＧに加わっているノード間でフルメッシュトポロジーが使用される、別の実施例における、提案された方法１００、２００によるダブルスプリットブレイン対処法を示している。この実施例では、本書で提案されている方法によってＬＡＧグループ内で保たれるのは、ノードＡとＣの間のリンクのみである。他の全てのリンクは、ＬＡＧグループからそれらを除去することによって無効化され、ゆえに、ループフリーな接続性が確実になる（ノードＡ、Ｂ、Ｃ、Ｄ間の点線を参照のこと）。
【００５４】
トポロジーがフルメッシュでない場合には、慎重な設定なくして提案された方法が適用されると、ＬＡＧによって既に提供されていた接続性が、ダブルスプリットブレインにより切断されうることに留意されたい。図２３に示すダブルスプリットブレイン状況の例では、ＬＡＣＰＤＵ内で受信されたシステムＩＤは、いずれのＬＡＧ仮想ノードにおいても局所的に予想される基本システムＩＤと一致せず、また、どちらのノードもその仲間ポータルノードに到達しえない。従って、両方のリンクがＬＡＧグループから除去され、ネットワーク１とネットワーク２の間に接続性は提供されない。かかる接続性切断、及び従来技術のＤＳＢ状態に伴うループ（図５を参照のこと）を回避するために、ノードＡ、Ｂ並びにノードＣ、Ｄは、上述のように、障害発生の際にも変わらない共通システムＩＤを使用するよう構成されうる。
【００５５】
図２６は、上述の方法を実装するよう動作する、例示的なＬＡＧノード８００を示している。ＬＡＧノード８００は、上述の方法のうち一又は複数を実装するよう動作可能なプロセッサ８０２を含む。プロセッサ８０２は、持続性メモリ８０４、及び、（同一のＬＡＧ仮想ノード３０又は３２内で）その仲間ＬＡＧノードと、並びに、（他の遠隔ＬＡＧ仮想ノード内の）そのピアＬＡＧノードと通信するための少なくとも１つの入出力デバイス８０６に、動作可能に接続される。メモリ８０４は、例えば、上述の設定情報を保存するために使用されうる。プロセッサ８０２は、一又は複数の処理回路（例えば、マイクロプロセッサ、ハードウェア、ファームウェア、又はそれらの組み合わせ）によって実装されうる。メモリ８０４は、ＬＡＧノード上で稼働する時に、ＬＡＧノードを、上述の方法のうちの一又は複数を実行するよう構成する、スプリットブレイン対処法のためのプログラム命令を含むことがある。
【００５６】
例示的な利点
上記で提案された例示的なシングルスプリットブレイン対処方法のいくつかは、障害がある場合に、システムＩＤの変更を回避することができ、従って、ポータルの内部的な詳細をＬＡＧピアから秘匿することによって、ＤＲＮＩ要件を満たしうる。
【００５７】
上記で提案された例示的なダブルスプリットブレイン対処方法のいくつかは、それらの方法でなければ少なくとも４つのノードが加わっているＬＡＧ内のＤＳＢ状態によって引き起こされることになる、フレームループを防ぐ。更に、提案された方法は、他の不具合状況の対処に影響を与えない。
【００５８】
前述の説明及び添付の図面は、本書で教示されている方法及び装置の非限定的な実施例を表している。そのため、本発明は前述の説明及び添付の図面によって限定されない。その代わりに、本発明は、以下の特許請求の範囲及び法的均等物によってのみ限定される。
【図１】
0006046241.tif 000002
【図２】
0006046241.tif 000003
【図３】
0006046241.tif 000004
【図４】
0006046241.tif 000005
【図５】
0006046241.tif 000006
【図６】
0006046241.tif 000007
【図７】
0006046241.tif 000008
【図８】
0006046241.tif 000009
【図９】
0006046241.tif 000010
【図１０】
0006046241.tif 000011
【図１１】
0006046241.tif 000012
【図１２】
0006046241.tif 000013
【図１３】
0006046241.tif 000014
【図１４】
0006046241.tif 000015
【図１５】
0006046241.tif 000016
【図１６】
0006046241.tif 000017
【図１７】
0006046241.tif 000018
【図１８】
0006046241.tif 000019
【図１９】
0006046241.tif 000020
【図２０】
0006046241.tif 000021
【図２１】
0006046241.tif 000022
【図２２】
0006046241.tif 000023
【図２３】
0006046241.tif 000024
【図２４】
0006046241.tif 000025
【図２５】
0006046241.tif 000026
【図２６】
0006046241.tif 000027