(57)【特許請求の範囲】
【請求項１】
ネットワークを介した送信のためにラベル交換フレームヘッダとラベル交換フレームペイロードとを含むラベル交換フレームをセキュリティ保護するための方法であって、
ソースからラベル交換フレームを受信するステップと、
ラベル交換フレームがセキュリティ基準を満たすかどうか判断するステップと、
ラベル交換フレームがセキュリティ基準を満たす場合は、ラベル交換フレームペイロードをセキュリティ保護し、ラベル交換フレームヘッダと、セキュリティ保護されたラベル交換フレームペイロードとを含むセキュリティ保護されたラベル交換フレームを作成するステップと、
セキュリティ保護されたラベル交換フレームを転送するステップとを含み、
セキュリティ基準が、ラベル交換フレームヘッダ内のラベルのラベル値に関する基準を含む、方法。
【請求項２】
ラベル交換フレームペイロードが、単一鍵暗号法を使用することによってセキュリティ保護される、請求項１に記載の方法。
【請求項３】
ラベル交換フレームがＭＰＬＳフレームであり、ラベル交換フレームヘッダがＭＰＬＳヘッダである、請求項１または２に記載の方法。
【請求項４】
セキュリティ基準が、ＭＰＬＳヘッダ内のトップラベルのラベル値が１５より大きいことを含む、請求項３に記載の方法。
【請求項５】
セキュリティ基準を満たすネットワークを介した送信のためにソースから受信されるさらなるフレームが、単一鍵暗号法を使用してセキュリティ保護され、さらなるフレームが、さらなるフレームのソースまたは宛先に関係なく同じ鍵を使用してセキュリティ保護される、請求項１から４のいずれか一項に記載の方法。
【請求項６】
セキュリティ保護されたＭＰＬＳフレームのサイズが、ネットワークのＭＴＵサイズに対してチェックされ、セキュリティ保護されたＭＰＬＳフレームがネットワークのＭＴＵサイズを超える場合は、セキュリティ保護されたＭＰＬＳフレームが廃棄され、エラー条件にフラグが立てられる、請求項３から５のいずれか一項に記載の方法。
【請求項７】
ラベル交換ネットワークネットワークを介したトラフィックをセキュリティ保護するためのセキュリティ装置であって、第１のネットワーク装置からフレームを受信し、第２のネットワーク装置にフレームを転送するように構成され：
入出力インターフェースと、
メモリと、
受信されたフレームをセキュリティ基準に対して解析し、セキュリティ基準を満たすフレームをセキュリティ保護するためのセキュリティエンジンであって、セキュリティ基準が、フレームがラベル交換フレームであることを含み、セキュリティ基準が、ラベル交換フレームヘッダ内のラベルのラベル値に関する基準をさらに含む、セキュリティエンジンとを含み、
受信されたフレームがセキュリティ基準を満たす場合は：
ラベル交換フレームのラベル交換フレームヘッダおよびラベル交換フレームペイロードが解析され、
ラベル交換フレームペイロードが、セキュリティ保護されたラベル交換フレームペイロードを作成するためにセキュリティエンジンによってセキュリティ保護され、
ラベル交換フレームヘッダおよびセキュリティ保護されたラベル交換フレームペイロードが、セキュリティ保護されたラベル交換フレームを作成するためにアセンブルされ、
セキュリティ保護されたラベル交換フレームが、第２のネットワーク装置への転送のために入出力インターフェースに渡される、セキュリティ装置。
【請求項８】
入出力インターフェースが、フレームを受信するための少なくとも１つの入力ポートと、フレーム転送するための少なくとも１つの出力ポートとを含む、請求項７に記載のセキュリティ装置。
【請求項９】
入出力インターフェースが専用の制御ポートを含む、請求項７または請求項８に記載のセキュリティ装置。
【請求項１０】
セキュリティエンジンが、単一鍵暗号法を使用してラベル交換フレームペイロードをセキュリティ保護する、請求項７から９のいずれか一項に記載のセキュリティ装置。
【請求項１１】
ラベル交換フレームがＭＰＬＳフレームであり、ラベル交換フレームヘッダがＭＰＬＳヘッダである、請求項７から１０のいずれか一項に記載のセキュリティ装置。
【請求項１２】
セキュリティ基準が、ＭＰＬＳヘッダ内のトップラベルのラベル値が１５より大きいことをさらに含む、請求項１１に記載のセキュリティ装置。
【請求項１３】
第２のネットワーク装置に転送される前に、セキュリティ保護されたＭＰＬＳフレームが、イーサネットヘッダとイーサネットＣＲＣとを含むイーサネットフレーム内にカプセル化される、請求項１１または１２に記載のセキュリティ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ラベル交換ネットワーク内でネットワークセキュリティを提供するための方法および装置に関する。本発明は、マルチプロトコルラベルスイッチング（ＭＰＬＳ：ｍｕｌｔｉｐｒｏｔｏｃｏｌ  ｌａｂｅｌ  ｓｗｉｔｃｈｉｎｇ）ネットワークに特に適用され得る。
【背景技術】
【０００２】
企業、政府省庁、団体など、今日の社会主体では、個人は、１つまたは複数のコンピュータネットワーク（インターネットなど）を使用することによってそれ自体で、または他の主体と共にデータを頻繁に送信する。送信されるデータは、ファイル転送、電子メール、音声および／またはテレビ会議など、多くの目的のうちのいずれかに関するものであってよい。
【０００３】
技術が発展してきたのにつれて、様々なタイプのコンピュータネットワークおよび様々なネットワーク通信プロトコルが開発され、実装されてきた。ほとんどすべてのコンピュータネットワークおよびプロトコル設計に存在する３つの共通の最重要な考慮すべき事項は、速度（データの通信がどれほど迅速に行われ得るか）、セキュリティ（送信されているデータがどれほど安全であるか）、および必要なリソースである。ネットワークをセキュリティ保護することに付随するオーバヘッドが、必要なリソース、処理時間、したがって速度に直接影響を及ぼし得る限り、これらの考慮すべき事項は、相反することが多い。
【０００４】
ラベル交換ネットワーク（具体的にはＭＰＬＳネットワーク）は、現在使用されている１つのタイプのネットワークである。ＭＰＬＳネットワークは、名前が示唆するように、パケットを交換するためにラベルを使用するパケット交換ネットワークであり、それぞれ異なるプロトコル（たとえばＩＰ、ＡＴＭ、ＳＯＮＥＴ、イーサネット（登録商標））のネットワークトラフィックを運ぶために使用されてよい。
【０００５】
ラベル交換ネットワーク内でセキュリティを提供することは、物理リンク暗号化によって、またはＩＰ（ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ：インターネットプロトコル）またはＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ：非同期転送モード）トンネル内でＭＰＬＳデータフレームをカプセル化することによって行われてよい。これらのセキュリティ手法は両方とも、比較的に大きいリソースおよびネットワークオーバヘッドを必要とし、それによってネットワークの速度および効率に影響を及ぼす。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】ＩＥＴＦ  ＲＦＣ  ３０３１
【発明の概要】
【課題を解決するための手段】
【０００７】
一態様では、本発明は、ネットワークを介した送信のためにＭＰＬＳヘッダとＭＰＬＳペイロードとを含むＭＰＬＳフレームをセキュリティ保護するための方法を提供し、この方法は：リソースからＭＰＬＳフレームを受信するステップと、ＭＰＬＳフレームがセキュリティ基準を満たすかどうか判断するステップと、ＭＰＬＳフレームがセキュリティ基準を満たす場合は、ＭＰＬＳペイロードをセキュリティ保護し、ＭＰＬＳヘッダと、セキュリティ保護されたＭＰＬＳペイロードとを含むセキュリティ保護されたＭＰＬＳフレームを作成するステップと、セキュリティ保護されたＭＰＬＳフレームを転送するステップとを含む。
【０００８】
セキュリティ基準は、ＭＰＬＳヘッダ内のラベルのラベル値に関する基準を含んでよい。
【０００９】
セキュリティ基準は、ＭＰＬＳヘッダ内のトップラベルのラベル値が１５より大きいことを含んでよい。
【００１０】
ＭＰＬＳペイロードは、単一鍵暗号法を使用することによってセキュリティ保護されてよい。
【００１１】
セキュリティ基準を満たすネットワークを介した送信のためにソースから受信されるさらなるフレームは、単一鍵暗号法を使用してセキュリティ保護されてよく、さらなるフレームが、そのソースまたは宛先に関係なく同じ鍵を使用してセキュリティ保護される。
【００１２】
セキュリティ保護されたＭＰＬＳフレームのサイズは、ネットワークのＭＴＵサイズに対してチェックされてよく、セキュリティ保護されたＭＰＬＳフレームがネットワークのＭＴＵサイズを超える場合は、セキュリティ保護されたＭＰＬＳフレームが廃棄され、エラー条件にフラグが立てられる。
【００１３】
この方法は、セキュリティ保護されたＭＰＬＳフレームで転送するための修正済のＭＰＬＳヘッダを作成するためにＭＰＬＳヘッダ内のＴｏＳフィールドを修正するステップをさらに含んでよい。
【００１４】
第２の態様では、本発明は、ＭＰＬＳネットワークを介したトラフィックをセキュリティ保護するためのセキュリティ装置を提供し、セキュリティ装置は、第１のネットワーク装置からフレームを受信し、第２のネットワーク装置にフレームを転送するように構成され、セキュリティ装置は：フレームを受信し転送するための入出力インターフェースと、メモリと、受信されたフレームをセキュリティ基準に対して解析し、セキュリティ基準を満たすフレームをセキュリティ保護するためのセキュリティエンジンとを含み、セキュリティ基準が、フレームがＭＰＬＳフレームであることを含み、受信されたフレームがセキュリティ基準を満たす場合は：ＭＰＬＳフレームからのＭＰＬＳヘッダおよびＭＰＬＳペイロードが解析され、ＭＰＬＳペイロードが、セキュリティ保護されたＭＰＬＳペイロードを作成するためにセキュリティエンジンによってセキュリティ保護され、ＭＰＬＳヘッダおよびセキュリティ保護されたＭＰＬＳペイロードが、セキュリティ保護されたＭＰＬＳフレームを作成するためにアセンブルされ、セキュリティ保護されたＭＰＬＳフレームが、第２のネットワーク装置への転送のために入出力インターフェースに渡される。
【００１５】
入出力インターフェースは、フレームを受信するための少なくとも１つの入力ポートと、フレームを転送するための少なくとも１つの出力ポートとを含んでよい。
【００１６】
入出力インターフェースは、専用の制御ポートを含んでよい。
【００１７】
セキュリティ基準は、ＭＰＬＳヘッダ内のラベルのラベル値に関する基準をさらに含んでよい。
【００１８】
セキュリティ基準は、ＭＰＬＳヘッダ内のトップラベルのラベル値が１５より大きいことをさらに含んでよい。
【００１９】
セキュリティエンジンは、単一鍵暗号法を使用することによってＭＰＬＳペイロードをセキュリティ保護することができる。
【００２０】
第２のネットワーク装置に転送される前に、セキュリティ保護されたＭＰＬＳフレームは、イーサネットヘッダとイーサネットＣＲＣとを含むイーサネットフレーム内にカプセル化されてよい。
【００２１】
イーサネットフレームのサイズは、ネットワークのＭＴＵサイズと比較されてよく、イーサネットフレームのサイズがＭＴＵサイズを超える場合は、イーサネットフレームは廃棄され、エラー条件にフラグが立てられる。
【００２２】
フレームがセキュリティ基準を満たす場合は、ＭＰＬＳヘッダ内のＴｏＳフィールドは、セキュリティ保護されたＭＰＬＳフレームで転送するための修正済のＭＰＬＳヘッダを作成するために修正されてよい。
【００２３】
受信されたフレームが、ＭＰＬＳフレームであることのセキュリティ基準を満たさない場合は、フレームは、セキュリティエンジンによって処理されない。
【００２４】
受信されたフレームが、ＭＰＬＳフレームであることのセキュリティ基準を満たし、ＭＰＬＳヘッダ内のトップラベルのラベル値が１５以下である場合は、受信されたフレームは、制御プレーンフレームとして処理されてよい。
【００２５】
第３の態様では、本発明は、ネットワークを介した送信のためにラベル交換フレームをセキュリティ保護するための方法を提供し、ラベル交換フレームが、ラベル交換フレームヘッダとラベル交換フレームペイロードとを含み、この方法が：ソースからラベル交換フレームを受信するステップと、ラベル交換フレームがセキュリティ基準を満たすかどうか判断するステップと、ラベル交換フレームがセキュリティ基準を満たす場合は、ラベル交換フレームペイロードをセキュリティ保護し、ラベル交換フレームヘッダと、セキュリティ保護されたラベル交換フレームペイロードとを含むセキュリティ保護されたラベル交換フレームを作成するステップと、セキュリティ保護されたラベル交換フレームを転送するステップとを含む。
【００２６】
セキュリティ基準は、ラベル交換フレームヘッダ内のラベルのラベル値に関する基準を含んでよい。
【００２７】
ラベル交換フレームペイロードは、単一鍵暗号法を使用することによってセキュリティ保護されてよい。
【００２８】
第４の態様では、本発明は、ラベル交換ネットワークネットワークを介したトラフィックをセキュリティ保護するためのセキュリティ装置を提供し、セキュリティ装置が、第１のネットワーク装置からフレームを受信し、第２のネットワーク装置にフレームを転送するように構成され、セキュリティ装置が：入出力インターフェースと、メモリと、受信されたフレームをセキュリティ基準に対して解析し、セキュリティ基準を満たすフレームをセキュリティ保護するためのセキュリティエンジンとを含み、セキュリティ基準が、フレームがラベル交換フレームであることを含み、受信されたフレームがセキュリティ基準を満たす場合は：ラベル交換フレームのラベル交換フレームヘッダおよびラベル交換フレームペイロードが解析され、ラベル交換フレームペイロードが、セキュリティ保護されたラベル交換フレームペイロードを作成するためにセキュリティエンジンによってセキュリティ保護され、ラベル交換フレームヘッダおよびセキュリティ保護されたラベル交換フレームペイロードが、セキュリティ保護されたラベル交換フレームを作成するためにアセンブルされ、セキュリティ保護されたラベル交換フレームが、第２のネットワーク装置への転送のために入出力インターフェースに渡される。
【００２９】
入出力インターフェースは、フレームを受信するための少なくとも１つの入力ポートと、フレーム転送するための少なくとも１つの出力ポートとを含んでよい。
【００３０】
セキュリティ基準は、ラベル交換フレームヘッダ内のラベルのラベル値に関する基準をさらに含んでよい。
【００３１】
セキュリティエンジンは、単一鍵暗号法を使用してラベル交換フレームペイロードをセキュリティ保護してよい。
【００３２】
次に、本発明の一実施形態について、添付の図面を参照して述べられる。
【図面の簡単な説明】
【００３３】
【図１】本発明の一実施形態によるセキュリティ装置を含むネットワークのトポロジを示す図である。
【図２】本発明の一実施形態によるセキュリティ装置の機能ブロック図を示す図である。
【図３】図１のネットワーク内のソースから宛先へのパケットの送信を示す図である。
【図４】図２に示されたセキュリティ装置で行われるステップを大まかに示すフローチャートである。
【図５】第１の領域内の顧客エンドポイントから別の領域内の顧客エンドポイントへのパケットの送信を示す図である。
【図６Ａ】図２に示されたセキュリティ装置による修正の前のデータフレームを表す図である。
【図６Ｂ】暗号化されたペイロードを含むデータフレームを表す図である。
【図６Ｃ】復号されたペイロードを含むデータフレームを表す図である。
【発明を実施するための形態】
【００３４】
本発明について、ＭＰＬＳネットワーク技術に関して述べられる。ＭＰＬＳネットワークに関する詳細な情報は、インターネット技術特別調査委員会（ＩＥＴＦ：Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）から取得されてよい。具体的には、ＩＥＴＦ  ＲＦＣ  ３０３１は、標準化されたＭＰＬＳアーキテクチャについて記載しており、参照により本明細書に組み込まれる。
【００３５】
さらに、本発明についてＭＰＬＳフレームの送信のためのイーサネットの使用に関して述べられているが、代替の送信プロトコルが本発明と共に使用されてよいことが理解されよう。
【００３６】
ネットワーク
図１は、本発明で使用するのに適したネットワーク１００を示している。ネットワーク１００は、ＭＰＬＳコアネットワーク１０８によって相互接続された第１、第２および第３の領域１０２、１０４、１０６を含む。領域１０２、１０４、１０６は、たとえば、それぞれ異なる地理的位置（たとえばシドニー、東京、ニューヨーク）を表すことができ、ＭＰＬＳコアネットワーク１０８によって相互接続される。それぞれの領域１０２−１０６は、複数の互いに異なる、別々に所有／制御されたネットワークを含んでよく、それぞれのネットワークは、それぞれ異なるタイプのものであってよい。
【００３７】
例示するために、領域１０２−１０６はそれぞれ、（この実施例では）２つの異なる顧客の存在、すなわち顧客Ａおよび顧客Ｂを含んでおり、両方の顧客が、ＭＰＬＳネットワークを利用する。顧客エッジ（ＣＥ：ｃｕｓｔｏｍｅｒ  ｅｄｇｅ）ルータ１１０、１１２、１１４（顧客Ａ用）、およびルータ１１６、１１８、１２０（顧客Ｂ用）だけが図に示されているが、それぞれのＣＥルータ１１０−１２０は、（点線矢印で表された）顧客のローカルエリアネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）に接続されることが理解されよう。典型的には、ＣＥルータは、顧客の構内に置かれ、顧客のＬＡＮとＭＰＬＳコアネットワーク１０８の間のインターフェース（たとえばイーサネット）を提供する。
【００３８】
それぞれのＣＥルータ（１１０−１２０）は、（それぞれ領域１０２、１０４、１０６の）プロバイダエッジ（ＰＥ：ｐｒｏｖｉｄｅｒ  ｅｄｇｅ）ルータ１２２、１２４および１２６を介してＭＰＬＳコアネットワーク１０８に接続する。ＰＥルータは、ＭＰＬＳコアネットワーク１０８のプロバイダによって制御され、ＭＰＬＳコアネットワーク１０８への入口点／出口点を提供する。ＰＥルータは典型的に、それぞれ異なるネットワークプロトコル（たとえばフレームリレー、ＡＴＭ、イーサネット）をサポートする複数のポートを有する。
【００３９】
ＣＥルータを介して顧客からフレームを受信すると、ＰＥルータは、フレームに適したＭＰＬＳヘッダを作成し、フレームにＭＰＬＳヘッダを付加する。したがって、顧客によって送信された元のフレームは、ＭＰＬＳペイロードになる。
【００４０】
ＭＰＬＳヘッダは、１つまたは複数のラベルのラベルスタックを含み、それぞれのラベルが、２０ビットのラベル値と、３ビットのタイプオブサービス（ＴｏＳ：Ｔｙｐｅ  ｏｆ  ｓｅｒｖｉｃｅ）フィールドと、ラベルがスタックの最下部かどうか示す１ビットのフラグと、８ビットの有効期限（ＴＴＬ：ｔｉｍｅ  ｔｏ  ｌｉｖｅ）フィールドとを含む。ＭＰＬＳヘッダ内のラベルは、ＭＰＬＳネットワーク内のトラフィック処理を可能にする。
【００４１】
ＰＥルータがフレームにＭＰＬＳヘッダを付加すると、ＰＥルータは、ＭＰＬＳフレームをＭＰＬＳネットワークへと転送する。重要なことには、ＰＥルータからＭＰＬＳネットワークに転送されたフレーム（およびＭＰＬＳコアネットワーク１０８からＰＥルータに移動するフレーム）は、後述されたセキュリティ装置を介して移動する。
【００４２】
ＰＥルータ１２２−１２６は、ＭＰＬＳコアネットワーク１０８を介したラベル交換経路（ＬＳＰ：ｌａｂｅｌ  ｓｗｉｔｃｈｅｄ  ｐａｔｈ）を確立する役割をも担う。ＬＳＰの確立は、ネットワークの制御プレーンによって達成される。この説明のために、ネットワークの制御プレーンは、エンドユーザデータを送信するトラフィックではなく、ネットワーク自体の保守および他の管理機能に当てられたネットワークトラフィックに言及するに用いられる。ＭＰＬＳネットワーク規格に従って、ＬＳＰは、ラベル配布プロトコル（ＬＤＰ：ｌａｂｅｌ  ｄｉｓｔｒｉｂｕｔｉｏｎ  ｐｒｏｔｏｃｏｌ）の使用によって確立されてよく、また制御駆動型（すなわちデータ送信の前に確立される）であってもよいし、データ駆動型（すなわち、以前にマップ解除された宛先のデータが受信されるときに確立される）であってもよい。
【００４３】
現在の実施形態では、それぞれのＰＥルータ１２２−１２６は、セキュリティ装置１２８−１３２を介してＭＰＬＳコアネットワーク１０８に接続する。セキュリティスイッチ１２８−１３２の諸機能について、下記に詳細に論じられる。
【００４４】
ＭＰＬＳコアネットワーク１０８はそれ自体、複数のプロバイダ（Ｐ）ルータ１３４、１３６、１３８を含む。それぞれのＰルータは、（たとえばラベル配布プロトコルを使用することによって）ＭＰＬＳコアネットワーク１０８内の必要なＬＳＰを確立するために制御プレーンメッセージを受信し、ＭＰＬＳヘッダおよび確立されたＬＳＰ内のラベルに基づいてＭＰＬＳコアネットワーク１０８内のデータパケットの交換を行う通過ルータである。
【００４５】
ラベル付きのパケットがＰルータ１３４−１３８によって受信されるとき、Ｐルータは、スタック内のトップラベルのラベル値を読み出し、Ｐルータに格納されており、Ｐルータによって維持されたラベル情報ベース（ＬＩＢ：ｌａｂｅｌ  ｉｎｆｏｒｍａｔｉｏｎ  ｂａｓｅ）内でこの値を調べる。それぞれのラベル値について、ＬＩＢは、そのラベルをもつフレームがどこに転送されるべきか（すなわち次のホップ）、およびフレームを転送する前にラベルスタックへのいずれかの修正が必要かどうか（すなわちスタックに１つまたは複数の新しいラベルをプッシュし、トップラベルを新しいトップラベルで置き換え、またはスタックからラベルを取り出す）に関する情報を格納する。
【００４６】
従来のように、ネットワーク１００は、信頼できるゾーンと信頼できないゾーンに分割されてよい。ＣＥルータ１１０−１１２、ＣＥルータ１１０−１１２の向こうの顧客ネットワーク、ＰＥルータ１２２−１２６、およびセキュリティ装置１２８−１３２は、顧客、あるいはＭＰＬＳプロバイダまたは顧客の制御内にあり、したがって信頼できる。一方、ＭＰＬＳコアネットワーク１０８のＰルータ１３４−１３８は、ＭＰＬＳプロバイダのいずれかの顧客の必ずしも制御内にあるとは限らず、信頼できないと見なされる。したがって、それぞれのＰＥルータ１２２−１２６は、信頼できるゾーン（ＰＥルータ自体および接続されたＣＥルータ）から、信頼できないゾーン（ＭＰＬＳコアネットワーク１０８）へのリンクを提供する。
【００４７】
セキュリティ装置
次に、セキュリティ装置１２８−１３２の機能について、セキュリティ装置１２８の機能ブロック図を示す図２を参照して詳細に述べられる。
【００４８】
図２に移ると、本発明の一実施形態によるセキュリティ装置１２８の機能ブロック図が示されている。セキュリティ装置１２８は、データ処理装置２０２を含み、このデータ処理装置２０２は、メモリ２０６、セキュリティエンジン２０８および入出力インターフェース２０４に接続される。
【００４９】
データ処理装置２０２は、マイクロプロセッサ、マイクロコントローラ、プログラマブル論理装置または他の適切な装置、あるいはそれぞれがデータ処理装置２０２の諸機能の一部を実施する複数のこうした装置であってよい。データ処理装置２０２の制御操作への命令およびデータは、メモリ２０６内に格納され、このメモリは、データ処理装置２０２とデータ通信しており、またはその一部を形成する。典型的に、セキュリティ装置１２８は、揮発性と不揮発性の両方のメモリと、各タイプのメモリのうちの２つ以上を含み、こうしたメモリが、ひとまとめしてメモリ２０６で表されている。メモリ２０６は、入出力インターフェース２０４に対して送受信された、入ってくるフレームおよび出ていくフレームをキャッシュするためにも使用されてよい。
【００５０】
入出力（Ｉ／Ｏ）インターフェース２０４は、外部装置（たとえばＰＥルータ、Ｐルータ、および／またはセキュリティ装置１２８がそれによって構成され得るコンピュータ）との通信を可能にする。この場合、Ｉ／Ｏインターフェース２０４は、制御プレーンフレームを受信するための制御ポート２１０と、入ってくるフレームを受信するための入力ポートフレームと、フレームを転送するための出力ポートとを含む。もちろん、様々なやり方で構成されたＩ／Ｏインターフェースが可能である。
【００５１】
セキュリティエンジン２０８は、データ処理装置２０２の一部を形成してもよいし、図示されたスタンドアロンのデータ処理装置であってもよい。セキュリティエンジン２０８は、マイクロプロセッサ、マイクロコントローラ、プログラマブル論理バイス、または他の適切な装置であってよい。セキュリティエンジン２０８は、それ自体の専用メモリを備えてもよいし、メモリ２０６を利用してもよい。この実施形態のセキュリティエンジンは、基準モジュール２１６と暗号化モジュール２１８とを含む。この場合もやはり、基準モジュール２１６および暗号化モジュール２１８のいずれか、またはその両方は、セキュリティエンジン２０８（または実際には、データ処理装置２０２）に統合されてもよいし、専用の処理装置であってもよい。たとえば、基準モジュール２１６は、データ処理装置２０２内のハードウェア、ファームウェアあるいはソフトウェアとして実装されてよい。
【００５２】
図１によれば、セキュリティ装置１２８は、信頼できるＰＥルータ１２２と信頼できないＭＰＬＳコアネットワーク１０８の間に（Ｐルータ１３４を介して）インストールされる。出ていくすべてのトラフィック（すなわち信頼できるＰＥルータ１２２からＰルータ１３４に送信されるトラフィック）、および入ってくるすべてのトラフィック（すなわち信頼できないＰルータ１３４から信頼できるＰＥルータ１２２に渡されるトラフィック）は、セキュリティ装置１２８を通過する。
【００５３】
ＭＰＬＳネットワーク１０８を介して宛先ＣＥルータ１１０に送信するためにフレームがＣＥルータ１１２から送信されるとき、フレームは、ＰＥルータ１２２によって受信され、このＰＥルータ１２２は、ＭＰＬＳフレームを作成するためにフレームにＭＰＬＳヘッダを付加する。次いで、元のフレームは、ＭＰＬＳペイロードになる。必要な宛先への経路が以前に確立されていない場合、ＰＥルータ１２２は、経路を確立するのに必要なアクションをも行う。
【００５４】
次いで、ＰＥルータ１２２は、セキュリティ装置１２８にフレームを転送する。セキュリティ装置１２８は、入力ポート２１２でフレームを受信し、データ処理装置２０２は、セキュリティエンジン２０８へのフレームの通過を制御する。セキュリティエンジン２０８の基準モジュール２１６は、事前定義されたセキュリティ基準をフレームが満たすかどうか判断するためにフレームをチェックする。下記にさらに述べられるように、事前定義されたセキュリティ基準を満たさないどんなフレームについても、セキュリティ装置は本質的にトランスペアレントである。
【００５５】
事前定義されたセキュリティ基準（その一部が、フレームがＭＰＬＳフレームであることである）をフレームが満たす場合、セキュリティエンジン２０８は、ＭＰＬＳフレームを解析して、ＭＰＬＳフレームをＭＰＬＳヘッダとＭＰＬＳペイロードに分ける。解析されたヘッダは、メモリ２０６に格納される。次いで、ＭＰＬＳペイロードは、ＭＰＬＳペイロードをセキュリティ保護する暗号化エンジン２１８に送信される。次いで、セキュリティエンジン２０８は、ＭＰＬＳヘッダと、（現在セキュリティ保護されている）ＭＰＬＳペイロードをリアセンブルし、結果として生じるフレームをＭＰＬＳコアネットワーク１０８に渡す。基準モジュール２１６がデータ処理装置２０２の一部として実装される場合、解析もまた、データ処理装置２０２によって実施されてよい。
【００５６】
宛先のセキュリティ装置１３０は、すべてのフレームの類似のチェックを行う。フレームが暗号化基準を満たす場合は、セキュリティ装置１３０は、ＭＰＬＳフレームのペイロードが暗号化されたと見なす。出ていくフレームと同様に、次いでセキュリティ装置１３０は、ＭＰＬＳヘッダとＭＰＬＳペイロードを分離し、復号のためにＭＰＬＳペイロードを暗号化エンジンに渡し、ＭＰＬＳフレームをリアセンブルし、フレームをＰＥルータ１２４に渡す。
【００５７】
フレームがセキュリティ基準を満たさない場合は、セキュリティ装置１２８は、そのフレームが暗号化／復号される必要がないフレームであると決定し、ＭＰＬＳヘッダとＭＰＬＳペイロードの分離、およびペイロードの暗号化／復号なしにフレームを切り換える。
【００５８】
たとえば、後述されたセキュリティ基準は、制御プレーントラフィックに関する非ＭＰＬＳフレームおよびＭＰＬＳフレームがセキュリティ基準を満たさず、したがってさらなる処理なしにセキュリティ装置によって切り換えられるというものである。必要以上の処理を行わずにこれらのフレームを切り換えることによって、セキュリティ装置（したがってネットワーク全体）の性能へのどんな影響もが最小限に抑えられる。
【００５９】
ＭＰＬＳペイロードが暗号化／復号されるかどうかにかかわらず、フレームを次のホップ（すなわちＰルータまたはＰＥルータ）に渡す前、セキュリティ装置は、イーサネットフレームのソースおよび宛先アドレスを切り換え、イーサネットフレーム用のチェックサムデータを再計算する。これは、ＰＥルータとＰルータの間のシームレスな統合をもたらす。またセキュリティ装置は、必要であれば、フレームの有効期限（ＴＴＬ）フィールドを減分し、ＴＴＬがゼロである場合は、フレームを廃棄する。
【００６０】
図３は、セキュリティ装置１２８によってＰＥルータ１２２から受信されたネットワークトラフィックを表すものである。見て分かるように、入ってくるフレーム３０２のうち、１５より大きいラベル値（トラフィックフロー３０６）を有するＭＰＬＳタイプフレーム（トラフィックフロー３０４）であるフレームだけが、セキュリティ装置１２８の暗号化エンジン２１８によって処理される。１５以下のラベル値を有するＭＰＬＳフレーム（トラフィックフロー３１０）および非ＭＰＬＳフレーム（トラフィックフロー３１２）はすべて、暗号化エンジン２１８を回避する。
【００６１】
非ＭＰＬＳフレームの一部は、制御プレーントラフィックに関し、セキュリティ装置１２８によってインターセプトされ得る（トラフィックフロー３１４）。これらのフレームは、セキュリティ装置１２８によって処理され、次いで廃棄されてもよいし、処理され、さらなる宛先に転送されてもよい。
【００６２】
セキュリティ基準
上記に論じられたように、セキュリティ装置で使用されるセキュリティ基準は、セキュリティ装置がどのフレームのペイロードを暗号化し、ペイロード暗号化なしにどのフレームが切り換えられるか決定する。もちろん、これらの基準は、要望に応じて設定されてよいが、しかし、（この実施形態では）適切な基準は、
・フレームがＭＰＬＳイーサネットフレームであること（すなわちフレームイーサタイプが０ｘ８８４７または０ｘ８８４８であり）、および
・ＭＰＬＳヘッダ内のトップラベルのラベル値が１５より大きいこと（ＩＥＴＦ合意に基づいて、ラベル値０−３が割り当てられ、ラベル値４−１５が現在、ＩＡＮＡによる割当てのために保存されることに留意されたい）である。
【００６３】
このようにセキュリティ基準を設定することによって、セキュリティ装置は、すべての非ＭＰＬＳフレーム、およびネットワーク管理および維持に対処するすべてのＭＰＬＳフレーム（すなわち制御プレーンフレーム）に対しては完全にトランスペアレントである。セキュリティ基準を満たさないどんなフレームについても、セキュリティ装置は本質的に、信頼できるポートと、信頼できないポートとの間のレイヤ２イーサネットスイッチとして働く。
【００６４】
上述されたように、フレームがセキュリティ基準を満たす場合は、ＭＰＬＳフレーム（すなわち顧客によって送信された元のフレーム）のＭＰＬＳペイロードは、セキュリティ保護されるように暗号化モジュール２１８に送信される。フレームがＰＥルータからＭＰＬＳネットワークに出ていく場合は、暗号化モジュール２１８は、ＭＰＬＳペイロードを暗号化する。ＭＰＬＳペイロードがＭＰＬＳネットワークからＰＥルータに入ってくる場合は、ＭＰＬＳペイロードが復号される。
【００６５】
ペイロード（必要なセキュリティレベルに依存する特定のタイプ）を暗号化／復号するために任意の形の暗号化が使用されてよいが、トリプルＤＥＳ（ＴＤＥＳ：Ｔｒｉｐｌｅ  ＤＥＳ）など、単一鍵暗号化が、多くの適用例に適し得る。単一鍵暗号化法の使用には、ネットワーク上のすべてのセキュリティ装置に単一の共通の鍵だけが提供される必要があり、したがってネットワークオーバヘッドが最小限に抑えられるという利点がある。
【００６６】
ＭＰＬＳペイロードが暗号化／復号されると、セキュリティ装置１２８は、修正済のＭＰＬＳペイロードのサイズによって、ネットワークの最大送信可能単位（ＭＴＵ：ｍａｘｉｍｕｍ  ｔｒａｎｓｍｉｔｔａｂｌｅ  ｕｎｉｔ）を超えることにならないことを保証するために、修正済のＭＰＬＳペイロードをチェックする。修正済のＭＰＬＳペイロードによってＭＴＵを超えることになる場合は、フレームは廃棄され、制御プレーンによりエラーフラグが付けられる。
【００６７】
信頼できるＰＥルータからセキュリティ装置上で受信されたフレームでは（すなわちフレームがセキュリティ装置を介してＭＰＬＳコアネットワーク１０８上に送信される）、セキュリティ装置がフレームを取り扱うためのアルゴリズムは、下記のように擬似コードで記述されてよい：
【数１】
0005319777.tif 000002
【００６８】
Ｐルータからセキュリティ装置上で受信されたフレームでは（すなわちフレームがセキュリティ装置上で、ＭＰＬＳコアネットワーク１０８上のＰルータから受信される）、セキュリティ装置がフレームを取り扱うためのアルゴリズムは、下記のように擬似コードで記述されてよい：
【数２】
0005319777.tif 000003
【００６９】
図４は、セキュリティ装置１２８で行われるステップ４００を大まかに示すフローチャートを提供している。
【００７０】
ステップ４０２で、セキュリティ装置１２８が、フレームを受信し、ステップ４０４および４０６で、セキュリティ装置１２８の基準モジュール２１６は、フレームがセキュリティ基準を満たすかどうか判断するためにフレームを解析する。
【００７１】
フレームがセキュリティ基準を満たす場合は（すなわち、ステップ４０４でチェックされたようにＭＰＬＳフレームであり、ステップ４０６でチェックされたように１５より大きいラベル値を有することによる）、セキュリティ装置１２８は、ＭＰＬＳヘッダとＭＰＬＳペイロードを分離する（ステップ４０８）。
【００７２】
ステップ４１０で、ＭＰＬＳペイロードは、処理のために暗号化モジュール２１８に送信される。フレームがＰルータから受信された場合は、暗号化モジュール２１８の処理によって、ＭＰＬＳペイロードの内容が復号されることになり、セキュリティ装置１２８上でＰＥルータから受信された場合は、暗号化モジュール２１８の処理によって、ＭＰＬＳペイロードが暗号化されることになる（フレームのソースは、フレームが受信されるポートから決定される）。
【００７３】
ステップ４１２で、セキュリティ装置１２８は、必要であればＭＰＬＳヘッダのさらなる処理を行う。これは、たとえば、ＭＰＬＳ  ＴＴＬフィールドを更新すること（およびＴＴＬが０に等しい場合には、パケットを廃棄し／制御プレーンへのエラー条件にフラグを立てること）、ならびに必要であればＴｏＳフィールドを修正することを含んでよい。
【００７４】
ステップ４１４で、セキュリティ装置１２８は、（セキュリティエンジンによって処理された更新済のＭＰＬＳヘッダおよびＭＰＬＳペイロードで）ＭＰＬＳフレームをリアセンブルする。
【００７５】
ステップ４１６で、ＭＰＬＳフレームは、更新済のイーサネットフィールド（ソース、宛先、ＣＲＣ）を伴う新しいイーサネットフレームに書き込まれ、ステップ４１８で、フレームのサイズが、ネットワークのＭＴＵサイズと比較される。フレームは、ネットワークのＭＴＵサイズを超える場合は、廃棄され、制御プレーンに対してエラーフラグが立てられる（ステップ４２０）。フレームがネットワークのＭＴＵサイズを超えない場合は、セキュリティ装置１２８は、フレームを先へ転送する（ステップ４２２）。
【００７６】
ステップ４０６で、フレームが、１５以下のラベル値を有するＭＰＬＳフレームであると決定される場合は、セキュリティ装置１２８によって適宜処理されるべき制御フレームとしてフレームにフラグが立てられる（ステップ４２４）。
【００７７】
ステップ４０４で、フレームがセキュリティ基準を満たさない場合は、処理はステップ４１６に直ちに進む。
【００７８】
セキュリティ装置間の鍵の配布
セキュリティ装置１２８−１３２間の鍵の配布は、ＩＰセキュリティプロトコル（ＩＰＳｅｃ：ＩＰ  Ｓｅｃｕｒｉｔｙ  Ｐｒｏｔｏｃｏｌ）によって定義された既存のＩＰべースの独立鍵交換法を使用して達成されてよい。
【００７９】
鍵交換（また必要ならば、他の制御プレーン機能性／トラフィック）を提供するために、この実施形態のセキュリティ装置には、セキュリティ保護された制御ポート２１０が備えられる。あるいは、セキュリティ装置は、鍵交換（および他の制御プレーン機能性／トラフィック）を行うために、定義されたＴＣＰ／ＩＰポートで特定のＩＰフレームをインターセプトするように構成されてよい。さらなる代替案として、予約されたＭＰＬＳラベル値（すなわちラベル４−１６のうちの１つ）は、鍵交換（または、この場合もやはり他の制御プレーントラフィック）に割り当てられ、これに基づいてセキュリティ装置によってインターセプトされてよい。
【００８０】
ＴｏＳフィールドの修正
セキュリティ装置は、ＭＰＬＳヘッダ内のＴｏＳフィールドを修正するように構成されてもよい。これは、セキュリティ装置が第三者によって所有され／操作され、またその第三者が、ＰＥルータの所有者／管理者によって指定された（またＭＰＬＳヘッダに書き込まれた）サービス品質とは異なる特定のサービス品質を実施したい場合に適し得る。
【００８１】
上述されたセキュリティ装置内に構成される適切なハードウェアを備えた１つの装置は、Ｔｈａｌｅｓ  Ｄａｔａｃｒｙｐｔｏｒである。
【００８２】
ネットワークトラフィックの例
図５および図６を参照して、領域１０２の顧客Ａエンドポイント５０２から領域１０４内の顧客Ａエンドポイント５０４へのパケットの送信について詳細に述べられる。この説明は、必要な変更を加えて、ある領域内のいずれかのエンドポイントから別の領域内のエンドポイントへのトラフィックがＭＰＬＳネットワークを介して移動することにも等しく適用される。
【００８３】
概観するために、また図３に示されたパケットはこの場合、エンドポイント５０２からＣＥルータ１１０、ＰＥルータ１２２、セキュリティスイッチ１２８に、ＭＰＬＳコアネットワーク１０８を介してセキュリティスイッチ１３０、ＰＥルータ１２４、ＣＥルータ１１２、エンドポイント５０４に移動する。ＭＰＬＳコアネットワーク１０８内のトラフィックの経路は、確立されるＬＳＰによって決まるが、説明のために、Ｐルータ１３４からＰルータ１３６であると見なされる。
【００８４】
事前定義されたセキュリティ基準を満たすフレーム
図６Ａ−図６Ｃは、エンドポイント５０２からエンドポイント５０４への送信における様々なポイントのパケットを示すハイレベル図を提供している。
【００８５】
エンドポイント５０２は、イーサネットフレーム内にカプセル化され、ＣＥルータ１１０に送信されるＩＰフレームを生成する。次いで、ＣＥルータ１１０は、ＰＥルータ１２２にフレームを送信する。
【００８６】
図６Ａは、イーサネットフレーム５００がＰＥルータ１２２を離れるときのイーサネットフレーム５００を示している。見て分かるように、イーサネットフレームは、イーサネットヘッダ６０２と、ＭＰＬＳヘッダ６０４（ＰＥルータ１２２によってイーサネットフレームに追加される）と、ペイロード６０６（すなわちエンドポイント５０２によって送信されているＩＰパケット（複数可）に関するデータ）と、巡回冗長検査（ＣＲＣ：ｃｙｃｌｉｃ  ｒｅｄｕｎｄａｎｃｙ  ｃｈｅｃｋ）フィールド６０８とを含む。
【００８７】
フレーム６００は、ＰＥルータ１２２からセキュリティ装置１２８に送信される。
【００８８】
図６Ｂは、セキュリティ装置１２８によって受信され処理された後のフレームを示している。この場合、フレームは、所定のセキュリティ基準を満たしている（すなわち、フレームはイーサネットフレームであり、ＭＰＬＳヘッダのラベルスタック内のトップラベルのラベル値が１５より大きい）と仮定する。
【００８９】
フレームがセキュリティ基準を満たすので、セキュリティ装置１２８は、暗号化モジュール２１８にフレーム６００のペイロード６０４を送信し、この暗号化モジュール２１８で、セキュリティ保護されたペイロード６０６’を作成するためにペイロードが暗号化される。セキュリティ装置１２８は、（イーサネットソースおよび宛先アドレスが必要に応じて変更されるように）イーサネットヘッダ６０２をも修正し、フレームに対して行われた変更に一致する新しいＣＲＣを作成するためにＣＲＣ  ６０８を再計算する。次いで、フレームは、リアセンブルされ、ＭＰＬＳコアネットワーク１０８内の信頼できないＰルータ１３４に転送される。
【００９０】
上述されたように、セキュリティ装置１２８は、そうするように構成される場合、ＭＰＬＳヘッダ内のＴｏＳフィールドをも修正する。
【００９１】
次いで、フレーム６００は、ＭＰＬＳヘッダ６０４内のデータに従ってＭＰＬＳコアネットワーク１０８を横断し、（最終的には）セキュリティ装置１３０に送信される。
【００９２】
セキュリティ装置１３０は、フレーム６００を受信するとき、事前定義されたセキュリティ基準に対してフレーム６００をテストする。そのテストに通ると、セキュリティ装置１３０は、フレームのペイロード６０６’を暗号化モジュール２１８に送信し、この暗号化モジュール２１８で、ペイロード６０６’は、元のペイロード６０６へと復号される。この場合もやはり、セキュリティ装置１３０は、ソースおよび宛先アドレスを必要に応じて変更するためにイーサネットヘッダ６０２を修正し、ＣＲＣ  ６０６を再計算する。次いで、フレーム６００は、リアセンブルされ、それがネットワークＭＴＵを超えないことを保証するためにチェックされ、信頼できるＰＥルータ１２４に転送される。
【００９３】
信頼できるＰＥルータは、ＭＰＬＳヘッダ６０４を取り除き、通常のイーサネットフレーム送信に従ってフレーム６００をＣＥルータ１１２に転送する（ＰＥルータは、フレーム６００を転送する適切なアドレスを決定するために、復号されたペイロード６０６にアクセスすることができる）。
【００９４】
理解されるように、信頼できないルータ／スイッチによってフレーム６００が処理されている間中（すなわちＰＥルータ１２２とＰＥルータ１２４の間で）フレーム６００のペイロード６０６全体が暗号化される。したがって、フレームをインターセプトする第三者によって取得され得る唯一の情報は、イーサネットヘッダ６０２、ＭＰＬＳヘッダ６０４およびイーサネットＣＲＣ  ６０８内に存在する情報、すなわちフレームのソースをＰＥルータ１２２として、またフレームの宛先をＰＥルータ１２４として決定するのに十分な情報である。ＰＥルータ１２２および１２４を超えたネットワークトポロジに関するすべての情報は、エンドポイント５０２によって作成された元のＩＰパケット（複数可）内に保持され、この元のＩＰパケットは、セキュリティ保護されたペイロード内で暗号化され、したがって、第三者からアクセス不可能である。
【００９５】
さらに、ＭＰＬＳヘッダ６０４を暗号化しないことによって、各Ｐルータは、必要に応じてパケットを送信するためにＭＰＬＳヘッダ情報に容易にアクセスすることができ（すなわち、Ｐルータは、所与の任意のフレームに必要なアクションを決定するのにいずれかの復号／暗号化を行う必要はなく）、したがって効率的なフレーム転送が提供される。これは、たとえば、物理リンク暗号化と対照的であり、この物理リンク暗号化は、ネットワーク内の各リンクが、送信されている各フレームを復号し、次いで再び暗号化することを必要とする。
【００９６】
上述された本発明の実施形態では、セキュリティ装置１２８−１３２は別個のハードウェアコンポーネントとして表され述べられているが、セキュリティ装置１２８−１３２の機能性を既存の装置に組み込むことが当然可能であろう。たとえば、セキュリティ装置１２８−１３２、およびＰＥルータ１２２−１２６は、３つの複合装置として提供されてよい（すなわち、ＰＥルータ１２２は、単一の装置内でセキュリティスイッチ１２８と結合され、ＰＥルータ１２４は、単一の装置内でセキュリティスイッチ１３０と結合され、ＰＥルータ１２６は、単一の装置内でセキュリティスイッチ１３２と結合される）。
【００９７】
明細書に開示され、定義された本発明は、言及された、あるいは本文または図面から明らかな個々の特徴のうちの２つ以上の特徴のすべての代替の組合せに及ぶことが理解されよう。これらの異なる組合せはすべて、本発明の様々な代替の態様を構成する。
【図１】
0005319777.tif 000004
【図２】
0005319777.tif 000005
【図３】
0005319777.tif 000006
【図４】
0005319777.tif 000007
【図５】
0005319777.tif 000008
【図６Ａ】
0005319777.tif 000009
【図６Ｂ】
0005319777.tif 000010
【図６Ｃ】
0005319777.tif 000011