(57)【要約】  マルチシャーシリンクアグリゲーショングループによってエッジノードに接続されたアグリゲーションスイッチであって、アグリゲーションスイッチが、ＭＡＣアドレッシングに関するアグリゲーションスイッチ間の情報の交換のための接続を与える仮想ファブリックリンクによって接続され、ＭＡＣアドレステーブルが同期される。
2013535922.tif 000002
【特許請求の範囲】
【請求項１】
マルチシャーシシステム内のアグリゲートスイッチであって、
リモートアグリゲートスイッチに接続され、リモートアグリゲートスイッチが別々の物理的シャーシ内にある仮想ファブリックリンクと、
転送テーブルを有する第１のネットワークインターフェースモジュールとを備え、第１のネットワークインターフェースモジュールが、
外部ポートインターフェース上で着信パケットを受信することであって、パケットが宛先アドレスを含むこと、
着信パケットの宛先アドレスに基づいて、リモートアグリゲートスイッチ上のハードウェアデバイスに対応する宛先ハードウェアデバイス情報を求めること、
着信パケットからプリペンデッドヘッダを有するパケットを生成することであって、プリペンデッドヘッダが宛先ハードウェアデバイス情報を含むこと、および
仮想ファブリックリンクを介してリモートアグリゲートスイッチにプリペンデッドヘッダを有するパケットを送信すること
を行うように動作可能である、アグリゲートスイッチ。
【請求項２】
仮想ファブリックリンクに接続された仮想ファブリックリンクポートを有する第２のネットワークインターフェースモジュールと、
第１および第２のネットワークインターフェースモジュールに接続されたファブリック回路とをさらに備え、
第１のネットワークインターフェースモジュールが、仮想ファブリックリンクを介する送信のためにファブリック回路を介して第２のネットワークインターフェースモジュールにプリペンデッドヘッダを有するパケットを送信する、請求項１に記載のアグリゲートスイッチ。
【請求項３】
第１のネットワークインターフェースモジュールが、
複数の外部ポートインターフェースを含むスイッチング回路であって、第１のネットワークインターフェースモジュールが、複数の外部ポートインターフェースのうちの１つの上で着信パケットを受信するスイッチング回路と、
キュー管理モジュールを含むキューイング回路と
を備える、請求項２に記載のアグリゲートスイッチ。
【請求項４】
キューイング回路が、
アグリゲートスイッチおよびリモートアグリゲートスイッチに対応するハードウェアデバイス情報のマッピングを含むグローバルＨＤＩアドレステーブルにアクセスし、
宛先ハードウェアデバイス情報およびグローバルＨＤＩアドレステーブルに基づいて、仮想ファブリックリンクに接続された第２のネットワークインターフェースモジュールにプリペンデッドヘッダを有するパケットを送信することを決定する
ように動作可能である、請求項３に記載のアグリゲートスイッチ。
【請求項５】
スイッチング回路の外部ポートインターフェースのうちの１つまたは複数が、エッジノードに接続されたマルチシャーシリンクアグリゲーショングループ（ＭＣ−ＬＡＧ）のメンバポートであり、
リモートアグリゲートスイッチが、エッジノードに接続されたＭＣ−ＬＡＧの１つまたは複数のメンバポートを含む、請求項３に記載のアグリゲートスイッチ。
【請求項６】
マルチシャーシリンクアグリゲーションのための方法であって、
外部ポートインターフェース上で第１のパケットを受信することであって、第１のパケットが宛先アドレスを含むこと、
転送テーブルにアクセスし、第１のパケットの宛先アドレスに対応する宛先ハードウェアデバイス情報を求めること、
第１のパケットを受信する外部ポートインターフェースに対応するソースハードウェアデバイス情報を求めること、
第１のパケットからプリペンデッドヘッダを有するパケットを生成することであって、プリペンデッドヘッダが、ソースハードウェアデバイス情報および宛先ハードウェアデバイス情報を含むこと、および
仮想ファブリックリンクを介してリモートアグリゲートスイッチにプリペンデッドヘッダを有するパケットを送信することであって、リモートアグリゲートスイッチが別々の物理的シャーシ内にあること
を含む、方法。
【請求項７】
ハードウェアデバイス情報のマッピングを含むグローバルＨＤＩアドレステーブルにアクセスすること、
宛先ハードウェアデバイス情報およびグローバルＨＤＩアドレステーブルに基づいて、仮想ファブリックリンクを介してリモートアグリゲートスイッチにプリペンデッドヘッダを有するパケットを送信することを決定すること
をさらに含む、請求項６に記載のアグリゲートスイッチ。
【請求項８】
転送テーブルが、関連するＭＡＣアドレスを有するデバイスに到達するようにパケットをルーティングするための、ＭＡＣアドレスエントリおよび関連するハードウェアデバイス情報のリストを有するＭＡＣ／ＨＤＩ転送テーブルを含む、請求項７に記載の方法。
【請求項９】
仮想ファブリックリンクを介してリモートアグリゲートスイッチからプリペンデッドヘッダを有する第２のパケットを受信することであって、第２のパケットのプリペンデッドヘッダが、未知のソースアドレスおよび関連するハードウェアデバイス情報を含み、関連するハードウェアデバイス情報が、リモートアグリゲーションスイッチ上のハードウェアデバイスを特定すること、および
未知のソースアドレスおよび関連するハードウェアデバイス情報をＭＡＣ／ＨＤＩ転送テーブルに格納すること
をさらに含む、請求項８に記載の方法。
【請求項１０】
関連するハードウェアデバイス情報がリモートアグリゲーションスイッチ上のマルチシャーシリンクアグリゲーショングループ（ＭＣ−ＬＡＧ）のリモートメンバポートを特定するかどうかを判定すること、
関連するハードウェアデバイス情報がリモートアグリゲーションスイッチ上のＭＣ−ＬＡＧのリモートメンバポートを特定するとき、ＭＣ−ＬＡＧのローカルメンバポートを求めること、および
ＭＣ−ＬＡＧのローカルメンバポートの未知のソースアドレスおよびハードウェアデバイス情報をＭＡＣ／ＨＤＩ転送テーブルに格納すること
をさらに含む、請求項９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本米国実用特許出願は、引用により本明細書に組み込まれ、すべての目的のために本米国実用特許出願の一部とされる２０１０年８月４日出願の「ＭＵＬＴＩ−ＣＨＡＳＳＩＳ  ＶＩＲＴＵＡＬ−ＦＡＢＲＩＣ  ＬＩＮＫ  ＡＧＧＲＥＧＡＴＩＯＮ  ＳＹＳＴＥＭ」という名称の米国仮出願第６１／３７０６２２号の米国特許法第１１９条に基づく優先権を主張する。
【０００２】
連邦政府支援研究または開発に関する表明
適用なし。
【０００３】
コンパクトディスクで提出される引用による組込みの資料
適用なし。
【０００４】
本発明は、一般にはデータネットワークに関し、詳細には、１つまたは複数のデータネットワークのノード間のトポロジカル冗長性および耐性を実現するシステムおよび方法に関する。
【背景技術】
【０００５】
データネットワークは、多くの異なるコンピューティングデバイス、例えばパーソナルコンピュータ、ＩＰ電話デバイス、またはサーバが互いに、および／またはネットワークに接続された様々な他のネットワーク要素もしくはリモートサーバと通信することを可能にする。例えば、データネットワークは、限定はしないが、例えばボイスオーバＩＰ（ＶｏＩＰ）アプリケーション、データアプリケーション、およびビデオアプリケーションを含む複数のアプリケーションをサポートするメトロイーサネット（登録商標）または企業イーサネットネットワークを含むことができる。そのようなネットワークは通常、ネットワークを通じてトラフィックをルーティングする、一般にスイッチまたはルータと呼ばれる、多くの相互接続されたノードを含む。
【０００６】
多くの場合、様々なノードは、ネットワークのサイズに応じて一般に２つまたは３つの「層」または「レイヤ」を特徴付ける、ネットワークの特定のエリア内の位置に基づいて区別される。通常、３層ネットワークは、エッジレイヤ、アグリゲーションレイヤ、およびコアレイヤからなる（一方、２層ネットワークは、エッジレイヤおよびコアレイヤのみからなる）。データネットワークのエッジレイヤは、一般にローカルエリアネットワークなどの企業ネットワークまたはホームネットワークからメトロまたはコアネットワークへの接続性を提供するエッジ（アクセスとも呼ばれる）ネットワークを含む。エッジ／アクセスレイヤは、ネットワークのエントリポイントであり、すなわちエントリポイントに対して顧客ネットワークが名目上接続され、エッジレイヤにあるスイッチはエッジノードと呼ばれる。様々なタイプのエッジネットワークは、家庭までのデジタル加入者線、ハイブリッドファイバ同軸（ＨＦＣ）、およびファイバトゥザホームを含む。エッジノードは、例えば、接続されたデバイスについてのＬ２スイッチング機能を実施することができる。エッジノードは一般に、複数のエッジノードから来るアクセスリンクを終端するアグリゲートレイヤに接続される。アグリゲーションレイヤにあるスイッチはアグリゲーションスイッチと呼ばれる。アグリゲーションスイッチは、例えば、エッジノードからアグリゲートリンクを介して受信されるトラフィックのＬ２スイッチングおよびＬ３ルーティングを実施することができる。アグリゲートレイヤは、（３層ネットワーク内の）アグリゲーションスイッチから、または（２層ネットワーク内の）エッジノードから受信されるトラフィックのレイヤ３／ＩＰルーティングを実施するメトロまたはコアネットワークレイヤに接続される。理解するであろうが、ネットワークの各増分レイヤのノードは通常、より大容量および高速のスループットを有する。
【０００７】
データネットワークが直面する主な課題の１つは、申し分のないネットワーク性能を実現するために重要であるネットワーク耐性、すなわち生じ得る構成要素障害、リンク障害などにもかかわらず高可用性を維持する能力が求められることである。部分的にはトポロジカル冗長性を通じて、すなわち冗長ノード（およびノード内の冗長構成要素）およびノード間の複数の物理的経路を設けて単一障害点を防止することにより、および部分的にはＬ２／Ｌ３プロトコルを通じて、障害発生時に冗長性を利用して、ネットワークを通るトラフィックフローをスイッチング／ルーティングするために代替経路に収束することによりネットワーク耐性を達成することができる。理解するであろうが、検出時間および収束時間は、代替経路へのシームレスな遷移を達成するために迅速に（有利には、１秒未満で）行われなければならない。
【０００８】
イーサネットプロトコルは、コンピュータおよびネットワーク間で通信するためにホームネットワークや企業ネットワークなどのローカルエリアネットワーク（ＬＡＮ）でユビキタスに使用されるトランスポート技術である。しかし、アクセスおよびアグリゲートネットワークならびにメトロネットワークでのイーサネットプロトコル技術の使用は引き続き増大しており、企業ネットワークにしたのと同様に、エッジネットワークに引き続き大変革を起こしている。アクセス技術として、イーサネットは、以下のような他のアクセス技術に勝る著しい利点を提供する：（ｉ）データアプリケーション、ビデオアプリケーション、および音声アプリケーションに関する将来にわたって保証されたトランスポート、（ｉｉ）データサービスに関するコスト効果の高いインフラストラクチャ、および（ｉｉｉ）相互運用性を保証する、簡潔でグローバルに受け入れられる規格。
【０００９】
エッジネットワークおよびアグリゲートレイヤネットワーク内のキャリアグレードサービス環境にイーサネット技術を適合させるために、障害への耐性を含むいくつかの問題に依然として対処すべきである。１つの知られている解決策では、イーサネットネットワーク内で障害が発生したときに障害を検出し、トラフィックを代替経路に迂回させるために、スパニングツリープロトコル（ＳＴＰ）が一般に使用される。一般に、ＳＴＰは、スイッチ間の複数の物理的経路に依拠するが、任意の時に１つの経路だけがアクティブであり、他の経路はブロッキングモードに置かれる（「アクティブ／パッシブ」パラダイムを定義する）。障害が発生したとき、代替経路がブロッキングモードからアクティブ状態にされ、それによって接続が再確立される。
【００１０】
しかし、限定はしないが、データネットワークのエッジノードおよびアグリゲーションスイッチ間の収束を含めて、あるネットワークトポロジでは、ＳＴＰの結果、受け入れられない収束時間（例えば、最大数秒）となる可能性がある。さらに、ＳＴＰは、アクティブ／パッシブ動作パラダイムを提供するだけであり、それによって、すべてのリンクがアクティブにトラフィックを同時に転送しているわけではない。
【先行技術文献】
【非特許文献】
【００１１】
【非特許文献１】ＩＥＥＥ  ８０２．３規格、２０００年３月
【非特許文献２】ＩＥＥＥ  ８０２．１ＡＸ−２００８、２００８年１１月３日
【非特許文献３】ＩＥＥＥ  Ｓｔｄ．８０２．１Ｑ、Ｖｉｒｔｕａｌ  Ｂｒｉｄｇｅｄ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ、２００３版
【発明の概要】
【課題を解決するための手段】
【００１２】
したがって、限定はしないが、イーサネットネットワークのエッジノードおよびアグリゲーションスイッチの間などの、１つまたは複数のデータネットワークのノード間の耐性を提供するシステムおよび方法が求められている。
【図面の簡単な説明】
【００１３】
【図１】本発明によるネットワークアーキテクチャの一実施形態の概略ブロック図である。
【図２】本発明によるマルチシャーシシステムの一実施形態の概略ブロック図である。
【図３】本発明によるマルチシャーシシステム内のアグリゲーションスイッチの一実施形態の概略ブロック図である。
【図４】本発明によるマルチシャーシシステム内のアグリゲーションスイッチのネットワークインターフェースモジュールの一実施形態の概略ブロック図である。
【図５】本発明による本発明によるマルチシャーシシステム内のアグリゲーションスイッチを通るパケットフローの一実施形態の概略ブロック図である。
【図６】本発明によるマルチシャーシシステムでのソースアドレス学習の一実施形態の概略ブロック図である。
【図７】本発明によるマルチシャーシシステムでのソースアドレス学習の別の実施形態の概略ブロック図である。
【図８】本発明によるマルチシャーシシステムでのアグリゲーションスイッチの別の実施形態の概略ブロック図である。
【図９】本発明によるマルチシャーシシステムでのアクティブ／スタンバイ動作モードの一実施形態の概略ブロック図である。
【図１０】本発明によるマルチシャーシシステムでのアクティブ／スタンバイ動作モードの別の実施形態の概略ブロック図である。
【図１１】本発明による、障害が発生したときのマルチシャーシシステムの一実施形態の概略ブロック図である。
【図１２】本発明によるマルチシャーシシステムでのパケットのプリペンデッドヘッダの一実施形態の概略ブロック図である。
【発明を実施するための形態】
【００１４】
図１に、ネットワークノードの能力をより完全に利用するアクティブ／アクティブパラダイムを提供するマルチシャーシリンクアグリゲーション（すなわち、すべてのリンクが同時にトラフィックをアクティブに転送する）を備えるレジリエントネットワーク１００の一実施形態を示す。本明細書では以下の略称が定義される：
ＣＭＭ  シャーシ管理モジュール
ＩＧＭＰ  インターネットグループ管理プロトコル
ＩＰ  インターネットプロトコル
ＩＰＭＳ  インターネットプロトコルマルチキャスト
ＬＡＧ  リンクアグリゲーション
Ｌ２  ネットワークに関するＯＳＩモデルのレイヤ２（「データリンクレイヤ」）
Ｌ３  ネットワークに関するＯＳＩモデルのレイヤ３（「ネットワークレイヤ」）
ＭＡＣ  媒体アクセス制御プロトコル
ＭＣ−ＬＡＧ  マルチシャーシリンクアグリゲートグループ
ＭＣ−ＶＦＡ  マルチシャーシ仮想ファブリックアグリゲーション
ＮＩＭ  ネットワークインターフェースモジュール
ＳＴＰ  スパニングツリープロトコル
ＶＬＡＮ  仮想ローカルエリアネットワーク
ＶＲＲＰ  仮想ルータ冗長プロトコル
ＡＳＩＣ  特定用途向け集積回路
【００１５】
本願では以下の規格が引用され、参照により本明細書に組み込まれる：１）以前はＩＥＥＥ  ８０２．３ａｄタスクフォースによって２０００年３月に追加されたＩＥＥＥ  ８０２．３規格の４３節であったもので、現在は２００８年１１月３日にＩＥＥＥ  ８０２．１ＡＸ−２００８に組み込まれているリンクアグリゲーション制御プロトコル（ＬＡＣＰ）、および２）ＩＥＥＥ  Ｓｔｄ．８０２．１Ｑ、Ｖｉｒｔｕａｌ  Ｂｒｉｄｇｅｄ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ、２００３版。
【００１６】
ＬＡＣＰは、２つのピアノード間のリンクアグリゲーショングループ（ＬＡＧ）と呼ばれるいくつかの物理リンクのバンドリングを制御して、それらの間の単一の論理チャネルを形成する方法を提供する。ピアノードは、ＬＡＣＰパケットを交換することによって物理リンクのＬＡＧへのバンドリングをネゴジエートし、あるいはＬＡＧを手動で構成することができる。リンクアグリゲーションは、任意の単一のポートまたはリンクが単独で配信することができるよりも多くのデータを転送するための費用のかからない方法を提供する。一実施形態では、ＬＡＧのポートは、すべての銅ポート（ＣＡＴ−５Ｅ／ＣＡＴ−６）、すべてのマルチモードファイバポート（ＳＸ）、すべての単一モードファイバポート（ＬＸ）などの同一の物理タイプを含む。別の実施形態では、ＬＡＧのポートは異なる物理タイプを有することができる。
【００１７】
耐性の向上を実現し、単一障害点を除去するために、図１からわかるようにＬＡＧが２つのデバイスにわたって分割され、本明細書では、マルチシャーシリンクアグリゲーショングループ（ＭＣ−ＬＡＧ）１０２と呼ばれる。例えば、図１では、ＭＣ−ＬＡＧ１０２ａがエッジノード１０４から生じ、２つのサブセットに分割され、各サブセット内のＭＣ−ＬＡＧ１０２ａの１つまたは複数の物理リンクで、２つのアグリゲーションスイッチ１０６ａおよび１０６ｂに接続される。一実施形態では、エッジノード１０４は、ロードバランシング技法を使用して、ＭＣ−ＬＡＧ１０２ａのすべての利用可能なリンクにわたってトラフィックを分散させることができる。ＭＣ−ＬＡＧ１０２ａを介して送信される各パケットについて、（通常はソースおよび宛先インターネットプロトコル（ＩＰ）または媒体アクセス制御（ＭＡＣ）アドレス情報に対して作用するハッシュ関数を使用する）ロードバランシングアルゴリズムに基づいて物理リンクのうちの１つが選択される。ＭＣ−ＬＡＧ１０２の物理リンクにわたるロードバランシングの結果、より効率的に帯域幅が使用される。
【００１８】
図１からわかるように、エッジノード１０４が、アクセスネットワーク１２２を介して、ＬＡＮ内で動作中の、ブリッジ、スイッチ、ルータなどの企業ネットワークデバイス１１０に接続され、および／またはＤＳＬモデム、セットトップボックス、光回線端末などのホームネットワークデバイス１１２にエッジノード１０４を接続することもできる。エッジノード１０４はスイッチまたはサーバであり、一実施形態では、機能的にデジタル加入者線アクセスマルチプレクサ（ＤＳＬＡＭ）、ケーブルモデム終端システム（ＣＭＴＳ）、光回線端末（ＯＬＴ）などを含むことができるが、他のタイプのデバイスも含むことができる。
【００１９】
一実施形態では、アグリゲーションスイッチ１０６が仮想ファブリックリンク（ＶＦＬ）１２４と結合される。ＶＦＬ１２４は、トラフィック転送、ＭＡＣアドレッシング、マルチキャストフロー、アドレス解決プロトコル（ＡＲＰ）テーブル、レイヤ２制御プロトコル（例えば、スパニングツリー、イーサネットリング保護、論理リンク検出プロトコル）、ルーティングプロトコル（例えば、ＲＩＰ、ＯＳＰＦ、ＢＧＰ）、およびＭＣ−ＬＡＧ１０２ａのステータスに関する、アグリゲーションスイッチ間の情報の交換のための接続を提供する。アグリゲーションスイッチ１０６は、エッジノード１０４に対して透過的に動作し、エッジノード１０４によって単一の論理デバイスとして扱われる。エッジノード１０４は、ＭＣ−ＬＡＧ１０２ａ上でトラフィックをアクティブに転送することができ、一方、アグリゲーションスイッチ１０６間のＭＡＣアドレステーブルおよび他の転送情報の同期が、一実施形態では、低減された量の制御メッセージングと共に、ＶＦＬを介してＬ２パケットフローによって駆動される。この機能により、アグリゲーションスイッチ１０６の対に対するエッジノード１０４のデュアルホーミングが可能となり、レイヤ２マルチパスイントラ構造ならびに基本レイヤ３アクセスインフラ構造が提供される。さらに、一実施形態では、ＭＣ−ＶＦＡ機能は、エッジノード１０４とアグリゲーションスイッチ１０６との間のレイヤ２冗長プロトコル（例えばスパニングツリー）を必要とすることなくこの機能を実現すると共に、エッジアップリンク障害ならびにアグリゲーション／コアスイッチ障害に対するキャリアグレード検出および収束時間を依然として可能にする。特にデータセンタに関する、多くの最近のネットワーク設計は、エッジノードとアグリゲーションスイッチとの間のますます多くのレイヤ２隣接数を必要としている。この傾向は、ループ検出機能や収束時間など、スパニングツリープロトコルの限界を圧迫しつつある。スパニングツリー収束時間は、多くの現在のネットワークトポロジでは、最大数秒である可能性がある。一実施形態でのマルチシャーシアーキテクチャは、好ましくはループ防止のためのスパニングツリープロトコル操作を実行することを必要としないのと同時に、（例えば、仮想ファブリックリンクを介し、ならびにアップストリーム／コアスイッチにデバイスを接続するリンクを介するアグリゲーションスイッチ間の）一実施形態でのネットワークトポロジの部分の一部でのマルチシャーシ機能と共に依然としてスパニングツリープロトコル操作を可能とするのに十分な柔軟性で、エッジノード１０４とアグリゲーションスイッチ１０６との間のデュアルホームのレイヤ２マルチパス接続を実現する。
【００２０】
ある実施形態での機能は、アクセスアップリンク障害、仮想ファブリックリンク障害、およびノード障害に対する高速フェイルオーバ検出および収束時間も容易にする。一実施形態でのＭＣ−ＶＦＡアーキテクチャの別の利点は、エッジノード１０４のアクティブ／アクティブ転送モードであり、それによって動作ＭＣ−ＬＡＧアップリンクの両方のセットが、ＭＣ−ＬＡＧリンクの帯域幅の使用の効率を向上させるようにトラフィックを処理している。
【００２１】
図１からわかるように、一実施形態では、アグリゲーションスイッチ１０６は、本明細書に記載の（Ｍ−ＶＦＡアーキテクチャの一部として）ＭＣ−ＬＡＧ機能を使用して、ネットワークスイッチおよび／またはルータなどの１つまたは複数のネットワークノード１１６を含むメトロまたはコアネットワーク１２０にも接続される。例えば、アグリゲートスイッチ１０６ｂは、ＭＣ−ＬＡＧ１０２ｂを介してネットワークノード１１６ｂおよび１１６ｃに接続され、ネットワークノード１１６ｂおよび１１６ｃも、ＶＦＬを介して状態情報を交換する。ＭＣ−ＬＡＧ１０２ｂアーキテクチャは、アグリゲーションスイッチ１０６ｂとネットワークノード１１６ｂおよび１１６ｃとの間のデュアルホームのレイヤ２マルチパス接続を提供する。一実施形態では、ＭＣ−ＬＡＧ１０２ｃおよびＶＦＬ１２４からわかるように、ＭＣ−ＬＡＧ機能を使用してネットワークノード１１６を接続することもできる。ＬＡＧ１１８や他のトランクまたはリンクなどの標準ＬＡＧを使用して、ネットワークノード１１６にアグリゲーションスイッチ１０６を接続することもできる。
【００２２】
次に、図２に関してＭＣ−ＶＦＡアーキテクチャがより詳細に説明される。エッジノード１０４ａが、第１のＭＣ−ＬＡＧ１  １０２ａによってアグリゲーションスイッチ１０６ａおよび１０６ｂに接続され、一方エッジノード１０４ｂが、第２のＭＣ−ＬＡＧ２  １０２ｂによってアグリゲーションスイッチ１０４ａおよび１０４ｂに接続される。各ＭＣ−ＬＡＧ１０２ａおよび１０２ｂは、少なくとも２つのサブセットに分割される複数の物理リンクを含み、２つのサブセットのそれぞれは少なくとも１つの物理リンクを含む。図２からわかるように、ＭＣ−ＬＡＧ１０２ａ物理リンクの第１のセットが第１のアグリゲーションスイッチ１０６ａで終端され、ＭＣ−ＬＡＧ１０２ａ物理リンクの第２のセットが第２のアグリゲーションスイッチ１０６ｂで終端される。ＭＣ−ＬＡＧ１は論理デュアルホームのレイヤ２マルチパスを形成する。ＭＣ−ＬＡＧメンバポートは、ＭＣ−ＬＡＧ１０２のメンバである外部のユーザポートである。ＶＦＬ１２４は、一実施形態では耐性のために複数のネットワークインターフェースモジュールにわたるポートのアグリゲートであり、インターシャーシトラフィックおよび制御／状態データ転送を実現する。マルチシャーシシステム１４０は、アグリゲーションスイッチ１０６、仮想ファブリックリンク１２４、ＭＣ−ＬＡＧ１０２ａ、ＭＣ−ＬＡＧ１０２ｂ、およびダウンストリームエッジデバイスに接続されたそれぞれのＭＣ−ＬＡＧメンバポートを含む。アグリゲーションスイッチ１０６ａおよび１０６ｂは別々のスイッチであり、それぞれがスタンドアロンスイッチとして動作可能であり、それぞれがそれ自体の別々の物理的シャーシによって包まれる。アグリゲートスイッチ１０６ａおよび１０６ｂは、電話局内やデータセンタ内などの同一の地理的エリア内でよく、またはジオダイバーシティを与えるために、異なる建物または都市などの別々の地理的位置でよい。
【００２３】
アグリゲーションスイッチに接続されたＭＣ−ＬＡＧクライアントとして動作するエッジノード１０４は、リンクの選択が所与のフローについて固定のままとなる限り、そのアグリゲート内のリンクにトラフィックを割り当てるための様々な方法を使用することができる。これにより、通信エンドステーションの任意の対の間でトラフィックが順に配信されることが保証される。一実施形態では、好ましくは、エッジデバイスからＭＣ−ＬＡＧアグリゲーションスイッチのうちのそれぞれまでの同数のアップリンクポートを構成すべきである。言い換えれば、エッジスイッチとＭＣ−ＬＡＧアグリゲーションスイッチのうちの１つとの間で２つのアップリンクが構成される場合、エッジスイッチと他のマルチシャーシスイッチとの間の２つのアップリンクも構成すべきである。必須ではないが、この構成は、マルチシャーシスイッチとエッジデバイスとの間のフローについてより均質なトラフィック分布を与える。
【００２４】
次に、図３に関してアグリゲーションスイッチ１０６間の仮想ファブリックリンク（ＶＦＬ）１２４がより詳細に説明される。一実施形態でのアグリゲーションスイッチ１０６はそれぞれ、少なくとも１つのＣＭＭモジュール１５０ａ（１次）および好ましくは第２のＣＭＭモジュール１５０ｂ（バックアップ）、ならびにラインカードやポートモジュールなどの複数のネットワークインターフェースモジュール（ＮＩＭ）１５２を含む。ＶＦＬ１２４は、第１および第２のアグリゲーションスイッチ１０６内の１つまたは複数のＮＩＭ１５２に接続されたＶＦＬメンバポートのアグリゲートである。例えば、ＶＦＬ１２４は、アグリゲーションスイッチ１０６ａのＮＩＭ１５２ａとアグリゲーションスイッチ１０６ｂのＮＩＭ１５２ｂとの間の物理リンクの第１のサブセットＡと、アグリゲーションスイッチ１０６ａおよび１０６ｂのＮＩＭ１５２ｎ間の物理リンクの第２のサブセットＢとを含む。一実施形態では、ＶＦＬリンクは、アグリゲーションスイッチ１０６のＮＩＭ１５２内にあるスイッチングＡＳＩＣ２１０間に接続される。ＮＩＭ１５２はそれぞれ、以下でさらに説明されるキューイングＡＳＩＣ２１２をも含む。スイッチングファブリック集積回路（ＩＣ）２１４は、アグリゲーションスイッチ１０６内の様々なＮＩＭ１５２間の相互接続を与える。
【００２５】
マルチシャーシシステム内の各アグリゲーションスイッチ１０６に、固有シャーシ識別子が割り当てられる。各アグリゲーションスイッチ１０６についてのシャーシＩＤは固有かつグローバルであり、例えば、各アグリゲーションスイッチは、そのピアアグリゲーションスイッチのシャーシＩＤを認識している。各アグリゲーションスイッチ内のＩＣ、ＮＩＭ、ＣＭＭなどの様々な構成要素についての固有ハードウェアデバイス識別子（ＭＩＤ）も生成され、ローカルおよびリモートオブジェクトの管理が可能となる。一実施形態では、スイッチングＡＳＩＣ２１０についてのハードウェアデバイス識別子は、マルチシャーシシステム内のグローバル有意性を有し、一方、キューイングＡＳＩＣ２１２などの他の構成要素についてのＭＩＤは、ローカル有意性のみを有することがある。例えば、スイッチングＡＳＩＣ２１０に割り当てられたハードウェアデバイス識別子は、両方のアグリゲーションスイッチ１０６によって知られており、他のデバイスについてのハードウェアデバイス識別子は、ローカルアグリゲーションスイッチに制限され、リモートアグリゲーションスイッチに対して有意性を持たない。
【００２６】
一実施形態では、スイッチングＡＳＩＣ２１０に、そのアグリゲーションスイッチに割り当てられる範囲内の以下のようなグローバル固有ハードウェアデバイス識別子（ＭＩＤ）が割り当てられる：
アグリゲーションスイッチ１０６ａ：シャーシＩＤ＝１およびＭＩＤ値０−３１
アグリゲーションスイッチ１０６ｂ：シャーシＩＤ＝１およびＭＩＤ値３２−６３
スイッチングＡＳＩＣ２１０に割り当てられる例示的ＭＩＤが図３に示される。割り当てられる範囲を知っていることにより、モジュールは、ＭＩＤからスイッチングＡＳＩＣの位置をアグリゲーションスイッチ１０６ａまたはアグリゲーションスイッチ１０６ｂ内と求めることができる。
【００２７】
一実施形態では、スイッチングＡＳＩＣ２１０は、プリペンデッドヘッダモードで動作して、アグリゲーションスイッチ１０６間でデータおよび制御パケットを交換する。図４に、ネットワークインターフェースモジュール（ＮＩＭ）１５２の一実施形態の概略ブロック図をより詳細に示す。スイッチングＡＳＩＣ２１０は、エッジノード１０４ａおよび１０４ｂなどの外部ノードに接続される複数の外部ポートインターフェース２４０を含む。外部ポートインターフェース２４０のうちの１つまたは複数は、ＭＣ−ＬＡＧ物理リンク、ＬＡＧまたは他のトランクグループ、固定リンクなどに関するメンバポートを含むことができる。外部ポート２４０は、銅ポート（ＣＡＴ−５Ｅ／ＣＡＴ−６）、マルチモードファイバポート（ＳＸ）、単一モードファイバポート（ＬＸ）などの同一の物理インターフェースタイプを有することができる。別の実施形態では、外部ポート２４０は、１つまたは複数の異なる物理インターフェースタイプを有することができる。
【００２８】
外部ポート２４０に、外部ポートインターフェース識別子（ポートＩＤ）、例えばスイッチングＡＳＩＣ２１０に関連付けられるｇｐｏｒｔ値やｄｐｏｒｔ値などのデバイスポート値が割り当てられる。一実施形態では、スイッチングＡＳＩＣ２１０のＭＩＤ、およびスイッチングＡＳＩＣ２１０上の外部ポート２４０に関する外部ポートインターフェース識別子が使用され、マルチシャーシシステム内のローカルまたはリモートアグリゲーションスイッチ上のスイッチングＡＳＩＣ２１０の物理外部ポートインターフェース２４０が一意に識別される。別の実施形態では、変換モジュールまたは他のエンティティを含むポートマンガが、スイッチングＡＳＩＣ２１０のＭＩＤおよび外部ポート識別子を単一の整数値に変換し、グローバルポート値（ＧＰＶ）を生成することができ、例えばＭＩＤ４、デバイスポート識別子（ｄｐｏｒｔ）５がＧＰＶ２０に変換される。どちらの例では、ローカルアグリゲーションスイッチとリモートアグリゲーションスイッチの両方の中のＮＩＭ１５２の外部ポートについての固有外部ポート識別子が生成される。スイッチングＡＳＩＣ２１０からＮＩＭ１５２上の処理モジュールへの内部ポートなどのスイッチングＡＳＩＣ２１０の内部ポートに固有ポート識別子を割り当てることもできる。こうした内部ポートはまた、スイッチングＡＳＩＣのポート識別子およびＭＩＤによって一意に識別される。
【００２９】
スイッチングＡＳＩＣ２１０は、着信パケットの宛先アドレスを求めるパケット管理ユニット（ＰＭＵ）２４２をさらに含む。パケットをスイッチングＡＳＩＣ２１０の別の外部ポートインターフェース２４０、ローカルまたはリモートアグリゲートスイッチ上の別のＮＩＭ１５２への送信のためのキューイングＡＳＩＣ２１２、またはスイッチングＡＳＩＣ２１０の外部または内部のＮＩＭ１５２の処理モジュール２６６への送信のためのプロセッサインターフェース（ＰＩ）２４４に切り換えることができる。
【００３０】
パケットがローカルまたはリモートアグリゲーションスイッチ上の別のＮＩＭ１５２に送信されるべきであるとき、一実施形態では、スイッチングＡＳＩＣ２１０がプリペンデッドパケットヘッダインターフェース（ＰＰＨＩ）にパケットを転送し、ＰＰＨＩは、ハードウェアデバイス情報（ＨＤＩ）を含むようにパケットヘッダを追加あるいは修正する。ＨＤＩは、パケットのソースおよび／または宛先に関連付けられるハードウェアデバイスの識別子を含む。一実施形態では、プリペンデッドヘッダは、パケット優先順位やロードバランス識別子などの他の情報を含むことができる。宛先ＨＤＩ情報を得るために、ＰＰＨＩは、ＭＡＣ／ＨＤＩ転送テーブル２５０に対するルックアップ処理を実施する。アドレステーブルメモリ２４８に格納されるＭＡＣ／ＨＤＩ転送テーブル２５０は、アグリゲーションスイッチ１０６に接続された外部デバイス、ノード、モジュール、ソフトウェア、またはハードウェアについてのＭＡＣアドレスなどのＭＡＣアドレスエントリのリストを含む。ＭＡＣアドレスエントリは、関連するＭＡＣアドレスを有するデバイスに到達するようにパケットをブリッジングまたはルーティングする際に使用される、関連するハードウェアデバイス情報を含む。宛先ハードウェアデバイス情報は、例えば、宛先ＭＡＣアドレスに関連するローカルまたはピアアグリゲーションスイッチのポート識別子およびスイッチングＡＳＩＣ２１０のＭＩＤ（例えばＭＩＤ＝２４、ポートＩＤ＝５、またはＭＩＤ＝５４、デバイスポート＝１２）を含む。別の実施形態では、宛先ハードウェアデバイス情報は、宛先ＭＡＣアドレスに関連する外部ポートインターフェースのグローバルポート値（ＧＰＶ）を含むことができる。ＭＡＣ／ＨＤＩ転送テーブル２５０は、ソーストランクマップ、トランクビットマップテーブル、トランクグループテーブル、ＶＬＡＮマッピングテーブルなどの１つまたは複数のテーブルを含むことができる。一実施形態では、ＭＡＣ／ＨＤＩ転送テーブル２５０またはその一部をＮＩＭ１５２のキューイングＡＳＩＣ内に配置することもできる。
【００３１】
一実施形態では、スイッチングＡＳＩＣ２１０が、リモートアグリゲーションスイッチに対するリンクを有するアクティブＶＦＬメンバポート２５２を含むとき、ＭＡＣ／ＨＤＩ転送テーブル２５０は、ｇｐｏｒｔ値をスイッチングＡＳＩＣ  ＭＩＤ値およびデバイスポート値に関連付けるテーブル、および／または外部ポートインターフェースにマッピングされる論理アグリゲートグループ識別子を有するテーブルなどの追加のＨＤＩ情報を含むことができる。
【００３２】
一実施形態では、プリペンデッドヘッダは、スイッチングＡＳＩＣのハードウェアデバイス識別子ＭＩＤおよびソースポートのデバイスポート識別子を含む、外部または内部ポートインターフェースなどのソースポートに関連するハードウェアデバイス情報ＨＤＩを含む。
【００３３】
別の実施形態では、プリペンデッドヘッダは、ＶＦＬポート１２４に接続されたスイッチングＡＳＩＣ２１０に関連するＨＤＩを含む（図３のアグリゲーションスイッチ１０６ａについてのＭＩＤ＝０またはＭＩＤ＝３１など）。次いで、ＶＦＬポートに接続されたスイッチングＡＳＩＣ２１０は、ＶＦＬを介してパケットを送信する前に、プリペンデッドヘッダ内のＨＤＩを変換する。
【００３４】
一実施形態では、ＰＰＨＩ２４６はまた、例えばパケットを最初に受信した外部ポートインターフェース２４０などの、ソースポートに関連するソースハードウェアデバイス情報を付加する。ソースハードウェアデバイス情報は、スイッチングＡＳＩＣ２１０のＭＩＤおよび外部ポートインターフェース２４０のポート識別子（例えば、デバイスポート）および／またはグローバルポート値（ＧＰＶ）を含むことができる。一実施形態では、宛先ハードウェアデバイス識別子またはＭＩＤ、宛先デバイスポート、ＶＬＡＮ  ＩＤ、パケットタイプ（マルチキャスト、ユニキャスト、ブロードキャスト）、パケット優先順位、ロードバランス識別子などの追加の情報もプリペンデッドヘッダに追加される。一実施形態では、宛先ＨＤＩが、ＭＡＣ／ＨＤＩ転送テーブル２５０などのアドレステーブル２４８から取り出される。
【００３５】
次いで、プリペンデッドヘッダを有するパケットが、ファブリックＩＣ２１４を介してルーティングするためにキューイングＡＳＩＣ２１２に送信される。キューイングＡＳＩＣ２１２は、パケットバッファ２６０、トラフィックおよびバッファ管理を実現するキュー管理２６２、ならびにグローバルＨＤＩアドレステーブル２６４を含む。グローバルＨＤＩアドレステーブル２６４は、宛先ＨＤＩを、他のＮＩＭ１５２のうちの１つまたは複数の中のキューイングＡＳＩＣ２１２内の適切なキューにマッピングする。例えば、マッピングにより、プリペンデッドヘッダ内のハードウェアデバイス情報に基づいて、アグリゲーションスイッチ１０６内の他のキューイング／スイッチングＡＳＩＣ内の外部ポートインターフェースのうちの１つまたは複数に関する適切な出口キューにパケットを切り換えるための情報が得られる。別の例では、宛先ＨＤＩがリモートアグリゲーションスイッチ上の宛先を示す（すなわち、宛先デバイス識別子がリモート／ピアスイッチ範囲に属する）とき、キューイングＡＳＩＣ２１２は、ＶＦＬ１２４を介するリモートアグリゲーションスイッチへの送信のために、ローカルアグリゲーションスイッチ１０６内のＶＦＬポートインターフェースのうちの１つまたは複数に関する適切な出口キューにパケットを切り換え、例えば、グローバルＨＤＩアドレステーブル２６４は、関連するハードウェアデバイスがリモートアグリゲーションスイッチ上に位置することを示す。このシナリオでは、特定のＶＦＬポートインターフェースに対応する出口キューの決定が、プリペンデッドヘッダ内に存在し、スイッチングＡＳＩＣ２１０によってあらかじめ挿入されたロードバランス識別子に基づいて行われる。
【００３６】
スイッチングＡＳＩＣ２１０およびキューイングＡＳＩＣ２１２が別々の集積回路またはモジュールとして示されるが、ＡＳＩＣの１つまたは複数の機能または構成要素を他のＡＳＩＣ上に含めることができ、または代替ＡＳＩＣとして組み合わせることができ、あるいは１つまたは複数の集積回路で実装することができる。
【００３７】
図５に、アグリゲーションスイッチ１０６ａを通るＶＦＬ１２４へのパケットフローの一実施形態の概略ブロック図を示す。この例では、企業デバイス１１０やホームネットワークデバイス１１２などのソースＭＡＣアドレスを有するデバイス３００が、アグリゲーションスイッチ１０６ａに、例えばエッジノード１０４を通じて、リモートアグリゲーションスイッチ１０６ｂの外部ポートインターフェースを介してアクセスすることのできるデバイスの宛先ＭＡＣアドレスと共にパケットを送信する。例えば図５のＮＩＭ１５２ｎ内のＭＩＤ＝３１を有するスイッチングＡＳＩＣ２１０ｎは、例えばポートＩＤ＝２を有する外部ポートインターフェース２４０上でパケットを受信する。スイッチングＡＳＩＣ２１０ｎは、宛先ＭＡＣアドレスを抽出し、アドレステーブルルックアップを実施して、ＭＡＣ／ＨＤＩ転送テーブル２５０から宛先ＭＡＣアドレスに関連するハードウェアデバイス情報（ＨＤＩ）を求める。宛先ＨＤＩは、例えば、ＮＩＭ１５２、キューイングＡＳＩＣ２１２、スイッチングＡＳＩＣ２１０、外部ポート識別子２４０、ＶＦＬ１２４のメンバポート、ローカルアグリゲーションスイッチ１０６ａまたはリモートアグリゲーションスイッチ１０６ｂのメンバポートなどの、ＭＡＣアドレスを有する宛先デバイスへの経路内の１つまたは複数のハードウェア構成要素のデバイスモジュール識別子（ＭＩＤ）を含むことができる。一実施形態では、宛先ＨＤＩは、スイッチングＡＳＩＣ２１０のＭＩＤ、および宛先デバイスへのアクセスを与える外部ポートインターフェース２４０のポート識別子（例えば、デバイスポート）を含むことができる。さらに、一実施形態では、プリペンデッドヘッダは、元のパケットから取り出されたパラメータ（ソースＭＡＣアドレス、宛先ＭＡＣアドレス、ソースＩＰアドレス、宛先ＩＰアドレス）に基づいて求められたパケット優先順位およびロードバランス識別子を含む。別の例では、ＨＤＩは、外部ポートインターフェース２４０に関するグローバルポート値（ＧＰＶ）、または宛先デバイスへのアクセスを与えるＮＩＭ１５２のＭＩＤを含む。別の実施形態では、宛先ＭＡＣアドレスがリモートアグリゲーションスイッチに関連付けられるとき、ＨＤＩは、ＶＦＬ１２４に接続されたＮＩＭ１５２ａまたはスイッチングＡＳＩＣ２１０（ＭＩＤ＝０など）に関するハードウェアデバイス識別子ＭＩＤを含むことができる。宛先ＨＤＩは、元のパケットヘッダに情報（レイヤ２、イーサネットパケットヘッダタイプなど）を追加するプリペンデッドヘッダに追加される。スイッチングＡＳＩＣ２１０ｎはまた、発信外部ポートインターフェース、例えばポートＩＤ＝２に関連する１つまたは複数のデバイスに関するソースハードウェアデバイス情報（ＨＤＩ）を含む。ソースＨＤＩは、発信スイッチングＡＳＩＣ２１０のＭＩＤ、ソースポート識別子（例えばデバイスポート）、グローバルポート値、ソースＮＩＭ１５２に関するＭＩＤ、シャーシＩＤなどの１つまたは複数のハードウェアデバイス識別子を含むことができる。
【００３８】
プリペンデッドヘッダを有するパケットがキューイングＡＳＩＣ２１２ｎに送信され、次いでキューイングＡＳＩＣ２１２ｎは、宛先ＨＤＩに基づいてパケットを送信するローカルアグリゲーションスイッチ上のＮＩＭ１５２を求める。宛先ＨＤＩが（例えば、プリペンデッドヘッダに含まれる宛先ＭＩＤに基づいて）アグリゲーションスイッチ１０６ａ上のローカル外部ポートインターフェースを示すとき、キューイングＡＳＩＣ２１２ｎは、ローカル外部ポートインターフェースの対応するＮＩＭ１５２への送信のために出口キュー内にパケットを配置する。図５に示される別の例では、キューイングＡＳＩＣ２１２ｎは、宛先ＨＤＩがリモートアグリゲーションスイッチ上の宛先ハードウェアデバイスを示す、例えばＨＤＩがリモートアグリゲーションスイッチ上のＭＩＤ＝４５を有するスイッチングＡＳＩＣを示すと判定する。リモートアグリゲーションスイッチに到達するために、ＶＦＬ１２４を介してパケットを送信する必要がある。したがって、キューイングＡＳＩＣ２１２ｎは、ファブリックＩＣ２１４を介してキューからＶＦＬ１２４に接続されたＮＩＭ１５２ａに、プリペンデッドヘッダを有するパケットを送信する。ＶＦＬメンバポートの選択は、プリペンデッドヘッダ上で搬送されるロードバランス識別子パラメータに基づいて行われる。ＮＩＭ１５２ａ上のキューイングＡＳＩＣ２１２ａは、プリペンデッドヘッダを有するパケットを受信し、ＶＦＬ１２４を介する送信のためにパケットを待ち行列に入れる。次いで、スイッチングＡＳＩＣ２１０ａは、ＶＦＬ１２４を介してリモートアグリゲーションスイッチに、ソースおよび／または宛先ＨＤＩを含むプリペンデッドヘッダを有するパケットを送信する。
【００３９】
一実施形態では、スイッチングＡＳＩＣ２１０ａは、ＶＦＬ１２４を介する送信の前にプリペンデッドヘッダを変更することができる。例えば、スイッチングＡＳＣＩ２１０ａは、ローカル有意性を有する宛先ＨＤＩ（例えば、ｇｐｏｒｔ値またはローカルハードウェアデバイス識別子ＭＩＤ）を、グローバル有意性を有するＨＤＩに変換することができる。次いで、スイッチングＡＳＩＣ２１０ａは、ＶＦＬ１２４を介してリモートアグリゲーションスイッチに、ソースおよび／または宛先ＨＤＩを含むプリペンデッドヘッダを有するパケットを送信する。
【００４０】
一実施形態では、アグリゲーションスイッチ１０６の複数のスイッチングＡＳＩＣ２１０、例えば図３でスイッチングＡＳＩＣ  ＭＩＤ＝０およびＭＩＤ＝３１がＶＦＬ１２４に接続されるとき、ＶＦＬ１２４を介して送信すべきトラフィックを分散させることができる。例えば、キューイングＡＳＩＣ２１２のグローバルＨＤＩアドレステーブル２６４内のロードバランス識別子マップテーブルは、以下の分布を示す：
【００４１】
【表１】
2013535922.tif 000003
【００４２】
キューイングＡＳＩＣ２１２は、ロードバランス識別子または他のロードバランシング技法を使用して、適切なＶＦＬポートインターフェースにパケットをマッピングする。例えば、各アグリゲーションスイッチ上に８つのＮＩＭ１５２を有する一実施形態では、各キューイングＡＳＩＣ２１２ｎは、ローカルアグリゲーションスイッチ内の各ＮＩＭ（モジュールＩＤ、ポート）に対して構成された８つのキューのセットを有する。一実施形態では、ＶＦＬ１２４を有するスイッチングＡＳＩＣ２１０に接続されたキューイングＡＳＩＣ２１２は、各ＶＦＬメンバポートインターフェースに関係する別々の８つのキューのセットを有する。こうしたキューのそれぞれが、マルチシャーシスイッチを接続する内部ＶＦＬポートに関連するＦＩＦＯに割り当てられる。一実施形態では、複数の仮想ファブリックリンクメンバポートと共に、リモートシャーシ上の宛先ポートが仮想ファブリックリンクメンバポートをホストするキューイングＡＳＩＣ２１２ａおよび２１２ｎの間で等しく分散するようにキューが割り当てられる。
【００４３】
一実施形態では、レイヤ２パケットがシステムを流れることに応答して、ＮＩＭ１５２内のＭＡＣ／ＨＤＩ転送テーブルがポピュレートされ、次いで更新される。プリペンデッドヘッダがソースＭＡＣアドレスおよびソースＨＤＩ情報を含むので、ＮＩＭ１５２、例えば、一実施形態では具体的にはスイッチングＡＳＩＣ２１０は、この情報をＭＡＣ／ＨＤＩ転送テーブル２５０にポピュレートすることができる。ＶＦＬ１２４を介してソースＭＡＣアドレスおよびソースＨＤＩを有するレイヤ２パケットを交換するようにプリペンデッドヘッダモードで動作することにより、スイッチングＡＳＩＣ２１０は、アグリゲーションスイッチ１０６間でＭＡＣアドレステーブルを同期することができる。ＭＡＣ／ＨＤＩ転送テーブルがスイッチングＡＳＩＣ２１０内で説明されるが、代替または追加として、ＭＡＣ／ＨＤＩ転送テーブルをキューイングＡＳＩＣ２１２ｎまたはＮＩＭ１５２の他のモジュール内に含めることができる。別の実施形態では、ＣＭＭ１５０（１次および２次）も、アグリゲーションスイッチ１０６間の１つまたは複数のタイプのリンクに関するＭＡＣ／ＨＤＩ転送テーブルを含むことができる。
【００４４】
図６に、ソースＭＡＣ学習を示すマルチシャーシシステムの一実施形態の概略ブロック図を示す。エッジノード１０４が、論理アグリゲートグループＬＡＧ１  ２８２、マルチシャーシ論理アグリゲートグループＭＣ−ＬＡＧ１  １０２ａ、マルチシャーシ論理アグリゲートグループＭＣ−ＬＡＧ２  １０２ｂ、および固定ポートリンク２８０を介して、アグリゲーションスイッチ１０６ａおよび１０６ｂに接続される。一実施形態では、各アグリゲーションスイッチは、ＬＡＧ１および他のタイプのトランクグループ、それに関連するハードウェアデバイス情報などの論理アグリゲートグループに関する構成情報を他のアグリゲーションスイッチに通信する。一実施形態では、ハードウェアデバイス情報は、論理アグリゲートグループに関連する物理ポート、例えばスイッチングＡＳＩＣのハードウェアデバイスまたはモジュール識別子（ＭＩＤ）、および論理アグリゲートグループに関連するリンクに関する外部ポート識別子（デバイスポート値またはｇｐｏｒｔ値を含む。
【００４５】
例えば、一実施形態では、アグリゲーションスイッチＡが、アグリゲートグループ識別子ＬＡＧ１を有する論理アグリゲートグループがハードウェアデバイスモジュール識別子ＭＩＤ＝３１と識別子デバイスポート＝１、２を有する外部ポートインターフェースとを有するスイッチングＡＳＩＣに関連することを、アグリゲーションスイッチＢに通知する。アグリゲーションスイッチＢは、アグリゲートグループ識別子ＭＣ−ＬＡＧ１を有する論理アグリゲートグループがハードウェアデバイスモジュール識別子ＭＩＤ＝４５および外部ポートインターフェース識別子デバイスポート＝１、２を有するスイッチングＡＳＩＣに関連することをアグリゲーションスイッチＡに通知する。スイッチングＡＳＩＣのＭＩＤおよびデバイスポート値の代替または追加として、論理アグリゲートグループに関連する、ＮＩＭ、キューイングＡＳＩＣの識別子などの他のハードウェアデバイス情報を交換することができる。アグリゲーションスイッチ１０６はまた、通常のアグリゲートおよびマルチシャーシアグリゲートグループの両方に関する論理アグリゲートグループの構成情報に対する更新の通知を与える。アグリゲーションスイッチのいずれかの論理アグリゲートグループおよびマルチシャーシアグリゲートに関連するハードウェアデバイス情報が、両方のアグリゲーションスイッチ上のＮＩＭ１５２内のＭＡＣ／ＨＤＩ転送テーブルのうちの１つまたは複数に含まれる。例えば、一実施形態では、両方のアグリゲーションスイッチ１０６内のＭＡＣ／ＨＤＩ転送テーブルのうちの１つまたは複数は、以下の情報を含む：
【００４６】
【表２】
2013535922.tif 000004
【００４７】
論理アグリゲートグループ（例えばＬＡＧ１）について同一のアグリゲートグループ識別子が両方のアグリゲーションスイッチ１０６によって知られており、使用されているので、一実施形態では、マルチシャーシシステムは、アグリゲートグループ識別子のサブセットを、それぞれのタイプの論理グループに、各アグリゲーションスイッチ１０６について割り当てる。例えば、最大１２８個の可能なアグリゲートグループを有する一実施形態では、アグリゲートグループ識別子の割当ては以下を含む：
【００４８】
【表３】
2013535922.tif 000005
アグリゲーションスイッチ１０６は、割り当てられた範囲およびタイプのアグリゲートグループに基づいてアグリゲートグループ識別子を割り当てる。したがって、アグリゲーションスイッチでのパケット転送が、ＭＡＣ／ＨＤＩ転送テーブルにアクセスし、論理アグリゲートグループとハードウェアデバイス情報との間のマッピングを使用して実施される。通常、アグリゲート識別子情報はプリペンデッドヘッダで転送されない。
【００４９】
一実施形態では、ＬＡＧまたはＭＣ−ＬＡＧを介するロードバランシングを可能にするために、アグリゲーションスイッチ１０６が（ＭＩＤ、ポートＩＤ）などの宛先ＨＤＩ情報と共にＶＦＬ１２４を介してパケットを受信したとき、アグリゲーションスイッチ１０６は、それぞれのＬＡＧまたはＭＣ−ＬＡＧアグリゲートグループのアクティブメンバであるすべてのポートのリストを含むその内部トランクテーブルのうちの１つまたは複数の中のソースＨＤＩ（宛先ＭＩＤ、宛先ポート識別子）で識別されるポートを探索することにより、宛先ＨＤＩが論理アグリゲートグループに含まれるかどうかを判定する。宛先ポートが関連するＬＡＧまたはＭＣ−ＬＡＧで見つかったとき、アグリゲーションスイッチ１０６は、関連するＬＡＧの１つまたは複数の異なる外部ポートインターフェースにパケットを割り当てることにより、ロードバランシング技法を実施することができる。例えば、リモートアグリゲーションスイッチ１０６ｂ内のＶＦＬに接続されたスイッチングＡＳＩＣ２１０が宛先ＨＤＩ  ＭＩＤ＝４５、ポート２を有するパケットを受信したとき、スイッチングＡＳＩＣ２１０は、以下のそのＭＡＣ／ＨＤＩテーブルから、図６の例に示されるようにＭＩＤ＝４５、ポート２はＭＣ−ＬＡＧ１の一部であると判定する。次いで、スイッチングＡＳＩＣは、ロードバランシングを実施することを決定し、１つまたは複数のハッシュアルゴリズムを通じて、その代わりにＭＣ−ＬＡＧ１のＭＩＤ＝４５、ポート１を介してパケットを送信することを決定することができる。この特定の例では、次いでスイッチングＡＳＩＣは、外部ポート（ＭＩＤ＝４５、ポート１）からパケットを送信する前にプリペンデッドヘッダを取り除く。
【００５０】
【表４】
2013535922.tif 000006
【００５１】
図６に戻ると、したがって、方法および実装の様々な実施形態が、マルチシャーシシステムでソースＭＡＣアドレスおよび関連するハードウェアデバイス情報（ＨＤＩ）を学習することに関して説明される。まず、一実施形態では、アグリゲーションスイッチのうちの１つの構成済み固定ポートに進入する未知のユニキャストパケット（例えば、ソースＭＡＣアドレス＝ｄ１を有する固定ポート２８０上で発信されるトラフィック）について、ソースＭＡＣアドレスが、発信側構成済み固定ポートのハードウェアデバイス情報（ＨＤＩ）（スイッチングＡＳＩＣのＭＩＤおよびソースポートのソースポート識別子値またはｇｐｏｒｔ値、ＮＩＭ識別子、ソースポートに関連する他のハードウェアデバイスＩＤなど）に関連するものとして、両方のアグリゲーションスイッチ１０６ａおよび１０６ｂ上のＭＡＣ／ＨＤＩ転送テーブルにポピュレートされる。したがって、一実施形態では、ソースＭＡＣアドレスｄ１が、ソースポートに関連するＶＬＡＮ  ＩＤおよびＨＤＩ、例えばＭＩＤ＝４５、ポートＩＤ＝４を有する両方のアグリゲーションスイッチＡおよびアグリゲーションスイッチＢの１つまたは複数のＭＡＣ／ＨＤＩ転送テーブルに格納される。
【００５２】
次に、一実施形態では、トランクグループや他のタイプのＬＡＧなどのアグリゲーションスイッチ１０６のうちの１つだけに接続された論理アグリゲートグループに進入する未知のユニキャストトラフィック（例えば、ソースＭＡＣアドレス＝ａ１を有するＬＡＧ１上で発信されるトラフィック）について、ソースＭＡＣアドレスが、発信側論理アグリゲートグループ識別子（例えば、ＬＡＧ１）に関連するものとして、アグリゲーションスイッチ１０６ａおよび１０６ｂの両方の上のＭＡＣ／ＨＤＩ転送テーブルにポピュレートされる。したがって、一実施形態では、アグリゲーションスイッチＡによってＬＡＧ１上で受信されるソースＭＡＣアドレスａ１が、ＶＬＡＮ  ＩＤおよび論理アグリゲートグループ識別子ＬＡＧ１を有する両方のアグリゲーションスイッチ１０６の１つまたは複数のＭＡＣ／ＨＤＩ転送テーブルに格納される。さらに、本明細書で説明されるように、両方のアグリゲーションスイッチのＭＡＣ／ＨＤＩ転送テーブルは、（ＣＭＭ１５０モジュールまたは他の制御プレーン処理によって構成情報の分布を通じて学習される）論理アグリゲートグループに関連するハードウェアデバイス情報を格納する。したがって、ＭＡＣ／ＨＤＩ転送テーブルは、ＭＡＣアドレスａ１がトランクグループ識別子ＬＡＧ１に関連するという情報と、ＬＡＧ１に関連するＨＤＩ情報とを含む。
【００５３】
さらに、一実施形態では、いずれのアグリゲーションスイッチ１０６のＭＣ−ＬＡＧメンバポートに進入する未知のユニキャストトラフィック（例えば、ＭＣ−ＬＡＧ１またはＭＣ−ＬＡＧ２上で発信されるトラフィック）について、ソースＭＡＣが、ＭＣ−ＬＡＧのローカルメンバポートのＭＣ−ＬＡＧ識別子およびＨＤＩ情報に関連するものとして、ＭＡＣ／ＨＤＩ転送テーブルにポピュレートされる。ＭＣ−ＬＡＧのメンバポートのＨＤＩ情報は、各アグリゲーションスイッチ１０６上のＭＡＣ／ＬＡＧテーブルについて同一となる。言い換えれば、両方のアグリゲーションスイッチは、メンバポートがローカルであるか、それともリモートであるかに関わらず、ＭＣ−ＬＡＧアグリゲートグループのアクティブな参加者であるメンバポートのリスト全体を完全に認識している。
【００５４】
ＭＣ−ＬＡＧのメンバポートをソースＭＡＣアドレスに関連付けることにより、好ましくは、エッジノード１０４のうちの１つを通るＭＡＣアドレス宛てのトラフィックが、最短経路を通るＭＣ−ＬＡＧメンバポートを介して転送される。この経路は、ＶＦＬ１２４を横断するトラフィック量を低減する。さらに、この経路は、エッジノード１０４との間のトラフィックが別個のフローについてＭＣ−ＬＡＧを介する異なる経路を取る、ある特定のシナリオでのＭＡＣ移動問題を低減する。一実施形態での図６の例では、アグリゲーションスイッチ１０６上のＭＡＣ／ＨＤＩ転送テーブルのうちの１つまたは複数は、以下の情報を含む：
【００５５】
【表５】
2013535922.tif 000007
【００５６】
【表６】
2013535922.tif 000008
【００５７】
別の実施形態では、ノードまたはネットワーク管理アプリケーション内で表示されるＭＡＣアドレステーブルが、論理アグリゲーショングループに関するＨＤＩを含まないことがある。ユーザ表示ＭＡＣアドレステーブルは、固定ポートに関するＨＤＩのみを含むことがあり、したがって両方のアグリゲーションスイッチ１０６について同様である。
【００５８】
【表７】
2013535922.tif 000009
【００５９】
【表８】
2013535922.tif 000010
【００６０】
ＭＡＣ／ＨＤＩ転送テーブルがソースＭＡＣアドレスに関連するＬＡＧ識別子に関して同期される。さらに、両方のアグリゲーションスイッチ上でＭＡＣアドレスに関連するＶＬＡＮ  ＩＤを構成し、同期することもできる。したがって、論理的に、アグリゲーションスイッチ１０６は、ＭＡＣ学習に関して単一のブリッジとして動作する。さらに、ＭＡＣ学習は、最小限のレイヤ２／制御モジュール管理ソフトウェア介入で、プロセス間通信メッセージベースのＭＡＣテーブル同期の必要なしに、ＶＦＬ１２４を介するトラフィックフローとして自動的に行われる。
【００６１】
図７に、マルチシャーシシステムでのソースＭＡＣ学習のための方法の一実施形態をより詳細に示す。デバイスＢに関するＭＡＣアドレスを求めるために、デバイスＡ  ３００ａ（ＭＡＣアドレス＝ＭＡＣＡ）が、デバイスＢ  ３００ｂに関するターゲットＩＰアドレスと共に、ＭＡＣアドレス要求、例えばイーサネットプロトコルで使用されるアドレス解決パケット（ＡＲＰ）を送信する。例えば、ＭＡＣアドレス要求は以下を含むことができる。
Ｓｏｕｒｃｅ  ＭＡＣ＝ＭＡＣＡ
Ｄｅｓｔｉｎａｔｉｏｎ  ＭＡＣ＝ｆｆ：ｆｆ：ｆｆ：ｆｆ：ｆｆ：ｆｆ（ｕｎｋｎｏｗｎ）
Ｔａｒｇｅｔ  ＩＰ＝ＩＰＢ
ＶＬＡＮ  ＩＤ＝ＩＤ
Ｐａｃｋｅｔ  Ｔｙｐｅ＝Ｂｒｏａｄｃａｓｔ
【００６２】
エッジノード１０４ａによって受信されたとき、エッジノード１０４ａは、ＭＣ−ＬＡＧ  Ａを介して「論理」アグリゲーションスイッチ１０６（２つの物理的スイッチ１０６ａおよび１０６ｂから構成される）にＭＡＣアドレス要求を転送する。ロードバランシングまたはハッシングアルゴリズムに応じて、エッジノード１０４ａは、ＭＣ−ＬＡＧ  Ａの物理リンクのサブセットＬＡ１またはＬＡ２のどちらかを介してＭＡＣアドレス要求を送信することができる。例えば、ＭＡＣアドレス要求がアグリゲーションスイッチ１０６ａに接続されたＬＡ１を介して送信されると仮定する。一般には、イーサネットスイッチでは、ＭＡＣアドレス要求（ＡＲＰなど）がコピーされ、ＶＬＡＮ  ＩＤに関連するあらゆるポートを介してブロードキャストされる。一実施形態では、アグリゲーションスイッチ１０６ａがＭＡＣアドレス要求を受信したとき、アグリゲーションスイッチ１０６ａはまず、ソース論理アグリゲートグループ識別子（例えば、ＭＣ−ＬＡＧ  Ａ）および／またはソースＨＤＩ（例えば、ＭＩＤ＝１２、ポートＩＤ＝１）を有するプリペンデッドヘッダをＭＡＣアドレス要求に付加する。次いで、アグリゲーションスイッチは（例えば、特定のスイッチングＡＳＩＣ  ＭＩＤ＝１２で）、プリペンデッドヘッダを有するパケットのコピーを、この例ではスイッチングＡＳＩＣ  ＭＩＤ＝３１などの、ＶＬＡＮ  ＩＤに関連する外部ポートインターフェースを有する各スイッチングＡＳＩＣにブロードキャストする。次いで、プリペンデッドヘッダを有するＭＡＣアドレス要求を受信するアグリゲーションスイッチ１０６ａ上のスイッチングＡＳＩＣ（例えばＭＩＤ＝１２、ＭＩＤ＝３１）は、ソースＭＡＣアドレスおよび関連するアグリゲートグループ識別子を学習し（プリペンデッドヘッダ内に明示的に存在するか、または本明細書に記載のＭＣ−ＬＡＧ  Ａのメンバポートの完全なリスト、例えばＭＩＤ＝１２、ポートＩＤ＝１、２、およびＭＩＤ＝４５、ポートＩＤ＝１、２を含むそのトランクテーブル内のソースＨＤＩ情報を探索することにより）、そのＭＡＣ／ＨＤＩ転送テーブルをアグリゲートグループ識別子情報でポピュレートすることができる。例えば、スイッチングＡＳＩＣ  ＭＩＤ＝３１が、特定の実施形態に応じて、ソースＭＡＣアドレスＭＡＣＡが論理アグリゲートグループＭＣ−ＬＡＧ  Ａおよび／またはソースポートＭＩＤ＝１２、ポートＩＤ＝１のＨＤＩに関連することをＭＡＣ／ＨＤＩ転送テーブルに入力する。外部ポートインターフェースからエッジノードＢにＭＡＣアドレス要求を送信する前に、アグリゲーションスイッチ１０６ａ（例えば、ＭＩＤ＝３１を有するスイッチングＡＳＩＣ）はプリペンデッドヘッダを除去し、したがってイーサネットまたはＩＰプロトコルヘッダを保持する。
【００６３】
アグリゲーションスイッチ１０６ａはまた、ＶＦＬ１２４を介してアグリゲーションスイッチ１０６ｂに、プリペンデッドヘッダを有するブロードキャストパケットを送信する。アグリゲーションスイッチ１０６ｂはまた、ソースＭＡＣアドレスを学習し、ブロードキャストパケットからの関連するアグリゲートグループ識別子および／またはソースＨＤＩをプリペンデッドヘッダに関連付ける。上述のように、両方のスイッチがＭＣ−ＬＡＧメンバポートのリスト全体を完全に認識しているので、あるアグリゲーションスイッチでＭＣ−ＬＡＧローカルメンバポート上で発信され、ＶＦＬを介して送信されるＭＡＣアドレスが、ピアアグリゲーションスイッチで同一のＭＣ−ＬＡＧに関連付けられる。したがって、アグリゲーションスイッチ１０６ｂがプリペンデッドヘッダを有するパケットを受信したとき、アグリゲーションスイッチ１０６ｂは、ＭＣ−ＬＡＧ  Ａのアグリゲートグループ識別子を、ソースＭＡＣアドレスＭＡＣＡに関連するものとして格納する。例えば、ＭＩＤ＝４５を有するスイッチングＡＳＩＣ（および／またはＭＩＤ＝６３を有するスイッチングＡＳＩＣ）は、ソースＭＡＣアドレスＭＡＣＡが論理アグリゲートグループＭＣ−ＬＡＧ  Ａに関連することを、そのＭＡＣ／ＨＤＩ転送テーブルに入力する。
【００６４】
ＭＡＣアドレス要求は一般に、ＶＬＡＮ  ＩＤに関連するあらゆるポートを介してブロードキャストされるが、一実施形態では、ループ防止機構が、アグリゲーションスイッチ１０６によって仮想ファブリックリンク１２４を介して受信されたパケットの、ローカルＭＣ−ＬＡＧメンバポートを介するブロードキャストを防止する。したがって、アグリゲーションスイッチ１０６ｂがＶＦＬ１２４を介してＭＡＣアドレス要求を受信したとき、アグリゲーションスイッチ１０６ｂは、ローカルＭＣ−ＬＡＧ  ＡメンバポートＬＡ２およびローカルＭＣ−ＬＡＧ  ＢメンバポートＬＢ２を介してＭＡＣアドレス要求のコピーをブロードキャストしない。このループ防止機構は、アグリゲーションスイッチＡから発信されるブロードキャストパケットフローがアグリゲーションスイッチＢを通じてエッジノードＡおよびエッジノードＢにループすることを防止する。したがって、ループ防止処理は、ＭＣ−ＬＡＧメンバポート上のスパニングツリープロトコルの必要なしに、マルチシャーシドメインシステムの動作を実現する。
【００６５】
アグリゲーションスイッチ１０６ａおよび１０６ｂは、宛先ＩＰアドレスがそのローカルＶＬＡＮ上で構成されたそのローカルＩＰインターフェースのいずれにも対応しないので、ＭＡＣアドレス要求に対する応答を生成しない。しかし、エッジノードＢが（ＬＢ１を介して）ＭＡＣアドレス要求を受信したとき、エッジノードＢは、デバイスＢにパケットをブロードキャストし、次いでデバイスＢは応答する。ユニキャストパケットである応答パケットが、デバイスＡまでマルチシャーシシステムを横切るとき、同様の処理で、デバイスＢのソースＭＡＣアドレスがアグリゲーションスイッチ１０６によって学習される。このとき、デバイスＡおよびデバイスＢは、マルチシャーシリンクアグリゲートによって提供されるレイヤ２マルチパスインフラストラクチャを介してＩＰアドレッシングと通信することができる。ＭＡＣアドレスは、特定のポートに関連するものとして（固定ポートの場合）、またはアグリゲートグループ識別子に関連するものとして（ＬＡＧまたはＭＣ−ＬＡＧの場合）学習される。アグリゲートスイッチ１０６はハードウェアデバイス識別子、ＭＩＤの非重複範囲を有するので、ハードウェアデバイス識別子は、マルチシャーシシステム１４０内で固有である。グローバル固有ハードウェアデバイス識別子ＭＩＤおよび外部ポート識別子を使用して、ＭＡＣアドレスを固定ポートまたはアグリゲートグループ識別子に関連付けることができる。
【００６６】
図８に、マルチシャーシシステムでＭＡＣ／ＨＤＩ転送テーブルを維持するための一実施形態の概略ブロック図を示す。ＭＡＣ転送テーブルは、エントリに関するデフォルトの、または構成された「エージング」時間を有する。ＭＡＣ／ＨＤＩ転送テーブル内のＭＡＣアドレスがエージング時間中に更新されなかったとき、エントリがテーブルから削除またはフラッシュされる。しかし、マルチシャーシシステムでは、エントリのエージングは、パケットフローがアップストリーム方向とダウンストリーム方向について異なる経路を有するとき、連続的フラッディングに伴う問題を生み出すことがある。ＭＡＣ転送テーブルの同期を維持するために、マルチシャーシシステムは、システムの部分であるスイッチのセット全体にわたってキープアライブ機構を実装する必要がある。キープアライブパケットは、（エージングタイムアウトパラメータに等しい一定の間隔で送られる）周期的パケットである。こうしたパケットは、予約済みマルチキャスト宛先ＭＡＣアドレスを搬送し、マルチシャーシシステム内のすべてのＮＩＭ１５２内のすべてのスイッチングＡＳＩＣデバイス２１０にパケットをフラッディングすることを可能にする。パケットのソースＭＡＣアドレスは、ＭＡＣ転送テーブル内で学習される各エントリのＭＡＣアドレスに等しい。この機構の結果として、所与のＭＡＣアドレスは、マルチシャーシシステム内のアグリゲートスイッチのいずれでももはや使用されなくならない限りは、エージングせず、削除されず、フラッシュされない。
【００６７】
永遠のＭＡＣアドレスを回避するために（例えば、フラッシュまたは削除されるようにエージングしないアドレス）、マルチシャーシシステム内の「オーナ」または担当モジュールがＭＡＣエントリに割り当てられる。ＭＡＣエントリのオーナは一般に、特定のＮＩＭ１５２である。ＭＡＣオーナシップは様々な方式で決定される。例えば、ＭＡＣオーナシップは、以下のようにＭＡＣが最初に学習されたポートのタイプに依存することができる。固定ポートに関連するＭＡＣアドレスでは、ＭＡＣアドレストラフィックが受信された外部ポートを含むスイッチングＡＳＩＣデバイス２１０が、ＭＡＣエントリのオーナであり、ＭＡＣアドレスのエージングを制御する。他のスイッチングＡＳＩＣ２１０は、プリペンデッドヘッダを有するパケットの受信時にこのＭＡＣアドレスを学習する。そのようなスイッチングＡＳＩＣデバイス２１０をホストするＮＩＭ１５２は、ＭＡＣエントリのオーナにはならない。デバイスは、外部ポートインターフェースからアドレスを学習したときにのみ、固定ポートに関するＭＡＣエントリのオーナとなる。
【００６８】
アグリゲートポート（すなわち、ＬＡＧまたはＭＣ−ＬＡＧ）上で学習されるＭＡＣアドレスでは、ＭＡＣアドレスのオーナが、固定ポートについて説明したのと同様の機構で決定される。ここでの違いは、通常はスイッチングＡＳＩＣ２１０がリモートまたはローカルビットと呼ばれる追加の特徴を与えることである。このビットは、エントリが作成され、ＭＡＣエントリの寿命中にその値を決して変更しないときにのみセットされる。ローカルビットは以下のときにのみセットされる（すなわちローカル＝１またはリモート＝０）：ａ）エントリがまだ存在していない、ｂ）パケットがフロントパネルポート上で受信され、例えばプリペンデッドヘッダが存在しない。この手法の結果として、そのローカルビットがセットされる単一のスイッチングＡＳＩＣデバイス２１０が常にシステム内に存在することになる。そのスイッチングＡＳＩＣデバイス２１０をホストするそのＮＩＭ１５２は、ＭＡＣアドレスのオーナとなり、したがってキープアライブパケットの生成を担当する。
【００６９】
ＮＩＭ１５２は、ＭＡＣ／ＨＤＩ転送テーブルからのエントリの削除を調整する。図８に示されるように、アグリゲーションスイッチ１０６のＣＭＭ１５０ａと１５０ｂの間で論理プロセス間通信接続（ＩＰＣ）３１０が作成される。同一の論理接続が、ＮＩＭ１５２の任意の対の間で存在する。ＶＦＬ１２４またはＬＡＮ接続を介してＩＰＣ３１０を作成することができる。ローカルアグリゲーションスイッチ１０６ａのＮＩＭ１５２のうちの１つがＭＡＣアドレスに関するフラッシュメッセージを受信したとき、そのＮＩＭ１５２は、ローカルおよびリモートアグリゲーションスイッチ１０６ａ／ｂ上の他のＮＩＭ１５２ａ−ｎのそれぞれにフラッシュメッセージを送信することを決定することができる。次いで、ＮＩＭ１５２ａ−ｎ内のスイッチングおよび／またはキューイングＡＳＩＣ内のＭＡＣ／ＨＤＩテーブルは、対応するＭＡＣアドレスに関するエントリをフラッシュする。エントリをローカルに削除するか否かに対する決定は、エントリのオーナシップ、およびＭＡＣエントリが学習されたポートのタイプに依存する。エントリを所有するＮＩＭ１５２上でフラッシュ要求が受信された場合にのみ、固定ポートまたは通常のアグリゲート（すなわちＬＡＧ）上で学習されたエントリがフラッシュされる（かつ、対応するイベントが伝播される）。ローカルスイッチ内にも、リモートスイッチ上にも、アグリゲートのメンバであるアクティブ／動作ポートがない場合、ＭＣ−ＬＡＧアグリゲート上で学習されたエントリがフラッシュされるだけである（かつ、フラッシュイベントが伝播される）。
【００７０】
ＣＭＭ１５０ａ−ｂおよびＮＩＭ１５２ａ−ｎは、マルチシャーシシステム内のＭＣ−ＬＡＧメンバポートおよびその状態（アクティブ／非アクティブ）のリスト全体を認識している。フラッシュメッセージが、ローカルアグリゲーションスイッチ上でのみ有効なローカルポート識別子（例えば、ｇｐｏｒｔ値）を含むとき、削除されているそのＭＡＣアドレスを所有するＮＩＭ１５２が、ローカルポート識別子をグローバルポート識別子（例えばＭＩＤまたはｍｏｄｉｄおよびデバイスポート値）に変換し、次いで、ＩＰＣを介してローカルおよびリモートアグリゲーションスイッチ１０６ａ／ｂの他のＮＩＭ１５２ａ−ｎにフラッシュメッセージを送信する。ポートインターフェースステータス通知（例えばポートダウン）などの別個のイベントにより、または明示的管理要求を介して、フラッシング要求をトリガすることができる。例えば、ＣＭＭ１５０ａが「ｎｏ  ｍａｃ−ｌｅａｒｎｉｎｇ  ｄｙｎａｍｉｃ」管理メッセージを受信し、または静的ＭＡＣアドレスがユーザ要求時に削除し、前述のフラッシュ許容要件が満たされるとき、ＣＭＭ１５０ａは、アグリゲーションスイッチ１０６ａのＮＩＭ１５０ａ−ｎおよびリモートアグリゲーションスイッチ１０６ｂのＣＭＭ１５０ｂに、ＭＡＣアドレスを有するフラッシュメッセージを送信する。
【００７１】
一実施形態では、マルチシャーシシステム内のＭＣ−ＬＡＧのリンクのうちの１つまたは複数は、スタンバイモードで動作することができる。図９に、ＭＣ−ＬＡＧ１  １０２ａのリンクＬＡ２の第１のサブセットおよびＭＣ−ＬＡＧ２  １０２ｂのリンクＬＢ１の第２のサブセットがスタンバイモードで動作している一実施形態を示す。障害が発生しない限り、トラフィックは、スタンバイノード内のローカルＭＣ−ＬＡＧメンバポートを介して送信されない。その代わりに、トラフィックは、アクティブモードでの対応するＭＣ−ＬＡＧメンバポートを介する伝送のために、ＶＦＬを介してピアアグリゲーションスイッチに送信される。例えば、アクティブ／スタンバイモードで動作中のとき、未知の宛先を有するユニキャストパケットがアグリゲーションスイッチＡで受信されたとき、そのユニキャストパケットは、スタンバイリンクＬＢ１を介してエッジノードＣにブロードキャストされない。その代わりに、ソースＨＤＩ、例えばＭＩＤ＝３１、ポートＩＤ＝１を有するプリペンデッドヘッダが、ＶＦＬ１２４を介してアグリゲーションスイッチＢに送信される。通常、上述のアクティブ／アクティブモードでは、アグリゲーションスイッチＢは、ループ防止の目的で、ＶＦＬ１２４を介して受信されたブロードキャストパケットを、ＭＣ−ＬＡＧローカルメンバポートを介して送信しない。しかし、アクティブ／スタンバイモードでは、アグリゲーションスイッチＢは、アクティブモードでＭＣ−ＬＡＧローカルメンバポートにブロードキャストパケットを送信する。アグリゲーションスイッチＢはプリペンデッドヘッダを除去し、内部標準イーサネット／ＩＰパケットヘッダを保ち、ＭＣ−ＬＡＧ２のＬＢ２を介してパケットをエッジノードＣにブロードキャストする。
【００７２】
さらに、図１０に示されるように、アクティブ／スタンバイモードでは、宛先ＭＡＣアドレス＝ｂ１を有するエッジノード１０４ｂ宛てのトラフィックが、スタンバイモードのＭＣ−ＬＡＧローカルメンバポートＬＡ２を介して送信されるのではなく、ＶＦＬ１２４を介して送信される。アクティブ／スタンバイモードを保守のために構成または実装することができる。ＭＣ−ＬＡＧのローカルメンバポートに関するスタンバイモードを障害のために実装することもできる。マルチシャーシシステムは、ＶＦＬを通じてトラフィックをリダイレクトすることにより、かつ／またはＭＡＣ／ＨＤＩ転送テーブルからＭＡＣテーブルエントリのセットを削除するためのＭＡＣフラッシュメッセージを実装することによって新しい経路を作成することにより、障害に応答して高速フェイルオーバ収束を実現する。次いで、新しい経路が、本明細書に記載のパケットフローを介するソースＭＡＣ学習を使用するマルチシャーシシステムを通じて自動的に学習される。
【００７３】
図１１に、障害がＭＣ−ＬＡＧリンク内で発生したときのマルチシャーシシステムの一実施形態の概略ブロック図を示す。一例では、ＮＩＭ障害、ポート障害、リンク障害などのためにアクティブＭＣ−ＬＡＧ１メンバポートに障害が発生した場合、ＭＡＣ／ＨＤＩ転送テーブル内のＭＣ−ＬＡＧ１のポートに関連するＭＡＣアドレスエントリがアグリゲーションスイッチ１０６ａおよび１０６ｂ上でフラッシュされるが、ネットワークノード１１６ａおよび１１６ｂ上ではフラッシュされない。例えば、ＭＣ−ＬＡＧ１のポート、例えばＭＩＤ＝３１、ポートＩＤ＝３または４に関連するＭＡＣアドレス（例えば、ＭＡＣアドレス＝ｂ１）が、アグリゲーションスイッチ１０６ａおよび１０６ｂ内のＭＡＣ／ＨＤＩ転送テーブルからフラッシュされる。スタンバイモードで、ＭＣ−ＬＡＧ１メンバポートＬＡ２がアクティブモードに置かれる場合、レイヤ２パケットがマルチシャーシシステムを流れるとき、ＭＡＣアドレスが、新しいアクティブＭＣ−ＬＡＧローカルメンバポート、例えばＭＩＤ＝４５、ポートＩＤ＝１または２に関連するものとしてＭＡＣ／ＨＤＩ転送テーブルで再学習される。ネットワークノードＡおよびＢは、ＭＡＣアドレス＝ｂ１に関してそのＭＡＣエントリをフラッシュする必要はないが、障害前と同様にアグリゲーションスイッチに引き続き転送する。
【００７４】
例えば、アグリゲーションスイッチＢがネットワークノードＢから宛先ＭＡＣアドレス＝ｂ１を有するパケットを受信するときの動作の際に、フラッシュメッセージに応答して、ＭＡＣアドレス＝ｂ１がそのＭＡＣ／ＨＤＩ転送テーブルから削除されている。アグリゲーションスイッチＢは、ＭＡＣアドレスを未知として扱い、ＭＡＣアドレス要求をブロードキャストする。アグリゲーションスイッチＢは、プリペンデッドヘッダをパケットに追加し、ＶＦＬを介してアグリゲーションスイッチＡおよびその別のスイッチングＡＳＩＣ  ＭＩＤ＝４５にパケットを送信する。スイッチングＡＳＩＣ  ＭＩＤ＝４５がブロードキャストパケットを受信したとき、スイッチングＡＳＩＣ  ＭＩＤ＝４５はプリペンデッドヘッダを除去し、次いで、そのときアクティブであるＭＣ−ＬＡＧ１メンバリンクＬＡ２を介してＭＡＣアドレス要求をブロードキャストする。エッジノードＢがブロードキャストパケットを受信したとき、エッジノードＢもパケットをブロードキャストし、ＭＡＣアドレス＝ｂ１を有する接続されたデバイスからＭＡＣアドレスを学習し、アグリゲーションスイッチＢに応答パケットを送信する。したがって、アグリゲーションスイッチＢは、ＭＡＣアドレスｂ１に関連するソースＨＤＩがＭＩＤ＝４５、ポートＩＤ＝１であることを学習し、そのＭＡＣ／ＨＤＩ転送テーブルに更新後エントリを再ポピュレートする。アグリゲーションスイッチＡのＭＣ−ＬＡＧ１メンバポートはもはや動作していないので、アグリゲーションスイッチＢは、ＭＣ−ＬＡＧ１を論理アグリゲートグループ（ＬＡＧ）として扱い、このときＶＦＬ１２４からのブロードキャストパケットがＭＣ−ＬＡＧ１メンバポートにフラッディングされる。
【００７５】
したがって、障害後に、ＭＡＣ／ＨＤＩ転送テーブルが、スパニングツリープロトコルまたはレイヤ２ＭＡＣテーブル制御メッセージ生成同期メッセージを使用するのではなく、アグリゲーションスイッチ１０６を通るレイヤ２パケットフローによる新しい経路情報で再ポピュレートされる。
【００７６】
図１２に、マルチシャーシシステムでのパケットのプリペンデッドヘッダの一実施形態の概略ブロック図を示す。プリペンデッドヘッダ３００は、ソースＨＤＩ３０２、宛先ＨＤＩ３０４、ＶＬＡＮ  ＩＤ３０６、パケットタイプ３０８、ソースＭＡＣアドレス３１０、宛先ＭＡＣアドレス３１２に関するフィールドを含む。一実施形態では、プリペンデッドヘッダはまた、ロードバランス識別子３１４およびパケット優先順位３１６をも含むことができる。宛先ＨＤＩ３０４は、例えば、宛先ＭＡＣアドレスに関連する、ローカルまたはピアアグリゲーションスイッチのスイッチングＡＳＩＣ２１０のポート識別子およびＭＩＤ（例えばＭＩＤ＝２４、ポートＩＤ＝５、またはＭＩＤ＝５４、デバイスポート＝１２）を含む。別の実施形態では、宛先ハードウェアデバイス情報は、宛先ＭＡＣアドレスに関連する外部ポートインターフェースのグローバルポート値（ＧＰＶ）を含むことができる。宛先ハードウェアデバイス情報はまた、ＶＦＬ、ＮＩＭ１５２、キューイングＡＳＩＣなどに接続されたスイッチングＡＳＩＣ２１０のＭＩＤをも含むことができる。ソースＨＤＩ３０２は、スイッチングＡＳＩＣ２１０のＭＩＤ、ならびに外部ポートインターフェース２４０のポート識別子（例えば、デバイスポート）および／またはグローバルポート値（ＧＰＶ）を含むことができる。ロードバランス識別子３１４は、ピアアグリゲートスイッチに到達するためにどのＶＦＬメンバポートをトランジット／ゲートウェイポートとして使用すべきかをキューイングＡＳＩＣ２１２が決定するのを助けるために使用される。パケット優先順位３１６は、特定の優先順位キューを求めるためにキューイングＡＳＩＣ２１２によって使用される。
【００７７】
ネットワークインターフェースモジュール１５２は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、マイクロコンピュータ、中央演算処理装置、フィールドプログラマブルゲートアレイ、プログラマブル論理デバイス、状態機械、論理回路、アナログ回路、デジタル回路、ならびに／あるいは回路のハードコーディングおよび／または動作命令に基づいて信号（アナログおよび／またはデジタル）を操作する任意のデバイスなどの１つまたは複数の処理デバイスを含む。ＮＩＭ１５２は、内部メモリまたは外部メモリであるメモリを含む。ＮＩＭ１５２のメモリは、単一のメモリデバイスまたは複数のメモリデバイスでよい。そのようなメモリデバイスは、読取り専用メモリ、ランダムアクセスメモリ、揮発性メモリ、不揮発性メモリ、スタティックメモリ、ダイナミックメモリ、フラッシュメモリ、キャッシュメモリ、および／またはデジタル情報を格納する任意のデバイスでよい。ＮＩＭ１５２は、状態機械、アナログ回路、デジタル回路、および／または論理回路を介してその機能のうちの１つまたは複数を実装することができ、対応する動作命令を格納するメモリを、状態機械、アナログ回路、デジタル回路、および／または論理回路を備える回路内または外部に埋め込むことができる。ＮＩＭ１５２は、内部メモリおよび／または外部メモリによって格納されたハードコードされた命令、および／またはソフトウェア命令、および／または動作命令を実行し、本明細書に記載のステップおよび／または機能を実施することができる。ＮＩＭ１５２を単一の集積回路または１つまたは複数の集積回路で実装することができる。
【００７８】
本明細書で使用されることがあるように、「ほぼ」および「約」という用語は、その対応する用語に関する業界で受け入れられる公差、および／またはアイテム間の相対性を与える。そのような業界で受け入れられる公差は、１パーセント未満から５０パーセントまでの範囲に及び、限定はしないが、成分値、集積回路工程変動、温度変動、立上りおよび立下り時間、ならびに／あるいは熱雑音に対応する。アイテム間のそのような相対性は、数パーセントの違いから、等級の違いまでに及ぶ。本明細書でやはり使用されることがあるように、「に結合される（ｃｏｕｐｌｅｄ  ｔｏ）」および／または「結合する（ｃｏｕｐｌｉｎｇ）」という用語は、アイテム間の直接的結合、および／または介在アイテムを介するアイテム間の間接的結合を含み（例えば、アイテムは、限定はしないが、構成要素、要素、回路、および／またはモジュールを含む）、間接的結合では、介在アイテムは信号の情報を修正しないが、その電流レベル、電圧レベル、および／または電力レベルを調節することができる。本明細書でさらに使用されることがあるように、推論結合（すなわち、ある要素が推論によって別の要素に結合される）が、「に結合される」と同様に、２つのアイテム間の直接的および間接的結合を含む。本明細書で使用されることがあるように、「するように動作可能（ｏｐｅｒａｂｌｅ  ｔｏ）」という用語は、アイテムが、記載の機能または必要な対応する機能のうちの１つまたは複数を実施するための処理モジュール、データ、入力、出力などのうちの１つまたは複数を含み、記載の機能または必要な対応する機能を実施するための１つまたは複数の他のアイテムに対する推論結合をさらに含むことができることを示す。本明細書でやはり使用されることがあるように、「に接続される（ｃｏｎｎｅｃｔｅｄ  ｔｏ）」および／または「接続する（ｃｏｎｎｅｃｔｉｎｇ）」または「相互接続する（ｉｎｔｅｒｃｏｎｎｅｃｔｉｎｇ）」という用語は、ノード／デバイス間の直接的接続またはリンク、および／または介在アイテムを介するノード／デバイス間の間接的接続を含む（例えば、アイテムは、限定はしないが、構成要素、要素、回路、モジュール、ノード、デバイスなどを含む）。本明細書でさらに使用されることがあるように、推論接続（すなわち、ある要素が推論によって別の要素に接続される）が、「に接続される」と同様に、２つのアイテム間の直接的および間接的結合を含む。
【００７９】
上記で実施形態の指定の機能および関係の実施を示す方法ステップによって実施形態が説明された。こうした機能的ビルディングブロックおよび方法ステップの境界およびシーケンスは、説明の都合上、本明細書で恣意的に定義されたものである。指定の機能および関係が適切に実施される限り、代替境界およびシーケンスを定義することができる。したがって、そのような任意の代替境界またはシーケンスは、特許請求される発明の範囲および趣旨の中にある。同様に、フローダイアグラムブロックも、一定の重要な機能を示すために本明細書で恣意的に定義されたものである。使用される範囲で、フローダイアグラムの境界およびシーケンスを別の方法で定義することができ、その境界およびシーケンスはやはり一定の重要な機能を実施することができる。したがって、そのような機能的ビルディングブロックとフローダイアグラムブロックおよびシーケンスの両方の代替定義は、特許請求される発明の範囲および趣旨の中にある。本明細書の機能的ビルディングブロック、ならびに他の例示的ブロック、モジュール、および構成要素を、図示されるように実装することができ、あるいは適切なソフトウェアなどを実行する１つまたは複数の個別構成要素、ネットワーク、システム、データベース、または処理モジュール、あるいはそれらの任意の組合せによって実装できることも当業者は理解されよう。
【図１】
2013535922.tif 000011
【図２】
2013535922.tif 000012
【図３】
2013535922.tif 000013
【図４】
2013535922.tif 000014
【図５】
2013535922.tif 000015
【図６】
2013535922.tif 000016
【図７】
2013535922.tif 000017
【図８】
2013535922.tif 000018
【図９】
2013535922.tif 000019
【図１０】
2013535922.tif 000020
【図１１】
2013535922.tif 000021
【図１２】
2013535922.tif 000022
【国際調査報告】
2013535922.tif 000023
2013535922.tif 000024
2013535922.tif 000025