(57)【要約】【課題】ＭＡＣ−ｉｎ−ＭＡＣフレームでデータ転送が実施されるネットワークにおいてマルチキャストパケットのフラッディングを回避することができる技術を提供する。【解決手段】キャリアネットワーク１０において、エッジスイッチ２００は、参加メッセージを特定する参加メッセージ特定部２１１と、参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにマーキング情報を付加するマーキング付加部２１３とを含み、コアスイッチ１００は、マーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマーキング特定部１１１と、ＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージのマルチキャストグループを、そのフレームが入力された入出力ポートに関連付けるマルチキャストポート設定部１１２とを含む。【選択図】図３
2010232818.tif 000002
【特許請求の範囲】
【請求項１】
ユーザネットワークにおける複数の拠点間で転送されるＭＡＣフレームを中継するレイヤ２仮想プライベートネットワークを構築するネットワークシステムであって、
前記ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継するコアスイッチと、
前記ＭＡＣフレームと前記ＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行って前記ユーザネットワークと前記コアスイッチとの間を中継するエッジスイッチと
を備え、
前記エッジスイッチは、
前記ユーザネットワークから転送されたＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを特定する参加メッセージ特定部と、
前記参加メッセージ特定部によって特定された参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該参加メッセージを示すマーキング情報を付加するマーキング付加部と
を含み、
前記コアスイッチは、
レイヤ２フレームを入出力する複数の入出力ポートと、
前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマーキング特定部と、
前記マーキング特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージのマルチキャストグループを、該ＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポートに関連付けるポート設定部と
を含む、ネットワークシステム。
【請求項２】
請求項１に記載のネットワークシステムであって、
前記エッジスイッチは、更に、
前記ユーザネットワークから転送されたＭＡＣフレームの中から、前記ルータから転送されるマルチキャストフレームを特定するマルチキャストフレーム特定部と、
前記マルチキャストフレーム特定部によって特定されたマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該マルチキャストフレームのマルチキャストグループを示すマルチキャストグループ情報を付加するマルチキャストグループ付加部と
を含み、
前記コアスイッチは、更に、
前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマルチキャストグループ特定部と、
前記マルチキャストグループ特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームのマルチキャストグループ情報によって示されるマルチキャストグループに対して前記ポート設定部によって関連付けられた入出力ポートを、該ＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートとして選定するポート選定部と
を含む、ネットワークシステム。
【請求項３】
請求項１または請求項２に記載のネットワークシステムであって、
前記エッジスイッチの前記マーキング付加部は、前記参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにおける
（ａ１）該ＭＡＣ−ｉｎ−ＭＡＣフレームを処理する優先度を示す情報を格納する格納部、
（ａ２）該ＭＡＣ−ｉｎ−ＭＡＣフレームの発信元を示す情報を格納する格納部、
（ａ３）該ＭＡＣ−ｉｎ−ＭＡＣフレームの宛先を示す情報を格納する格納部、
（ａ４）該ＭＡＣ−ｉｎ−ＭＡＣフレームによって運ばれるデータを規定するプロトコルおよび該データのサイズの少なくとも一方を示す情報を格納する格納部
の少なくとも一つに前記マーキング情報を付加する、ネットワークシステム。
【請求項４】
請求項１ないし請求項３のいずれかに記載のネットワークシステムであって、
前記エッジスイッチの前記マルチキャストグループ付加部は、前記マルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにおける
（ｂ１）該ＭＡＣ−ｉｎ−ＭＡＣフレームの宛先を示す情報を格納する格納部、
（ｂ２）該ＭＡＣ−ｉｎ−ＭＡＣフレームを転送するユーザネットワークを特定する情報を格納する格納部
の少なくとも一つに前記マルチキャストグループ情報を付加する、ネットワークシステム。
【請求項５】
ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継するコアスイッチであって、
レイヤ２フレームを入出力する複数の入出力ポートと、
前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを示すマーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマーキング特定部と、
前記マーキング特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージのマルチキャストグループを、該ＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポートに関連付けるポート設定部と
を備えるコアスイッチ。
【請求項６】
請求項５に記載のコアスイッチであって、更に、
前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マルチキャストグループを示すマルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマルチキャストグループ特定部と、
前記マルチキャストグループ特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームのマルチキャストグループ情報によって示されるマルチキャストグループに対して前記ポート設定部によって関連付けられた入出力ポートを、該ＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートとして選定するポート選定部と
を備えるコアスイッチ。
【請求項７】
ＭＡＣフレームとＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行ってユーザネットワークとコアスイッチとの間を中継するエッジスイッチであって、
前記ユーザネットワークから転送されたＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを特定する参加メッセージ特定部と、
前記参加メッセージ特定部によって特定された参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該参加メッセージを示すマーキング情報を付加するマーキング付加部と
を備えるエッジスイッチ。
【請求項８】
請求項７に記載のエッジスイッチであって、更に、
前記ユーザネットワークから転送されたＭＡＣフレームの中から、前記ルータから転送されるマルチキャストフレームを特定するマルチキャストフレーム特定部と、
前記マルチキャストフレーム特定部によって特定されたマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該マルチキャストフレームのマルチキャストグループを示すマルチキャストグループ情報を付加するマルチキャストグループ付加部と
を備えるエッジスイッチ。
【請求項９】
ユーザネットワークにおける複数の拠点間で転送されるＭＡＣフレームを中継するデータ中継方法であって、
レイヤ２フレームを入出力する複数の入出力ポートを備えるコアスイッチが、前記ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継するコア中継工程と、
エッジスイッチが、前記ＭＡＣフレームと前記ＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行って前記ユーザネットワークと前記コアスイッチとの間を中継するエッジ中継工程と
を備え、
前記エッジ中継工程は、
前記ユーザネットワークから転送されたＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを特定する参加メッセージ特定工程と、
前記参加メッセージ特定工程によって特定された参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該参加メッセージを示すマーキング情報を付加するマーキング付加工程と
を含み、
前記コア中継工程は、
前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマーキング特定工程と、
前記マーキング特定工程によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージのマルチキャストグループを、該ＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポートに関連付けるポート設定工程と
を含む、データ中継方法。
【請求項１０】
請求項９に記載のデータ中継方法であって、
前記エッジ中継工程は、更に、
前記ユーザネットワークから転送されたＭＡＣフレームの中から、前記ルータから転送されるマルチキャストフレームを特定するマルチキャストフレーム特定工程と、
前記マルチキャストフレーム特定工程によって特定されたマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該マルチキャストフレームのマルチキャストグループを示すマルチキャストグループ情報を付加するマルチキャストグループ付加工程と
を含み、
前記コア中継工程は、更に、
前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマルチキャストグループ特定工程と、
前記マルチキャストグループ特定工程によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームのマルチキャストグループ情報によって示されるマルチキャストグループに対して前記ポート設定工程によって関連付けられた入出力ポートを、該ＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートとして選定するポート選定工程と
を含む、データ中継方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザネットワークにおける複数の拠点間で転送されるレイヤ２フレームを中継するレイヤ２仮想プライベートネットワーク（Layer 2 Virtual Private Network、「Ｌ２ＶＰＮ」とも呼ぶ）を構築するネットワークシステムに関する。
【背景技術】
【０００２】
従来、標準規格ＩＥＥＥ８０２．１ａｈ（Institute of Electrical and Electronic Engineers 802.1ah、プロバイダバックボーンブリッジ、Provider Backbone Bridge、ＰＢＢ）に準拠してＬ２ＶＰＮを構築するネットワークシステムが提案されていた（特許文献１）。このようなネットワークシステムでは、基幹通信回線であるコアネットワーク（Core Network、バックボーンネットワーク（Backbone Network）とも呼ばれる）において、レイヤ２フレームであるＭＡＣフレーム（Media Access Control frame、マックフレーム）を更にＭＡＣフレームでカプセル化したＭＡＣ−ｉｎ−ＭＡＣ（マックインマック）フレームでデータ転送が実施される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−６０８３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来、マルチキャストグループに参加するＩＧＭＰ（Internet Group Management Protocol）ｊｏｉｎメッセージを始めとする参加メッセージがＬ２ＶＰＮに転送された場合、コアネットワークにおけるレイヤ２スイッチであるコアスイッチは、ＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージをスヌーピング（Snooping）によって認識することができないという問題があった。そのため、参加メッセージに基づいて配信されたマルチキャストパケットがＬ２ＶＰＮに転送された場合、コアネットワークにおける全てのコアスイッチにマルチキャストパケットがフラッディング（Flooding）されてしまい、このフラッディングは、Ｌ２ＶＰＮにおける通信速度低下の要因となっていた。
【０００５】
本発明は、上記した課題を踏まえ、ＭＡＣ−ｉｎ−ＭＡＣフレームでデータ転送が実施されるネットワークにおいてマルチキャストパケットのフラッディングを回避することができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００７】
［適用例１］  適用例１のネットワークシステムは、ユーザネットワークにおける複数の拠点間で転送されるＭＡＣフレームを中継するレイヤ２仮想プライベートネットワークを構築するネットワークシステムであって、前記ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継するコアスイッチと、前記ＭＡＣフレームと前記ＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行って前記ユーザネットワークと前記コアスイッチとの間を中継するエッジスイッチとを備え、前記エッジスイッチは、前記ユーザネットワークから転送されたＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを特定する参加メッセージ特定部と、前記参加メッセージ特定部によって特定された参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該参加メッセージを示すマーキング情報を付加するマーキング付加部とを含み、前記コアスイッチは、レイヤ２フレームを入出力する複数の入出力ポートと、前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマーキング特定部と、前記マーキング特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージのマルチキャストグループを、該ＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポートに関連付けるポート設定部とを含むことを特徴とする。
【０００８】
適用例１のネットワークシステムによれば、コアスイッチにおいてＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに付加されたマーキング情報をスヌーピングすることによって、コアスイッチの入出力ポートをマルチキャストグループに関連付けることができる。これによって、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームからマルチキャストグループを特定し、そのマルチキャストグループに関連付けられた入出力ポートからＭＡＣ−ｉｎ−ＭＡＣフレームを出力することができる。その結果、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームのフラッディングが回避され、マルチキャスト通信による通信速度の低下を抑制することができる。
【０００９】
［適用例２］  適用例１のネットワークシステムにおいて、前記エッジスイッチは、更に、前記ユーザネットワークから転送されたＭＡＣフレームの中から、前記ルータから転送されるマルチキャストフレームを特定するマルチキャストフレーム特定部と、前記マルチキャストフレーム特定部によって特定されたマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該マルチキャストフレームのマルチキャストグループを示すマルチキャストグループ情報を付加するマルチキャストグループ付加部とを含み、前記コアスイッチは、更に、前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマルチキャストグループ特定部と、前記マルチキャストグループ特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームのマルチキャストグループ情報によって示されるマルチキャストグループに対して前記ポート設定部によって関連付けられた入出力ポートを、該ＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートとして選定するポート選定部とを含むことを特徴とする。適用例２のネットワークシステムによれば、コアスイッチにおいてＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに付加されたマルチキャストグループ情報をスヌーピングすることによって、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームの宛先であるマルチキャストグループを容易に特定することができる。
【００１０】
［適用例３］  適用例１または適用例２のネットワークシステムにおいて、前記エッジスイッチの前記マーキング付加部は、前記参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにおける
（ａ１）該ＭＡＣ−ｉｎ−ＭＡＣフレームを処理する優先度を示す情報を格納する格納部、
（ａ２）該ＭＡＣ−ｉｎ−ＭＡＣフレームの発信元を示す情報を格納する格納部、
（ａ３）該ＭＡＣ−ｉｎ−ＭＡＣフレームの宛先を示す情報を格納する格納部、
（ａ４）該ＭＡＣ−ｉｎ−ＭＡＣフレームによって運ばれるデータを規定するプロトコルおよび該データのサイズの少なくとも一方を示す情報を格納する格納部
の少なくとも一つに前記マーキング情報を付加するとしても良い。適用例３のネットワークシステムによれば、ＭＡＣ−ｉｎ−ＭＡＣフレームのデータ転送に不都合を生じさせることなく、コアスイッチによってスヌーピング可能に、ＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにマーキング情報を付加することができる。
【００１１】
［適用例４］  適用例１ないし適用例３のいずれかのネットワークシステムにおいて、前記エッジスイッチの前記マルチキャストグループ付加部は、前記マルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにおける
（ｂ１）該ＭＡＣ−ｉｎ−ＭＡＣフレームの宛先を示す情報を格納する格納部、
（ｂ２）該ＭＡＣ−ｉｎ−ＭＡＣフレームを転送するユーザネットワークを特定する情報を格納する格納部
の少なくとも一つに前記マルチキャストグループ情報を付加するとしても良い。適用例４のネットワークシステムによれば、ＭＡＣ−ｉｎ−ＭＡＣフレームのデータ転送に不都合を生じさせることなく、コアスイッチによってスヌーピング可能に、ＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにマルチキャストグループ情報を付加することができる。
【００１２】
［適用例５］  適用例５のコアスイッチは、ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継するコアスイッチであって、レイヤ２フレームを入出力する複数の入出力ポートと、前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを示すマーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマーキング特定部と、前記マーキング特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージのマルチキャストグループを、該ＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポートに関連付けるポート設定部とを備えることを特徴とする。
【００１３】
適用例５のコアスイッチによれば、ＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに付加されたマーキング情報をスヌーピングすることによって、コアスイッチの入出力ポートをマルチキャストグループに関連付けることができる。これによって、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームからマルチキャストグループを特定し、そのマルチキャストグループに関連付けられた入出力ポートからＭＡＣ−ｉｎ−ＭＡＣフレームを出力することができる。その結果、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームのフラッディングが回避され、マルチキャスト通信による通信速度の低下を抑制することができる。
【００１４】
［適用例６］  適用例５のコアスイッチは、更に、前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マルチキャストグループを示すマルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマルチキャストグループ特定部と、前記マルチキャストグループ特定部によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームのマルチキャストグループ情報によって示されるマルチキャストグループに対して前記ポート設定部によって関連付けられた入出力ポートを、該ＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートとして選定するポート選定部とを備えても良い。適用例６のコアスイッチによれば、ＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに付加されたマルチキャストグループ情報をスヌーピングすることによって、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームの宛先であるマルチキャストグループを容易に特定することができる。
【００１５】
［適用例７］  適用例７のエッジスイッチは、ＭＡＣフレームとＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行ってユーザネットワークとコアスイッチとの間を中継するエッジスイッチであって、前記ユーザネットワークから転送されたＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを特定する参加メッセージ特定部と、前記参加メッセージ特定部によって特定された参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該参加メッセージを示すマーキング情報を付加するマーキング付加部とを備えることを特徴とする。適用例７のエッジスイッチによれば、参加メッセージがカプセル化されていることをコアスイッチがスヌーピングによって認識することが可能なＭＡＣ−ｉｎ−ＭＡＣフレームを生成することができる。
【００１６】
［適用例８］  適用例７のエッジスイッチは、更に、前記ユーザネットワークから転送されたＭＡＣフレームの中から、前記ルータから転送されるマルチキャストフレームを特定するマルチキャストフレーム特定部と、前記マルチキャストフレーム特定部によって特定されたマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該マルチキャストフレームのマルチキャストグループを示すマルチキャストグループ情報を付加するマルチキャストグループ付加部とを備えても良い。適用例８のエッジスイッチによれば、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームの宛先であるマルチキャストグループをコアスイッチがスヌーピングによって認識することが可能なＭＡＣ−ｉｎ−ＭＡＣフレームを生成することができる。
【００１７】
［適用例９］  適用例９のデータ中継方法は、ユーザネットワークにおける複数の拠点間で転送されるＭＡＣフレームを中継するデータ中継方法であって、レイヤ２フレームを入出力する複数の入出力ポートを備えるコアスイッチが、前記ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継するコア中継工程と、エッジスイッチが、前記ＭＡＣフレームと前記ＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行って前記ユーザネットワークと前記コアスイッチとの間を中継するエッジ中継工程とを備え、前記エッジ中継工程は、前記ユーザネットワークから転送されたＭＡＣフレームの中から、マルチキャストグループに参加するホストからルータに対する参加メッセージを特定する参加メッセージ特定工程と、前記参加メッセージ特定工程によって特定された参加メッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該参加メッセージを示すマーキング情報を付加するマーキング付加工程とを含み、前記コア中継工程は、前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマーキング特定工程と、前記マーキング特定工程によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化された参加メッセージのマルチキャストグループを、該ＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポートに関連付けるポート設定工程とを含むことを特徴とする。
【００１８】
適用例９のデータ中継方法によれば、コアスイッチにおいてＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに付加されたマーキング情報をスヌーピングすることによって、コアスイッチの入出力ポートをマルチキャストグループに関連付けることができる。これによって、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームからマルチキャストグループを特定し、そのマルチキャストグループに関連付けられた入出力ポートからＭＡＣ−ｉｎ−ＭＡＣフレームを出力することができる。その結果、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームのフラッディングが回避され、マルチキャスト通信による通信速度の低下を抑制することができる。
【００１９】
［適用例１０］  適用例９のデータ中継方法において、前記エッジ中継工程は、更に、前記ユーザネットワークから転送されたＭＡＣフレームの中から、前記ルータから転送されるマルチキャストフレームを特定するマルチキャストフレーム特定工程と、前記マルチキャストフレーム特定工程によって特定されたマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、該マルチキャストフレームのマルチキャストグループを示すマルチキャストグループ情報を付加するマルチキャストグループ付加工程とを含み、前記コア中継工程は、更に、前記複数の入出力ポートを通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、前記マルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定するマルチキャストグループ特定工程と、前記マルチキャストグループ特定工程によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームのマルチキャストグループ情報によって示されるマルチキャストグループに対して前記ポート設定工程によって関連付けられた入出力ポートを、該ＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートとして選定するポート選定工程とを含むとしても良い。適用例９のデータ中継方法によれば、コアスイッチにおいてＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに付加されたマルチキャストグループ情報をスヌーピングすることによって、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームの宛先であるマルチキャストグループを容易に特定することができる。
【００２０】
本発明の形態は、ネットワークシステム、コアスイッチ、エッジスイッチ、データ中継方法に限るものではなく、例えば、コアスイッチの機能をコンピュータに実現させるためのプログラム、エッジスイッチの機能をコンピュータに実現させるためのプログラム、コアスイッチにおいてデータを中継する方法、エッジスイッチにおいてデータを中継する方法などの他の形態に適用することもできる。また、本発明は、前述の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。
【図面の簡単な説明】
【００２１】
【図１】コンピュータネットワークの構成を示す説明図である。
【図２】ＭＡＣフレームのフレーム構造およびＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造を模式的に示す説明図である。
【図３】キャリアネットワークにおけるエッジスイッチの詳細構成を示す説明図である。
【図４】エッジスイッチにおける転送先データベースの一例を示す説明図である。
【図５】エッジスイッチにおける転送先データベースの一例を示す説明図である。
【図６】キャリアネットワークにおけるコアスイッチの詳細構成を示す説明図である。
【図７】コアスイッチにおける転送先データベースの一例を示す説明図である。
【図８】キャリアネットワークにおけるエッジスイッチのエッジ制御部が実行するエッジ中継処理を示すフローチャートである。
【図９】キャリアネットワークにおけるエッジスイッチのエッジ制御部が実行するエッジ中継処理を示すフローチャートである。
【図１０】キャリアネットワークにおけるエッジスイッチのエッジ制御部が実行するエッジ中継処理を示すフローチャートである。
【図１１】キャリアネットワークにおけるコアスイッチのコア制御部が実行するコア中継処理を示すフローチャートである。
【図１２】キャリアネットワークにおけるコアスイッチのコア制御部が実行するコア中継処理を示すフローチャートである。
【図１３】キャリアネットワークにおけるコアスイッチのコア制御部が実行するコア中継処理を示すフローチャートである。
【図１４】キャリアネットワークにおいてマルチキャストパケットが転送される様子を示す説明図である。
【発明を実施するための形態】
【００２２】
以上説明した本発明の構成および作用を一層明らかにするために、以下本発明を適用したコンピュータネットワークについて説明する。
【００２３】
Ａ．実施例：
Ａ１．コンピュータネットワークの構成：
図１は、コンピュータネットワーク１の構成を示す説明図である。コンピュータネットワーク１は、キャリアネットワーク１０と、ユーザネットワーク６１，６２とを備えるネットワークシステムである。
【００２４】
コンピュータネットワーク１のユーザネットワーク６１，６２は、キャリアネットワーク１０の通信サービスを受ける企業や公共団体、個人などの顧客によって運営されるネットワークシステムである。ユーザネットワーク６１は、複数の拠点ネットワーク６１ａ，６１ｂ，６１ｃ，６１ｄを備え、これら複数の拠点ネットワーク６１ａ，６１ｂ，６１ｃ，６１ｄの各々は、キャリアネットワーク１０を通じて相互に接続され、ローカルエリアネットワーク（Local Area Network、以下「ＬＡＮ」と呼ぶ）を協働して構成する。ユーザネットワーク６２は、ユーザネットワーク６１と同様に、複数の拠点ネットワーク６２ａ，６２ｂ，６２ｃ，６２ｄを備え、これら複数の拠点ネットワーク６２ａ，６２ｂ，６２ｃ，６２ｄの各々は、キャリアネットワーク１０を通じて相互に接続され、ＬＡＮを協働して構成する。
【００２５】
ユーザネットワーク６１，６２は、単一のＬＡＮを構成しても良いし、更に、そのＬＡＮにおいて物理的な接続構成とは独立した仮想的なネットワークグループを設定した仮想ネットワークであるバーチャルＬＡＮ（Virtual LAN、以下「ＶＬＡＮ」と呼ぶ）を構成しても良い。なお、図１には、二つのユーザネットワークが図示され、それぞれに四つの拠点ネットワークが図示されているが、ユーザネットワークおよびその拠点ネットワークの数量は、図１に図示した数量に限られるものではなく、適宜、増減することが可能である。
【００２６】
ユーザネットワーク６１は、複数の拠点ネットワーク６１ａ，６１ｂ，６１ｃ，６１ｄの少なくとも一つに、種々の演算処理を実行するパーソナルコンピュータ６１０と、ユーザネットワーク６１を他のネットワークに相互に接続するルータ６１２とを備える。
【００２７】
本実施例の説明では、ユーザネットワーク６１に所属するパーソナルコンピュータを一般的に示す場合には、「６１０」の符号を用い、特定の拠点ネットワークに所属するパーソナルコンピュータを示す場合には、その拠点ネットワークの符号に付された英文字を「６１０」の後に付した符号を用いるものとする。例えば、拠点ネットワーク６２ｂに所属するパーソナルコンピュータには、「６１０ｂ」の符号を用い、拠点ネットワーク６２ｃに所属するパーソナルコンピュータには、「６１０ｃ」の符号を用いる。
【００２８】
本実施例の説明では、ユーザネットワーク６１に所属するルータを一般的に示す場合には、「７１０」の符号を用い、特定の拠点ネットワークに所属するルータを示す場合には、その拠点ネットワークの符号に付された英文字を「７１０」の後に付した符合を用いるものとする。例えば、拠点ネットワーク６２ａに所属するルータには、「７１０ａ」の符号を用いる。
【００２９】
本実施例では、拠点ネットワーク６１ａは、インターネット９０とユーザネットワーク６１との間を相互に接続するルータ６１２ａを備える。本実施例では、インターネット９０には、マルチキャストパケットを送信するサーバコンピュータ９００が接続され、拠点ネットワーク６２ｂのパーソナルコンピュータ６１０ｂ、および拠点ネットワーク６２ｃのパーソナルコンピュータ６１０ｃの各々は、拠点ネットワーク６１ａのルータ６１２ａを通じて、サーバコンピュータ９００からマルチキャストパケットを受信することが可能である。
【００３０】
コンピュータネットワーク１のキャリアネットワーク１０は、電気通信事業者によって運営され、ユーザネットワーク６１，６２における複数の拠点ネットワーク間で転送されるＭＡＣフレームを中継するレイヤ２仮想プライベートネットワーク（Ｌ２ＶＰＮ）を構築するネットワークシステムである。キャリアネットワーク１０は、標準規格ＩＥＥＥ８０２．１ａｈに準拠してＭＡＣ−ｉｎ−ＭＡＣフレームでデータ転送を実施する基幹通信回線であるコアネットワーク１２を構築するコアスイッチ１００と、ユーザネットワーク６１，６２とコアネットワーク１２との間を相互に接続するエッジスイッチ２００とを備える。コアスイッチ１００およびエッジスイッチ２００の構成および動作の詳細については後述する。
【００３１】
本実施例の説明では、キャリアネットワーク１０に所属するコアスイッチを一般的に示す場合には、「１００」の符号を用い、特定のコアスイッチを個別に示す場合には、「１００」の後に英文字を個別に付した符号を用いるものとする。例えば、図１に示す例では、五つのコアスイッチ１００が図示され、これらのコアスイッチ１００を個別に示す場合には、「１００ａ」、「１００ｂ」、「１００ｃ」、「１００ｄ」、「１００ｅ」の符号を用いる。
【００３２】
本実施例の説明では、キャリアネットワーク１０に所属するエッジスイッチを一般的に示す場合には、「２００」の符号を用い、特定のエッジスイッチを個別に示す場合には、「２００」の後に英文字を個別に付した符号を用いるものとする。例えば、図１に示す例では、四つのエッジスイッチ２００が図示され、これらのエッジスイッチ２００を個別に示す場合には、「２００ａ」、「２００ｂ」、「２００ｃ」、「２００ｄ」の符号を用いる。
【００３３】
図１に示す例では、コアスイッチ１００ｅは、コアスイッチ１００ａ，１００ｂ，１００ｃ，１００ｄの各々を相互に接続する。図１に示す例では、エッジスイッチ２００ａは、コアスイッチ１００ａと拠点ネットワーク６１ａ，６２ａとの間を相互に接続し、エッジスイッチ２００ｂは、コアスイッチ１００ｂと拠点ネットワーク６１ｂ，６２ｂとの間を相互に接続し、エッジスイッチ２００ｃは、コアスイッチ１００ｃと拠点ネットワーク６１ｃ，６２ｃとの間を相互に接続し、エッジスイッチ２００ｄは、コアスイッチ１００ｄと拠点ネットワーク６１ｄ，６２ｄとの間を相互に接続する。なお、図１には、五つのコアスイッチ１００が図示され、四つのエッジスイッチ２００が図示されているが、コアスイッチ１００およびエッジスイッチ２００の数量は、図１に図示した数量に限られるものではなく、適宜、増減することが可能である。
【００３４】
図２は、ＭＡＣフレームのフレーム構造７００およびＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００を模式的に示す説明図である。図２の上段には、ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００を図示し、図２の下段には、ＭＡＣフレームのフレーム構造７００を図示する。
【００３５】
ＭＡＣフレームのフレーム構造７００は、その先頭側から順に、格納部７１０，７２０，７３０，７４０，７５０，７６０を備える。格納部７１０，７２０，７３０，７４０は、ＭＡＣフレームのヘッダを構成する。
【００３６】
フレーム構造７００の格納部７１０は、そのＭＡＣフレームの宛先を示すＭＡＣアドレスを格納するＤＭＡＣ(Destination MAC)フィールドであり、フレーム構造７００の格納部７２０は、そのＭＡＣフレームの発信元を示すＭＡＣアドレスを格納するＳＭＡＣ(Source MAC)フィールドである。
【００３７】
フレーム構造７００の格納部７３０は、ユーザネットワーク６１，６２に設定されたＶＡＬＮを識別するＶＡＬＮタグを格納するＶＬＡＮタグフィールドである。
【００３８】
フレーム構造７００の格納部７４０は、格納部７５０に格納されるパケットを規定する上位層プロトコルのタイプを示す識別子や、格納部７５０に格納されるデータのサイズを示すオクテット数を格納するタイプ／長さフィールドである。
【００３９】
フレーム構造７００の格納部７５０は、そのＭＡＣフレームで運ばれるデータを格納するユーザデータフィールドである。なお、マルチキャスト通信におけるＩＧＭＰｊｏｉｎメッセージやマルチキャストパケットは、フレーム構造７００の格納部７５０に格納されてデータ転送される。
【００４０】
フレーム構造７００の格納部７６０は、そのＭＡＣフレームのエラーを検出するためのＣＲＣ(Cyclic Redundancy Check)値を格納するＦＣＳ(Frame Check Sequence)フィールドである。
【００４１】
ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００は、その先頭側から順に、格納部８１０，８２０，８３０，８４０，８５０，８６０を備える。格納部８１０，８２０，８３０，８４０は、ＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダを構成する。
【００４２】
フレーム構造８００の格納部８１０は、そのＭＡＣ−ｉｎ−ＭＡＣフレームのコアネットワーク１２における宛先を示すＭＡＣアドレスを格納するＣ−ＤＭＡＣ(Core-Destination MAC)フィールドであり、フレーム構造８００の格納部８２０は、そのＭＡＣ−ｉｎ−ＭＡＣフレームのコアネットワーク１２における発信元を示すＭＡＣアドレスを格納するＳＭＡＣ(Core-Source MAC)フィールドである。
【００４３】
フレーム構造８００の格納部８３０は、ユーザネットワーク６１，６２に設定されたＶＡＬＮを識別するＶＡＬＮタグを格納するＶＬＡＮタグフィールドであり、格納部８３２，８３５を備える。格納部８３０における格納部８３２は、ＶＡＬＮタグの有効化または無効化を設定する識別子を格納するＴＰＩＤ(Tag Protocol Identifier)フィールドである。
【００４４】
格納部８３０における格納部８３５は、ユーザネットワーク６１，６２に設定されたＶＬＡＮを制御する制御データを格納するＴＣＩ(Tag Control Information)フィールドであり、格納部８３６，８３７，８３８を備える。格納部８３５における格納部８３６は、そのＭＡＣ−ｉｎ−ＭＡＣフレームを処理する優先度を示す情報を格納するＣｏＳ(Class of Service)フィールドである。格納部８３５における格納部８３７は、そのＭＡＣ−ｉｎ−ＭＡＣフレームにおけるＭＡＣアドレスのフォーマット形式を示す情報を格納するＣＦＩ(Canonical Format Indicator)フィールドである。格納部８３５における格納部８３８は、そのＭＡＣ−ｉｎ−ＭＡＣフレームを転送するＶＡＬＮを特定する識別子を格納するＶＩＤ(VLAN Identifier)フィールドである。
【００４５】
フレーム構造８００の格納部８４０は、格納部８５０に格納されるパケットを規定する上位層プロトコルのタイプを示す識別子や、格納部８５０に格納されるデータのサイズを示すオクテット数を格納するタイプ／長さフィールドである。
【００４６】
フレーム構造８００の格納部８５０は、そのＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化されたＭＡＣフレームを格納するユーザＭＡＣフレームフィールドである。格納部７５０に格納されるＭＡＣフレームには、そのフレーム構造７００の格納部７６０を含めても良いし、含めなくても良い。
【００４７】
フレーム構造８００の格納部８６０は、そのＭＡＣ−ｉｎ−ＭＡＣフレームのエラーを検出するためのＣＲＣ値を格納するＦＣＳフィールドである。
【００４８】
図３は、キャリアネットワーク１０におけるエッジスイッチ２００の詳細構成を示す説明図である。エッジスイッチ２００は、ＭＡＣフレームとＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行ってユーザネットワーク６１，６２とコアスイッチ１００との間を中継する接続装置である。エッジスイッチ２００は、エッジ制御部２１０と、ネットワークインタフェース２２０と、バッファ２３０と、記憶部２４０と、管理インタフェース２５０とを備える。
【００４９】
エッジスイッチ２００のネットワークインタフェース２２０は、コアスイッチ１００およびユーザネットワーク６１，６２と電気的に接続する物理的な接続端子である複数の入出力ポート２２２を備える。複数の入出力ポート２２２の各々は、ＭＡＣフレームおよびＭＡＣ−ｉｎ−ＭＡＣフレームを含むレイヤ２フレームの入力を受け付けると共に、エッジ制御部２１０の指示に基づいてレイヤ２フレームを出力する。
【００５０】
エッジスイッチ２００のバッファ２３０は、エッジ制御部２１０によって処理されるレイヤ２フレームを一時的に記憶する記憶装置である。エッジスイッチ２００の管理インタフェース２５０は、キャリアネットワーク１０の管理者との間で情報のやり取りを行う。本実施例では、管理インタフェース２５０は、操作パネルやメモリカードスロット、各種接続入出力ポートなどの電子機器を含む。
【００５１】
エッジスイッチ２００の記憶部２４０は、エッジ制御部２１０によって処理される種々のデータを記憶し、そのデータの一つとして、転送先データベース２４２を記憶する。転送先データベース２４２は、ネットワークインタフェース２２０における複数の入出力ポート２２２の中から、レイヤ２フレームを出力する転送先ポートを選定する情報を登録したデータベースである。本実施例では、転送先データベース２４２は、入出力ポート２２２を通じて受信されたレイヤ２フレームに基づくエッジ制御部２１０の学習機能によって整備されるが、他の実施形態において、転送先データベース２４２の少なくとも一部は、管理インタフェース２５０を通じて入力された情報に基づいて整備されても良い。
【００５２】
本実施例の説明では、エッジスイッチにおける転送先データベースを一般的に示す場合には、「２４２」の符号を用い、特定のエッジスイッチにおける転送先データベースを個別に示す場合には、そのエッジスイッチの符号に付された英文字を「２４２」の後に付した符号を用いるものとする。例えば、エッジスイッチ２００ａにおける転送先データベースには、「２４２ａ」の符号を用い、エッジスイッチ２００ｃにおける転送先データベースには、「２４２ｃ」の符号を用いる。
【００５３】
図４は、エッジスイッチ２００ａにおける転送先データベース２４２ａの一例を示す説明図である。図５は、エッジスイッチ２００ｃにおける転送先データベース２４２ｃの一例を示す説明図である。エッジスイッチ２００における転送先データベース２４２は、格納部２４２１，２４２２，２４２４，２４２６，２４２８，２４２９を備える。
【００５４】
転送先データベース２４２の格納部２４２１は、転送先データベース２４２に登録された情報を識別する登録番号を格納するフィールドである。転送先データベース２４２の格納部２４２１は、ユーザネットワーク６１，６２に設定されたＶＬＡＮを特定するＶＬＡＮ識別子を格納するフィールドである。転送先データベース２４２の格納部２４２４は、ＭＡＣフレームの宛先を示す宛先ＭＡＣアドレスを格納するフィールドである。転送先データベース２４２の格納部２４２６は、複数の入出力ポート２２２の各々に割り当てられたポート番号のうち転送先ポートを示す出力ポート番号を格納するフィールドである。転送先データベース２４２の格納部２４２８は、ＭＡＣ−ｉｎ−ＭＡＣフレームの宛先を示すコアネットワーク宛先ＭＡＣアドレスを格納するフィールドである。転送先データベース２４２の格納部２４２９は、転送先データベース２４２に登録された情報を学習した情報源を示す情報を格納するフィールドである。
【００５５】
例えば、図４に示す転送先データベース２４２ａの場合、登録番号「１」の登録情報は、コアネットワークから学習した情報であることが示されている。その登録番号「１」の登録情報には、エッジスイッチ２００ａにおいて受信されたＭＡＣレームが、ＶＬＡＮ識別子「２０」で識別されるＶＬＡＮに所属し、その宛先ＭＡＣアドレスが「００：００：４ｃ：００：１２：３４」である場合、そのＭＡＣフレームをカプセル化するＭＡＣ−ｉｎ−ＭＡＣフレームの宛先ＭＡＣアドレスを、「ｆｅ：００：００：２０：００：０３」に設定し、そのＭＡＣ−ｉｎ−ＭＡＣフレームをポート番号「１」が割り当てられた入出力ポート２２２から送信することが示されている。なお、図１において、エッジスイッチ２００から他のノードへと延びる直線の横に付された丸付き数字は、入出力ポート２２２に割り当てられたポート番号に対応する。
【００５６】
また、図５に示す転送先データベース２４２ｃの場合、登録番号「１」の登録情報は、ユーザネットワークから学習した情報であることが示されている。その登録番号「１」の登録情報には、エッジスイッチ２００ｃにおいて受信されたＭＡＣレームが、ＶＬＡＮ識別子「２０」で識別されるＶＬＡＮに所属し、その宛先ＭＡＣアドレスが「００：００：４ｃ：００：１２：３４」である場合、そのＭＡＣフレームをポート番号「２」が割り当てられた入出力ポート２２２から送信することが示されている。
【００５７】
図３の説明に戻り、エッジスイッチ２００のエッジ制御部２１０は、エッジスイッチ２００の各部に電気的に接続され、ＭＡＣフレームおよびＭＡＣ−ｉｎ−ＭＡＣフレームを含むレイヤ２フレームを転送する種々の制御処理を実行する。エッジ制御部２１０は、参加メッセージ特定部２１１と、マルチキャストポート設定部２１２と、マーキング付加部２１３と、マルチキャストフレーム特定部２１６と、マルチキャストポート選定部２１７と、マルチキャストグループ付加部２１８とを備える。
【００５８】
エッジ制御部２１０の参加メッセージ特定部２１１は、ユーザネットワーク６１，６２およびコアスイッチ１００から転送されたＭＡＣフレームの中から、マルチキャストグループに参加するホストであるパーソナルコンピュータ６１０からルータ６１２に対する参加メッセージを特定する。本実施例では、参加メッセージ特定部２１１は、パーソナルコンピュータ６１０からルータ６１２に対するＩＧＭＰｊｏｉｎメッセージを特定する。
【００５９】
エッジ制御部２１０のマルチキャストポート設定部２１２は、参加メッセージ特定部２１１によって特定されたＩＧＭＰｊｏｉｎメッセージのマルチキャストグループを、そのＩＧＭＰｊｏｉｎメッセージが入力された入出力ポート２２２に関連付ける。本実施例では、マルチキャストポート設定部２１２は、マルチキャストグループを入出力ポート２２２に関連付けた情報を転送先データベース２４２に登録する。
【００６０】
エッジ制御部２１０のマーキング付加部２１３は、参加メッセージ特定部２１１によって特定されたＩＧＭＰｊｏｉｎメッセージをコアスイッチ１００へ転送する場合、そのＩＧＭＰｊｏｉｎメッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、ＩＧＭＰｊｏｉｎメッセージがカプセル化されていることを示すマーキング情報を付加する。
【００６１】
エッジ制御部２１０のマルチキャストフレーム特定部２１６は、ユーザネットワーク６１，６２およびコアスイッチ１００から転送されたＭＡＣフレームの中からマルチキャストフレームを特定する。なお、マルチキャストフレームは、ルータ６１２から転送されるマルチキャストパケットを運ぶＭＡＣフレームである。
【００６２】
エッジ制御部２１０のマルチキャストポート選定部２１７は、マルチキャストフレーム特定部２１６によって特定されたマルチキャストフレームが配信されるマルチキャストグループに対してマルチキャストポート設定部２１２によって関連付けられた入出力ポート２２２を、そのマルチキャストフレームを出力する転送先ポートとして選定する。本実施例では、マルチキャストポート選定部２１７は、転送先データベース２４２を参照して転送先ポートを選定する。
【００６３】
エッジ制御部２１０のマルチキャストグループ付加部２１８は、マルチキャストフレーム特定部２１６によって特定されたマルチキャストフレームをコアスイッチ１００へ転送する場合、そのマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、そのマルチキャストグループを示すマルチキャストグループ情報を付加する。
【００６４】
本実施例では、エッジ制御部２１０におけるマルチキャストポート設定部２１２、マーキング付加部２１３、マルチキャストフレーム特定部２１６、マルチキャストポート選定部２１７、マルチキャストグループ付加部２１８の各機能は、ＡＳＩＣ（Application Specific Integrated Circuit）がその物理的な回路構成に基づいて動作することによって実現されるが、他の実施形態において、これらの機能の少なくとも一部は、コンピュータプログラムに基づいてＣＰＵ（Central Processing Unit）が動作することによって実現されるとしても良い。
【００６５】
図６は、キャリアネットワーク１０におけるコアスイッチ１００の詳細構成を示す説明図である。コアスイッチ１００は、ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継する接続装置である。コアスイッチ１００は、コア制御部１１０と、ネットワークインタフェース１２０と、バッファ１３０と、記憶部１４０と、管理インタフェース１５０とを備える。
【００６６】
コアスイッチ１００のネットワークインタフェース１２０は、エッジスイッチ２００および他のコアスイッチ１００と電気的に接続する物理的な接続端子である複数の入出力ポート１２２を備える。複数の入出力ポート１２２の各々は、ＭＡＣ−ｉｎ−ＭＡＣフレームの入力を受け付けると共に、コア制御部１１０の指示に基づいてＭＡＣ−ｉｎ−ＭＡＣフレームを出力する。
【００６７】
コアスイッチ１００のバッファ１３０は、コア制御部１１０によって処理されるＭＡＣ−ｉｎ−ＭＡＣフレームを一時的に記憶する記憶装置である。コアスイッチ１００の管理インタフェース１５０は、キャリアネットワーク１０の管理者との間で情報のやり取りを行う。本実施例では、管理インタフェース１５０は、操作パネルやメモリカードスロット、各種接続入出力ポートなどの電子機器を含む。
【００６８】
コアスイッチ１００の記憶部１４０は、コア制御部１１０によって処理される種々のデータを記憶し、そのデータの一つとして、転送先データベース１４２を記憶する。転送先データベース１４２は、ネットワークインタフェース１２０における複数の入出力ポート１２２の中から、ＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートを選定する情報を登録したデータベースである。本実施例では、転送先データベース１４２は、入出力ポート１２２を通じて受信されたＭＡＣ−ｉｎ−ＭＡＣフレームに基づくコア制御部１１０の学習機能によって整備されるが、他の実施形態において、転送先データベース１４２の少なくとも一部は、管理インタフェース１５０を通じて入力された情報に基づいて整備されても良い。
【００６９】
本実施例の説明では、コアスイッチにおける転送先データベースを一般的に示す場合には、「１４２」の符号を用い、特定のコアスイッチにおける転送先データベースを個別に示す場合には、そのコアスイッチの符号に付された英文字を「１４２」の後に付した符号を用いるものとする。例えば、コアスイッチ１００ｅにおける転送先データベースには、「１４２ｅ」の符号を用いる。
【００７０】
図７は、コアスイッチ１００ｅにおける転送先データベース１４２ｅの一例を示す説明図である。コアスイッチ１００における転送先データベース１４２は、格納部１４２１，１４２２，１４２４，１４２６，１４２９を備える。
【００７１】
転送先データベース１４２の格納部１４２１は、転送先データベース１４２に登録された情報を識別する登録番号を格納するフィールドである。転送先データベース１４２の格納部１４２１は、ユーザネットワーク６１，６２に設定されたＶＬＡＮを特定するＶＬＡＮ識別子を格納するフィールドである。転送先データベース１４２の格納部１４２４は、ＭＡＣ−ｉｎ−ＭＡＣフレームの宛先を示すコアネットワーク宛先ＭＡＣアドレスを格納するフィールドである。転送先データベース１４２の格納部１４２６は、複数の入出力ポート１２２の各々に割り当てられたポート番号のうち転送先ポートを示す出力ポート番号を格納するフィールドである。転送先データベース１４２の格納部１４２９は、転送先データベース１４２に登録された情報を学習した情報源を示す情報を格納するフィールドである。
【００７２】
例えば、図７に示す転送先データベース１４２ｅの場合、登録番号「１」の登録情報は、ポート番号「１」が割り当てられた入出力ポート１２２から学習した情報であることが示されている。その登録番号「１」の登録情報には、コアスイッチ１００ｅにおいて受信されたＭＡＣ−ｉｎ−ＭＡＣフレームが、ＶＬＡＮ識別子「２０」で識別されるＶＬＡＮに所属し、その宛先ＭＡＣアドレスが「ｆｅ：００：００：２０：００：０１」である場合、そのＭＡＣ−ｉｎ−ＭＡＣフレームをポート番号「１」が割り当てられた入出力ポート１２２から送信することが示されている。
【００７３】
図６の説明に戻り、コアスイッチ１００のコア制御部１１０は、コアスイッチ１００の各部に電気的に接続され、ＭＡＣ−ｉｎ−ＭＡＣフレームを転送する種々の制御処理を実行する。コア制御部１１０は、マーキング特定部１１１と、マルチキャストポート設定部１１２と、マルチキャストグループ特定部１１６と、マルチキャストポート選定部１１７とを備える。
【００７４】
コア制御部１１０のマーキング特定部１１１は、複数の入出力ポート１２２を通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定する。本実施例では、前述した通り、ＭＡＣ−ｉｎ−ＭＡＣフレームにおけるマーキング情報は、そのＭＡＣ−ｉｎ−ＭＡＣフレームにＩＧＭＰｊｏｉｎメッセージがカプセル化されていることを示す情報であり、ＩＧＭＰｊｏｉｎメッセージがＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化される際に、エッジスイッチ２００によって付加される情報である。
【００７５】
コア制御部１１０のマルチキャストポート設定部１１２は、マーキング特定部１１１によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化されたＩＧＭＰｊｏｉｎメッセージのマルチキャストグループを、そのＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポート１２２に関連付ける。本実施例では、マルチキャストポート設定部１１２は、マルチキャストグループを入出力ポート１２２に関連付けた情報を転送先データベース１４２に登録する。
【００７６】
コア制御部１１０のマルチキャストグループ特定部１１６は、複数の入出力ポート１２２を通じて入力されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定する。本実施例では、前述した通り、ＭＡＣ−ｉｎ−ＭＡＣフレームにおけるマルチキャストグループ情報は、そのＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化されているマルチキャストパケットが配信されるマルチキャストグループを示す情報であり、そのマルチキャストパケットがＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化される際に、エッジスイッチ２００によって付加される情報である。
【００７７】
コア制御部１１０のマルチキャストポート選定部１１７は、マルチキャストグループ特定部１１６によって特定されたＭＡＣ−ｉｎ−ＭＡＣフレームのマルチキャストグループ情報によって示されるマルチキャストグループに対してマルチキャストポート設定部１１２によって関連付けられた入出力ポート１２２を、そのＭＡＣ−ｉｎ−ＭＡＣフレームを出力する転送先ポートとして選定する。本実施例では、マルチキャストポート選定部１１７は、転送先データベース１４２を参照して転送先ポートを選定する。
【００７８】
本実施例では、コア制御部１１０におけるマーキング特定部１１１、マルチキャストポート設定部１１２、マルチキャストグループ特定部１１６、マルチキャストポート選定部１１７の各機能は、ＡＳＩＣ（Application Specific Integrated Circuit）がその物理的な回路構成に基づいて動作することによって実現されるが、他の実施形態において、これらの機能の少なくとも一部は、コンピュータプログラムに基づいてＣＰＵ（Central Processing Unit）が動作することによって実現されるとしても良い。
【００７９】
Ａ２．コンピュータネットワークの動作：
Ａ２−１．エッジ中継処理：
図８ないし図１０は、キャリアネットワーク１０におけるエッジスイッチ２００のエッジ制御部２１０が実行するエッジ中継処理（ステップＳ２００）を示すフローチャートである。エッジ中継処理（ステップＳ２００）は、ＭＡＣフレームとＭＡＣ−ｉｎ−ＭＡＣフレームとの間の変換を行ってユーザネットワーク６１，６２とコアスイッチ１００との間を中継する処理である。本実施例では、ＭＡＣフレームおよびＭＡＣ−ｉｎ−ＭＡＣフレームを含むレイヤ２フレームが入出力ポート２２２に入力された場合、エッジ制御部２１０は、エッジ中継処理（ステップＳ２００）を開始する。
【００８０】
図８に示すように、エッジ中継処理（ステップＳ２００）が開始されると、エッジ制御部２１０は、フレーム受信処理（ステップＳ２１０）を実行する。入出力ポート２２２に入力されたレイヤ２フレームがＭＡＣフレームである場合には、フレーム受信処理（ステップＳ２１０）において、エッジ制御部２１０は、入出力ポート２２２から受け取ったＭＡＣフレームをそのまま受信する。他方、入出力ポート２２２に入力されたレイヤ２フレームがＭＡＣ−ｉｎ−ＭＡＣフレームである場合には、フレーム受信処理（ステップＳ２１０）において、エッジ制御部２１０は、入出力ポート２２２から受け取ったＭＡＣ−ｉｎ−ＭＡＣフレームをＭＡＣフレームへとデカプセル化した後、そのＭＡＣフレームを受信する。なお、本明細書において、ＭＡＣ−ｉｎ−ＭＡＣフレームのデカプセル化とは、そのＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００における格納部８５０にカプセル化されているＭＡＣフレームにＭＡＣ−ｉｎ−ＭＡＣフレームを変換することを意味する。
【００８１】
フレーム受信処理（ステップＳ２１０）の後、エッジ制御部２１０は、参加メッセージ特定部２１１によって実現される機能に基づいて参加メッセージ特定処理（ステップＳ２２０）を実行する。参加メッセージ特定処理（ステップＳ２１０）において、エッジ制御部２１０は、フレーム受信処理（ステップＳ２１０）において受信されたＭＡＣフレームの中から、マルチキャストグループに参加するパーソナルコンピュータ６１０からルータ６１２に対する参加メッセージを特定する。本実施例では、参加メッセージ特定処理（ステップＳ２１０）において、エッジ制御部２１０は、ＩＧＭＰスヌーピングを実施することによって、パーソナルコンピュータ６１０からルータ６１２に対するＩＧＭＰｊｏｉｎメッセージを参加メッセージとして特定する。
【００８２】
図９の説明に移り、ＭＡＣフレームがＩＧＭＰｊｏｉｎメッセージである場合（ステップＳ２２５：「ＹＥＳ」）、エッジ制御部２１０は、マルチキャストポート設定部２１２によって実現される機能に基づいてマルチキャストポート設定処理（ステップＳ２５０）を実行する。マルチキャストポート設定処理（ステップＳ２５０）において、エッジ制御部２１０は、参加メッセージ特定処理（ステップＳ２２０）において特定されたＩＧＭＰｊｏｉｎメッセージのマルチキャストグループを、そのＩＧＭＰｊｏｉｎメッセージが入力された入出力ポート２２２に関連付ける。本実施例では、エッジ制御部２１０は、マルチキャストグループを入出力ポート２２２に関連付けた情報を転送先データベース２４２に登録する。
【００８３】
ここで、拠点ネットワーク６１ｃに所属するパーソナルコンピュータ６１０ｃから、拠点ネットワーク６１ａに所属するルータ６１２ａに対するＩＧＭＰｊｏｉｎメッセージが送信された場合に、エッジスイッチ２００ａ，２００ｃにおいて実行されるマルチキャストポート設定処理（ステップＳ２５０）の動作について説明する。この説明におけるＩＧＭＰｊｏｉｎメッセージにおけるマルチキャストグループを示すマルチキャストＭＡＣアドレスは、「０１：００：５ｅ：００：１２：３４」である。
【００８４】
エッジスイッチ２００ｃは、ポート番号「２」が割り当てられた入出力ポート２２２を通じてパーソナルコンピュータ６１０ｃからのＩＧＭＰｊｏｉｎメッセージを受信すると、マルチキャストポート設定処理（ステップＳ２５０）において、図５の転送先データベース２４２ｃに登録番号「５００」で示される登録情報を登録する。図５の転送先データベース２４２ｃにおける登録番号「５００」の登録情報は、スヌーピングで学習した情報であることが示され、エッジスイッチ２００ｃにおいて受信されたＭＡＣフレームが、ＶＬＡＮ識別子「２０」で識別されるＶＬＡＮに所属し、その宛先ＭＡＣアドレスが「０１：００：５ｅ：００：１２：３４」である場合、そのＭＡＣフレームをポート番号「２」が割り当てられた入出力ポート２２２から送信することが示されている。
【００８５】
一方、エッジスイッチ２００ａは、パーソナルコンピュータ６１０ｃから送信されエッジスイッチ２００ｃおよびコアネットワーク１２を経由したＩＧＭＰｊｏｉｎメッセージを、ポート番号「１」が割り当てられた入出力ポート２２２を通じて受信すると、マルチキャストポート設定処理（ステップＳ２５０）において、図４の転送先データベース２４２ａに登録番号「５００」で示される登録情報を登録する。図４の転送先データベース２４２ａにおける登録番号「５００」の登録情報は、スヌーピングで学習した情報であることが示され、エッジスイッチ２００ａにおいて受信されたＭＡＣフレームが、ＶＬＡＮ識別子「２０」で識別されるＶＬＡＮに所属し、その宛先ＭＡＣアドレスが「０１：００：５ｅ：００：１２：３４」である場合、そのＭＡＣフレームをカプセル化するＭＡＣ−ｉｎ−ＭＡＣフレームの宛先ＭＡＣアドレスを、「ｆｆ：００：００：２０：１２：３４」に設定し、そのＭＡＣ−ｉｎ−ＭＡＣフレームをポート番号「１」が割り当てられた入出力ポート２２２から送信することが示されている。本実施例では、コアネットワーク宛先ＭＡＣアドレス「ｆｆ：００：００：２０：１２：３４」は、ＩＧＭＰｊｏｉｎメッセージにおけるマルチキャストグループを示すマルチキャストＭＡＣアドレス「０１：００：５ｅ：００：１２：３４」を変換して作成されたＭＡＣアドレスである。
【００８６】
図９の説明に戻り、マルチキャストポート設定処理（ステップＳ２５０）の後、エッジ制御部２１０は、転送先データベース２４２に基づいて、複数の入出力ポート２２２の中からＩＧＭＰｊｏｉｎメッセージを送信する転送先ポートを選定する（ステップＳ２６２）。
【００８７】
転送先ポートを選定した後（ステップＳ２６２）、その転送先ポートに接続された転送先がコアネットワーク１２である場合（ステップＳ２６３：「ＹＥＳ」）、エッジ制御部２１０は、マーキング付加部２１３によって実現される機能に基づいてマーキング付加処理（ステップＳ２６５）を実行する。マーキング付加処理（ステップＳ２６５）において、エッジ制御部２１０は、参加メッセージ特定処理（ステップＳ２１０）によって特定されたＩＧＭＰｊｏｉｎメッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、ＩＧＭＰｊｏｉｎメッセージがカプセル化されていることを示すマーキング情報を付加する。
【００８８】
本実施例では、マーキング情報は、１ビット（bit）のデータであり、その値が「１」である場合、ＭＡＣ−ｉｎ−ＭＡＣフレームにＩＧＭＰｊｏｉｎメッセージがカプセル化されていることを示す。本実施例では、マーキング情報は、ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００における格納部８３６に格納されるが、他の実施形態において、格納部８１０，８２０，８４０の少なくとも一つに格納されても良い。なお、ＭＡＣアドレスを格納する格納部８１０，８２０の少なくとも一方にマーキング情報を格納する場合、コアスイッチ１００およびエッジスイッチ２００の少なくとも一方は、ＭＡＣアドレスとマーキング情報とを区別して認識する機能を備えても良い。これによって、マーキング情報を付加することによる転送先データベースにおける情報量の増加を回避することができる。
【００８９】
マーキング付加処理（ステップＳ２６５）の後、エッジ制御部２１０は、マーキング情報を付加したＭＡＣ−ｉｎ−ＭＡＣフレームを、転送先ポートとして選定された入出力ポート２２２へ送出する（ステップＳ２６６）。
【００９０】
転送先ポートを選定した後（ステップＳ２６２）、その転送先ポートに接続された転送先がコアネットワーク１２でない場合（ステップＳ２６３：「ＮＯ」）、エッジ制御部２１０は、転送先ポートとして選定された入出力ポート２２２へ、ＩＧＭＰｊｏｉｎメッセージを運ぶＭＡＣフレームをそのまま送出する（ステップＳ２６８）。
【００９１】
全ての転送先ポートに対する処理を終えた後（ステップＳ２６９：「ＹＥＳ」）、エッジ制御部２１０は、エッジ中継処理（ステップＳ２００）を終了する。
【００９２】
図８の説明に戻り、フレーム受信処理（ステップＳ２１０）において受信されたＭＡＣフレームがＩＧＭＰｊｏｉｎメッセージでない場合（ステップＳ２２５：「ＮＯ」）、エッジ制御部２１０は、マルチキャストフレーム特定部２１６によって実現される機能に基づいてマルチキャストフレーム特定処理（ステップＳ２３０）を実行する。マルチキャストフレーム特定処理（ステップＳ２３０）において、エッジ制御部２１０は、フレーム受信処理（ステップＳ２１０）において受信されたＭＡＣフレームの中からマルチキャストフレームを特定する。本実施例では、マルチキャストフレーム特定処理（ステップＳ２３０）において、エッジ制御部２１０は、ＭＡＣフレームにおける宛先ＭＡＣアドレスがマルチキャストＭＡＣアドレスである場合に、そのＭＡＣフレームがマルチキャストフレームであると認識する。
【００９３】
図１０の説明に移り、ＭＡＣフレームがマルチキャストフレームである場合（ステップＳ２３５：「ＹＥＳ」）、エッジ制御部２１０は、マルチキャストポート選定部２１７によって実現される機能に基づいてマルチキャストポート選定処理（ステップＳ２８２）を実行する。マルチキャストポート選定処理（ステップＳ２８２）において、エッジ制御部２１０は、転送先データベース２４２に基づいて、複数の入出力ポート２２２の中からマルチキャストフレームを送信する転送先ポートを選定する。
【００９４】
ここで、インターネット９０に接続されたサーバコンピュータ９００から配信されたマルチキャストパケットが、マルチキャストグループ「０１：００：５ｅ：００：１２：３４」に対するマルチキャスト通信が設定されたルータ６１２ａから転送された場合に、エッジスイッチ２００ａ，２００ｃにおいて実行されるマルチキャストポート選定処理（ステップＳ２８２）の動作について説明する。
【００９５】
エッジスイッチ２００ａは、ポート番号「２」が割り当てられた入出力ポート２２２を通じて、ルータ６１２ａからのマルチキャストパケットを運ぶマルチキャストフレームを受信すると、マルチキャストポート選定処理（ステップＳ２８２）において、図４に示した転送先データベース２４２ａの登録情報の中から、そのマルチキャストフレームに示されたＶＡＬＮ識別子および宛先ＭＡＣアドレス（マルチキャストグループ）に一致する登録情報を検索する。図４に示す例では、登録番号「５００」の登録情報が該当し、その登録情報には、マルチキャストフレームをカプセル化するＭＡＣ−ｉｎ−ＭＡＣフレームの宛先ＭＡＣアドレスを「ｆｆ：００：００：２０：１２：３４」に設定すること、およびポート番号「１」が割り当てられた入出力ポート２２２を転送先ポートに選定することが示されている。
【００９６】
一方、エッジスイッチ２００ｃは、ポート番号「１」が割り当てられた入出力ポート２２２を通じて、エッジスイッチ２００ａからコアネットワーク１２を経由したマルチキャストフレームを受信すると、マルチキャストポート選定処理（ステップＳ２８２）において、図５に示した転送先データベース２４２ｃの登録情報の中から、そのマルチキャストフレームに示されたＶＡＬＮ識別子および宛先ＭＡＣアドレス（マルチキャストグループ）に一致する登録情報を検索する。図５に示す例では、登録番号「５００」の登録情報が該当し、その登録情報には、ポート番号「２」が割り当てられた入出力ポート２２２を転送先ポートに選定することが示されている。
【００９７】
図１０の説明に戻り、マルチキャストポート選定処理（ステップＳ２８２）において転送先ポートを選定した後、その転送先ポートに接続された転送先がコアネットワーク１２である場合（ステップＳ２８３：「ＹＥＳ」）、エッジ制御部２１０は、マルチキャストグループ付加部２１８によって実現される機能に基づいてマルチキャストグループ付加処理（ステップＳ２８５）を実行する。マルチキャストグループ付加処理（ステップＳ２８５）において、エッジ制御部２１０は、マルチキャストフレーム特定処理（ステップＳ２３０）において特定されたマルチキャストフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに、そのマルチキャストグループを示すマルチキャストグループ情報を付加する。本実施例では、マルチキャストグループ情報は、転送先データベース２４２においてマルチキャストグループに関連づけて登録されているコアネットワーク宛先ＭＡＣアドレスであり、エッジ制御部２１０は、転送先データベース２４２に基づいてコアネットワーク宛先ＭＡＣアドレスをＭＡＣ−ｉｎ−ＭＡＣフレームに設定することによって、ＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダにマルチキャストグループ情報を付加する。
【００９８】
本実施例では、マルチキャストグループ情報は、マルチキャストグループを示すマルチキャストＭＡＣアドレスを変換して作成されたコアネットワーク宛先ＭＡＣアドレスであり、エッジ制御部２１０は、ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００における格納部８１０にマルチキャストグループ情報を格納する。しかしながら、他の実施形態において、エッジ制御部２１０は、マルチキャストグループ情報を、マルチキャストＭＡＣアドレスをそのまま示す情報として、ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００における格納部８１０に格納しても良いし、マルチキャストＭＡＣアドレスをそのまま示す情報、またはマルチキャストＭＡＣアドレスを変形した情報として、ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００における格納部８３８に格納しても良い。
【００９９】
マルチキャストグループ付加処理（ステップＳ２８５）の後、エッジ制御部２１０は、マルチキャストグループ情報を付加したＭＡＣ−ｉｎ−ＭＡＣフレームを、転送先ポートとして選定された入出力ポート２２２へ送出する（ステップＳ２８６）。
【０１００】
マルチキャストポート選定処理（ステップＳ２８２）において転送先ポートを選定した後、その転送先ポートに接続された転送先がコアネットワーク１２でない場合（ステップＳ２８３：「ＮＯ」）、エッジ制御部２１０は、転送先ポートとして選定された入出力ポート２２２へ、マルチキャストフレームを運ぶＭＡＣフレームをそのまま送出する（ステップＳ２８８）。
【０１０１】
全ての転送先ポートに対する処理を終えた後（ステップＳ２８９：「ＹＥＳ」）、エッジ制御部２１０は、エッジ中継処理（ステップＳ２００）を終了する。
【０１０２】
図８の説明に戻り、フレーム受信処理（ステップＳ２１０）において受信されたＭＡＣフレームがＩＧＭＰｊｏｉｎメッセージおよびマルチキャストフレームでない場合（ステップＳ２３５：「ＮＯ」）、エッジ制御部２１０は、フレーム受信処理（ステップＳ２１０）において受信されたＭＡＣフレームを転送先データベース２４２に基づいて入出力ポート２２２に送出する（ステップＳ２４２，Ｓ２４３，Ｓ２４５，Ｓ２４６，Ｓ２４８，Ｓ２４９）。その後、エッジ制御部２１０は、エッジ中継処理（ステップＳ２００）を終了する。
【０１０３】
Ａ２−２．コア中継処理：
図１１ないし図１３は、キャリアネットワーク１０におけるコアスイッチ１００のコア制御部１１０が実行するコア中継処理（ステップＳ１００）を示すフローチャートである。コア中継処理（ステップＳ１００）は、ＭＡＣフレームをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを中継する処理である。本実施例では、レイヤ２フレームであるＭＡＣ−ｉｎ−ＭＡＣフレームが入出力ポート１２２に入力された場合、コア制御部１１０は、コア中継処理（ステップＳ１００）を開始する。
【０１０４】
図１１に示すように、コア中継処理（ステップＳ１００）が開始されると、コア制御部１１０は、フレーム受信処理（ステップＳ１１０）を実行する。フレーム受信処理（ステップＳ１１０）において、コア制御部１１０は、入出力ポート１２２から受け取ったＭＡＣ−ｉｎ−ＭＡＣフレームを受信する。
【０１０５】
フレーム受信処理（ステップＳ１１０）の後、コア制御部１１０は、マーキング特定部１１１によって実現される機能に基づいてマーキング特定処理（ステップＳ１２０）を実行する。マーキング特定処理（ステップＳ１２０）において、コア制御部１１０は、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マーキング情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定する。
【０１０６】
本実施例では、前述した通り、ＭＡＣ−ｉｎ−ＭＡＣフレームにおけるマーキング情報は、そのＭＡＣ−ｉｎ−ＭＡＣフレームにＩＧＭＰｊｏｉｎメッセージがカプセル化されていることを示す情報であり、ＩＧＭＰｊｏｉｎメッセージがＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化される際に、エッジスイッチ２００によって付加される情報である。本実施例では、マーキング情報は、１ビットのデータであり、その値が「１」である場合、ＭＡＣ−ｉｎ−ＭＡＣフレームにＩＧＭＰｊｏｉｎメッセージがカプセル化されていることを示し、ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００における格納部８３６に格納されている情報である。
【０１０７】
図１２の説明に移り、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームに「１」の値を示すマーキング情報が付加されている場合（ステップＳ１２５：「ＹＥＳ」）、コア制御部１１０は、マルチキャストポート設定部１１２によって実現される機能に基づいてマルチキャストポート設定処理（ステップＳ１５０）を実行する。マルチキャストポート設定処理（ステップＳ１５０）において、コア制御部１１０は、マーキング情報が付加されたＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化されたＩＧＭＰｊｏｉｎメッセージのマルチキャストグループを、そのＭＡＣ−ｉｎ−ＭＡＣフレームが入力された入出力ポート１２２に関連付ける。本実施例では、コア制御部１１０は、マルチキャストグループを入出力ポート１２２に関連付けた情報を転送先データベース１４２に登録する。
【０１０８】
ここで、拠点ネットワーク６１ｂに所属するパーソナルコンピュータ６１０ｂ、および拠点ネットワーク６１ｃに所属するパーソナルコンピュータ６１０ｃの双方から、拠点ネットワーク６１ａに所属するルータ６１２ａに対するＩＧＭＰｊｏｉｎメッセージが送信された場合に、コアスイッチ１００ｅにおいて実行されるマルチキャストポート設定処理（ステップＳ１５０）の動作について説明する。この説明におけるＩＧＭＰｊｏｉｎメッセージにおけるマルチキャストグループを示すマルチキャストＭＡＣアドレスは、「０１：００：５ｅ：００：１２：３４」であり、コアネットワーク１２においては、このマルチキャストＭＡＣアドレスを変換して作成されたコアネットワーク宛先ＭＡＣアドレス「ｆｆ：００：００：２０：１２：３４」がマルチキャストＭＡＣアドレスとして使用される。
【０１０９】
コアスイッチ１００ｅは、ポート番号「２」が割り当てられた入出力ポート１２２を通じてパーソナルコンピュータ６１０ｂからのＩＧＭＰｊｏｉｎメッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを受信し、ポート番号「３」が割り当てられた入出力ポート１２２を通じてパーソナルコンピュータ６１０ｃからのＩＧＭＰｊｏｉｎメッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを受信すると、マルチキャストポート設定処理（ステップＳ１５０）において、図７の転送先データベース１４２ｅに登録番号「５００」で示される登録情報を登録する。図７の転送先データベース１４２ｅにおける登録番号「５００」の登録情報は、スヌーピングで学習した情報であることが示され、コアスイッチ１００ｅにおいて受信されたＭＡＣ−ｉｎ−ＭＡＣフレームが、ＶＬＡＮ識別子「２０」で識別されるＶＬＡＮに所属し、その宛先ＭＡＣアドレスが「ｆｆ：００：００：２０：１２：３４」である場合、そのＭＡＣ−ｉｎ−ＭＡＣフレームをポート番号「２」およびポート番号「３」が割り当てられた入出力ポート１２２から送信することが示されている。
【０１１０】
図１２の説明に戻り、マルチキャストポート設定処理（ステップＳ１５０）の後、コア制御部１１０は、ＩＧＭＰｊｏｉｎメッセージをカプセル化したＭＡＣ−ｉｎ−ＭＡＣフレームを転送先データベース１４２に基づいて入出力ポート１２２に送出する（ステップＳ１６２，Ｓ１６６，Ｓ１６９）。その後、コア制御部１１０は、コア中継処理（ステップＳ１００）を終了する。
【０１１１】
図１１の説明に戻り、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームに「１」の値を示すマーキング情報が付加されていない場合（ステップＳ１２５：「ＮＯ」）、コア制御部１１０は、マルチキャストグループ特定部１１６によって実現される機能に基づいてマルチキャストグループ特定処理（ステップＳ１３０）を実行する。マルチキャストグループ特定処理（ステップＳ１３０）において、コア制御部１１０は、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームの中から、マルチキャストグループ情報がヘッダに付加されたＭＡＣ−ｉｎ−ＭＡＣフレームを特定する。
【０１１２】
本実施例では、前述した通り、ＭＡＣ−ｉｎ−ＭＡＣフレームにおけるマルチキャストグループ情報は、そのＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化されているマルチキャストパケットが配信されるマルチキャストグループを示す情報であり、そのマルチキャストパケットがＭＡＣ−ｉｎ−ＭＡＣフレームにカプセル化される際に、エッジスイッチ２００によって付加される情報である。本実施例では、マルチキャストグループ情報は、マルチキャストグループを示すマルチキャストＭＡＣアドレスを変換して作成されたコアネットワーク宛先ＭＡＣアドレスであり、ＭＡＣ−ｉｎ−ＭＡＣフレームのフレーム構造８００における格納部８１０に格納されている情報である。
【０１１３】
図１３の説明に移り、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームにマルチキャストグループ情報が付加されている場合（ステップＳ１３５：「ＹＥＳ」）、コア制御部１１０は、マルチキャストポート選定部１１７によって実現される機能に基づいてマルチキャストポート選定処理（ステップＳ１８２）を実行する。マルチキャストポート選定処理（ステップＳ１８２）において、コア制御部１１０は、転送先データベース１４２に基づいて、複数の入出力ポート１２２の中から、マルチキャストグループ情報が付加されているＭＡＣ−ｉｎ−ＭＡＣフレームを送信する転送先ポートを選定する。
【０１１４】
ここで、インターネット９０に接続されたサーバコンピュータ９００から配信されたマルチキャストパケットが、マルチキャストグループ「０１：００：５ｅ：００：１２：３４」に対するマルチキャスト通信が設定されたルータ６１２ａから転送された場合に、コアスイッチ１００ｅにおいて実行されるマルチキャストポート選定処理（ステップＳ１８２）の動作について説明する。
【０１１５】
コアスイッチ１００ｅは、ポート番号「１」が割り当てられた入出力ポート１２２を通じて、ルータ６１２ａからのマルチキャストパケットを運ぶＭＡＣ−ｉｎ−ＭＡＣフレームを受信すると、マルチキャストポート選定処理（ステップＳ１８２）において、図７に示した転送先データベース１４２ｅの登録情報の中から、そのＭＡＣ−ｉｎ−ＭＡＣフレームに示されたＶＡＬＮ識別子および宛先ＭＡＣアドレス（マルチキャストグループ）に一致する登録情報を検索する。図７に示す例では、登録番号「５００」の登録情報が該当し、その登録情報には、ポート番号「２」およびポート番号「３」が割り当てられた入出力ポート１２２を転送先ポートに選定することが示されている。
【０１１６】
図１３の説明に戻り、マルチキャストポート選定処理（ステップＳ１８２）の後、コア制御部１１０は、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームを、マルチキャストポート選定処理（ステップＳ１８２）において転送先ポートとして選定された入出力ポート１２２へ送出する（ステップＳ１８６，Ｓ１８９）。その後、コア制御部１１０は、コア中継処理（ステップＳ１００）を終了する。
【０１１７】
図１４は、キャリアネットワーク１０においてマルチキャストパケットが転送される一例を示す説明図である。本実施例では、前述した通り、コアスイッチ１００ｅは、ポート番号「１」が割り当てられた入出力ポート１２２を通じて、ルータ６１２ａからのマルチキャストパケットを運ぶＭＡＣ−ｉｎ−ＭＡＣフレームを受信すると、そのＭＡＣ−ｉｎ−ＭＡＣフレームを、ポート番号「２」およびポート番号「３」が割り当てられた入出力ポート１２２に送出する（ステップＳ１８６）。その結果、図１４に示すように、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームがキャリアネットワーク１０にテンスされた場合であっても、コアスイッチ１００ｅからコアスイッチ１００ｄへのフラッディングが回避される。
【０１１８】
図１１の説明に戻り、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームにマーキング情報およびマルチキャストグループ情報が付加されていない場合（ステップＳ１３５：「ＮＯ」）、コア制御部１１０は、フレーム受信処理（ステップＳ１１０）において受信されたＭＡＣ−ｉｎ−ＭＡＣフレームを転送先データベース１４２に基づいて入出力ポート１２２に送出する（ステップＳ１４２，Ｓ１４６，Ｓ１４９）。その後、コア制御部１１０は、コア中継処理（ステップＳ１００）を終了する。
【０１１９】
Ａ３．効果：
以上説明したキャリアネットワーク１０によれば、コアスイッチ１００においてＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダに付加されたマーキング情報をスヌーピングすることによって（ステップＳ１２０）、コアスイッチ１００の入出力ポート１２２をマルチキャストグループに関連付けることができる（ステップＳ１５０）。これによって、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームからマルチキャストグループを特定し（ステップＳ１３０）、そのマルチキャストグループに関連付けられた入出力ポート１２２からＭＡＣ−ｉｎ−ＭＡＣフレームを出力することができる（ステップＳ１８２）。その結果、マルチキャストフレームがカプセル化されたＭＡＣ−ｉｎ−ＭＡＣフレームのフラッディングが回避され、マルチキャスト通信による通信速度の低下を抑制することができる。
【０１２０】
Ｂ．その他の実施形態：
以上、本発明の実施の形態について説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。
【符号の説明】
【０１２１】
１…コンピュータネットワーク
１０…キャリアネットワーク
１２…コアネットワーク
６１，６２…ユーザネットワーク
６１ａ−６１ｄ，６２ａ−６２ｄ…拠点ネットワーク
９０…インターネット
１００（１００ａ−１００ｅ）…コアスイッチ
１１０…コア制御部
１１１…マーキング特定部
１１２…マルチキャストポート設定部
１１６…マルチキャストグループ特定部
１１７…マルチキャストポート選定部
１２０…ネットワークインタフェース
１２２…入出力ポート
１３０…バッファ
１４０…記憶部
１４２（１４２ｅ）…転送先データベース
１５０…管理インタフェース
２００（２００ａ−２００ｄ）…エッジスイッチ
２１０…エッジ制御部
２１１…参加メッセージ特定部
２１２…マルチキャストポート設定部
２１３…マーキング付加部
２１６…マルチキャストフレーム特定部
２１７…マルチキャストポート選定部
２１８…マルチキャストグループ付加部
２２０…ネットワークインタフェース
２２２…入出力ポート
２３０…バッファ
２４０…記憶部
２４２（２４２ａ，２４２ｃ）…転送先データベース
２５０…管理インタフェース
６１０（６１０ｂ，６１０ｃ）…パーソナルコンピュータ
６１２（６１２ａ）…ルータ
７００…フレーム構造
７１０，７２０，７３０，７４０，７５０，７６０…格納部
８００…フレーム構造
８１０，８２０，８３０，８３２，８３５，８３６，８３７，８３８，８４０，８５０，８６０…格納部
９００…サーバコンピュータ
１４２１，１４２４，１４２６，１４２９…格納部
２４２１，２４２４，２４２６，２４２８，２４２９…格納部
【図１】
2010232818.tif 000003
【図２】
2010232818.tif 000004
【図３】
2010232818.tif 000005
【図４】
2010232818.tif 000006
【図５】
2010232818.tif 000007
【図６】
2010232818.tif 000008
【図７】
2010232818.tif 000009
【図８】
2010232818.tif 000010
【図９】
2010232818.tif 000011
【図１０】
2010232818.tif 000012
【図１１】
2010232818.tif 000013
【図１２】
2010232818.tif 000014
【図１３】
2010232818.tif 000015
【図１４】
2010232818.tif 000016