(57)【特許請求の範囲】
【請求項１】
マルチプロトコルラベルスイッチング（ＭＰＬＳ）ドメイン内の出口ルータが、複数の異なるトラフィックフローを受信することであって、前記トラフィックフローの各トラフィックフローが、それぞれフロールーティングラベルおよび宛先アドレスを有する複数のフレームを含み、前記トラフィックフローの第１のトラフィックフローの前記複数のフレームの各フレームおよび前記トラフィックフローの第２のトラフィックフローの前記複数のフレームの各フレームが共通の宛先アドレスを有することと、
出口ルータが、共通の宛先アドレスは出口ルータには不明であると判断することと、
出口ルータが、前記複数のフレームの各フレームのフロールーティングラベルを処理することであって、前記処理が、前記複数のフレームの各フレームに対するフロールーティングラベルの構成を前記トラフィックフローのそれぞれのトラフィックフローに相互に関連付けることを含むことと、
前記処理の結果、前記複数のフレームの現在処理されているフレームのフロールーティングラベルが、前記トラフィックフローの第１のトラフィックフローに対応すると判断することに応じて、出口ルータにより、前記複数のフレームの現在処理されているフレームを出口ルータのアクティブ仮想プライベートＬＡＮサービス（ＶＰＬＳ）ドメイン上のすべてのローカルアクセスポートにフラッドすることなく前記複数のフレームの現在処理されているフレームが廃棄されるようにすることと、
前記処理の結果、前記複数のフレームの現在処理されているフレームのフロールーティングラベルが、前記トラフィックフローの第２のトラフィックフローに対応すると判断することに応じて、出口ルータは、前記複数のフレームの現在処理されているフレームが、出口ルータのアクティブＶＰＬＳドメイン上のすべてのローカルアクセスポートにフラッドされるようにすることと
を含む、方法。
【請求項２】
ＭＰＬＳドメイン内の入口ルータが、前記トラフィックフローの第１のトラフィックフローの前記複数のフレームの各フレームを出口ルータに向けて転送する前に、前記トラフィックフローの第１のトラフィックフローの前記複数のフレームの各フレームにフロールーティングラベルを組み付けること
をさらに含む、請求項１に記載の方法。
【請求項３】
入口ルータが、第１の送信元アドレスを、第１の送信元アドレスを示すフレームに要求されるフロールーティングのタイプと関連付ける情報を中に有するトラフィックフローのデータ構造を維持することであって、前記組み付けることが、入口ルータそれによって受信されたフレームが第１の送信元アドレスを示すと判断すること、および第１の送信元アドレスに対応するフロールーティングのタイプを識別するためにトラフィックフローのデータ構造をチェックすることを含むこと
をさらに含む、請求項２に記載の方法。
【請求項４】
入口ルータおよび出口ルータが、それぞれのラベルテーブルをそれぞれ維持することをさらに含み、
各ラベルテーブルが、少なくとも１つのセットのラベルスイッチパス（ＬＳＰ）情報を含み、
前記ＬＳＰ情報が、ＬＳＰ指示子、通常のフロールーティング機能を示すフロールーティングラベル、および制御されるフロールーティング機能を示すフロールーティングラベルを含み、
前記通常のフロールーティング機能が、フレームをアクティブＶＰＬＳドメイン上のすべてのローカルアクセスポートにフラッドさせることを含み、
前記制御されるフロールーティング機能が、フレームをアクティブＶＰＬＳドメイン上のすべてのローカルアクセスポートにフラッドさせずに廃棄させることを含む、
請求項３に記載の方法。
【請求項５】
さらに中継ルータが入口ルータと出口ルータとの間に結合され、
中継ルータが、受信ラベルテーブルおよび送信ラベルテーブルを保持し、
受信ラベルテーブルおよび送信ラベルテーブルがそれぞれ少なくとも１つのセットのＬＳＰ情報を含む、
請求項４に記載の方法。
【請求項６】
ＭＰＬＳドメイン内の各ルータが、それぞれのラベルテーブルを維持することをさらに含み、
各ラベルテーブルが、少なくとも１つのセットのラベルスイッチパス（ＬＳＰ）情報を含み、
前記ＬＳＰ情報が、ＬＳＰ指示子、通常のフロールーティング機能を示すフロールーティングラベル、および制御されるフロールーティング機能を示すフロールーティングラベルを含み、
前記通常のフロールーティング機能が、フレームをアクティブＶＰＬＳドメイン上のすべてのローカルアクセスポートにフラッドさせることを含み、
前記制御されるフロールーティング機能が、フレームをアクティブＶＰＬＳドメイン上のすべてのローカルアクセスポートにフラッドさせずに廃棄させることを含む、
請求項１に記載の方法。
【請求項７】
トラフィックフローのデータ構造およびそれぞれの送信ラベルテーブルを含む入口処理モジュールであって、トラフィックフローのデータ構造が、少なくとも１つの送信元アドレスをそれぞれのタイプのフロールーティング機能と関連付ける情報をデータ構造の中に含み、入口処理モジュールの送信ラベルテーブルが、少なくとも１つのセットのラベルスイッチパス（ＬＳＰ）情報を含み、前記ＬＳＰ情報がＬＳＰ指示子、通常のフロールーティング機能を示すフロールーティングラベル、および制御されるフロールーティング機能を示すフロールーティングラベルを含み、入口処理モジュールが、入口処理モジュールによって前記少なくとも１つの送信元アドレスから受信された各フレームにフロールーティングラベルを組み付けるように構成され、前記組み付けることが、トラフィックフローのデータ構造に含まれる情報および入口処理モジュールの送信ラベルテーブルに含まれる情報を頼りに行われる、入口処理モジュールと、
それぞれの受信ラベルテーブルを含む出口処理モジュールであって、出口処理モジュールの受信ラベルテーブルが少なくとも１つのセットの前記ＬＳＰ情報を含み、出口処理モジュールがそれぞれ複数のフレームを含んだ複数の異なるトラフィックフローを受信し、出口処理モジュールによって受信された前記複数のフレームの各フレームのフロールーティングラベルの構成を、出口処理モジュールの受信ラベルテーブルに含まれる情報を使用して前記トラフィックフローのそれぞれのトラフィックフローと互いに関連付け、フレームが通常のフロールーティング機能を示すフロールーティングラベルを含むとき、出口処理モジュールの前記トラフィックフローのフレームをフラッドして出口処理モジュールのアクティブ仮想プライベートＬＡＮサービス（ＶＰＬＳ）ドメイン上のすべてのローカルアクセスポートにフラッドさせ、フレームが制御されるフロールーティング機能を示すフロールーティングラベルを含むとき、フレームをアクティブＶＰＳＬドメイン上の前記ローカルアクセスポートのすべてにフラッドさせずに廃棄させるように構成された、出口処理モジュールと、
それぞれの受信ラベルテーブルおよびそれぞれの送信ラベルテーブルを含む中継処理モジュールであって、前記受信ラベルテーブルおよび送信ラベルテーブルが、それぞれ少なくとも１つのセットの前記ＬＳＰ情報を含み、前記中継処理モジュールが、それぞれ複数のフレームを含んだ複数の異なるトラフィックフローを受信し、中継処理モジュールによって受信された前記複数のフレームのそれぞれのフレームのフロールーティングラベルを中継処理モジュールの送信ラベルテーブル内の対応するフロールーティングラベルと交換するように構成され、前記交換することが、中継処理モジュールの前記受信および送信ラベルテーブルに含まれる情報を頼りに行われる、中継処理モジュールと
を含む，ルータ。
【請求項８】
トラフィックフローのデータ構造が、第２のルータによって受信されたトラフィックフローの各送信元アドレスを前記通常のフロールーティング機能か、前記制御されるフロールーティング機能と関連付ける、請求項７に記載のルータ。
【請求項９】
前記ラベルテーブルの各ラベルテーブルが、
第１のＬＳＰ指示子を、通常のフロールーティング機能を示す第１のフロールーティングラベルおよび制御されるフロールーティング機能を示す第１のフロールーティングラベルと関連付け、
第２のＬＳＰ指示子を、通常のフロールーティング機能を示す第２のフロールーティングラベル、および制御されるフロールーティング機能を示す第２のフロールーティングラベルと関連付ける、
請求項７に記載のルータ。
【請求項１０】
出口処理モジュールが、フレームの宛先アドレスが出口処理モジュールには不明になったと判断することに応じて前記廃棄することを行うように構成された、請求項７に記載のルータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で行う開示は、概してネットワークにおいてパケットフラッド制御を提供することに関し、より詳細には、ネットワークのマルチプロトコルラベルスイッチングドメイン内の出口エッジルータでパケットフラッド制御を提供することに関する。
【背景技術】
【０００２】
プロバイダエッジ（ＰＥ）ルータに対するクライアントの宛先ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ、媒体アクセス制御）アドレスがわかっているとき、サーバからＰＥルータに送信されるパケットは、（図１に示すように）ＰＥルータによってクライアントにユニキャストされる。したがって、このようにユニキャストすることにより、パケットは、そのＭＡＣアドレスによって識別される意図するクライアントにのみ送信されることを保証する。対照的に、マルチプロトコルラベルスイッチング（ＭＰＬＳ）の設計によって、クライアントの宛先ＭＡＣアドレスが不明になるとき、サーバからＰＥルータに送信されるパケットは、（図２に示すように）不明のクライアントとして、同じ仮想プライベートＬＡＮ（ローカルエリアネットワーク）サービス（ＶＰＬＳ）ドメイン内にあるＰＥルータのすべてのローカルアクセスポートにフラッドされる。このフラッディング（ｆｌｏｏｄｉｎｇ）は、このようなパケットを送信しているサーバアプリケーションがこのようなフラッディングをやめるまで続くことになる。ＰＥルータのすべてのローカルアクセスポートにフラッドされたパケットのいずれかが機密情報を含んでいる場合、意図しないクライアントが機密情報を含んだこのようなパケットを受信することになるので、これは潜在的なセキュリティ問題となる可能性がある。
【０００３】
チップセットファミリのあるブランドでは、ＣＭＬ（すなわちＣＰＵ  Ｍａｎａｇｅｄ  Ｌｅａｒｎｉｎｇ）レジスタによってパケットフラッド制御を管理することができる。このレジスタの指定の設定により、パケットは廃棄され、ＣＰＵへ送信される、またはパケットをフラッドすることが可能になる。宛先ＭＡＣアドレスが利用できないもの（すなわち不明の宛先）となる場合、セキュリティの目的で最も望ましいＣＭＬレジスタの設定は、すべてのパケットを廃棄し、同じＶＰＬＳドメイン内の他のアクセスポートにパケットをフラッドしないことである。残念ながら、この設定は、ポート／仮想ポート毎に適用されるので、このオプションが設定されると、（図３に示すように）この不明の宛先のクライアントに向かうすべてのパケットが廃棄されることになる。望ましくないことに、これは、異なる送信元（例えばサーバ）からのパケットが機密情報を含まない場合でも、またＶＰＬＳサービスドメイン内の他の送信元からのこのようなパケットについては、宛先を発見してフローパスを再設定できるように伝統的なフラッディングを許可することが最も望ましい場合でも、このようなパケットを含む。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明に従って構成されたパケットフラッド制御の実施形態は、パケットフラッド制御を提供するための従来技術の手法と関連する欠点を克服する形でパケットフラッド制御を提供する。例えば、本発明の実施形態に従ってパケットフラッド制御を行うことにより、ＰＥルータにおいて不明のアドレスに向かうパケットが、ポート／仮想ポート毎とは対照的にフロー毎に廃棄されることが可能になる。このように、本発明に従って構成されたパケットフラッド制御の実施形態は有利であり、望ましく、また有益である。
【課題を解決するための手段】
【０００５】
本発明の１つの実施形態では、方法は複数の動作を含む。マルチプロトコルラベルスイッチング（ＭＰＬＳ）ドメイン内の出口ルータが、複数の異なるトラフィックフローを受信するための動作を行う。トラフィックフローのそれぞれは、フロールーティングラベルおよび宛先アドレスを有する複数のフレームを含む。トラフィックフローの第１のフローのフレームのそれぞれ、およびトラフィックフローの第２のフローのフレームのそれぞれは、共通の宛先アドレスを有する。出口ルータは、共通の宛先アドレスが出口ルータには不明であることを判断するための動作を行い、フレームのそれぞれのフロールーティングラベルを処理するための動作を行う。このような処理は、フレームのそれぞれのフロールーティングラベルの構成をトラフィックフローのそれぞれに相互に関連付けることを含む。このような処理の結果、フレームの現在処理されているフレームのフロールーティングラベルがトラフィックフローの第１のトラフィックフローに対応すると判断するのに応じて、出口ルータは、フレームの現在処理されているフレームを出口ルータのアクティブ仮想プライベートＬＡＮサービス（ＶＰＬＳ）ドメイン上のすべてのローカルアクセスポートにフラッドさせることなく、フレームの現在処理されているフレームを廃棄させるための動作を行う。このような処理の結果、フレームの現在処理されているフレームのフロールーティングラベルがトラフィックフローの第２のトラフィックフローに対応すると判断するのに応じて、出口ルータは、フレームの現在処理されているフレームを出口ルータのアクティブＶＰＬＳドメイン上のすべてのローカルアクセスポートにフラッドさせるための動作を行う。
【０００６】
本発明の別の実施形態では、ネットワークシステムは、少なくとも１つのセットのラベルスイッチングパス（ＬＳＰ）情報を含むそれぞれの受信ラベルテーブルを格納した第１のルータを含む。ＬＳＰ情報は、ＬＳＰ指示子、通常のフロールーティング機能を示すフロールーティングラベル、および制御されるフロールーティング機能を示すフロールーティングラベルを含む。第１のルータは、それぞれ複数のフレームを含む複数の異なるトラフィックフローを受信し、それによって受信されたフレームのそれぞれのフロールーティングラベルの構成を、その受信ラベルテーブルに含まれている情報を使用してトラフィックフローのそれぞれと相互に関連付け、第１のルータのトラフィックフローのフレームが通常のフロールーティング機能を示すフロールーティングラベルを含むとき、そのアクティブ仮想プライベートＬＡＮサービス（ＶＰＬＳ）ドメイン上のすべてのローカルアクセスポートにそのフレームをフラッドさせ、フレームが制御されるフロールーティング機能を示すフロールーティングラベルを有するとき、アクティブＶＰＬＳドメイン上のローカルアクセスポートのすべてにフラッドさせることなくフレームを廃棄するように構成される。
【０００７】
本発明の別の実施形態では、ルータは、入口処理モジュール、出口処理モジュール、および中継処理モジュールを含む。入口処理モジュールは、トラフィックフローのデータ構造、およびそれぞれの送信ラベルテーブルを含む。トラフィックフローのデータ構造は、その中に少なくとも１つの送信元アドレスをフロールーティング機能のそれぞれのタイプと関連付ける情報を含む。その送信ラベルテーブルは、少なくとも１つのセットのラベルスイッチパス（ＬＳＰ）情報を含む。ＬＳＰ情報は、ＬＳＰ指示子、通常のフロールーティング機能を示すフロールーティングラベル、および制御されるフロールーティング機能を示すフロールーティングラベルを含む。入口処理モジュールは、それによって少なくとも１つの送信元アドレスから受信された各フレームにフロールーティングラベルを組み付ける（ｉｍｐｏｓｉｎｇ）ように構成される。このような組付けは、トラフィックフローのデータ構造に含まれている情報、およびその送信ラベルテーブルに含まれている情報に依存して行われる。出口処理モジュールは、少なくとも１つのセットのＬＳＰ情報を含むそれぞれの受信ラベルテーブルを含む。出口処理モジュールは、それぞれ複数のフレームを含んだ複数の異なるトラフィックフローを受信し、それによって受信されたフレームのそれぞれのフロールーティングラベルの構成を、その受信ラベルテーブルに含まれている情報を使用してトラフィックフローのそれぞれに相互に関連付け、フレームが通常のフロールーティング機能を示すフロールーティングラベルを含むとき、出口処理モジュールのトラフィックフローのフレームをフラッドしてそのアクティブ仮想プライベートＬＡＮサービス（ＶＰＬＳ）ドメイン上のすべてのローカルアクセスポートにフラッドさせ、フレームが制御されるフロールーティング機能を示すフロールーティングラベルを含むとき、アクティブＶＰＬＳドメイン上のローカルアクセスポートのすべてにフラッドさせることなくフレームを廃棄させるように構成される。中継処理モジュールは、それぞれの受信ラベルテーブルおよびそれぞれの送信レベルテーブルを含む。中継処理モジュールの受信ラベルテーブルおよび送信ラベルテーブルは、それぞれ少なくとも１つのセットのＬＳＰ情報を含む。中継処理モジュールは、それぞれ複数のフレームを含む複数の異なるトラフィックフローを受信し、それによって受信されたフレームのそれぞれのフロールーティングラベルをその送信ラベルテーブル内の対応するフロールーティングラベルと交換するように構成される。このような交換は、その受信（ｉｎｂｏｕｎｄ）ラベルテーブルおよび送信ラベルテーブルに含まれている情報を頼りに行われる。
【０００８】
上述のように、パケットフラッド制御を提供するための先行技術（すなわち従来型）の手法は、フロー毎のフローレベルの制御を提供しない。対照的に、本発明の諸実施形態は、フローレベル（すなわちフロー毎の）のフラッド制御を提供し、それによりある一定の情報（例えば機密情報）を含むフローが保護される（すなわち、不都合であるかもしれない宛先アドレスにフラッドされない）ことを可能にする。さらに、本明細書では、本発明の諸実施形態に従ったパケットフラッド制御機能は、利用できるさらなる未使用のラベルがある限り、他のパケットハンディングの目的に使用可能であることを開示する。
【０００９】
本発明のこれらおよび他の目的、実施形態、利点、および／または特徴は、次の明細書、関連する図面、および添付の特許請求の範囲をさらに考察すると容易に明らかになるであろう。
【図面の簡単な説明】
【００１０】
【図１】ネットワークを通じてサーバからクライアントへパケットをユニキャストするための先行技術の手法を示す図である。
【図２】図１のサーバからクライアントへ送信されているパケットの宛先アドレスが、図１のネットワークの出口ルータに不明になるときに起こる可能性がある、不都合となりうるセキュリティ状況を示す図である。
【図３】図１のネットワークの出口ルータにおける不明なアドレスに向けられたパケットがＣＭＬ（すなわちＣＰＵ  Ｍａｎａｇｅｄ  Ｌｅａｒｎｉｎｇ）を使用してポート／仮想ポート毎に廃棄されることを可能にする先行技術の手法を示す図である。
【図４】本発明の一実施形態に従って図１のネットワークの出口ルータにおける不明のアドレスに向けられたパケットがフロー毎に廃棄されることを可能にする手法を示す図である。
【図５】本発明の一実施形態に従ってパケットフラッド制御を行う手法を示す図である。
【図６】本発明の一実施形態に従ってパケットフラッド制御を行う手法を示す図である。
【図７】本発明の一実施形態に従ってパケットフラッド制御を行う手法を示す図である。
【図８】本発明の一実施形態に従ってパケットフラッド制御を行う手法を示す図である。
【図９】本発明の一実施形態に従ってパケットフラッド制御を行う手法を示す図である。
【図１０】本発明の一実施形態に従ってパケットフラッド制御を提供する方法を示す図である。
【図１１】本発明の一実施形態に従ってパケットフラッド制御を提供する方法を示す図である。
【図１２】本発明の一実施形態に従ってパケットフラッド制御を提供する方法を示す図である。
【発明を実施するための形態】
【００１１】
マルチプロトコルラベルスイッチング（ＭＰＬＳ）は、ラベルを使用してデータ転送の決定を行うパケット転送技術である。各ＭＰＬＳラベルは、特定のＭＰＬＳラベル値によって定義される（例えば、現在のＭＰＬＳラベルスペースは２０ビットを有し、このようなスペースの一部のみが予約済みラベルのためにある）。したがって、本発明の諸実施形態は、ＭＰＬＳラベルを使用して、様々なタイプのフロールーティング機能を使用することによるパケットフラッド制御を提供することができる。このようなラベルは、本明細書ではフロールーティングラベルと呼ばれる。より具体的には、本発明の諸実施形態はＭＰＬＳラベルの使用によって、フローレベルのフラッド制御を提供し、特定のフローの機密情報を保護することができるようにする。
【００１２】
図４は、本発明に従ったパケットフラッド制御の一実施形態を示す。ルータ１はサーバＡに接続され、サーバＡからのトラフィックに対する入口プロバイダエッジ（ＰＥ）ルータとして機能している。ルータ５は、クライアントおよび敵対者（すなわちクライアントに対して敵対するまたは敵対する可能性のあるクライアント）に接続され、クライアントおよび敵対者の出口ＰＥルータとして機能している。ルータ２−４は、入口ＰＥルータと出口ＰＥルータとの間に接続され、したがってそれぞれ入口ＰＥルータおよび出口ＰＥルータに対して中継ルータとして機能することができる。サーバＡ（すなわち送信元アドレスＭＡＣ「Ａ」）からのトラフィックフローに対して宛先アドレス（例えば宛先ＭＡＣアドレス）がルータ５に不明になると、このようなトラフィックフローを現在のＶＰＬＳドメイン（すなわちクライアントおよび敵対者のために機能しているＶＰＬＳドメイン）上のすべてのローカルアクセスポートにフラッドさせる代わりに、サーバＡからのすべてのパケットは廃棄され、他のトラフィックフロー（例えばサーバＢ）からの同じ宛先アドレスへのパケットは、現在のＶＰＬＳドメイン内で通常通りフラッドされる。１つの送信元アドレスからのパケットを廃棄し、一方では異なる送信元アドレスからのパケットをフラッドするこのようなフロールーティング機能は、ＭＰＬＳドメイン内のラベルエッジルータ（すなわちルータ１、２、４、および５）ならびにラベルスイッチルータ（すなわちルータ３）の間でパケット交換するための一意の通常のラベルを使用することによって達成することができる。
【００１３】
さらに図４を参照すると、クライアントの宛先ＭＡＣアドレスが出口ルータ（すなわちルータ５）で不明になるとき、出口ＰＥルータのハードウェア（ＨＷ）転送エンジンが受信フレームで使用される（すなわちそれによって受信されるパケットの）フロールーティングラベルをチェックする。フロールーティングラベルが、トラフィックフローが通常のフロールーティング機能（すなわち通常フロールーティングラベル）を要求することを示す場合、ＨＷ転送エンジンは、各フレームの通常フロールーティングラベルを取り除き、通常通り各パケットをフラッドする。フロールーティングラベルが、トラフィックフローが制御されるフロールーティング機能（すなわち制御フロールーティングラベル）を要求することを示す場合、ＨＷ転送エンジンは、対応するパケットのこのようなフラッドを行わずにフレームを廃棄する。このようにして、フロー毎のパケットフラッド制御が提供される。
【００１４】
次に図５−９を参照すると、本発明の一実施形態に従ってパケットフラッド制御を行う手法の説明図が開示される。図５に示すように、ＭＰＬＳドメイン内のピアデバイス（すなわちルータ１からルータ５）間の交換ラベルがセットアップされる。例えば、ピアデバイス間のこのような交換ラベルをセットアップするためにラベル配布プロトコル（ＬＤＰ）が使用されることが可能である。ＬＤＰは、このようなピアデバイス間にラベルスイッチパス（ＬＳＰ）を確立する。各ＬＳＰは、既存のＩＰルーティングに従い、特に、ネットワークのルータのすべての間でＬＳＰのフルメッシュを確立するのに好適である。ＬＤＰによるＬＳＰセットアップの結果、各ルータはそれと関連する受信ラベルテーブルおよび送信ラベルテーブルを有することになる。各ラベルテーブルは、複数のそれぞれのＬＳＰ指示子（例えばＬＳＰ１−２）、およびＬＳＰ指示子のそれぞれと関連するＬＳＰラベル（例えばＬＳＰ指示子「ＬＳＰ１−２」と関連するラベル「１０２０」）を含む。所与のトラフィックフローに対するルータの現在の動作は、そのラベルテーブルのどの１つまたは複数のラベルテーブルが、そのようなトラフィックフローをサポートするために使用されることになるかを指示するが、各ルータは、一般にそれと関連する受信ラベルテーブルおよび送信ラベルテーブルを有する。
【００１５】
図６に示すように、ルータのすべての間のＬＳＰがセットアップされた後、各ラベルテーブルは、本発明に従って構成されたＬＳＰ情報のセットを含むように再構成される。より詳細には、ＬＳＰ情報の各セットは、ＬＳＰ指示子（例えばＬＳＰ  １−２）、通常のフロールーティング機能を表すフロールーティングラベル（例えば「ＬＳＰ  １−２」と示されるＬＳＰについては通常のフロールーティング機能を表すラベル「１０２０」）と、制御されるフロールーティング機能を表すフロールーティングラベル（例えば「ＬＳＰ  １−２」と示されるＬＳＰについては制御されるフロールーティング機能を表すラベル「１０２１」）とを含む。したがって、通常のフロールーティング機能を表すフロールーティングラベルは、本明細書では通常フロールーティングラベルと呼び、制御されるフロールーティング機能を表すフロールーティングラベルは、本明細書では制御フロールーティングラベルと呼ぶ。
【００１６】
さらに図６を参照すると、ＬＳＰ情報のセットを含むように再構成された各ラベルテーブルに加えて、入口ＰＥルータ（すなわちルータ１）は、ルーティング機能ルックアップテーブル（すなわちトラフィックフローのデータ構造）を用いて構成される。ルーティング機能ルックアップテーブルは、少なくとも１つの送信元アドレスをそれぞれのタイプのフロールーティング機能と関連付ける情報を有する。「ＭＡＣ  Ａ」という送信元アドレス（すなわちＭＡＣアドレス）を有するサーバＡが、入口ＰＥルータに接続される。一度ルーティング機能ルックアップテーブルを用いて構成されると、サーバＡから入口ＰＥルータによって受信されたどのフレームも、制御されるフロールーティング機能を表すフロールーティングラベルを組み付けられる。このために、入口ＰＥルータのＨＷ要素は、「ＭＡＣ  Ａ」の送信元アドレスを有するどの受信パケットも、ＬＤＰによってセットアップされる、通常の制御フロールーティングラベルの代わりに制御フロールーティングラベルを使用することを示すルーティング機能ルックアップテーブルを作成することができる。ＬＤＰは、各ＬＳＰ指示子について制御フロールーティングラベルおよび通常フロールーティングラベルを含むように、ＭＰＬＳ網における各ルータ（すなわちルータ２からルータ５）の各ラベルテーブルを再構成する。しかしながら、いくつかの実施形態ではルーティング機能ルックアップテーブルは、入口ＰＥルータにのみ設けられることが可能である。
【００１７】
図７に示すように、クライアントは、サーバＡおよびサーバＢへの接続を開始する。サーバＢは、「ＭＡＣ  Ｂ」という送信元アドレスを有する。ルータ１は、サーバＡおよびサーバＢの入口ＰＥルータとして機能する。ルーティング機能ルックアップテーブルに示されるように、サーバＡは、制御されるフローのトラフィックソースであり、サーバＢは通常のフローのトラフィックソースである。例えば、サーバＡからのトラフィックは、クライアントの敵対者にフラッドされてはならない機密情報を含む可能性がある。サーバＡおよびサーバＢからパケットを受信することに応じて、入口ＰＥルータのＨＷ転送エンジンは、ルーティング機能ルックアップテーブルをチェックして、サーバＡおよびサーバＢから受信されるパケットのフレームにどのタイプのフロールーティングラベルが組み付けられるべきかを判断する。したがってサーバＡから受信される各フレームは、サーバＡからのパケットが転送されるＬＳＰに対応する制御フロールーティングラベル（すなわち１０２１という制御フロールーティングラベル）を組み付けられ、サーバＢから受信される各フレームは、サーバＢからのパケットが転送されるＬＳＰに対応する通常フロールーティングラベル（すなわち１０２０という通常フロールーティングラベル）を組み付けられる。フレームがそれぞれのフロールーティングラベルを組み付けられた後に、ＨＷ転送エンジンは対応するパケットを適切なＬＳＰに転送する（すなわち、この実施形態では、サーバＡおよびサーバＢからのパケットはＬＳＰ１−２に転送される）。
【００１８】
図８を参照すると、サーバＡおよびサーバＢからのパケットは、出口ＰＥルータから転送された後、ルータ２（すなわちＬＳＲ）に入り、ＬＳＲのＨＷ転送エンジンがそのフレームのＭＰＬＳラベルを通常通り（すなわち標準的なＭＰＬＳプロトコルに従って）交換する。しかしながら、このような交換を行う前に、ＬＳＲのＨＷ転送エンジンは、各受信フレームのフロールーティングラベルをその受信ラベルテーブルに保持されているＬＳＰ情報と照合し、対応するパケットが転送されるＬＳＰについて、フロールーティングラベルのタイプをＬＳＲの送信ラベルテーブルの中のフロールーティングラベルの対応するタイプと相互に関連付ける。具体的には、ラベルが通常フロールーティングラベルである場合、受信フレームのラベルは、対応するパケットが転送されるＬＳＰに対応する通常フロールーティングラベル（すなわち、２０５０という通常フロールーティングラベル）と交換され、ラベルが制御フロールーティングラベルである場合、受信フレームのラベルは、対応するパケットが転送されるＬＳＰに対応する制御フロールーティングラベル（すなわち、２０５１という制御フロールーティングラベル）と交換される。
【００１９】
初めにサーバＡおよびサーバＢによって送信されたパケットが、クライアントに対応する宛先アドレスを示すとき、出口ルータのＨＷ転送エンジンは、パケットが出口ＰＥルータに入った後に、パケットのフレームからすべてのラベルを外す。ラベルが外された後にクライアントの宛先アドレスが学習され、出口ＰＥルータのレイヤ２（Ｌ２）テーブルに格納される。その後、出口ＰＥルータのＨＷ転送エンジンは、各パケットの宛先アドレスがＬ２テーブルに既知であるかどうかをチェックする。宛先アドレスが出口ＰＥルータに既知であるとき、各パケットはその後ユニキャストによってクライアントの宛先アドレスへ転送される。これらの動作は、クライアントの宛先アドレスが出口ＰＥルータに既知である限り、サーバＡおよびサーバＢから発信されたパケットについて同様となる。
【００２０】
図９を参照すると、出口ＰＥルータは、例えばリンクダウン、ポートダウンなどの理由により、またはユーザの明示的なフラッシュコマンドによってクライアントの宛先アドレスが出口ＰＥから削除される（すなわち、出口ＰＥルータに不明になる）とき、通常のフロールーティング機能および制御されるフロールーティング機能を連帯的に行うことができる。通常のフロールーティング機能については、通常フロールーティングラベルのフレームを有するパケット（例えば、サーバＢからのパケット）は、宛先アドレスが不明になるとき、アクティブＶＰＬＳドメイン内のすべてのローカルアクセスポートにフラッドされる。制御されるフロールーティング機能については、制御フロールーティングラベルのフレームを有するパケット（例えば、サーバＡからのパケット）は、宛先アドレスが不明になるとき、アクティブＶＰＬＳドメイン内のすべてのローカルアクセスポートにフラッドされずに廃棄される。したがって、このような通常のフロールーティング機能および制御されるフロールーティング機能によって、本発明の諸実施形態は、有利にはパケットが、ポート／仮想ポート毎とは対照的にフロー毎に破棄されることが可能になる。
【００２１】
図１０−１２を参照すると、本発明の一実施形態に従ってパケットフラッド制御を提供する方法１００が示されている。方法１００は、ＭＰＬＳラベルの使用に依存して、様々なタイプのフロールーティング機能を使用することによるパケットフラッド制御を提供する。様々なフロールーティング機能は、ポート／仮想ポート毎とは対照的にフロー毎に提供されるパケットフラッド制御を提供する。この方法では、ＭＰＬＳラベルの使用により、方法１００は、特定のトラフィックフローおよび他の非機密トラフィックフローの宛先アドレスが、ローカルアクセスポートを備える出口ルータに不明になるとき、アクティブＶＰＬＳドメイン内のすべてのローカルアクセスポートに特定のフローをフラッドしないことによって特定のフローの機密情報が保護されることが可能になるようにフローレベルのフラッド制御を提供する。
【００２２】
入口ルータが送信元（例えばサーバ）からパケットを受信するための動作１０２を行った後、入口サーバは、パケットが受信されたポートについて現在のポートタイプを判断するための動作１０４を行う。ポートがＭＰＬＳポート以外のタイプであることに応じて、通常ＶＬＡＮ処理方法がパケットに行われる。そうでない場合、ポートはＭＰＬＳポートであって、入口ルータは、パケットが要求するフロールーティング機能のタイプを判断するための動作１０６を行う。１つの実施形態では、このような判断は、送信元アドレスをフロールーティング機能のタイプと相互に関連付けるルックアップテーブルをチェックすることによって行われる。パケットは通常のフロールーティング機能を要求するという判断が行われるとき、入口ルータはパケットのフレームのそれぞれに通常フロールーティングラベルを組み付けるための動作１０８を行う。パケットは制御されるフロールーティング機能を要求するという判断が行われるとき、入口ルータは、フレームのそれぞれに制御フロールーティングラベルを組み付けるための動作１１０を行う。その後、入口ルータは、パケットの次のホップ情報を捜し出すための動作１１２を行い、このような次のホップ情報によりパケットを転送するための動作１１４を行う。
【００２３】
パケットが入口ルータによって転送された後、中継ルータ（例えば、ラベルスイッチングルータ（ＬＳＲ））がパケットを受信するための動作１１６を行う。中継ルータはその後、パケットの各フレームのトップオブスタック（ＴＯＳ）ラベルを処理するための動作１１８を行う。このような処理の結果として、トップオブスタックラベルがラベルスタックの最後のラベルである（すなわち、これはボトムオブスタック（ＢＯＳ）ラベルである）と判断されると、中継ルータはＢＯＳラベルを外すための動作１２０を行う。そうではない場合、中継ルータは、パケットが要求するフロールーティング機能のタイプを判断するための動作１２２を行う。１つの実施形態では、このような判断は、フロールーティングラベルを受信ラベルテーブルの中のフロールーティングラベルと照合することによって行われる。パケットは通常のフロールーティング機能を要求すると判断されるとき、中継ルータは各フレームのフロールーティングラベルを、中継ルータの送信ラベルテーブルに保持された対応する通常フロールーティングラベルと交換するための動作１２４を行う。パケットは制御されるフロールーティング機能を要求すると判断されるとき、中継ルータは、各フレームのフロールーティングラベルを中継ルータの送信ラベルテーブルに保持された対応する制御フロールーティングラベルと交換するための動作１２６を行う。その後、中継ルータは、パケットの次のホップ情報を捜し出すための動作１２８を行い、このような次のホップ情報によりパケットを転送するための動作１３０を行う。
【００２４】
中継ルータによってパケットが転送された後に、出口ルータがパケットを受信するための動作１３２を行う。出口ルータはパケットを受信した後に、パケットが受信されたポートについて現在のポートタイプを判断するための動作１３４を行う。ポートがＭＰＬＳポート以外のタイプであることに応じて、通常ＶＬＡＮ処理方法がパケットに行われる。そうではない場合、ポートはＭＰＬＳポートであって、出口ルータは、パケットが要求するフロールーティング機能のタイプを判断するための動作１３６を行う。１つの実施形態では、このような判断は、フロールーティングラベルを出口ルータの受信ラベルテーブルの中のフロールーティングラベルと照合することによって行われる。パケットが通常のフロールーティング機能を要求する（すなわち、そのフレームが通常フロールーティングラベルを含む）と判断される場合、出口ルータは、フレームを外すための動作１３８を行い、パケットの宛先アドレスが出口ルータのＬ２テーブル内にあるかどうかを判断するための動作１４０を行う。パケットが制御されるフロールーティング機能を要求する（すなわち、そのフレームが制御フロールーティングラベルを含む）と判断されるとき、出口ルータは、ラベルを外すための動作１４２を行い、パケットが制御されるフロールーティング機能を要求することを示すための動作１４４を行う。パケットが制御されるフロールーティング機能を要求することを示された後、方法は、パケットの宛先アドレスが出口ルータのＬ２テーブル内にあるかどうかを判断するための動作１４０に進む。
【００２５】
パケットの宛先アドレスが出口ルータのＬ２テーブル内にある（すなわち、出口ルータに知られている）場合、出口ルータはパケットの次のホップ情報を捜し出すための動作１４６を行って、そのような次のホップ情報によりパケットを転送する（例えばユニキャストする）ための動作１４８を行う。パケットの宛先アドレスが出口ルータのＬ２テーブル内にない場合、出口ルータは、パケットが要求するフロールーティング機能のタイプを判断するための動作１５０を行う。パケットが通常のフロールーティング機能を要求する（すなわち、そのフレームが通常フロールーティングラベルを含む）と判断されたとき、出口ルータは、パケットを出口ルータのアクティブＶＰＬＳドメイン内のすべてのローカルアクセスポートにフラッドさせるための動作１５２を行う。パケットが制御されるフロールーティング機能を要求する（すなわち、そのフレームが制御フロールーティングラベルを含む）と判断されたとき、出口ルータは、出口ルータのアクティブＶＰＬＳドメイン内のすべてのローカルアクセスポートにパケットをフラッドせずにこれを廃棄するための動作１５４を行う。
【００２６】
次にルータのアーキテクチャに関する説明に移ると、分散型アーキテクチャを有するルータのネットワークでは、単一ルータの別個の処理モジュールは、それぞれのタイプのルーティング機能（例えば、入口ルーティング機能、出口ルーティング機能、および中継ルーティング機能）をそれぞれ行うことができることを、当業者は理解するであろう。したがって、本明細書では、本発明の一実施形態に従って構成されるルータが、入口処理モジュール、出口処理モジュール、および中継処理モジュールを含むことができることが開示される。入口処理モジュールは、トラフィックフローのデータ構造およびそれぞれの送信ラベルテーブルを含む。トラフィックフローのデータ構造は、少なくとも１つの送信元アドレスをそれぞれのタイプのフロールーティング機能と関連付ける情報を含む。その送信ラベルテーブルは、少なくとも１つのセットのラベルスイッチパス（ＬＳＰ）情報を含む。ＬＳＰ情報は、ＬＳＰ指示子、通常のフロールーティング機能を示すフロールーティングラベル、および制御されるフロールーティング機能を示すフロールーティングラベルを含む。入口処理モジュールは、それによって少なくとも１つの送信元アドレスから受信された各フレームにフロールーティングラベルを組み付けるように構成される。このような組付けは、トラフィックフローのデータ構造に含まれる情報、およびその送信ラベルテーブルに含まれる情報に依存して行われる。出口処理モジュールは、少なくとも１つのセットのＬＳＰ情報を含むそれぞれの受信ラベルテーブルを含む。出口処理モジュールは、それぞれ複数のフレームを含む複数の異なるトラフィックフローを受信し、それによって受信されたフレームのそれぞれのフロールーティングラベルの構成を、その受信ラベルテーブルに含まれる情報を使用してトラフィックフローのそれぞれと互いに関連付け、フレームが通常のフロールーティング機能を示すフロールーティングラベルを含むとき、出口処理モジュールのトラフィックフローのフレームをフラッドしてそのアクティブ仮想プライベートＬＡＮサービス（ＶＰＬＳ）ドメイン上のすべてのローカルアクセスポートにフラッドさせ、フレームが制御されるフロールーティング機能を示すフロールーティングラベルを含むときフレームがアクティブＶＰＬＳドメイン上のローカルアクセスポートのすべてにフラッドされることなく廃棄されるようにするように構成される。中継処理モジュールは、それぞれの受信ラベルテーブルおよびそれぞれの送信ラベルテーブルを含む。中継処理モジュールの受信ラベルテーブルおよび送信ラベルテーブルは、それぞれ少なくとも１つのセットのＬＳＰ情報を含む。中継処理モジュールは、それぞれ複数のフレームを含む複数の異なるトラフィックフローを受信し、それによって受信されたフレームのそれぞれのフロールーティングラベルをその送信ラベルテーブル内の対応するフロールーティングラベルと交換するように構成される。このような交換は、その受信ラベルテーブルおよび送信ラベルテーブルに含まれる情報を頼りに行われる。
【００２７】
本明細書では、本発明に従って構成されたルータが、入口トラフィックインタフェースと、出口トラフィックインタフェースと、メモリと、１つまたは複数のデータ処理デバイス（例えば、プロセッサＡＳＩＣ、および／または同様のもの）とを含むことができることもまた開示される。１つの特定の実施形態では、複数の処理モジュールの各処理モジュールが、データ処理デバイスのそれぞれの１つを含む。入口トラフィックインタフェースは、例えばパケットなどのプロトコルデータ単位（ＰＤＵ）をルータに転送するネットワークノード（例えば、別のルータまたはサーバ）に結合されるように構成される。出口トラフィックインタフェースは、例えばパケットなどのプロトコルデータ単位（ＰＤＵ）をルータに受信するネットワークノードに結合されるように構成される。メモリは、命令をメモリ上に格納され、メモリからアクセス可能にされる。１つまたは複数のプロセッサは、命令にアクセスしてこれを解釈し、それによってそのような命令で定義された機能を行うように構成される。１つまたは複数のプロセッサは、１つまたは複数のプロセッサとインタフェースに接続されたネットワークノードとの間で通信できるようにインタフェースに結合される。１つの実施形態では、ルータは、所与のパケットについて、本明細書に開示するパケットフラッド制御のそれぞれの態様を行うように、命令が上述の方法１００を実行するように構成される。
【００２８】
次にデータ処理デバイスによって処理できる命令を参照すると、本明細書に開示するパケットフラッド制御を実行するように構成された方法、処理、および／または動作は、このような機能を実行するように構成された命令をそこに有するコンピュータ可読媒体によって明確に具体化されることが、本明細書で行う開示から理解されるであろう。１つの特定の実施形態では、命令は、図５−９に示す方法１００および／または機能の全部または一部を実行するように明確に具体化される。命令は、メモリ装置（例えば、ＲＡＭ、ＲＯＭ、仮想メモリ、ハードドライブメモリなど）から、データ処理システムのドライブユニットによって可読の装置（例えば、ディスケット、コンパクトディスク、テープカートリッジなど）から、あるいは両方から、１つまたは複数のデータ処理デバイスによってアクセスできるものであることが可能である。したがって、本発明に従ったコンピュータ可読媒体の諸実施形態は、コンパクトディスク、ハードドライブ、ＲＡＭ、または、本発明に従ったパケットフラッド制御機能を実行するように構成されたコンピュータプログラム（すなわち命令）をそこにイメージした他のタイプの格納装置を含む。
【００２９】
前述の詳細な説明では、その一部を形成する添付の図面を参照し、その中で、本発明が実行されることが可能である特定の実施形態を、例示という目的で示した。これらの実施形態、およびそのある一定の変形形態について、当業者が本発明の諸実施形態を実行することができるよう十分に詳細に説明した。他の好適な実施形態が使用されることが可能であり、このような発明の開示の趣旨および範囲を逸脱することなく、論理的変更、機械的変更、化学的変更、および電気的変更が行われることが可能であると理解されたい。不必要な詳細を避けるために、説明は、当業者に知られている一定の情報を省略した。前述の詳細な説明は、したがって本明細書に示した特定の形式に限定するものではなく、むしろ、添付の特許請求の範囲の趣旨および範囲内に当然含むことができるそのような代替形態、変更形態、および均等物を対象として含むものとする。
【図１】
0005275512.tif 000002
【図２】
0005275512.tif 000003
【図３】
0005275512.tif 000004
【図４】
0005275512.tif 000005
【図５】
0005275512.tif 000006
【図６】
0005275512.tif 000007
【図７】
0005275512.tif 000008
【図８】
0005275512.tif 000009
【図９】
0005275512.tif 000010
【図１０】
0005275512.tif 000011
【図１１】
0005275512.tif 000012
【図１２】
0005275512.tif 000013