(57)【要約】      （修正有）【課題】  MPLS(Multi Protocol Label Switching)ラベルを用いてイーサネット上でMPLSマルチキャストパケットを転送することができるパケット転送装置及び方法を提供する。【解決手段】  MPLSマルチキャストパケットの転送のためのアドレス情報を格納するデータベース30と、他のノードからパケットが受信されると、受信されたパケットがMPLSマルチキャストパケットなのか否かを判断し、受信されたパケットがMPLSマルチキャストパケットである場合、該当パケットのアドレスがデータベース30に存在するか否かを判断する判断部20と、データベース30にアドレスが存在するMPLSマルチキャストパケットに対して送信すべきノードを決定し、決定したノードのアドレスに応じてMPLSラベルを割り当てるパケット処理部40と、前記割り当てられたMPLSラベルを該当パケットのイーサネット目的地MAC(Medium Access Control)アドレスにマッピングするマッピング部50と、を備える。【選択図】  図９
2006197591.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのノードを含むイーサネットネットワークの各ノードにおけるＭＰＬＳ（Ｍｕｌｔｉ  Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）マルチキャストパケット転送装置であって、
ＭＰＬＳマルチキャストパケットの転送のためのアドレス情報を格納するデータベースと、
他のノードからパケットが受信されると、受信されたパケットがＭＰＬＳマルチキャストパケットであるか否かを判断し、受信されたパケットがＭＰＬＳマルチキャストパケットである場合に、該当パケットのアドレスが前記データベースに存在するか否かを判断する判断部と、
前記データベースにアドレスが存在するＭＰＬＳマルチキャストパケットに対して送信すべきノードを決定し、決定されたノードのアドレスに応じてＭＰＬＳラベルを割り当てるパケット処理部と、
前記割り当てられたＭＰＬＳラベルを該当パケットのイーサネット目的地ＭＡＣ（Ｍｅｄｉｕｍ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスにマッピングするマッピング部と、
を備えることを特徴とするイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項２】
前記ＭＰＬＳラベルがイーサネット目的地ＭＡＣアドレスにマッピングされたパケットを前記マッピング部から受信し、該受信されたパケットを送信する送信部をさらに備える
ことを特徴とする請求項１に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項３】
前記判断部は、受信されたパケットに含まれたパケットタイプフィールドを参照して、受信されたパケットがＭＰＬＳパケットであるか否かを判断する
ことを特徴とする請求項１に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項４】
前記マッピング部は、前記パケットに割り当てられたＭＰＬＳラベルを前記パケットのイーサネット目的地ＭＡＣアドレスの最下位２０ビットにマッピングする
ことを特徴とする請求項１に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項５】
前記マッピング部は、前記ＭＰＬＳラベルをマッピングしたビット以外の残りのビットに対して、予め定義されたプレフィックスをマッピングする
ことを特徴とする請求項４に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項６】
前記イーサネットネットワークのノードは、ＭＰＬＳラベルをイーサネット目的地ＭＡＣアドレスにマッピングする機能を有する
ことを特徴とする請求項１に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項７】
確認フラグを含むハローメッセージを用いて、前記イーサネットノードがＭＰＬＳラベルをイーサネット目的地ＭＡＣアドレスにマッピングする機能を有するか否かの確認を行う
ことを特徴とする請求項６に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項８】
少なくとも１つのノードを含むイーサネットネットワークの各ノードにおけるＭＰＬＳマルチキャストパケット転送装置であって、
ＭＰＬＳマルチキャストパケットの転送のためのアドレス情報を格納する第１のデータベースと、
ＩＰマルチキャストパケットの転送のためのアドレス情報を格納する第２のデータベースと、
他のノードからパケットが受信されると、受信されたパケットの種類を判断し、受信されたパケットがＭＰＬＳマルチキャストパケットである場合、該当パケットのアドレスが前記第１のデータベースに存在するか否かを判断し、受信されたパケットがＩＰマルチキャストパケットである場合、該当パケットのアドレスが前記第２のデータベースに存在するか否かを判断する判断部と、
前記第１のデータベースまたは前記第２のデータベースにアドレスが存在するパケットに対して送信すべきノードを決定し、決定されたノードのアドレスを該当パケットに割り当てるパケット処理部と、
前記割り当てられたアドレスを該当パケットのイーサネット目的地ＭＡＣアドレスにマッピングするマッピング部と、
を備えることを特徴とするイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項９】
前記パケットがＭＰＬＳマルチキャストパケットである場合、前記パケット処理部が前記パケットに割り当てるアドレスは、ＭＰＬＳラベルである
ことを特徴とする請求項８に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置。
【請求項１０】
少なくとも１つのノードを含むイーサネットネットワークの各ノードにおけるＭＰＬＳマルチキャストパケット転送方法であって、
パケットを受信する第１過程と、
受信されたパケットがＭＰＬＳマルチキャストパケットであるか否かを判断する第２過程と、
受信されたパケットがＭＰＬＳマルチキャストパケットである場合に、該当パケットのアドレスがＭＰＬＳマルチキャストパケットの転送のためのアドレス情報を格納するデータベース内に存在するか否かを判断する第３過程と、
前記データベースにアドレスが存在するＭＰＬＳマルチキャストパケットに対して送信すべきノードを決定し、決定されたノードのアドレスに応じてＭＰＬＳラベルを割り当てる第４過程と、
前記割り当てられたＭＰＬＳラベルを該当パケットのイーサネット目的地ＭＡＣアドレスにマッピングする第５過程と、
を備えることを特徴とするイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法。
【請求項１１】
前記第２過程は、受信されたパケットに含まれたパケットタイプフィールドを参照して、受信されたパケットがＭＰＬＳパケットであるか否かを判断する過程である
ことを特徴とする請求項１０に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法。
【請求項１２】
前記第２過程は、前記パケットに割り当てられたＭＰＬＳラベルを前記パケットのイーサネット目的地ＭＡＣアドレスの最下位２０ビットにマッピングするマッピング過程である
ことを特徴とする請求項１０に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法。
【請求項１３】
前記マッピング過程は、前記ＭＰＬＳラベルをマッピングしたビット以外の残りのビットに対して、予め定義されたプレフィックスをマッピングする
ことを特徴とする請求項１２に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法。
【請求項１４】
確認フラグを含むハローメッセージを交換することによって、前記イーサネットノードがＭＰＬＳラベルをイーサネット目的地ＭＡＣアドレスにマッピングする機能を有するか否かを判断する過程をさらに備える
ことを特徴とする請求項１０に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法。
【請求項１５】
イーサネットネットワークのノード間にハローメッセージを転送する過程と、
前記ハローメッセージにＭＰＬＳマルチキャストパラメータＴＬＶが含まれているか否かを判断する過程と、
前記ハローメッセージのＭフラグが“１”または“０”に設定されているかを判断する過程と、
前記ハローメッセージがＭＰＬＳマルチキャストパラメータＴＬＶを含み、前記Ｍフラグが“１”に設定される場合、前記ハローメッセージを送信したイーサネットノードがＭＰＬＳラベルをイーサネット目的地ＭＡＣアドレスにマッピングする機能を有するものと判断する過程と、
をさらに備えることを特徴とする請求項１０に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法。
【請求項１６】
前記ハローメッセージがＭＰＬＳマルチキャストパラメータＴＬＶを含まない場合、又は、前記ハローメッセージのＭフラグが“０”に設定される場合に、前記ハローメッセージを送信したイーサネットノードがＭＰＬＳラベルをイーサネット目的地ＭＡＣアドレスにマッピングする機能を有しないものと判断する過程をさらに備える
ことを特徴とする請求項１５に記載のイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、イーサネット（Ｅｔｈｅｒｎｅｔ）（「イーサネット」及び「Ｅｔｈｅｒｎｅｔ」は登録商標、以下同じ。）を介したＭＰＬＳ（Ｍｕｌｔｉ  Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）マルチキャストパケットの転送装置及び方法に関し、特に、単純化されたパケット伝達というＭＰＬＳネットワークの長所を生かすことができるＭＰＬＳマルチキャストパケットの転送装置及び方法に関する。
【背景技術】
【０００２】
ＭＰＬＳは、単純なパケット伝達方式とトラフィックエンジニアリングによる負荷分散機能を有することから、コアネットワークにおいてパケットスイッチングのための核心技術として導入されている。しかしながら、現在までのＭＰＬＳ機能の開発の大部分は、ユニキャストパケット転送のための機能に焦点が合わせられ、マルチキャスト支援のための機能の開発は、未だ足りないのが現実である。
【０００３】
また、イーサネットを介したＭＰＬＳマルチキャストパケットの転送装置及び方法が未だ開発されていない状況であって、現在は、ＩＰマルチキャストパケットをイーサネットを介して転送する方法を、ＭＰＬＳマルチキャストパケットの転送にも同様に適用している。すなわち、現在のイーサネットを介したＭＰＬＳマルチキャストパケットの転送は、ＭＰＬＳマルチキャストパケットのＩＰマルチキャストグループアドレスをイーサネットＭＡＣ（Ｍｅｄｉｕｍ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスにマッピングすることによって行われている。
【０００４】
図１及び図２は、前述のような従来技術を示す図であって、図１は、ＭＰＬＳマルチキャストパケット中のＩＰマルチキャストグループアドレスをイーサネットＭＡＣアドレスにマッピングする方法を示す図であり、図２は、従来技術によるマルチキャストアドレスのジョイン過程（joining process）を示すフローチャートである。
【０００５】
図１を参照すると、ＩＰマルチキャストグループアドレスの最下位の２３ビットがイーサネットＭＡＣアドレスの最後の２３ビットにマッピングされ、イーサネットＭＡＣアドレスの残りのビットは、予め定義されたプレフィックス（Ｐｒｅｆｉｘ）で満たされる。
【０００６】
図２は、マルチキャストネットワークに参加するノードがマルチキャストパケットを受信するために、アプリケーション階層（Ａpplication layer）２００からマルチキャストジョイン（Ｍｕｌｔｉｃａｓｔ  Ｊｏｉｎ）を実行する過程を示す。図２を参照すると、イーサネットデバイスドライバ（Ｅｔｈｅｒｎｅｔ  Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ）２２０は、マルチキャストパケットを受信したときに、該当するジョインされたマルチキャストアドレスデータベース（Ｊｏｉｎｅｄ  Ｍｕｌｔｉｃａｓｔ  Ａｄｄｒｅｓｓ  ＤＢ）を検索し、受信されたパケットのアドレスが自機がジョインしたアドレスであれば、そのパケットをＯＳネットワークスタック（Ｎｅｔｗｏｒｋ  Ｓｔａｃｋ）２１０に転送する。
【０００７】
ところが、このようにＩＰマルチキャストグループアドレスをイーサネットＭＡＣアドレスにマッピングするＭＰＬＳマルチキャストパケットの転送は、パケットを転送する時毎にＭＰＬＳマルチキャストパケット中にカプセル化された（encapsulated）ＩＰパケットをチェックして、ＩＰマルチキャストグループアドレスを確認しなければならない。このため、ＭＰＬＳの長所を生かすことができず、また、パケット伝達の非効率性という問題点を発生させていた。したがって、このような問題点を解決することができ、且つＭＰＬＳの長所を生かすことができるイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置及び方法が要求されている。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従って、本発明の目的は、ＭＰＬＳラベルを用いてイーサネット上でＭＰＬＳマルチキャストパケットを転送することができるパケット転送装置及び方法を提供することにある。
【課題を解決するための手段】
【０００９】
前記目的を達成するために、本発明の一態様によるイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置は、少なくとも１つのノードを含むイーサネットネットワークの各ノードにおけるＭＰＬＳマルチキャストパケット転送装置であって、ＭＰＬＳマルチキャストパケットの転送のためのアドレス情報を格納するデータベースと、他のノードからパケットが受信されると、受信されたパケットがＭＰＬＳマルチキャストパケットであるか否かを判断し、受信されたパケットがＭＰＬＳマルチキャストパケットである場合に、該当パケットのアドレスが前記データベースに存在するか否かを判断する判断部と、前記データベースにアドレスが存在するＭＰＬＳマルチキャストパケットに対して送信すべきノードを決定し、決定されたノードのアドレスに応じてＭＰＬＳラベルを割り当てるパケット処理部と、前記割り当てられたＭＰＬＳラベルを該当パケットのイーサネット目的地ＭＡＣアドレスにマッピングするマッピング部と、を備える。
【００１０】
また、本発明の他の態様は、少なくとも１つのノードを含むイーサネットネットワークの各ノードにおけるＭＰＬＳマルチキャストパケット転送装置であって、ＭＰＬＳマルチキャストパケットの転送のためのアドレス情報を格納する第１のデータベースと、ＩＰマルチキャストパケットの転送のためのアドレス情報を格納する第２のデータベースと、他のノードからパケットが受信されると、受信されたパケットの種類を判断し、受信されたパケットがＭＰＬＳマルチキャストパケットである場合、該当パケットのアドレスが前記第１のデータベースに存在するか否かを判断し、受信されたパケットがＩＰマルチキャストパケットである場合、該当パケットのアドレスが前記第２のデータベースに存在するか否かを判断する判断部と、前記第１のデータベースまたは前記第２のデータベースにアドレスが存在するパケットに対して送信すべきノードを決定し、決定されたノードのアドレスを該当パケットに割り当てるパケット処理部と、前記割り当てられたアドレスを該当パケットのイーサネット目的地ＭＡＣアドレスにマッピングするマッピング部と、を備える。
【００１１】
さらに、本発明の他の態様によるイーサネットを介したＭＰＬＳマルチキャストパケットの転送方法は、少なくとも１つのノードを含むイーサネットネットワークの各ノードにおけるＭＰＬＳマルチキャストパケット転送方法であって、パケットを受信する第１過程と、受信されたパケットがＭＰＬＳマルチキャストパケットであるか否かを判断する第２過程と、受信されたパケットがＭＰＬＳマルチキャストパケットである場合に、該当パケットのアドレスがＭＰＬＳマルチキャストパケットの転送のためのアドレス情報を格納するデータベースに存在するか否かを判断する第３過程と、前記データベースにアドレスが存在するＭＰＬＳマルチキャストパケットに対して送信すべきノードを決定し、決定されたノードのアドレスに応じてＭＰＬＳラベルを割り当てる第４過程と、前記割り当てられたＭＰＬＳラベルを該当パケットのイーサネット目的地ＭＡＣアドレスにマッピングする第５過程と、を備える。
【発明の効果】
【００１２】
本発明を適用することによって、ＭＰＬＳマルチキャストパケットをイーサネットで転送するときに、ＭＰＬＳラベルによりカプセル化された（encapsulated）ＩＰヘッダーを参照することが必要でなくなるので、パケット伝達の非効率性を除去し、高速のパケット伝達を可能にする。
【発明を実施するための最良の形態】
【００１３】
以下、添付図面を参照して、本発明を適用した好適な実施の形態を詳細に説明する。なお、本発明の要旨を不明確にする公知の機能及び構成についての詳細な説明は省略する。
【００１４】
以下に記述する本発明の実施形態では、ＭＰＬＳ（Ｍｕｌｔｉ  Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）ラベルのみを用いてイーサネット上でＭＰＬＳマルチキャストパケットを転送するために、ＭＰＬＳラベルをイーサネットＭＡＣにマッピングする方法を使用する。
【００１５】
このために、本発明の実施形態では、ＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスにマッピングする方法と、このようにＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスにマッピングしたＭＰＬＳマルチキャストパケットをイーサネット上で転送するアルゴリズム、及び本発明を支援するネットワーク上のノードを発見するためのＭＰＬＳ信号プロトコルの拡張を提案する。
【００１６】
一方、イーサネットＭＡＣアドレスは、イーサネットソースＭＡＣ（Ｅｔｈｅｒｎｅｔ  Ｓｏｕｒｃｅ  ＭＡＣ）アドレスとイーサネット目的地ＭＡＣ（Ｅｔｈｅｒｎｅｔ  Ｄｅｓｔｉｎａｔｉｏｎ  ＭＡＣ）アドレスとに分けられることができるが、マッピングは、イーサネット目的地ＭＡＣアドレスで行われる。したがって、下記で別途に言及せずに使用した「イーサネットＭＡＣ」という用語は、イーサネット目的地ＭＡＣを称する。
【００１７】
まず、図面を参照して本発明が適用され得るネットワーク及びこのネットワークにおいてのマルチキャストパケット転送を説明する。本発明は、少なくとも１つ以上のノード（例えば、ルータ、スイッチなど）を含み、イーサネットを基盤とするＭＰＬＳネットワークに適用されることができる。
【００１８】
図３は、ＭＰＬＳネットワークにおいてのマルチキャストパケット転送のためのシグナリング（ｓｉｇｎａｌｉｎｇ）過程を示す図である。
【００１９】
図３に示されたシグナリング過程は、該当ネットワークにおいての経路（ｐａｔｈ）ラベル確認のための過程である。図３に示されるように、１つ以上のダウンストリーム・ルータがマルチキャストグループに加入したブランチノード（例えば、Ｒ２及びＲ３）では、ＰＡＴＨメッセージがレプリケーション（Ｒｅｐｌｉｃａｔｉｏｎ）されて、適切なルータに伝達されなければならない。また、ＰＡＴＨに対する応答であるＲＥＳＶメッセージは、ブランチノードで合流（Ｍｅｒｇｅ）されて、アップストリーム・ルータに転送されなければならない。
【００２０】
図４は、ＭＰＬＳネットワークにおいてのマルチキャストパケット転送過程を示す図である。
【００２１】
図３のシグナリング過程によりラベルを確認した後、各々のノードは、図４に示すようにマルチキャストパケットを転送する。すなわち、各々のノードは、ＭＰＬＳマルチキャストパケットが受信されると、マルチキャストラベル伝達テーブルを参照し、次のホップ（すなわちノード）上でラベルオペレーションを行った後に、そのパケットを転送する。ブランチノードは、１つのＭＰＬＳマルチキャストパケットが受信されると、ＭＰＬＳマルチキャストＬＳＰ（Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ  Ｐａｔｈ）が設定された全てのノードに、受信されたＭＰＬＳマルチキャストパケットをレプリケーションして転送しなければならない。図４を例に取って説明すると、Ｒ２は、ラベル１３を有するパケットをＲ１から受信すると、受信したパケットのラベルを３４に変更してＲ３に送信し、また、受信したパケットのラベルを１０に変更してＲ６に送信する。図４に示された他のノードでのパケット転送もやはり図面を参照して同様の方法で行われることが分かるので、これ以上の説明は省略する。
【００２２】
一方、このようなネットワークに含まれた各々のノードは、本発明の機能（後述するマッピング機能をいう。以下同様。）を支援できるノードであることができ、或いは本発明の機能を支援できないノードであることもできる。一般的に、ＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスにマッピングする本発明の機能を使用してＭＰＬＳマルチキャストパケットを転送するためには、該当イーサネットリンクの全てのＭＰＬＳノードがこの機能を支援しなければならない。したがって、各々のノードに対して本発明の機能の支援可否を確認することができる方法が要求される。このために、ＭＰＬＳ信号プロトコルを拡張して、本発明の機能を支援するネットワーク上のノードを発見できるようにする。そして、信号プロトコルの拡張のためには、ＭＰＬＳマルチキャストパラメータＴＬＶ（Ｔｙｐｅ、  Ｌｅｎｇｔｙ  ａｎｄ  Ｖａｌｕｅ）が追加的に含まれるハローメッセージ（Ｈｅｌｌｏ  Ｍｅｓｓａｇｅ）を使用する。
【００２３】
図５は、本発明によるシグナリングのために提案されるハローメッセージのフォーマットの一部分を示す図である。
【００２４】
図５に示されたフォーマットで、Ｍ（４００）は、ＭＰＬＳ機能が設定されたイーサネットインタフェースがＭＰＬＳラベルをイーサネットＭＡＣアドレスにマッピングする機能を支援するか否かを示すフラグである。例えば、Ｍの値が１ならば、当該イーサネットインタフェースがＭＰＬＳラベルをイーサネットＭＡＣアドレスにマッピングする機能を支援するイーサネットインタフェースであり、Ｍの値が０ならば、当該イーサネットインタフェースがそのようなマッピング機能を支援しないイーサネットインタフェースである、と設定することができる。もちろん、このような設定値は、他の値に設定されることもでき、本発明は、このような具体的な数値に限定されるものではない。なお、図５に示されたフォーマットの他の要素は、ＭＰＬＳ信号プロトコルに使われる一般的な内容であるため、それらについての説明は省略する。
【００２５】
すなわち、図５に示されたハローメッセージは、図３のシグナリング過程に使用されることができる。このようなハローメッセージを使用することで、上述したマッピング機能を支援するノードを確認することができるようになる。
【００２６】
次に、本発明に従って、ＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスに写像する方法について説明する。
【００２７】
図６は、本発明で使用されることができるパケットのフォーマットを示す図である。
【００２８】
図６に示されるように、本実施形態で使用されるパケットは、データ（ｄａｔａ）６００、ＩＰマルチキャストグループアドレス（ＭＣ  ＧＲＰ；ＩＰ  Ｍｕｌｔｉｃａｓｔ  Ｇｒｏｕｐ  Ａｄｄｒｅｓｓ）６０２、ＩＰマルチキャストソースアドレス（ＩＰ  ＳＲＣ；ＩＰ  Ｍｕｌｔｉｃａｓｔ  Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）６０４、マルチキャストラベル（ＭＬ；Ｍｕｌｔｉｃａｓｔ  Ｌａｂｅｌ）６０６、パケットタイプ（ＴＹＰ；Ｔｙｐｅ）６０８、イーサネットソースＭＡＣアドレス（ＥＴＨ  ＳＲＣ  ＭＡＣ；Ｅｔｈｅｒｎｅｔ  Ｍｕｌｔｉｃａｓｔ  Ｓｏｕｒｃｅ  ＭＡＣ）６１０及びイーサネット目的地ＭＡＣアドレス（ＥＴＨ  ＤＳＴ  ＭＡＣ；Ｅｔｈｅｒｎｅｔ  Ｍｕｌｔｉｃａｓｔ  Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）６１２のフィールドを含むことができる。ここで、データフィールド６００は、適切なパケットによって転送されるデータであり、ＩＰマルチキャストグループアドレスフィールド６０２及びＩＰマルチキャストソースアドレスフィールド６０４は、ＩＰヘッダーであり、マルチキャストラベル６０６は、マルチキャストネットワークにおいてパケットを転送するために使用される。パケットタイプフィールド６０８は、該当パケットの種類を確認（識別）するために使用される。例えば、パケットタイプフィールド６０８の値が０×８８４８の場合には、そのパケットは、ＭＰＬＳマルチキャストパケットになることができる。イーサネットソースＭＡＣアドレスフィールド６１０及びイーサネット目的地ＭＡＣアドレスフィールド６１２は、イーサネットでのパケット転送のために使用されるイーサネットヘッダーに相当するものである。
【００２９】
本発明の実施形態では、イーサネットを介したＭＰＬＳマルチキャストパケットの転送のためのマッピングにおいて、マルチキャストラベルフィールド６０６は、イーサネット目的地ＭＡＣアドレスフィールド６１２にマッピング（写像）される。これは、図７に示されている。
【００３０】
図７は、ＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスにマッピングする方法について示す図である。
【００３１】
本実施形態では、図７に示されるように、ＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスの最下位２０ビットにマッピングする。そして、その他のアドレスに対しては、図１に示されたＩＰマルチキャストグループアドレスマッピングと同様の方法を使用したり、或いは特別に定義されたプレフィックス（Ｐｒｅｆｉｘ）を使用することができる。
【００３２】
図８は、本発明によるマルチキャストアドレスのジョインを示す図である。
【００３３】
図８は、マルチキャストネットワークに参加するノードがマルチキャストパケットを受信するために、アプリケーション階層（Ａｐｐｌｉｃａｔｉｏｎ）８００からマルチキャストジョイン（Ｍｕｌｔｉｃａｓｔ  Ｊｏｉｎ）する過程を示す。換言すると、ジョイン過程とは、図３に示されたシグナリング過程により収集した情報を参照して、該当ノードでのパケット転送に関連した情報を設定することである。すなわち、ジョインは、受信されるパケットのアドレス（例えば、ＩＰアドレスやＭＰＬＳラベルなどの、パケットの転送のために使われる情報）に応じて、該当パケットを或るアドレスを有するノードに送信すべきかに関する情報などを設定するものである。
【００３４】
本実施形態では、ＩＰマルチキャストジョインとＭＰＬＳマルチキャストジョインとが別途に行われる。すなわち、図８に示すように、本発明の実施形態では、ＯＳネットワークスタック（ＯＳ  Ｎｅｔｗｏｒｋ  Ｓｔａｃｋ）８１０及びイーサネットデバイスドライバ（Ｅｔｈｅｒｎｅｔ  Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ）８２０は、各々ＩＰマルチキャストアドレスを格納する（第２のデータベースとしての）データベース８１２，８２２及びＭＰＬＳマルチキャストアドレスを格納する（第１のデータベースとしての）データベース８１４，８２４を含む。
【００３５】
図８で、イーサネットデバイスドライバ８２０は、マルチキャストパケットを受信すると、受信したパケットの種類を確認する。すなわち、イーサネットデバイスドライバ８２０は、受信されたマルチキャストパケットがＩＰマルチキャストパケットであるか、またはＭＰＬＳマルチキャストパケットであるのか、を確認する。イーサネットデバイスドライバ８２０は、受信したパケットの種類を確認した後、該当するデータベース（Ｊｏｉｎｅｄ  Ｍｕｌｔｉｃａｓｔ  Ａｄｄｒｅｓｓ  ＤＢ）８２２または８２４を検索し、受信されたパケットのアドレスが自機がジョインしたアドレスであるか否かを確認する。すなわち、イーサネットデバイスドライバ８２０は、受信されたパケットがＩＰマルチキャストパケットである場合には、ＩＰ用データベース８２２を検索し、受信されたマルチキャストパケットがＭＰＬＳマルチキャストパケットである場合には、ＭＰＬＳ用データベース８２４を検索する。イーサネットデバイスドライバ８２０は、かかる検索の結果、該当パケットのアドレスが検索したデータベースに存在する場合には、該当パケットをＯＳネットワークスタック８１０に転送する。
【００３６】
ＯＳネットワークスタック８１０は、イーサネットデバイスドライバ８２０から受信したＭＰＬＳマルチキャストパケットについてのオペレーション及び送信インタフェースを決定する。
【００３７】
これにより、本実施形態では、ＭＰＬＳマルチキャストパケットに対してＭＰＬＳラベルのみを使用してイーサネットを介した転送が可能となる。
【００３８】
図９は、本発明を適用したイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置の構成を示す図であり、図８のイーサネットデバイスドライバ８２０のブロック構成図である。
【００３９】
図９に示すように、本発明を適用したパケット転送装置は、ＭＰＬＳマルチキャストパケットアドレスを格納するデータベース３０と、パケット受信部１０と、受信したパケットがＩＰマルチキャストパケットであるか、またはＭＰＬＳマルチキャストパケットであるのか、などのパケット種類を判断し、受信したパケットのアドレスがデータベースに格納されているか否かを判断する判断部２０と、当該アドレスがデータベースに格納されているパケット、すなわちジョインされたパケットに対して送信すべきノード、すなわち送信すべきインタフェースを決定し、決定されたインタフェースに応じて該当パケットに割り当てるラベルを決定するパケット処理部４０と、該当パケットに割り当てられたＭＰＬＳラベルを該当パケットのイーサネット目的地ＭＡＣアドレス６１２にマッピングするマッピング部５０と、マッピングされたパケットを送信するパケット送信部６０とを備えることができる。
【００４０】
一方、本発明を適用したイーサネットでのＭＰＬＳマルチキャストパケットの転送は、次のように行われる。
【００４１】
図１０は、本発明を適用したイーサネットを介したＭＰＬＳマルチキャストパケットの送受信過程を示すフローチャートである。
【００４２】
本実施形態のパケット転送装置は、ステップＳ９００で、パケット受信部１０によってイーサネットパケットを受信し、続くステップＳ９０２で、受信したパケットがＭＰＬＳマルチキャストパケットであるか否かを判断部２０によって判断する。この判断は、受信したパケットのパケットタイプフィールド６０６の値を確認することによって行われることができる。本実施形態のパケット転送装置では、かかる判断結果、受信したパケットがＭＰＬＳマルチキャストパケットではなくＩＰマルチキャストパケットである（ステップＳ９０２でＮＯ）と判断されると、受信したパケットをＩＰマルチキャストパケット処理方法によって処理することになるが、それについては、従来技術の説明を参照されたい。
【００４３】
本実施形態のパケット転送装置は、ＭＰＬＳマルチキャストパケットである（ステップＳ９０２でＹＥＳ）と判断されたパケットに対して、ステップＳ９０４で、該当パケットのイーサネットＭＡＣアドレスがＭＰＬＳマルチキャストパケットのためのデータベースに格納されているか否かを判断部２０によって確認する。本実施形態のパケット転送装置は、ＭＰＬＳパケットのためのデータベースに該当パケットのイーサネットＭＡＣアドレスが格納されていれば（ステップＳ９０４でＹＥＳ）、ステップＳ９０６に移行し、一方、データベースにアドレスが存在しないパケットについては、誤って転送されたパケットである（ステップＳ９０４でＮＯ）と判断し、該パケットをドロップ（ｄｒｏｐ）させる。これらの過程は、イーサネットデバイスドライバ８２０で行われる。
【００４４】
本実施形態のパケット転送装置は、ステップＳ９０６で、データベースにアドレスが存在するＭＰＬＳマルチキャストパケットに対するラベルオペレーション及び該当パケットを送信するインタフェース決定をパケット処理部４０によって行い、該決定されたインタフェースに応じて該当パケットにＭＰＬＳラベルを割り当てる。また、パケット転送装置は、ステップＳ９０８で、マッピング部６０によって、該当パケットに割り当てられたＭＰＬＳラベルを該当パケットのイーサネットＭＡＣアドレスにマッピングする。さらに、パケット転送装置は、ステップＳ９１０で、ＭＰＬＳラベルをイーサネットＭＡＣアドレスにマッピングしたイーサネットパケットをパケット送信部６０によって送信する。
【００４５】
図３乃至図１０を参照して、前述した本発明については、以下のように要約することができる。
【００４６】
ＭＰＬＳ信号プロトコルは、図５に示されたハローメッセージを交換して、図３に示されたイーサネットネットワーク上のＭＰＬＳノードを発見（Ｄｉｓｃｏｖｅｒｙ）する。特に、図５のハローメッセージは、本発明が適用されるＭＰＬＳノードを発見するために使用されることができる。この際、該当ハローメッセージ内にＭＰＬＳマルチキャストパラメータＴＬＶが存在し、“Ｍ”フラグが“１”に設定される場合には、該当ノードは、ＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスにマッピングする方法を支援すると判断されることができる。仮に、該当ハローメッセージ内にＭＰＬＳマルチキャストパラメータＴＬＶが存在しない場合、又は、“Ｍ”フラグが“０”に設定される場合には、イーサネットＭＡＣアドレスにＭＰＬＳマルチキャストラベルをマッピングする方法を支援しないので、ＩＰマルチキャストグループアドレスをマッピングするパケット転送方法を使用する。
【００４７】
全てのＭＰＬＳノードが本発明の上述のマッピング方法を支援する場合には、ＭＰＬＳ信号プロトコルは、マルチキャストラベルバインディング情報を受信し、または設定するときに、該当する適切なラベルを用いてＯＳネットワークスタック８１０及びイーサネットデバイスドライバ８２０にＭＰＬＳマルチキャストジョインを行う。
【００４８】
各ノードは、ＭＰＬＳマルチキャストパケットを受信すると、イーサネットデバイスドライバ８２０内のＭＰＬＳ用のジョインされたマルチキャストデータベース８２４を参照して、該当パケットを、ＯＳネットワークスタック８１０に転送し、或いは図示しないＭＰＬＳマルチキャストパケット伝達エンジンに送信する。
【００４９】
一方、各ノードは、ＭＰＬＳマルチキャストパケットを送信する際に、ＭＰＬＳマルチキャストパケット伝達テーブルを参照してラベルオペレーションを行い、該当送信インタフェース（Ｏｕｔｇｏｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を決定する。このように決定されたＭＰＬＳラベルを有するパケットは、予め定義されたプレフィックス（Ｐｒｅｆｉｘ）にＭＰＬＳラベルを最下位の２０ビットにマッピングしたイーサネットＭＡＣアドレスが付加されて送信される。
【００５０】
すなわち、本実施形態によれば、イーサネットを介したＭＰＬＳマルチキャストパケットの転送において、ＩＰヘッダーを参照することなく、ＭＰＬＳマルチキャストラベルのみを使用してパケットを転送することが可能になる。
【図面の簡単な説明】
【００５１】
【図１】ＭＰＬＳマルチキャストパケット中のＩＰマルチキャストグループアドレスをイーサネットＭＡＣアドレスにマッピングする方法を示す図である。
【図２】従来技術によるマルチキャストアドレスのジョイン（Ｊｏｉｎ）過程を示すフローチャートである。
【図３】ＭＰＬＳネットワークにおいてのマルチキャストパケット転送のためのシグナリング過程を示す図である。
【図４】ＭＰＬＳネットワークにおけるマルチキャストパケット転送過程を示す図である。
【図５】本発明によるシグナリングのために提案されるハローメッセージのフォーマットの一部分を示す図である。
【図６】本発明で使用されることができるパケットのフォーマットを示す図である。
【図７】ＭＰＬＳマルチキャストラベルをイーサネットＭＡＣアドレスにマッピングする方法を説明するための図である。
【図８】本発明によるマルチキャストアドレスのジョインを示す図である。
【図９】本発明によるイーサネットを介したＭＰＬＳマルチキャストパケットの転送装置の構成を示す図である。
【図１０】本発明によるイーサネットを介したＭＰＬＳマルチキャストパケットの送受信過程を示すフローチャートである。
【符号の説明】
【００５２】
２０  判断部
３０  データベース
４０  パケット処理部
５０  マッピング部
８００  アプリケーション階層
８１０  ＯＳネットワークスタック
８１２，８２２  ＩＰマルチキャストアドレスデータベース（第２のデータベース）
８１４，８２４  ＭＰＬＳマルチキャストアドレスデータベース（第１のデータベース）
８２０  イーサネットデバイスドライバ
【図１】
2006197591.tif 000003
【図２】
2006197591.tif 000004
【図３】
2006197591.tif 000005
【図４】
2006197591.tif 000006
【図５】
2006197591.tif 000007
【図６】
2006197591.tif 000008
【図７】
2006197591.tif 000009
【図８】
2006197591.tif 000010
【図９】
2006197591.tif 000011
【図１０】
2006197591.tif 000012