(57)【要約】【課題】コアネットワーク内の物理回線を冗長化しつつ、コアネットワーク内で中継されるフレームをカプセル化するネットワーク中継装置において、宛先と送信元が同じである一群のフレームの到達順序を保証する。【解決手段】コアネットワークの境界に接続されフレームを中継するネットワーク中継装置は、物理回線を接続するための複数のポートと、複数のポートにそれぞれ接続された複数の物理回線を仮想的な仮想回線として扱い、フレームに含まれるヘッダの内容に応じて、所定の規則に従いフレームの出力先となる出力先物理回線を選択する仮想回線制御部と、コアネットワークへ向けて送信するフレームに対して、仮想回線制御部によって選択される出力先物理回線が、宛先と送信元が同じである一群のフレームについて同一となるようにカプセルヘッダを付与するカプセル処理部と、を備える。【選択図】図１
2013070182.tif 000002
【特許請求の範囲】
【請求項１】
コアネットワークの境界に接続され、フレームを中継するネットワーク中継装置であって、
物理回線を接続するための複数のポートと、
前記複数のポートにそれぞれ接続された複数の物理回線を仮想的な仮想回線として扱う仮想回線制御部であって、前記フレームに含まれるヘッダの内容に応じて、所定の規則に従い前記フレームの出力先となる出力先物理回線を選択する仮想回線制御部と、
前記コアネットワークへ向けて送信する前記フレームに対して、前記仮想回線制御部によって選択される前記出力先物理回線が、宛先と送信元が同じである一群のフレームについて同一となるように、カプセルヘッダを付与するカプセル処理部と、
を備える、ネットワーク中継装置。
【請求項２】
請求項１記載のネットワーク中継装置であって、
前記カプセル処理部は、
前記フレームに対する宛先検索を実行し、
前記宛先検索の結果、当該フレームの宛先が学習済であった場合に、当該フレームの宛先が未学習である際に選択される前記出力先物理回線と同じ回線が、前記出力先物理回線として選択されるように前記カプセルヘッダを付与する、ネットワーク中継装置。
【請求項３】
請求項２記載のネットワーク中継装置であって、
前記カプセル処理部は、
前記宛先検索の結果、前記フレームの宛先が学習済であった場合に、前記カプセルヘッダに含まれる、宛先アドレスと、送信元アドレスと、ＶＬＡＮの識別子と、のうちの少なくともいずれかについての演算を実行することにより、前記カプセルヘッダを付与する、ネットワーク中継装置。
【請求項４】
請求項３記載のネットワーク中継装置であって、
前記カプセル処理部は、
前記コアネットワーク内のコアネットワーク中継装置がカプセルヘッダの内容に従って前記フレームを中継する際、ならびに前記ネットワーク中継装置が前記フレームのカプセルヘッダを削除して中継する際において、中継先の判断に影響しないビット領域に対して演算を実行する、ネットワーク中継装置。
【請求項５】
請求項３または４記載のネットワーク中継装置であって、さらに、
前記宛先検索と、前記カプセルヘッダの付与と、に用いられる宛先表を格納した記憶部を備え、
前記カプセル処理部は、
特定の宛先について、前記宛先検索の結果、前記フレームの宛先が学習済であった場合の初回に付与された前記カプセルヘッダの内容を前記宛先表に記憶させ、当該特定の宛先についての２回目以降の前記カプセルヘッダの付与の際には、前記宛先表に記憶された前記カプセルヘッダの内容を参照して前記カプセルヘッダを付与する、ネットワーク中継装置。
【請求項６】
ネットワークシステムであって、
コアネットワークを構成するコアネットワーク中継装置と、
請求項１ないし５のいずれか一項記載のネットワーク中継装置と、
を備え、
前記コアネットワーク中継装置は、
物理回線を接続するための複数のポートと、
前記複数のポートにそれぞれ接続された複数の物理回線を仮想的な仮想回線として扱う仮想回線制御部であって、受信フレームに含まれるカプセルヘッダの内容に応じて、所定の規則に従い前記受信フレームの出力先となる出力先物理回線を選択する仮想回線制御部と、
を備え、
前記コアネットワーク中継装置の前記仮想回線制御部と、前記ネットワーク中継装置の前記仮想回線制御部とは、同一の規則に従って前記出力先物理回線を選択する、ネットワークシステム。
【請求項７】
請求項６記載のネットワークシステムであって、
前記コアネットワーク中継装置は、
前記受信フレームの前記カプセルヘッダに含まれる宛先が、マルチキャストアドレスと、前記出力先物理回線の先に存在する前記ネットワーク中継装置と、のいずれにも該当しない場合、当該受信フレームを廃棄する、ネットワークシステム。
【請求項８】
コアネットワークの境界に位置し、複数のポートにそれぞれ接続された複数の物理回線を仮想的な仮想回線として扱うことが可能なネットワーク中継装置におけるフレームのカプセル化方法であって、
（ａ）前記フレームに含まれるヘッダの内容に応じて、所定の規則に従い前記フレームの出力先となる出力先物理回線を選択する工程と、
（ｂ）前記コアネットワークへ向けて送信する前記フレームに対して、前記工程（ａ）によって選択される前記出力先物理回線が、宛先と送信元が同じである一群のフレームについて同一となるように、カプセルヘッダを付与する工程と、
を備える、フレームのカプセル化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コアネットワークとユーザネットワークの境界に接続されるネットワーク中継装置における、フレームのカプセル化技術に関する。
【背景技術】
【０００２】
イーサネット（登録商標）は、ＭＡＣアドレスに基づいてフレームを中継するネットワークであり、複雑なプロトコルやアドレッシングの設定が必要ないことを特徴とする。イーサネットは、その簡便さから、近年では、地域間をまたがるような広域ネットワークの実現手段としても用いられている。イーサネットのフレーム中継は、フレームに付与された宛先ＭＡＣアドレスやＶＬＡＮ（Virtual LAN）番号に基づいて行われる。このため、広域イーサネットでは、収容される端末の数や、設定されるＶＬＡＮの数に比例して、フレーム中継先を決定するために用いられる経路表が膨大な大きさとなることが課題とされていた。この課題を解決するために、コアネットワーク内で中継されるフレームを、コアネットワークとユーザネットワークとの境界に位置するエッジスイッチのＭＡＣアドレスを用いてカプセル化する技術、例えば、ＥｏＥ（Ethernet over Ethernet、非特許文献１参照）や、ＶＰＬＳ（Virtual Private LAN Service、非特許文献２参照）や、ＰＢＢ（Provider Backbone Bridge、非特許文献３参照）などが知られている。
【０００３】
一方、コアネットワークやアクセスネットワーク等において、大容量かつ信頼性の高いネットワークを実現するための技術として、リンクアグリゲーション（ＬＡ、Link Aggregation）が知られている。リンクアグリゲーションを用いれば、複数の物理回線を集約して、仮想的な１つの仮想回線として扱うことが可能となり、回線の大容量化を実現することができる。また、仮想回線を構成する物理回線の一部に障害が発生しても、残りの物理回線で通信を継続することができる。すなわち、物理回線の冗長化を図ることができ、信頼性を向上させることができるという利点がある（非特許文献４参照）。
【０００４】
リンクアグリゲーションにおいて、フレーム中継時に、仮想回線を構成する物理回線の、どの物理回線にフレームを出力するかを決定する方法（以降「フレーム振り分け規則」とも呼ぶ。）の１つとして、フレームの宛先ＭＡＣアドレスと送信元ＭＡＣアドレスに応じて回線を決定する方法がある。宛先ＭＡＣアドレスと送信元ＭＡＣアドレスに応じてフレームを振り分ける方法は、仮想回線内でのきめ細かなトラフィック分散が可能であり、広く普及している。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】電子情報通信学会, 「広域イーサネット技術概論」, 2005年6月, ISBN:4885522110. pp. 129-153
【非特許文献２】IETF, “Virtual Private LAN Service (VPLS) Using Label Distribution Protocol (LDP) Signaling”, RFC4762.
【非特許文献３】IEEE, “IEEE Standard for Local and Metropolitan Area Networks-Virtual Bridged Local Area Networks Amendment 7: Provider Backbone Bridges”, IEEE802.1ah-2008.
【非特許文献４】IEEE, “IEEE Standard for Local and Metropolitan Area Networks--Link Aggregation”, IEEE802.1AX-2008. p.106
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記のリンクアグリゲーションでは、通信データの宛先と送信元が同じである一群のフレーム（以降、「同一フローに属するフレーム」とも呼ぶ。）は、フレームの到達順序を保証するために、同一の物理回線を使用して中継されることが好ましい。しかし、ＥｏＥのようなコアネットワーク内のフレームをカプセル化する技術と、リンクアグリゲーションとを組み合わせたネットワークでは、エッジスイッチより、フレームに新たなヘッダが付与されてしまう。このため、宛先ＭＡＣアドレスと送信元ＭＡＣアドレスに応じたフレーム振り分け規則を用いた場合、フレームのカプセル化を行うエッジスイッチが宛先エッジスイッチの存在を学習済みか否かによって、カプセル化されたフレームの宛先ＭＡＣアドレスが変動してしまう。そのため、カプセル化されたフレームは、同一フローに属するフレームであっても異なる物理回線を使用して中継される場合があり、その結果、フレームの到達順序が保証できない場合があるという問題があった。
【０００７】
また、このような問題は、リンクアグリゲーション、ＥｏＥ、ＶＰＬＳ、ＰＢＢといった具体的なプロトコルおよびその組み合わせに限定されず、コアネットワーク内の物理回線を冗長化しつつ、コアネットワーク内で中継されるフレームをカプセル化するネットワーク中継装置に共通する問題であった。
【０００８】
本発明は、物理回線を冗長化しつつ、コアネットワーク内で中継されるフレームをカプセル化するネットワーク中継装置において、通信データの宛先と送信元が同じである一群のフレームの到達順序を保証することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【００１０】
［適用例１］
コアネットワークの境界に接続され、フレームを中継するネットワーク中継装置であって、
物理回線を接続するための複数のポートと、
前記複数のポートにそれぞれ接続された複数の物理回線を仮想的な仮想回線として扱う仮想回線制御部であって、前記フレームに含まれるヘッダの内容に応じて、所定の規則に従い前記フレームの出力先となる出力先物理回線を選択する仮想回線制御部と、
前記コアネットワークへ向けて送信する前記フレームに対して、前記仮想回線制御部によって選択される前記出力先物理回線が、宛先と送信元が同じである一群のフレームについて同一となるように、カプセルヘッダを付与するカプセル処理部と、
を備える、ネットワーク中継装置。
このような構成とすれば、カプセル処理部は、仮想回線制御部によって選択される出力先物理回線が、宛先と送信元が同じである一群のフレームについて同一となるように、カプセルヘッダを付与するため、物理回線を冗長化しつつ、コアネットワーク内で中継されるフレームをカプセル化するネットワーク中継装置において、宛先と送信元が同じである一群のフレームの到達順序を保証することができる。
【００１１】
［適用例２］
適用例１記載のネットワーク中継装置であって、
前記カプセル処理部は、
前記フレームに対する宛先検索を実行し、
前記宛先検索の結果、当該フレームの宛先が学習済であった場合に、当該フレームの宛先が未学習である際に選択される前記出力先物理回線と同じ回線が、前記出力先物理回線として選択されるように前記カプセルヘッダを付与する、ネットワーク中継装置。
このような構成とすれば、カプセル処理部は、フレームの宛先が学習済であった場合に、当該フレームの宛先が未学習である際に選択される出力先物理回線と同じ回線が出力先物理回線として選択されるようにカプセルヘッダを付与するため、宛先の学習有無に関わらず、出力先物理回線を同じにすることができる。
【００１２】
［適用例３］
適用例２記載のネットワーク中継装置であって、
前記カプセル処理部は、
前記宛先検索の結果、前記フレームの宛先が学習済であった場合に、前記カプセルヘッダに含まれる、宛先アドレスと、送信元アドレスと、ＶＬＡＮの識別子と、のうちの少なくともいずれかについての演算を実行することにより、前記カプセルヘッダを付与する、ネットワーク中継装置。
このような構成とすれば、カプセル処理部は、カプセルヘッダに含まれる宛先アドレスと、送信元アドレスと、ＶＬＡＮの識別子と、のうちの少なくともいずれかについて演算を実行するため、カプセルヘッダの内容を簡便に決定することができる。
【００１３】
［適用例４］
適用例３記載のネットワーク中継装置であって、
前記カプセル処理部は、
前記コアネットワーク内のコアネットワーク中継装置がカプセルヘッダの内容に従って前記フレームを中継する際、ならびに前記ネットワーク中継装置が前記フレームのカプセルヘッダを削除して中継する際において、中継先の判断に影響しないビット領域に対して演算を実行する、ネットワーク中継装置。
このような構成とすれば、カプセル処理部は、カプセルヘッダの内容に従ってフレームを中継するコアネットワーク中継装置と本ネットワーク中継装置において、中継先の判断に影響されないビット領域に対して演算を実行するため、演算結果がネットワーク全体のカプセルフレームの中継に影響を及ぼさない。
【００１４】
［適用例５］
適用例３または４記載のネットワーク中継装置であって、さらに、
前記宛先検索と、前記カプセルヘッダの付与と、に用いられる宛先表を格納した記憶部を備え、
前記カプセル処理部は、
特定の宛先について、前記宛先検索の結果、前記フレームの宛先が学習済であった場合の初回に付与された前記カプセルヘッダの内容を前記宛先表に記憶させ、当該特定の宛先についての２回目以降の前記カプセルヘッダの付与の際には、前記宛先表に記憶された前記カプセルヘッダの内容を参照して前記カプセルヘッダを付与する、ネットワーク中継装置。
このような構成とすれば、カプセル処理部は、特定の宛先について、宛先検索の結果、当該フレームの宛先が学習済であった場合の初回に付与されたカプセルヘッダの内容を宛先表に記憶させ、当該特定の宛先についての２回目以降のカプセルヘッダの付与の際には、宛先表に記憶されたカプセルヘッダの内容を参照してカプセルヘッダを付与するため、カプセル処理部の処理負荷を低減することができる。
【００１５】
［適用例６］
ネットワークシステムであって、
コアネットワークを構成するコアネットワーク中継装置と、
適用例１ないし５のいずれか一項記載のネットワーク中継装置と、
を備え、
前記コアネットワーク中継装置は、
物理回線を接続するための複数のポートと、
前記複数のポートにそれぞれ接続された複数の物理回線を仮想的な仮想回線として扱う仮想回線制御部であって、受信フレームに含まれるカプセルヘッダの内容に応じて、所定の規則に従い前記受信フレームの出力先となる出力先物理回線を選択する仮想回線制御部と、
を備え、
前記コアネットワーク中継装置の前記仮想回線制御部と、前記ネットワーク中継装置の前記仮想回線制御部とは、同一の規則に従って前記出力先物理回線を選択する、ネットワークシステム。
このような構成とすれば、コアネットワーク内で中継されるフレームをカプセル化するネットワークシステムにおいて、宛先と送信元が同じである一群のフレームの到達順序を保証することができる。
【００１６】
［適用例７］
適用例６記載のネットワークシステムであって、
前記コアネットワーク中継装置は、
前記受信フレームの前記カプセルヘッダに含まれる宛先が、マルチキャストアドレスと、前記出力先物理回線の先に存在する前記ネットワーク中継装置と、のいずれにも該当しない場合、当該受信フレームを廃棄する、ネットワークシステム。
このような構成とすれば、ネットワークシステムにおいて、不要なマルチキャストフレームを廃棄し、マルチキャスト実行に伴う帯域の圧迫を低減することができる。
【００１７】
なお、本発明は、種々の態様で実現することが可能である。例えば、ネットワーク中継装置および方法、ネットワーク中継装置とコアネットワーク中継装置を含んだネットワークシステム、ネットワーク中継装置におけるフレームのカプセル化方法、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記憶媒体等の形態で実現することができる。
【発明の効果】
【００１８】
本発明によれば、カプセル処理部は、仮想回線制御部によって選択される出力先物理回線が、宛先と送信元が同じである一群のフレームについて同一となるように、カプセルヘッダを付与するため、物理回線を冗長化しつつ、コアネットワーク内で中継されるフレームをカプセル化するネットワーク中継装置において、宛先と送信元が同じである一群のフレームの到達順序を保証することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施例としてのネットワーク中継装置が用いられたネットワークの概略構成を示す説明図である。
【図２】フレームＦＭとカプセル化フレームＣＦＭについて説明するための説明図である。
【図３】比較例においてフレームが中継される様子を示す説明図である。
【図４】本発明の一実施例としてのエッジスイッチの概略構成を示す説明図である。
【図５】エッジスイッチの中継処理部の機能ブロック図である。
【図６】ＬＡテーブルの一例を示す説明図である。
【図７】ＦＤＢの一例を示す説明図である。
【図８】フィルタテーブルの一例を示す説明図である。
【図９】フレーム受信時処理の手順を示すフローチャートである。
【図１０】宛先判定処理の手順を示すフローチャートである。
【図１１】カプセル化処理の手順を示すフローチャートである。
【図１２】同一フローに属するフレームが本実施例のエッジスイッチによってどのようにカプセル化されるかを示す説明図である。
【図１３】コアスイッチの動作について説明するための説明図である。
【図１４】本発明の一実施例としてのコアスイッチの概略構成を示す説明図である。
【図１５】コアスイッチの中継処理部の機能ブロック図である。
【図１６】コアスイッチのフィルタテーブルの一例を示す説明図である。
【図１７】第２実施例におけるエッジスイッチの中継処理部の機能ブロック図である。
【図１８】第２実施例におけるＦＤＢの一例を示す説明図である。
【図１９】第２実施例におけるカプセル化処理の手順を示すフローチャートである。
【図２０】同一フローに属するフレームが第２実施例のエッジスイッチによってどのようにカプセル化されるかを示す説明図である。
【図２１】第２実施例においてＦＤＢが更新される様子を示す説明図である。
【発明を実施するための形態】
【００２０】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
【００２１】
Ａ．概略説明：
（Ａ−１）本発明の概略説明：
図１は、本発明の一実施例としてのネットワーク中継装置が用いられたネットワークの概略構成を示す説明図である。ネットワークシステム１０００は、２台のネットワーク中継装置１０と、２台のコアネットワーク中継装置２０と、３台のクライアントデバイスを備えている。以降、ネットワーク中継装置を「エッジスイッチ」と、コアネットワーク中継装置を「コアスイッチ」と、クライアントデバイスを「端末」とも呼ぶ。なお、エッジスイッチを相互に識別する必要がある場合に、一方をエッジスイッチ＃１、他方をエッジスイッチ＃２等と呼び、エッジスイッチそのものの構成や動作の説明では「エッジスイッチ１０」と呼ぶ。このことは、コアスイッチ、端末についても同様である。また、図１では便宜上、説明上必要としない、他のネットワーク中継装置、回線、端末、およびネットワーク中継装置内の構成部については図示を省略している。このことは、後述する図においても同様である。
【００２２】
エッジスイッチ１０は、拠点間や通信事業者間を結ぶコアネットワークＢＮと、他種のネットワーク（例えば、アクセスネットワークや、ユーザネットワーク）との境界に接続され、コアネットワークＢＮ内で中継されるフレームをカプセル化するスイッチである。コアスイッチ２０は、コアネットワークＢＮにおいて、フレームの中継に用いられるスイッチである。端末３０は、エッジスイッチに接続され、他種のネットワークを構成するデバイスであり、例えば、パーソナルコンピュータや、スイッチ等が含まれる。
【００２３】
エッジスイッチ＃１と端末＃１とは、物理回線ＵＮ１により接続されている。同様に、エッジスイッチ＃１と端末＃２とは物理回線ＵＮ２により、エッジスイッチ＃２と端末＃３とは物理回線ＵＮ３により、それぞれ接続されている。また、コアスイッチ＃１と＃２とは、仮想回線ＬＮＢにより接続されている。同様に、コアスイッチ＃１とエッジスイッチ＃１とは仮想回線ＬＮＡにより、コアスイッチ＃２とエッジスイッチ＃２とは仮想回線ＬＮＣにより、それぞれ接続されている。
【００２４】
仮想回線は、エッジスイッチ１０およびコアスイッチ２０が備えるリンクアグリゲーション（ＬＡ、Link Aggregation）機能により実現される。ＬＡとは、複数の物理回線（物理ポート）を束ねて仮想的な１つの仮想回線（仮想ポート）として取り扱うことを可能とする機能であり、帯域幅の拡大や、冗長性の確保のために用いられる。図１の例では、エッジスイッチ＃１とコアスイッチ＃２の間の３本の物理回線ＬＮＡ１〜ＬＮＡ３が、１本の仮想回線ＬＮＡとして取り扱われている。同様に、コアスイッチ＃１とコアスイッチ＃２の間の３本の物理回線ＬＮＢ１〜ＬＮＢ３が１本の仮想回線ＬＮＢとして、コアスイッチ＃２とエッジスイッチ＃２の間の３本の物理回線ＬＮＣ１〜ＬＮＣ３が１本の物理回線ＬＮＣとして、それぞれ取り扱われている。
【００２５】
また、ＬＡでは、フレーム中継時に、仮想回線を構成する物理回線の、どの物理回線にフレームを出力するかを決定する方法（以降「フレーム振り分け規則」とも呼ぶ。）が複数存在する。本実施例のエッジスイッチ１０およびコアスイッチ２０では、フレーム振り分け規則として、宛先ＭＡＣアドレスと送信元ＭＡＣアドレスに応じた方法を用いる。
【００２６】
図２は、フレームＦＭとカプセル化フレームＣＦＭについて説明するための説明図である。入力側エッジスイッチ１０は、端末３０側から受信したフレームＦＭ（図２（Ａ））に対して、カプセルヘッダＣＨを付与したカプセル化フレームＣＦＭ（図２（Ｂ））を生成し、カプセル化フレームＣＦＭをコアネットワークＢＮ側へ送信する。コアネットワークＢＮ内のコアスイッチ２０は、カプセルヘッダＣＨに含まれる情報に基づいた中継処理を行う。コアネットワークＢＮ側からカプセル化フレームＣＦＭを受信した出力側エッジスイッチ１０は、カプセルヘッダＣＨを外して元のフレームＦＭを取得し、フレームＦＭを端末３０へ送信する。
【００２７】
このようにして、エッジスイッチ１０においてフレームのカプセル化を行うことにより、コアネットワークＢＮ内のコアスイッチ２０は、カプセルヘッダＣＨのみを参照して中継処理を行うことが可能となる。従って、コアスイッチ２０は、ユーザネットワークやアクセスネットワークの構成変更、端末３０の台数増加等の影響を受けず、さらに、コアスイッチ２０内の経路表の登録数を大幅に削減することが可能となる。この結果、コアスイッチ２０における学習処理や、宛先判定処理における処理負荷を少なくすることができる。なお、本実施例では、あるプロトコルのフレーム（フレームＦＭ）全体を、他のプロトコルのフレーム（カプセル化フレームＣＦＭ）のデータとして処理することを「カプセル化」と呼ぶ。
【００２８】
図２（Ａ）は、カプセル化前のフレームＦＭの構造を概略的に示す。カプセル化前のフレームＦＭは、イーサネットヘッダＥＨと、データＤＴとを含んでいる。イーサネットヘッダＥＨは、宛先ＭＡＣアドレスと、送信元ＭＡＣアドレスと、ユーザＶＬＡＮ識別子とを含んでいる。ユーザＶＬＡＮ識別子は、ユーザネットワーク内において用いられるＶＬＡＮの識別子であり、ユーザネットワーク内のスイッチ等によって付与される。ユーザＶＬＡＮ識別子は省略可能である。また、データＤＴは、図示しないＩＰヘッダと、ＴＣＰヘッダ、および、データを含んでいる。
【００２９】
図２（Ｂ）は、カプセル化後のフレームＣＦＭの構造を概略的に示す。カプセル化フレームＣＦＭは、図２（Ａ）のフレームＦＭと、カプセルヘッダＣＨとを含んでいる。カプセルヘッダＣＨは、宛先エッジスイッチＭＡＣアドレスと、送信元エッジスイッチＭＡＣアドレスと、コアＶＬＡＮ識別子とを含んでいる。コアＶＬＡＮ識別子は、コアネットワーク内において用いられるＶＬＡＮの識別子である。コアＶＬＡＮ識別子は省略可能である。このように、カプセルヘッダＣＨの構成は、イーサネットヘッダＥＨと同様の構造となっている。
【００３０】
図１のネットワークシステム１０００において、ある端末から他の端末、例えば、端末＃１から端末＃３へ向けての、同一フローに属するフレームが中継される様子について説明する。なお、本実施例において「同一フローに属するフレーム」とは、「宛先と送信元が同じである一群のフレーム」を意味する。
【００３１】
端末＃１から端末＃３へ向けて送信された最初のフレームＦＭ（１）は、物理回線ＵＮ１を介してエッジスイッチ＃１へ送信される。
【００３２】
フレームＦＭ（１）を受信したエッジスイッチ＃１は、宛先判定処理を実行すると共に、宛先判定処理の結果に基づいて、フレームＦＭ（１）をカプセル化したフレームであるカプセル化フレームＣＦＭ（１）を生成する。そして、エッジスイッチ＃１は、生成したカプセル化フレームＣＦＭ（１）を、仮想回線ＬＮＡを用いて、コアスイッチ＃１へ送信する。この送信の際、エッジスイッチ＃１は、カプセルヘッダＣＨに含まれる宛先エッジスイッチＭＡＣアドレスと、送信元エッジスイッチＭＡＣアドレスに応じて、仮想回線ＬＮＡを構成する物理回線ＬＮＡ１〜ＬＮＡ３の、どの物理回線にフレームを出力するかを決定する。なお、物理回線の決定方法については後述する。図１の例では、カプセル化フレームＣＦＭ（１）は、物理回線ＬＮＡ１から出力されたものとする。
【００３３】
カプセル化フレームＣＦＭ（１）を受信したコアスイッチ＃１は、宛先判定処理を実行し、カプセル化フレームＣＦＭ（１）を、仮想回線ＬＮＢを用いて、コアスイッチ＃２へ送信する。この送信の際、コアスイッチ＃１は、カプセルヘッダＣＨに含まれる宛先エッジスイッチＭＡＣアドレスと、送信元エッジスイッチＭＡＣアドレスに応じて、仮想回線ＬＮＢを構成する物理回線ＬＮＢ１〜ＬＮＢ３の、どの物理回線にフレームを出力するかを決定する。
【００３４】
カプセル化フレームＣＦＭ（１）を受信したコアスイッチ＃２は、コアスイッチ＃１と同様に、宛先判定処理を実行し、カプセル化フレームＣＦＭ（１）をエッジスイッチ＃２へ送信する。
【００３５】
カプセル化フレームＣＦＭ（１）を受信したエッジスイッチ＃２は、カプセル化フレームＣＦＭ（１）からカプセルヘッダＣＨを外す。そして、エッジスイッチ＃２は、カプセル化解除後のフレームＦＭ（１）に対して宛先検索処理を実行し、フレームＦＭ（１）を、物理回線ＵＮ３を用いて端末＃３へ送信する。
【００３６】
端末＃１から端末＃３へ向けて送信された２番目のフレームＦＭ（２）は、物理回線ＵＮ１を介してエッジスイッチ＃１へ送信される。
【００３７】
フレームＦＭ（２）を受信したエッジスイッチ＃１は、宛先判定処理を実行すると共に、カプセル化フレームＣＦＭ（２）を生成する。本実施例のエッジスイッチ１０は、このカプセル化フレーム生成の際に、前回フレームが出力された物理回線と同じ物理回線がフレーム振り分け規則によって選択されるように、カプセルヘッダＣＨの内容に対して演算を実行したうえで、カプセルヘッダＣＨを付与する。そして、エッジスイッチ＃１は、生成したカプセル化フレームＣＦＭ（２）を、仮想回線ＬＮＡを用いて、コアスイッチ＃１へ送信する。この送信の際、カプセルヘッダＣＨの内容に演算が実行されていることにより、カプセル化フレームＣＦＭ（２）は、前回フレームが出力された物理回線と同じ物理回線（すなわち、図１の例では物理回線ＬＮＡ１）に対して出力される。
【００３８】
カプセル化フレームＣＦＭ（２）を受信したコアスイッチ＃１は、宛先判定処理を実行し、カプセル化フレームＣＦＭ（２）を、仮想回線ＬＮＢを用いて、コアスイッチ＃２へ送信する。カプセル化フレームＣＦＭ（２）のカプセルヘッダＣＨは、エッジスイッチ＃１による演算が実行されている。このため、コアスイッチ＃１においても、カプセル化フレームＣＦＭ（２）は、前回フレームが出力された物理回線と同じ物理回線（すなわち、図１の例では物理回線ＬＮＢ１）に対して出力される。
【００３９】
カプセル化フレームＣＦＭ（２）を受信したコアスイッチ＃２は、コアスイッチ＃１と同様に、宛先判定処理を実行し、カプセル化フレームＣＦＭ（２）をエッジスイッチ＃２へ送信する。コアスイッチ＃２においても、カプセルヘッダＣＨに対する演算によって、カプセル化フレームＣＦＭ（２）は、前回フレームが出力された物理回線と同じ物理回線（すなわち、図１の例では物理回線ＬＮＣ１）に対して出力される。
【００４０】
カプセル化フレームＣＦＭ（２）を受信したエッジスイッチ＃２は、カプセル化フレームＣＦＭ（２）からカプセルヘッダＣＨを外す。そして、エッジスイッチ＃２は、カプセル化解除後のフレームＦＭ（２）に対して宛先検索処理を実行し、フレームＦＭ（２）を、物理回線ＵＮ３を用いて端末＃３へ送信する。
【００４１】
３番目以降のフレームについても、フレームＦＭ（２）と同様の処理が繰り返される。
【００４２】
このように、本実施例のエッジスイッチ１０（ネットワーク中継装置）を用いたネットワーク１０００では、エッジスイッチ１０が、カプセル化フレームを生成する際に、前回フレームが出力された物理回線と同じ物理回線がフレーム振り分け規則によって選択されるように、カプセルヘッダＣＨが付与される。従って、カプセルヘッダＣＨの内容に応じてフレームの中継が行われる範囲、すなわち、図１のエッジスイッチ＃１からエッジスイッチ＃２までの範囲において、宛先と送信元が同じである一群のフレーム（同一フローに属するフレーム）は、同じ物理回線を用いて中継されることとなる。一群のフレームが同じ物理回線を用いて中継されることは、すなわち、一群のフレームが中継される物理回線の伝送遅延時間や送信制御ポリシーが同じであることにつながる。このため、本実施例のエッジスイッチ１０を用いたネットワーク１０００では、入力側エッジスイッチ１０（エッジスイッチ＃１）にフレームが入力された順序と、出力側エッジスイッチ１０（エッジスイッチ＃２）からフレームが出力される順序とを同じにすることができる、すなわち、フレームの到達順序を保証することができる。
【００４３】
以上の結果、本実施例では、コアネットワーク内の物理回線を冗長化しつつ、コアネットワーク内で中継されるフレームをカプセル化するネットワーク中継装置において、宛先と送信元が同じである一群のフレーム（同一フローに属するフレーム）の到達順序を保証することができる。
【００４４】
（Ａ−２）比較例：
図３は、比較例においてフレームが中継される様子を示す説明図である。ネットワーク１０００ｘは、エッジスイッチ１０に代えて、比較例（従来例）のエッジスイッチ１０ｘを備えることにより構成されている。各スイッチの接続関係および仮想回線の説明は図１と同様である。
【００４５】
比較例のネットワークシステム１０００ｘにおいて、図１と同様の事例、すなわち、端末＃１から端末＃３へ向けての同一フローに属するフレームが中継される場合について考える。
【００４６】
比較例のエッジスイッチ１０ｘでは、カプセル化フレーム生成の際に、カプセルヘッダＣＨに対する演算が行われない。このため、入力側エッジスイッチ１０ｘ（エッジスイッチ＃１ｘ）において、出力側エッジスイッチ１０ｘ（エッジスイッチ＃２ｘ）のアドレス学習が行われていない場合、エッジスイッチ＃１ｘは、カプセル化フレーム生成の際、カプセルヘッダＣＨ内の「宛先エッジスイッチＭＡＣアドレス」に、マルチキャストアドレスを設定する。一方で、入力側エッジスイッチ１０ｘ（エッジスイッチ＃１ｘ）において、出力側エッジスイッチ１０ｘ（エッジスイッチ＃２ｘ）のアドレス学習が行われた以降では、エッジスイッチ＃１ｘは、カプセル化フレーム生成の際、カプセルヘッダＣＨ内の「宛先エッジスイッチＭＡＣアドレス」に、エッジスイッチ＃２ｘのＭＡＣアドレスを設定する。
【００４７】
このように、比較例のネットワークシステム１０００ｘでは、入力側エッジスイッチにおける、出力側エッジスイッチのアドレス学習の有無によって、カプセルヘッダＣＨの内容に変動が生じる。従って、比較例のネットワークシステム１０００ｘでは、宛先ＭＡＣアドレスと送信元ＭＡＣアドレスに応じたフレーム振り分け規則を用いた場合、カプセルヘッダＣＨの内容に応じてフレームの中継が行われる範囲、すなわち、図３のエッジスイッチ＃１ｘからエッジスイッチ＃２ｘまでの範囲において、同一フローに属するフレームが、異なる物理回線を用いて中継される場合が生じる。
【００４８】
同一フローに属するフレームが異なる物理回線を用いて中継された場合、中継に用いられた物理回線の伝送遅延時間や送信制御ポリシーの違いによって、フレーム中継速度にばらつきが生じることとなる。この結果、比較例のエッジスイッチ１０ｘを用いたネットワーク１０００ｘでは、入力側エッジスイッチ１０ｘ（エッジスイッチ＃１ｘ）にフレームが入力された順序と、出力側エッジスイッチ１０ｘ（エッジスイッチ＃２ｘ）からフレームが出力される順序が異なる場合が生じる。すなわち、フレームの到達順序を保証できないという問題が生じる。フレームの到達順序が保証できないと、例えば、ＶｏＩＰ（Voice over Internet Protocol）などの、フレーム順序の変動に敏感なアプリケーションへ悪影響を与えてしまう。
【００４９】
なお、上記問題の発生を回避し、フレームの到達順序を保証するために、ＬＡにおいて、ＶＬＡＮ識別子のみに基づいたフレーム振り分け規則を用いることができるが、この場合、仮想回線内でのトラフィック分散が十分に図れないという新たな問題を生じる。また、上記問題の発生を回避し、フレームの到達順序を保証するために、ＬＡにおいて、送信元ＭＡＣアドレスのみに基づいたフレーム振り分け規則を用いることができるが、この場合、対応機器が乏しく、実用性に欠くという新たな問題を生じる。
【００５０】
Ｂ．第１実施例：
（Ｂ−１）システム構成：
図４は、本発明の一実施例としてのエッジスイッチ１０の概略構成を示す説明図である。エッジスイッチ１０は、カプセル化技術としてＥｏＥ（Ethernet over Ethernet）を用いたエッジスイッチである。エッジスイッチ１０は、中継処理部１００と、複数の物理ポート１０８とを備えている。
【００５１】
中継処理部１００は、メモリ１０２と、共有メモリ１０４と、ＣＰＵ１０６とを含んでいる。中継処理部１００は、物理ポート１０８を介して受信したフレームである受信フレームを、共有メモリ１０４に格納する。中継処理部１００は、メモリ１０２に格納されているコンピュータプログラムをＣＰＵ１０６に展開して実行することにより実現される機能によって、共有メモリ１０４上に格納されたフレームを処理し、適切な物理ポート１０８へ出力する。なお、中継処理部１００は、図４のようにソフトウェアを用いて実現する構成とするほか、ＡＳＩＣ（Application Specific Integrated Circuit）等のハードウェアを用いて実現する構成としてもよい。
【００５２】
図５は、エッジスイッチ１０の中継処理部１００の機能ブロック図である。中継処理部１００は、ノードアドレス１１０と、ハッシュ処理部１２０と、ＬＡテーブル１３０と、フレーム転送部１４０と、ＦＤＢ（Forwarding Database）１５０と、カプセル処理部１６０と、フィルタテーブル１７０とを含んでいる。
【００５３】
ノードアドレス１１０は、自装置のＭＡＣアドレス情報であり、メモリ１０２に予め記憶されている。自装置のＭＡＣアドレス情報は、後述の宛先判定処理において、カプセル化フレームを受信した際に、その宛先が自分自身であるか否かを判定するために用いられる。また、自装置のＭＡＣアドレス情報は、後述のカプセル化処理において、フレームのカプセル化の際にも使用される。ＥｏＥの場合、ノードアドレス１１０は３６ビットの値である。ハッシュ処理部１２０は、フレーム中継時に、フレームの内容に基づいて、仮想回線を構成する物理回線の、どの物理回線にフレームを出力するかを決定する。フレーム転送部１４０は、エッジスイッチ１０が受信したフレームの中継処理全般を司る。具体的には、フレーム転送部１４０は、受信フレームに対して後述のフレーム受信時処理を実行し、フレームを中継する。なお、ハッシュ処理部１２０と、フレーム転送部１４０とが協働することで、仮想回線制御部（図５では「ＬＡ制御部」と表記）として動作する。カプセル処理部１６０は、受信フレームのカプセル化、および、カプセル化の解除を行う処理部である。詳細は後述する。
【００５４】
図６は、ＬＡテーブル１３０の一例を示す説明図である。ＬＡテーブル１３０は、仮想回線と物理回線の対応付けを記憶するテーブルである。ＬＡテーブル１３０は、コンフィギュレーション設定等により予め生成され、メモリ１０２に記憶されている。ＬＡテーブル１３０は、ＬＡ識別子と、物理ポートリストをと含んでいる。ＬＡ識別子には、エッジスイッチ１０に構成されている仮想回線を相互に識別するための識別子が格納されている。物理ポートリストには、ＬＡ識別子により識別される仮想回線に割り当てられた物理ポート（物理回線）の識別子が格納されている。例えば、図６の例では、エッジスイッチ１０には、ＬＡＧ１と、ＬＡＧ２という２つの仮想回線が構成されており、ＬＡＧ１で識別される仮想回線には、Ｐｏｒｔ＃１、＃２、＃３で識別される３つの物理ポートが割り当てられていることがわかる。
【００５５】
図７は、ＦＤＢ１５０の一例を示す説明図である。ＦＤＢ１５０は、後述の宛先判定処理において、受信フレームの転送先を決定するために用いられるデータベースである。ＦＤＢ１５０は、特許請求の範囲における「宛先表」に相当する。ＦＤＢ１５０は、宛先アドレスと、入力側ＶＬＡＮ識別子と、出力先と、カプセル化情報とを含んでいる。宛先アドレスは、宛先判定処理において、受信したフレームＦＭのイーサネットヘッダＥＨに格納された宛先ＭＡＣアドレスと照合する際に用いられる。入力側ＶＬＡＮ識別子は、宛先判定処理において、受信したフレームＦＭのイーサネットヘッダＥＨに格納されたユーザＶＬＡＮ識別子と照合する際に用いられる。出力先は、宛先判定処理において、受信したフレームＦＭの出力先である仮想回線または物理ポートを決定するために用いられる。カプセル化情報は、宛先判定処理のカプセル化処理において、受信したフレームＦＭをカプセル化する際に用いられる。
【００５６】
例えば、図７のエントリＥ２１の例では、受信したフレームＦＭのイーサネットヘッダＥＨに格納された宛先ＭＡＣアドレスが「ＭＡＣ＿Ｔ３」であり、ユーザＶＬＡＮ識別子が「ＶＬ１」であった場合、出力先として仮想回線「ＬＡＧ１」が選択されることがわかる。さらに、フレームＦＭを「ＭＡＣ＿Ｅ２  ＠ＶＬ１」という情報を用いてカプセル化することがわかる。また、図７のエントリＥ２２の例では、受信したフレームＦＭのイーサネットヘッダＥＨに格納された宛先ＭＡＣアドレスが「ＭＡＣ＿Ｔ２」であり、ユーザＶＬＡＮ識別子が「ＶＬ２」であった場合、出力先として物理回線「Ｐｏｒｔ＃２」が選択されることがわかる。さらに、出力先として物理回線が選択されることに伴い、フレームＦＭのカプセル化は「ｎｏｎｅ」、すなわち、カプセル化を実施しないことがわかる。また、図７のエントリＥ２３の例では、受信したフレームＦＭのイーサネットヘッダＥＨに格納された宛先ＭＡＣアドレスが、他のエントリの内容と一致せず、かつ、ユーザＶＬＡＮ識別子が「ＶＬ１」であった場合、出力先として仮想回線「ＬＡＧ１」が選択されることがわかる。さらに、フレームＦＭを「Ｍｕｌｔｉｃａｓｔ  ＠ＶＬ１」という情報を用いて、換言すれば、マルチキャストアドレスを用いてカプセル化することがわかる。
【００５７】
初期状態においてＦＤＢ１５０に登録されているエントリはエントリＥ２３のみであり、残りのエントリについては、エッジスイッチ１０の学習処理によって内容が随時更新される。具体的には、受信フレームがカプセル化されていないフレームＦＭであった場合、エッジスイッチ１０は、フレームＦＭの送信元ＭＡＣアドレスを用いて、ＦＤＢ１５０の宛先アドレスフィールドを更新する。同様に、エッジスイッチ１０は、フレームＦＭのユーザＶＬＡＮ識別子を用いて、ＦＤＢ１５０の入力側ＶＬＡＮ識別子フィールドを、フレームＦＭが入力されたポート情報を用いて、ＦＤＢ１５０の出力先フィールドを、それぞれ更新する。また、カプセル化情報のフィールドは「ｎｏｎｅ」とする。
【００５８】
一方で、受信フレームがカプセル化フレームＣＦＭであった場合、エッジスイッチ１０は、カプセル化解除後のフレームＦＭの送信元ＭＡＣアドレスを用いて、ＦＤＢ１５０の宛先アドレスフィールドを更新する。同様に、エッジスイッチ１０は、カプセル化解除後のフレームＦＭのユーザＶＬＡＮ識別子を用いて、ＦＤＢ１５０の入力側ＶＬＡＮ識別子フィールドを、フレームＦＭが入力されたポート情報を用いて、ＦＤＢ１５０の出力先フィールドを、それぞれ更新する。また、カプセル化情報のフィールドは、カプセル化フレームＣＦＭのカプセルヘッダＣＨ内の送信元エッジスイッチＭＡＣアドレスと、コアＶＬＡＮ識別子とを用いて更新する。
【００５９】
図８は、フィルタテーブル１７０の一例を示す説明図である。フィルタテーブル１７０は、フレーム転送部１４０が、フレームを物理ポート１０８へ出力する際に、その宛先アドレスと出力先物理ポートとの組み合わせによって、フレームの通過・廃棄を決定する際に用いられるテーブルである。フィルタテーブル１７０は、コンフィギュレーション設定等により予め生成され、メモリ１０２に記憶されている。フィルタテーブル１７０は、宛先アドレスと、出力先物理ポートと、動作とを含んでいる。宛先アドレスは、フレームの通過・廃棄の決定において、出力フレームのイーサネットヘッダＥＨに格納された宛先ＭＡＣアドレスと照合する際に用いられる。出力先物理ポートは、フレームの通過・廃棄の決定において、出力フレームの出力先ポートを判定するために用いられる。動作は、宛先アドレスと、出力先物理ポートの組み合わせについての、フレーム転送部１４０の動作が格納されている。
【００６０】
例えば、図８のエントリＥ３１の例では、出力フレームのイーサネットヘッダＥＨに格納された宛先ＭＡＣアドレスが「ＭＡＣ＿Ｔ３」であり、かつ、出力先物理ポートが「Ｐｏｒｔ＃３」である場合、当該フレームの動作は「Ｐｅｒｍｉｔ」、すなわち、通過可と判定されることを示している。同様に、エントリＥ３２、Ｅ３３の例では、宛先ＭＡＣアドレスが「ＭＡＣ＿Ｔ１」かつ出力先物理ポートが「Ｐｏｒｔ＃１」である場合と、宛先ＭＡＣアドレスが「ＭＡＣ＿Ｔ２」かつ出力先物理ポートが「Ｐｏｒｔ＃２」である場合は、当該フレームは通過可と判定されることを示している。一方、エントリＥ３４の例では、出力フレームのイーサネットヘッダＥＨに格納された宛先ＭＡＣアドレスの如何に関わらず、上位エントリに一致せず、かつ、出力先物理ポートが「Ｐｏｒｔ＃１」であるフレームの動作は「Ｄｅｎｙ」、すなわち、廃棄と判定されることを示している。エントリＥ３５、Ｅ３６も同様である。
【００６１】
（Ｂ−２）フレーム受信時処理：
図９は、フレーム受信時処理の手順を示すフローチャートである。フレーム受信時処理は、フレーム転送部１４０が物理ポート１０８からフレームを受信した際に実行される。
【００６２】
フレーム転送部１４０は、物理ポート１０８に到着したフレームを取得する（ステップＳ１０２）。そして、フレーム転送部１４０は、取得したフレームに対して、後述の宛先判定処理を実行し、フレームの出力先を決定する（ステップＳ１０４）。フレーム転送部１４０は、ステップＳ１０４によって決定したフレームの出力先が仮想回線であるか否かを判定する（ステップＳ１０６）。フレームの出力先が仮想回線でない場合（ステップＳ１０６：ＮＯ）、フレーム転送部１４０は処理をステップＳ１１２へ遷移させる。
【００６３】
一方、フレームの出力先が仮想回線である場合（ステップＳ１０６：ＹＥＳ）、フレーム転送部１４０は、フレーム振り分け規則に基づいて、フレームの振分処理を行う。なお、振分処理とは、フレームの出力先である仮想回線を構成する物理回線のうち、どの物理回線に対して実際にフレームを出力するかを決定する処理を意味する。
【００６４】
具体的には、まず、フレーム転送部１４０は、ハッシュ処理部１２０に、出力予定のフレームから一意な数字を算出させる（ステップＳ１０８）。なお、ハッシュ処理部１２０が算出する「一意な数字」を、以降「ハッシュ値」とも呼ぶ。本実施例のハッシュ処理部１２０は、カプセル化フレームＣＦＭのカプセルヘッダＣＨに含まれる宛先エッジスイッチＭＡＣアドレスと、送信元エッジスイッチＭＡＣアドレスとを用いて、以下の手順でハッシュ値を算出する。
手順ａ１）固定長の整数とみなした宛先エッジスイッチＭＡＣアドレスと、送信元エッジスイッチＭＡＣアドレスを加算する。
手順ａ２）加算結果を、ＬＡテーブル１３０の物理ポートリストフィールドに入りうる物理ポートの最大数で除算して、その余りを求める。求めた余りをハッシュ値として用いる。
【００６５】
次に、フレーム転送部１４０は、ステップＳ１０８で算出されたハッシュ値から、実際にフレームを出力する物理ポート（物理回線）を選択する（ステップＳ１１０）。選択は、以下の手順で行う。
手順ｂ１）宛先判定処理（ステップＳ１０４）で決定されたフレームの出力先仮想回線の識別子をキーとしてＬＡテーブル１３０を検索する。
手順ｂ２）一致したエントリの物理ポートリストに格納された物理ポート（物理回線）の識別子群について、先頭から数えてステップＳ１０８で求めた「ハッシュ値」番目に格納された識別子を求める。
このようにすれば、宛先のアドレスと送信元のアドレスとが同じフレームについては、仮想回線内の同じ物理回線に振りわけられる。なお、例えば、物理ポートの識別子群の数よりも、ステップＳ１０８で求めたハッシュ値の方が大きい場合、フレーム転送部１４０は、物理ポートの識別子群の先頭に戻り、引き続き計算を継続することができる。
【００６６】
フレーム転送部１４０は、フレームを出力することが可能か否かを判定する（ステップＳ１１２）。具体的には、フレーム転送部１４０は、出力予定のフレームのイーサネットヘッダＥＨ内の宛先ＭＡＣアドレスと、宛先判定処理（ステップＳ１０４）またはステップＳ１１０の処理において求められた物理ポートの識別子と、をキーとして、フィルタテーブル１７０を検索する。フレーム転送部１４０は、一致したエントリの動作フィールドの値が、Ｐｅｒｍｉｔであるか否かを判定する（ステップＳ１１４）。一致したエントリの動作フィールドの値がＰｅｒｍｉｔである場合（ステップＳ１１４：ＹＥＳ）、フレーム転送部１４０は、宛先判定処理（ステップＳ１０４）またはステップＳ１１０の処理において求められた識別子を有する物理ポートに対して、フレームを出力する（ステップＳ１１６）。一方、一致したエントリの動作フィールドの値がＰｅｒｍｉｔでない場合（ステップＳ１１４：ＮＯ）、フレーム転送部１４０は、フレームを廃棄する（ステップＳ１１８）。
【００６７】
（Ｂ−３）宛先判定処理：
図１０は、宛先判定処理の手順を示すフローチャートである。宛先判定処理は、図９のフレーム受信時処理のステップＳ１０４において呼び出されるサブルーチンである。
【００６８】
フレーム転送部１４０は、図９のステップＳ１０２において取得したフレームのヘッダを参照し、当該フレームはカプセル化フレームであるか否かを判定する（ステップＳ２０２）。なお、例えばＥｏＥの場合、イーサネットのフレーム種別を示すＥｔｈｅｒｎｅｔ Ｔｙｐｅフィールドの値が「０ｘＥ０Ｅ０」である場合、カプセル化フレームであると判定することができる。
【００６９】
ステップＳ２０２において、取得したフレームがカプセル化フレームである（ステップＳ２０２：ＹＥＳ）と判定された場合、フレーム転送部１４０は、取得したフレームのカプセルヘッダＣＨを用いて、当該フレームが自装置宛てであるか否かを判定する（ステップＳ２０４）。具体的には、フレーム転送部１４０は、カプセルヘッダＣＨ内の宛先エッジスイッチＭＡＣアドレスの先頭３６ビットが、ノードアドレス１１０と一致する場合、当該フレームが自装置宛てであると判定する。フレーム転送部１４０は、カプセルヘッダＣＨ内の宛先エッジスイッチＭＡＣアドレスがマルチキャストアドレスである場合にも、当該フレームが自装置宛てであると判定する。取得したフレームが自装置宛てではないと判定された場合（ステップＳ２０４：ＮＯ）、フレーム転送部１４０は、当該フレームを廃棄し、宛先判定処理およびフレーム受信時処理を終了する（ステップＳ２０６）。
【００７０】
取得したフレームが自装置宛てであると判定された場合（ステップＳ２０４：ＹＥＳ）、フレーム転送部１４０は、カプセル処理部１６０に対して、当該フレームからカプセルヘッダＣＨを削除するよう指示する（ステップＳ２０８）。指示を受けたカプセル処理部１６０は、取得したフレームからカプセルヘッダＣＨを削除する。フレーム転送部１４０は、カプセルヘッダＣＨ削除後のフレームＦＭに含まれるイーサネットヘッダＥＨを用いて、宛先検索を行う（ステップＳ２１０）。具体的には、フレーム転送部１４０は、イーサネットヘッダＥＨの宛先ＭＡＣアドレスと、ユーザＶＬＡＮ識別子をキーとしてＦＤＢ１５０を検索し、一致したエントリの出力先フィールドの値を、フレームの出力先として決定する（ステップＳ２１２）。その後、フレーム転送部１４０は宛先判定処理を終了し、フレーム受信時処理（図９）へ戻る。
【００７１】
一方、ステップＳ２０２において、取得したフレームがカプセル化フレームでない（ステップＳ２０２：ＮＯ）と判定された場合、フレーム転送部１４０は、取得したフレームのイーサネットヘッダＥＨを用いて、宛先検索を行う（ステップＳ２１４）。具体的には、フレーム転送部１４０は、イーサネットヘッダＥＨの宛先ＭＡＣアドレスと、ユーザＶＬＡＮ識別子をキーとしてＦＤＢ１５０を検索する。フレーム転送部１４０は、検索の結果、一致したエントリのカプセル化情報フィールドの値が「ｎｏｎｅ」であるか否かを判定する（ステップＳ２１６）。カプセル化情報フィールドの値が「ｎｏｎｅ」である場合（ステップＳ２１６：ＹＥＳ）、フレーム転送部１４０は、処理をステップＳ２２０へ遷移させる。
【００７２】
カプセル化情報フィールドの値が「ｎｏｎｅ」でない場合（ステップＳ２１６：ＮＯ）、フレーム転送部１４０は、カプセル処理部１６０に後述のカプセル化処理を実行させ、カプセル化フレームＣＦＭを生成させる（ステップＳ２１８）。フレーム転送部１４０は、ステップＳ２１４の宛先検索の結果、一致したエントリの出力先フィールドの値を、フレームの出力先として決定する（ステップＳ２２０）。その後、フレーム転送部１４０は宛先判定処理を終了し、フレーム受信時処理（図９）へ戻る。
【００７３】
このように、宛先判定処理では、エッジスイッチ１０が取得したフレームがカプセル化フレームであるか否かによって、実行される処理が、処理ＣＰと処理ＮＣＰとに大別される。具体的には、エッジスイッチ１０が取得したフレームがカプセル化フレームＣＦＭである場合、当該フレームはコアネットワークＢＮ側から受信したフレームであるとして、カプセルヘッダＣＨを外して元のフレームＦＭを取得後、フレームＦＭを端末３０へ送信する。一方で、エッジスイッチ１０が取得したフレームがカプセル化フレームでない場合、当該フレームは端末３０側から受信したフレームであるとして、カプセルヘッダＣＨを付与してカプセル化フレームＣＦＭを生成し、カプセル化フレームＣＦＭをコアネットワークＢＮ側へ送信する。
【００７４】
（Ｂ−４）カプセル化処理：
図１１は、カプセル化処理の手順を示すフローチャートである。カプセル化処理は、図１０の宛先判定処理のステップＳ２１８において呼び出されるサブルーチンであり、カプセル処理部１６０によって実行される。
【００７５】
カプセル処理部１６０は、カプセル化対象フレーム、すなわち、図９のステップＳ１０２において取得されたフレームについて、以降の処理を行う。まず、カプセル処理部１６０は、カプセル化対象フレームを、ＦＤＢ１５０の宛先アドレスが（ａｎｙ）であるエントリ（図７：エントリＥ２３）のカプセル化情報を用いてカプセル化する（ステップＳ３０２）。そして、カプセル処理部１６０は、カプセル化対象フレームのイーサネットヘッダＥＨの宛先ＭＡＣアドレスと、ユーザＶＬＡＮ識別子をキーとしてＦＤＢ１５０を検索し、カプセル化対象フレームが実際に、ＦＤＢ１５０の宛先アドレスが（ａｎｙ）であるエントリに一致するか否かを判定する（ステップＳ３０４）。宛先アドレスが（ａｎｙ）であるエントリに一致する場合（ステップＳ３０４：ＹＥＳ）、カプセル処理部１６０は、カプセル化処理を終了し、処理を宛先判定処理（図１０）へ戻す。その後、宛先判定処理においては、ステップＳ３０２で生成されたカプセル化フレームＣＦＭがそのまま使用される。
【００７６】
一方、宛先アドレスが（ａｎｙ）であるエントリに一致しない場合（ステップＳ３０４：ＮＯ）、カプセル処理部１６０は、正しい宛先アドレスを用いて、カプセル化をやり直す必要がある。なお、宛先アドレスが（ａｎｙ）であるエントリに一致しない場合とは、当該フレームの宛先である端末から過去にフレームを受信したことにより、宛先端末のアドレスが既にＦＤＢ１５０に学習済みの場合である。
【００７７】
まず、カプセル処理部１６０は、ハッシュ処理部１２０に、ステップＳ３０２で生成されたカプセル化フレームＣＦＭからハッシュ値を算出させる（ステップＳ３０６）。次に、カプセル処理部１６０は、カプセル化対象フレームを、ステップＳ３０４のＦＤＢ１５０検索において、実際に一致したエントリのカプセル化情報を用いてカプセル化する（ステップＳ３０８）。カプセル処理部１６０は、ハッシュ処理部１２０に、ステップＳ３０８で生成された（もしくは、ステップＳ３１４で宛先アドレスが演算された）カプセル化フレームＣＦＭから、ハッシュ値を算出させる（ステップＳ３１０）。カプセル処理部１６０は、ステップＳ３０６の計算結果と、ステップＳ３１０の計算結果が一致するか判定する（ステップＳ３１２）。計算結果が一致する場合（ステップＳ３１２：ＹＥＳ）、カプセル処理部１６０は、カプセル化処理を終了し、処理を宛先判定処理（図１０）へ戻す。その後、宛先判定処理においては、ステップＳ３０８で生成されたカプセル化フレームＣＦＭがそのまま使用される。
【００７８】
計算結果が一致しない場合、カプセル処理部１６０は、カプセル化フレームＣＦＭのうちの、固定長の整数とみなした宛先エッジスイッチＭＡＣアドレスを＋１（演算）する（ステップＳ３１４）。その後、カプセル処理部１６０は、処理をステップＳ３１０へ遷移させ、アドレス演算後のカプセル化フレームＣＦＭを用いて、ハッシュ処理部１２０に再計算させる。カプセル処理部１６０は、ステップＳ３１２の計算結果が一致するまで、ステップＳ３１０〜Ｓ３１４の処理を繰り返す。
【００７９】
なお、ステップＳ３１４の演算の際、カプセル処理部１６０は、宛先エッジスイッチＭＡＣアドレスの下位１２ビットの範囲で演算を行う。ＥｏＥでは、４８ビットの宛先アドレスのうち、上位３６ビットをアドレス照合の際に用いるためである。すなわち、下位１２ビットの範囲内であれば、宛先エッジスイッチＭＡＣアドレスが変動しても、ＥｏＥを用いたエッジスイッチのアドレス照合には影響を及ぼさない。なお、演算の結果、下位１２ビットの範囲内で桁あふれが発生する場合は、０から再度演算しなおすことができる。ハッシュ処理部１２０は、ランダムなハッシュ値を生成するという性質を持つため、０から再び演算しても、ステップＳ３１０〜Ｓ３１４の処理は無限に繰り返さない。
【００８０】
図１２は、同一フローに属するフレームが、本実施例のエッジスイッチ１０によってどのようにカプセル化されるかを示す説明図である。
【００８１】
図１２（Ａ）は、本実施例のエッジスイッチ１０によってカプセル化された同一フローに属する４つのフレームの例を示す。図１２（Ａ）では、図１に示した本実施例のネットワークシステム１０００において、端末＃１から端末＃３へ向けての同一フローに属するフレームが中継される場合について示す。ここで、フレームの入力側エッジスイッチ１０（エッジスイッチ＃１）のＦＤＢ１５０には、宛先である端末＃３のアドレス学習が行われていない場合について例示する。
【００８２】
最初のフレームＦＭ（１）は、エッジスイッチ＃１のカプセル化処理（図１１）のステップＳ３０２において、ＦＤＢ１５０の宛先アドレス（ａｎｙ）であるエントリＥ２３（図７）のカプセル化情報を用いたカプセル化が行われる。この結果、カプセル化フレームＣＦＭ（１）が生成される。カプセル化フレームＣＦＭ（１）は、宛先エッジスイッチＭＡＣアドレスにマルチキャストアドレスが、送信元エッジスイッチＭＡＣアドレスにエッジスイッチ＃１のＭＡＣアドレスが、それぞれ格納されている。
【００８３】
次に、カプセル化処理（図１１）のステップＳ３０４において、カプセル処理部１６０は、カプセル化対象フレームであるフレームＦＭ（１）が実際に、ＦＤＢ１５０の（ａｎｙ）のエントリに一致するかを判定する。端末＃３のＭＡＣアドレスは未学習であることから、フレームＦＭ（１）はＦＤＢ１５０の（ａｎｙ）のエントリに一致し（ステップＳ３０４：ＹＥＳ）、カプセル化処理は終了される。その後、カプセル化フレームＣＦＭ（１）は、宛先判定処理（図１０）を経て、フレーム受信時処理（図９）のステップＳ１０８において、対応するハッシュ値が求められる。求められたハッシュ値は「１」であるものとする。カプセル化フレームＣＦＭ（１）は、フレーム受信時処理（図９）のステップＳ１１０において、求められたハッシュ値「１」から、実際にフレームを出力する物理ポート（物理回線）が選択される。
【００８４】
２番目のフレームＦＭ（２）は、最初のフレームＦＭ（１）と同様に、エッジスイッチ＃１のカプセル化処理（図１１）のステップＳ３０２において、ＦＤＢ１５０の（ａｎｙ）のエントリＥ２３（図７）のカプセル化情報を用いたカプセル化が行われる。この結果、カプセル化フレームＣＦＭ（２）が生成される。しかし、最初のカプセル化フレームＣＦＭ（１）のマルチキャスト送信に対する応答フレームの受信によって、ＦＤＢ１５０には既に端末＃３のＭＡＣアドレスが学習されている。従って、カプセル化処理（図１１）のステップＳ３０４において、カプセル処理部１６０は、フレームＦＭ（２）はＦＤＢ１５０の（ａｎｙ）のエントリには一致しないと判定する（ステップＳ３０４：ＮＯ）。そこで、ステップＳ３０６においてカプセル処理部１６０は、ステップＳ３０２で生成したカプセル化フレームＣＦＭ（２）に対応するハッシュ値を一旦求めさせる。ステップＳ３０２で生成したカプセル化フレームＣＦＭ（２）は、カプセル化フレームＣＦＭ（１）と同様のカプセルヘッダＣＨを有するため、ここで求められたハッシュ値は「１」となる。
【００８５】
その後、エッジスイッチ＃１のカプセル化処理（図１１）のステップＳ３０８において、フレームＦＭ（２）は、ステップＳ３０４のＦＤＢ１５０検索で実際に一致したエントリＥ２１（図７）のカプセル化情報を用いたカプセル化が行われる。この結果、新たなカプセル化フレームＣＦＭ（２）が生成される。そして、ステップＳ３１０においてカプセル処理部１６０は、生成された新たなカプセル化フレームＣＦＭ（２）に対応するハッシュ値を求めさせる。ステップＳ３０１において求められたハッシュ値が、例えば「３」であった場合、カプセル処理部１６０は計算結果が一致しないと判定し（ステップＳ３１２：ＮＯ）、カプセル化フレームＣＦＭ（２）の宛先エッジスイッチＭＡＣアドレスを演算する（ステップＳ３１４）。カプセル処理部１６０は、ステップＳ３１２の計算結果が一致するまで、ステップＳ３１０〜Ｓ３１４の処理を繰り返す。その結果、カプセル化フレームＣＦＭ（２）の宛先エッジスイッチＭＡＣアドレスには、ハッシュ処理部１２０による処理の結果として、最初のカプセル化フレームＣＦＭ（１）と同じハッシュ値が得られるアドレス「ＭＡＣ＿Ｅ２＋ａ」が格納されることとなる。なお、ａは任意の整数である。
【００８６】
３番目以降のフレームＦＭ（３）、ＦＭ（４）においても、２番目のフレームＦＭ（２）と同様の処理が行われる。その結果、３番目以降のフレームＦＭ（３）、ＦＭ（４）についても、宛先エッジスイッチＭＡＣアドレスには、ハッシュ処理部１２０による処理の結果として、最初のカプセル化フレームＣＦＭ（１）と同じハッシュ値が得られるアドレス「ＭＡＣ＿Ｅ２＋ａ」が格納される。
【００８７】
上記の結果、同一フローに属するフレームＦＭ（１）〜（４）をカプセル化したカプセル化フレームＣＦＭ（１）〜（４）は、フレーム受信時処理（図９）のステップＳ１０８、Ｓ１０９において、同じハッシュ値に基づいて、仮想回線内の同じ物理回線に振りわけられる。
【００８８】
図１２（Ｂ）は、本実施例のカプセル化処理（図１１）を行わず、一般的なカプセル化を行った場合の例である。一般的なカプセル化の場合、最初のカプセル化フレームＣＦＭ（１）は、ＦＤＢ１５０に宛先である端末＃３のアドレス学習が行われていないことから、宛先エッジスイッチＭＡＣアドレスにマルチキャストアドレスが設定される。一方、２番目のカプセル化フレームＣＦＭ（２）は、ＦＤＢ１５０に宛先である端末＃３のアドレスが登録されていることから、宛先エッジスイッチＭＡＣアドレスに出力側エッジスイッチ１０（エッジスイッチ＃２）のＭＡＣアドレスが設定される。カプセル化フレームＣＦＭ（１）とカプセル化フレームＣＦＭ（２）は、宛先エッジスイッチＭＡＣアドレスが異なり、また、本実施例のカプセル化処理（図１１）も実行されない。このため、カプセル化フレームＣＦＭ（１）とカプセル化フレームＣＦＭ（２）をハッシュ処理部１２０によって処理させた場合、異なるハッシュ値が得られる可能性が高い。
【００８９】
上記の結果、同一フローに属するフレームＦＭ（１）、（２）をカプセル化したカプセル化フレームＣＦＭ（１）、（２）は、フレーム受信時処理において、異なるハッシュ値に基づいて、仮想回線内の異なる物理回線に振りわけられる可能性が高い。
【００９０】
以上のように、第１実施例のエッジスイッチ１０では、カプセル処理部１６０は、仮想回線制御部のハッシュ処理部１２０によって選択される出力先物理回線が、宛先と送信元が同じである一群のフレーム（同一フローに属するフレーム）について同一となるように、カプセルヘッダＣＨが付与される。具体的には、カプセル処理部１６０は、カプセル化処理（図１１）において、フレームの宛先が学習済であった場合（ステップＳ３０４：ＮＯ）に、フレームの宛先が未学習である際のハッシュ値と同じハッシュ値が得られるように、換言すれば、フレームの宛先が未学習である際に選択される出力先物理回線と同じ回線が出力先物理回線として選択されるように、カプセルヘッダＣＨを付与する。従って、宛先の学習有無に関わらず、出力先物理回線を同じにすることができる。以上の結果、本実施例のエッジスイッチ１０では、物理回線を冗長化しつつ、コアネットワークＢＮ内で中継されるフレームをカプセル化するネットワーク中継装置において、宛先と送信元が同じである一群のフレームの到達順序を保証することができる。
【００９１】
さらに、上記第１実施例によれば、カプセル処理部１６０は、カプセルヘッダＣＨに含まれる宛先アドレス（宛先エッジスイッチＭＡＣアドレス）を演算するため、カプセルヘッダＣＨの内容を簡便に決定することができる。また、カプセル処理部１６０は、宛先エッジスイッチＭＡＣアドレスのうち、出力側エッジスイッチ１０（エッジスイッチ＃２）において参照されないビット領域である、下位１２ビットに対して演算を実行する。更に、本実施例におけるコアスイッチ２０におけるフレーム中継では、後述の通り、宛先アドレスによらずマルチキャストで中継が行われる。従って、カプセル化フレームの中継に際して、本演算による宛先アドレス変更は、何ら影響を及ぼさない。
【００９２】
（Ｂ−５）コアスイッチによる処理：
図１３は、コアスイッチ２０の動作について説明するための説明図である。図１３（Ａ）は図１に対応する図であり、図示の便宜上、端末３０を省略している。図１３（Ａ）のエッジスイッチ＃１からエッジスイッチ＃２へ送信される最初のカプセル化フレームＣＦＭ（１）により、コアスイッチ＃２のＦＤＢには、送信元エッジスイッチであるエッジスイッチ＃１のＭＡＣアドレスが学習される。しかし、コアスイッチ＃２のＦＤＢ学習後、エッジスイッチ＃２からエッジスイッチ＃１へ送信されるカプセル化フレームＣＦＭ（２）は、図１３（Ｂ）に示すように、コアスイッチ＃２のカプセル化処理（図１１）により、宛先エッジスイッチＭＡＣアドレスが変更されている。このため、コアスイッチ＃２は、カプセル化フレームＣＦＭ（２）の宛先エッジスイッチＭＡＣアドレスを、ＦＤＢ内から見つけることができない。従って、コアスイッチ＃２は、マルチキャストを実行することとなり、網全体の帯域を圧迫する。従って、本実施例のコアスイッチ２０では、帯域圧迫を回避するために、不要なマルチキャストフレームを廃棄するためのフィルタリングを実施する。以下詳細を説明する。
【００９３】
図１４は、本発明の一実施例としてのコアスイッチ２０の概略構成を示す説明図である。コアスイッチ２０は、エッジスイッチ１０と同様、カプセル化技術としてＥｏＥを用いている。コアスイッチ２０は、中継処理部５００と、複数の物理ポート５０８とを備えている。中継処理部５００は、メモリ５０２と、共有メモリ５０４と、ＣＰＵ５０６とを含んでいる。詳細は、エッジスイッチ１０の対応する各部と同じである。
【００９４】
図１５は、コアスイッチ２０の中継処理部５００の機能ブロック図である。中継処理部５００は、ハッシュ処理部５１０と、ＬＡテーブル５２０と、フレーム転送部５３０と、ＦＤＢ５４０と、フィルタテーブル５５０とを含んでいる。ハッシュ処理部５１０の詳細は、エッジスイッチ１０のハッシュ処理部１２０と同じである。同様に、ＬＡテーブル５２０の詳細は、エッジスイッチ１０のＬＡテーブル１３０と同じである。フレーム転送部５３０は、原則として、エッジスイッチ１０のフレーム転送部１４０と同様のフレーム受信時処理（図９）を行う。ただし、フレーム転送部５３０が実行するフレーム受信時処理（図９）では、ステップＳ１０４の宛先判定処理（図１０）のステップＳ２０２〜Ｓ２１２、Ｓ２１６、Ｓ２１８を省略し、ステップＳ２１４、Ｓ２２０のみを実行する。ＦＢＤ５４０は、図７に示したエッジスイッチ１０のＦＤＢ１５０と、カプセル化情報フィールドを含まない点と、格納されているエントリの内容のみが異なる。
【００９５】
図１６は、コアスイッチ２０のフィルタテーブル５５０の一例を示す説明図である。図８に示したフィルタテーブル１７０との違いは、格納されているエントリの内容のみであり、他の構成はフィルタテーブル１７０と同様である。フィルタテーブル５５０は、ネットワーク１０００のトポロジを元にしてコンフィギュレーション設定等により予め生成され、メモリ５０２に記憶されている。
【００９６】
図１６のエントリＥ３１の例では、出力フレームのカプセルヘッダＣＨに格納された宛先エッジスイッチＭＡＣアドレスが「ＭＡＣ＿Ｅ１」であり、かつ、出力先物理ポートが「Ｐｏｒｔ＃１」である場合、当該フレームは通過可と判定されることを示している。エントリＥ３３の例では、出力フレームのカプセルヘッダＣＨに格納された宛先エッジスイッチＭＡＣアドレスがマルチキャストアドレスである場合は、出力先物理ポートの如何に関わらず、当該フレームは通過可と判定されることを示している。エントリＥ３４の例では、出力フレームのカプセルヘッダＣＨに格納された宛先エッジスイッチＭＡＣアドレス、および、出力先物理ポートの如何に関わらず、上位エントリに一致しないフレームは、廃棄と判定されることを示している。
【００９７】
上述のようにしてコアネットワーク中継装置（コアスイッチ２０）を構成すれば、コアスイッチ２０は、受信カプセル化フレームＣＦＭのカプセルヘッダＣＨに含まれる宛先（宛先エッジスイッチＭＡＣアドレス）が、マルチキャストアドレスと、当該出力先物理ポートの先に存在するエッジスイッチ１０と、のいずれにも該当しない場合、当該受信フレームを廃棄する。このため、カプセル化フレームＣＦＭの宛先エッジスイッチＭＡＣアドレスをＦＢＤ５４０内から見つけることができず、マルチキャストを実行した場合であっても、関係のない物理ポートへのフレームは、フィルタテーブル５５０の設定に基づいて廃棄される。このため、本実施例のコアスイッチ２０によれば、関係のない物理ポートへフレームが出力されることを抑制することができ、マルチキャスト実行に伴う帯域の圧迫を低減することができる。
【００９８】
さらに、本実施例のコアスイッチ２０は、エッジスイッチ１０のハッシュ処理部１２０と同様の処理を行うハッシュ処理部５１０を有する。このため、コアスイッチ２０により構成されるコアネットワークＢＮ内においても、カプセル化フレームＣＦＭは、同じハッシュ値に基づいて、仮想回線内の同じ物理回線に振りわけられる。この結果、ネットワークシステム１０００の全体においても、宛先と送信元が同じである一群のフレームの到達順序を保証することができる。
【００９９】
Ｃ．第２実施例：
本発明の第２実施例では、カプセル化処理の処理負荷を低減させた構成について説明する。なお、図中において第１実施例と同様の構成部分については先に説明した第１実施例と同様の符号を付し、その詳細な説明を省略する。
【０１００】
（Ｃ−１）システム構成：
図１７は、第２実施例におけるエッジスイッチ１０ａの中継処理部１００ａの機能ブロック図である。図５に示した第１実施例との違いは、中継処理部１００ａが、ＦＤＢ１５０に代えてＦＤＢ１５０ａを、カプセル処理部１６０に代えてカプセル処理部１６０ａを、それぞれ備える点のみであり、他の構成や動作は第１実施例と同じである。
【０１０１】
図１８は、第２実施例におけるＦＤＢ１５０ａの一例を示す説明図である。図７に示した第１実施例との違いは、さらに、同期フラグのフィールドを備える点のみであり、他の構成は第１実施例と同じである。同期フラグとは、後述のカプセル化処理において使用されるフラグである。同期フラグフィールドの値には、デフォルト値として「ＯＦＦ」が格納される。
【０１０２】
（Ｃ−２）フレーム受信時処理：
フレーム受信時処理は、図９に示した第１実施例と同様である。
【０１０３】
（Ｃ−３）宛先判定処理：
宛先判定処理は、図９に示した第１実施例と同様である。
【０１０４】
（Ｃ−４）カプセル化処理：
図１９は、第２実施例におけるカプセル化処理の手順を示すフローチャートである。図１１に示した第１実施例との違いは、ステップＳ４０２と、ステップＳ４０４を備える点のみである。
【０１０５】
ステップＳ４０２においてカプセル処理部１６０ａは、カプセル化対象フレームのイーサネットヘッダＥＨの宛先ＭＡＣアドレスと、ユーザＶＬＡＮ識別子をキーとしてＦＤＢ１５０ａを検索し、同期フラグフィールドの値を参照する。同期フラグフィールドの値が「ＯＮ」である場合（ステップＳ４０２：ＯＮ）、カプセル処理部１６０ａは、カプセル化対象フレームを、ステップＳ４０２のＦＤＢ１５０ａ検索において一致したエントリのカプセル化情報を用いてカプセル化する（ステップＳ４０４）。その後、カプセル処理部１６０ａは、カプセル化処理を終了し、処理を宛先判定処理（図１０）へ戻す。その後、宛先判定処理においては、ステップＳ４０４で生成されたカプセル化フレームＣＦＭが使用される。
【０１０６】
ステップＳ３１２において計算結果が一致する場合（ステップＳ３１２：ＹＥＳ）、カプセル処理部１６０ａは、ステップＳ３０４のＦＤＢ１５０ａ検索において一致したエントリの内容を更新する（ステップＳ４０６）。具体的には、カプセル処理部１６０ａは、計算結果が一致したカプセル化フレームＣＦＭの宛先エッジスイッチＭＡＣアドレスの値を用いて、カプセル化情報フィールドに含まれる該当部分のデータを更新する。さらに、カプセル処理部１６０ａは、同期フラグフィールドの値を「ＯＮ」へと更新する。その後、カプセル処理部１６０ａは、カプセル化処理を終了し、処理を宛先判定処理（図１０）へ戻す。その後、宛先判定処理においては、ステップＳ３０８で生成されたカプセル化フレームＣＦＭがそのまま使用される。
【０１０７】
図２０は、同一フローに属するフレームが、第２実施例のエッジスイッチ１０ａによってどのようにカプセル化されるかを示す説明図である。図２０における前提条件（フレームの宛先、送信元、アドレス学習有無）は、図１２（Ａ）と同様である。図２１は、第２実施例においてＦＤＢ１５０ａが更新される様子を示す説明図である。
【０１０８】
ＦＤＢ１５０ａの同期フラグフィールドのデフォルト値は「ＯＦＦ」である。このため、最初のフレームＦＭ（１）は、図１２（Ａ）のフレームＦＭ（１）と同様に、カプセル化処理（図１１）のステップＳ３０２、Ｓ３０４を経て、カプセル化処理を終了する。
【０１０９】
２番目のフレームＦＭ（２）について考える。カプセル処理部１６０ａはフレームＦＭ（２）のイーサネットヘッダＥＨを用いて、ＦＤＢ１５０ａを検索する。検索の結果得られるエントリＥ２１の同期フラグフィールドの値は「ＯＦＦ」である（ステップＳ４０２：ＯＦＦ）。このため、２番目のフレームＦＭ（２）に対しては、図１２（Ａ）のフレームＦＭ（２）と同様に、カプセル化処理のステップＳ３０２〜Ｓ３１２が実行される。そして、ステップＳ３１２において計算結果が一致した場合（ステップＳ３１２：ＹＥＳ）、カプセル処理部１６０ａは、ステップＳ３０４のＦＤＢ１５０ａ検索において一致したエントリＥ２１のカプセル化情報フィールドに含まれる宛先エッジスイッチＭＡＣアドレスを、演算後の宛先アドレスに更新する（図２１）。さらに、カプセル処理部１６０ａは、同じエントリＥ２１の同期フラグを「ＯＮ」に更新する（図２１）。
【０１１０】
３番目のフレームＦＭ（３）について考える。カプセル処理部１６０ａはフレームＦＭ（３）のイーサネットヘッダＥＨを用いて、ＦＤＢ１５０ａを検索する。検索の結果得られるエントリＥ２１の同期フラグフィールドの値は「ＯＮ」である（ステップＳ４０２：ＯＮ）。このため、３番目のフレームＦＭ（３）は、ステップＳ４０２のＦＤＢ１５０ａ検索において一致したエントリＥ２１のカプセル化情報を用いたカプセル化が行われる（ステップＳ４０４）。エントリＥ２１のカプセル化情報は、フレームＦＭ（２）処理時のステップＳ４０４において、ステップＳ３１２の計算結果が一致する（換言すれば、演算後の）宛先エッジスイッチＭＡＣアドレスを用いて更新されている。従って、３番目以降のカプセル化対象フレームでは、同期フラグを参照することにより、ステップＳ３０２〜Ｓ３１４の処理を省略することができる。
【０１１１】
以上のように、第２実施例においても、第１実施例と同様の効果を得ることができる。また、第２実施例のエッジスイッチ１０ａでは、カプセル処理部１６０ａが、特定の宛先について、宛先検索の結果、当該フレームの宛先が学習済であった場合の初回に付与されたカプセルヘッダＣＨの内容（宛先エッジスイッチＭＡＣアドレス）を宛先表（ＦＤＢ１５０ａ）のカプセル化情報フィールドに記憶させる。そして、カプセル処理部１６０ａは、当該特定の宛先についての２回目以降のカプセルヘッダのＣＨ付与の際には、ＦＤＢ１５０ａのカプセル化情報フィールドに記憶されたカプセルヘッダの内容（宛先エッジスイッチＭＡＣアドレス）を参照することで演算を省略する。この結果、カプセル処理部１６０ａの処理負荷を低減することができる。
【０１１２】
Ｄ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１１３】
Ｄ１．変形例１：
上記実施例では、ネットワーク中継装置とコアネットワーク中継装置を用いたネットワークシステムの構成の一例を示した。しかし、ネットワークシステムの構成は、上述した態様に限らず、本発明の要旨を逸脱しない範囲において任意に定めることができる。例えば、図１に示さない端末、管理装置、他のネットワーク中継装置等を含む構成としてもよいし、図１に示した装置の一部を省略してもよい。
【０１１４】
例えば、本発明のネットワーク中継装置とコアネットワーク中継装置において用いられるカプセル化技術は、ＥｏＥに限られない。例えば、カプセル化技術として、ＶＰＬＳ（Virtual Private LAN Service）や、ＰＢＢ（Provider Backbone Bridge）を用いることができる。
【０１１５】
例えば、本発明のネットワーク中継装置とコアネットワーク中継装置において用いられる物理回線の冗長化技術は、ＬＡに限られない。さらに、本発明のネットワークシステムは、ネットワークを構成する全ての回線が仮想回線である必要はなく、一部の回線は通常の物理回線であってもよい。
【０１１６】
Ｄ２．変形例２：
上記実施例では、ネットワーク中継装置の構成の一例を示した。しかし、ネットワーク中継装置の構成は、上述した態様に限らず、本発明の要旨を逸脱しない範囲において任意に定めることができる。例えば、図４、図５に示さない他の処理部やテーブルを含む構成としてもよいし、図示した処理部やテーブルの一部を省略してもよい。
【０１１７】
また、ネットワーク中継装置のＬＡテーブル、ＦＤＢ、フィルタテーブルが備えるフィールドは、その発明の要旨を逸脱しない範囲において任意に変更することができる。例えば、上記に例示したフィールド以外のフィールドを備えるものとしても良い。また、各テーブルには、ダイレクトマップ方式を用いることも可能である。
【０１１８】
Ｄ３．変形例３：
上記実施例では、コアネットワーク中継装置の構成の一例を示した。しかし、コアネットワーク中継装置の構成は、上述した態様に限らず、本発明の要旨を逸脱しない範囲において任意に定めることができる。例えば、図１４、図１５に示さない他の処理部やテーブルを含む構成としてもよいし、図示した処理部やテーブルの一部を省略してもよい。
【０１１９】
例えば、コアネットワーク中継装置は、ネットワーク中継装置のハッシュ処理部と同様の処理を行うハッシュ処理部を有するものとした。このようにすれば、コアネットワーク内においても、カプセル化フレームが同じハッシュ値に基づいて、仮想回線内の同じ物理回線に振り分けられる。その結果、ネットワークシステム全体として、同一フローに属するフレームＦＭの到達順序を保証できる。しかし、コアネットワーク中継装置の仮想回線において、フレームにシーケンス番号を付与するなど、本発明とは異なる形で仮想回線内での到達順序性を保証できれば、コアネットワーク中継装置におけるネットワーク中継装置と同様の処理を行うハッシュ処理部を有する点は、必須の構成ではない。
【０１２０】
また、コアネットワーク中継装置のＬＡテーブル、ＦＤＢ、フィルタテーブルが備えるフィールドは、その発明の要旨を逸脱しない範囲において任意に変更することができる。例えば、上記に例示したフィールド以外のフィールドを備えるものとしても良い。また、各テーブルには、ダイレクトマップ方式を用いることも可能である。
【０１２１】
Ｄ４．変形例４：
上記実施例のカプセル化処理（図１１）では、カプセルヘッダＣＨ内の宛先アドレス（宛先エッジスイッチＭＡＣアドレス）を演算（演算）することとした。しかし、カプセル処理部は、宛先アドレスに代えて、送信元アドレス（送信元エッジスイッチＭＡＣアドレス）、もしくは、ＶＬＡＮの識別子（コアＶＬＡＮ識別子）に対して演算を行ってもよい。また、宛先アドレス、送信元アドレス、ＶＬＡＮの識別子のうちの複数を選択して、演算を行ってもよい。このようにしても、上記実施例と同様の効果を得ることができる。
【符号の説明】
【０１２２】
１０、１０ａ…ネットワーク中継装置（エッジスイッチ）
１０ｘ…エッジスイッチ
２０…コアネットワーク中継装置（コアスイッチ）
３０…端末
１００、１００ａ…中継処理部
１０２…メモリ
１０４…共有メモリ
１０６…ＣＰＵ
１０８…物理ポート
１１０…ノードアドレス
１２０…ハッシュ処理部
１３０…ＬＡテーブル
１４０…フレーム転送部
１５０…ＦＤＢ
１６０、１６０ａ…カプセル処理部
１７０…フィルタテーブル
５００…中継処理部
５０２…メモリ
５０４…共有メモリ
５０６…ＣＰＵ
５０８…物理ポート
５１０…ハッシュ処理部
５２０…ＬＡテーブル
５３０…フレーム転送部
５４０…ＦＤＢ
５５０…フィルタテーブル
１０００…ネットワークシステム
１０００ｘ…ネットワークシステム
ＬＮＡ１〜３…物理回線
ＬＮＢ１〜３…物理回線
ＬＮＣ１〜３…物理回線
ＣＨ…カプセルヘッダ
ＥＨ…イーサネットヘッダ
ＦＭ…フレーム
ＢＮ…コアネットワーク
ＵＮ１〜ＵＮ３…物理回線
ＬＮＡ…仮想回線
ＬＮＢ…仮想回線
ＬＮＣ…仮想回線
ＣＦＭ…カプセル化フレーム
【図１】
2013070182.tif 000003
【図２】
2013070182.tif 000004
【図３】
2013070182.tif 000005
【図４】
2013070182.tif 000006
【図５】
2013070182.tif 000007
【図６】
2013070182.tif 000008
【図７】
2013070182.tif 000009
【図８】
2013070182.tif 000010
【図９】
2013070182.tif 000011
【図１０】
2013070182.tif 000012
【図１１】
2013070182.tif 000013
【図１２】
2013070182.tif 000014
【図１３】
2013070182.tif 000015
【図１４】
2013070182.tif 000016
【図１５】
2013070182.tif 000017
【図１６】
2013070182.tif 000018
【図１７】
2013070182.tif 000019
【図１８】
2013070182.tif 000020
【図１９】
2013070182.tif 000021
【図２０】
2013070182.tif 000022
【図２１】
2013070182.tif 000023