JP3610913B2 - ルータとそのパケット交換方法、及びパケット交換プログラム - Google Patents
ルータとそのパケット交換方法、及びパケット交換プログラム Download PDFInfo
- Publication number
- JP3610913B2 JP3610913B2 JP2001037665A JP2001037665A JP3610913B2 JP 3610913 B2 JP3610913 B2 JP 3610913B2 JP 2001037665 A JP2001037665 A JP 2001037665A JP 2001037665 A JP2001037665 A JP 2001037665A JP 3610913 B2 JP3610913 B2 JP 3610913B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- processing unit
- mpls
- outside
- switch
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
本発明は、パケット交換による通信に関し、特に、MPLS(Multi Protocol Label Switching)によるパケットを交換するルータとそのパケット交換方法、及びパケット交換プログラムに関する。
【0002】
【従来の技術】
MPLS(Multi Protocol Label Switching)は、IETF(Internet Engineering Task Force)にて標準化が進められているカットスルー方式のレイヤ3スイッチング技術であり、ラベル・スイッチングとも呼ばれている技術である。
【0003】
MPLSは、そもそもATMのようなコネクション型ネットワークにおいて、IPパケットの転送処理と経路計算処理を分離することにより、IPパケットの高速転送を実現する技術として検討されてきた。近年では、MPLSは、コネクションの概念のないIP網(コネクションレス型ネットワーク)に対して、仮想的な通信路であるパスの定義を導入する技術として注目されている。
【0004】
図13、図14に、MPLSネットワーク内の転送モデルを示す。
【0005】
MPLSのドメイン200内では、同じ転送ルールに属するパケットを転送するため、LSP210(Label Switch Path)と呼ばれる仮想的なパスを設定する。
【0006】
MPLSドメインの入口201においてラベル・スイッチングをサポートするルータ(LSR:Label Switch Router)では、受信したパケットを、同じ転送ルールを持つ集合体であるFEC(Forwarding Equivalence Class)にマッピングする。同じFECにマッピングされたパケットは、同じラベルが付加される(ラベルプッシュ)。以下、このラベルが付加されたパケットを、“ラベル化パケット”と呼ぶ。
【0007】
MPLSドメイン200の内部では、パケットに付加されたラベルによってフォワーディング(Forwarding)され、MPLSドメインの出口203でそのラベルが剥がされる(ラベルポップ)。
【0008】
MPLSドメイン200では、ノード間に設定されたコネクションを、ネットワーク層(レイヤ3)の経路情報に従って関連付けを行なっている。この関連付けは、ノード間で終端されたコネクション間で使用するためのものである。
【0009】
関連付けられたコネクションは、「ラベル」を付けて識別可能とし、ラベルが付与されたパケットを受信したスイッチは、そのラベルを元にパケットを転送する。
【0010】
一旦、経路情報に従ってラベルが割り当てられると、パケットの転送処理においてIPアドレスのサーチ(アドレス解決)が不要となる。また、経路情報が変更された場合には、新しいラベルを割り当てる。
【0011】
IPパケットに対して、コネクションを識別するための新しいフィールドとしてラベルを追加することにより、IPのコネクション型サービスとコネクション毎のセキュリティの確保等を容易に実現することができる。
【0012】
図15に、シムヘッダ(Shim−Header)の構成の一例を示す。
【0013】
図15の例においては、パケット内においてラベルを挿入する箇所は、IPヘッダとレイヤ2プロトコルヘッダとの間であり、32ビット長のシムヘッダ(Shim−Header)と呼ばれるMPLSのヘッダを挿入している。
【0014】
1つのIPパケットには、1つ以上のシムヘッダが多重される場合もあり、これは階層化アドレスとして使用されたり、VPN(Virtual Private Network)番号をその用途とする場合がある。
【0015】
MPLSにおけるラベル・スイッチングを行なうルータを、LSP(Label Switch Router)と呼ぶ。LSRは、MPLSドメイン内での位置付けにより次のように分類される。
【0016】
・境界LSR(入口境界LSR201/出口境界LSR203)
MPLSドメイン内で、MPLSドメインと非MPLSドメインとの境界に配備されるLSRであり、更に次のように分類できる。
(a)入口境界LSR201(Ingress Boundary LSR)
非MPLSドメインからMPLSドメイン内に送信されるパケットを処理するLSR。IPパケットにラベルをプッシュしてラベル化パケットとする。
(b)出口境界LSR203(Egress Boundary LSR)
MPLSドメイン内から非MPLSドメインに出て行くパケットを処理するLSR。ラベル化パケットから、ラベルをポップしてIPパケットに戻す。
【0017】
・内部LSR202(Intermediate LSR)
MPLSドメイン内部に配備され、入力元も出力先もMPLSドメイン内であるLSR。
【0018】
ここで、MPLSドメイン内に転送されるパケットは、MPLSパケットのみではない。LSRが扱うパケットとしては、以下の4種類があり、またこれらは同一の物理ポートに混在する場合がある。
(1)MPLS(非VPN:n段ラベル付の)パケット
(2)MPLS(VPN:n段ラベル付の)パケット
(3)非MPLS(通常のIP)パケットだが、特別にフローの管理を行なうもの
(4)非MPLS(通常のIP)パケットであり、特別な管理を行なわないもの
【0019】
従来の、IPパケットのみを転送する通常のルータでは、IP転送系のみに対応し、上記の(3)、(4)に示すパケットの転送のみが可能であって、(1)、(2)に示すMPLSラベル化パケットを転送するための機能を備えていない。
【0020】
図12は、ルータの装置構成を示すブロック図である。
【0021】
図12を参照すると、ルータには、専用のパケット処理ハードウエア回路等によりの主信号(パケット)の入出力部を備える複数のパケット処理部10と、各パケットの経路検索を処理するフォワーディング処理部81と、多様なルーティングプロトコルを終端し最短経路(Shortest Path)を求める経路計算を実施し、経路テーブルを生成するルーティングプロトコル処理部82と、転送スケジューリングを行なうNxNクロスバ方式のスイッチ処理部80を備えている。
【0022】
また、従来のIP転送系のみに対応するルータでは、パケット処理部10がIPパケットを受信すると、そのIPパケットをスイッチ処理部80に送り、ルータに備えられるフォワーディング処理部81にヘッダ情報を転送し、宛先検索を行なう。そして、スイッチ処理部80を経由して、宛先カードであるパケット処理部10に転送する。
【0023】
こうした、従来のIP転送系のみに対応するルータでは、パケット処理部10にアドレス解決を行なうためのテーブルを備えていないため、パケット処理部10は、パケットを受信した時点で転送先情報を認識することはできなかった。このため、従来のIP転送系のみに対応するルータでは、(1)、(2)に示すMPLSラベル化パケットを、MPLSによる効率の良い転送を行なうことができない。
【0024】
また、こうしたIP転送系のみに対応するルータにより、MPLSパケットを転送させる方法としては、(1)、(2)に示すMPLSラベル化パケットをIPパケットと同様にして、フォワーディング処理部81にヘッダ情報を転送し、宛先検索を行った後、スイッチ処理部80を経由して、宛先カードであるパケット処理部10に転送する方式が考えられる。しかし、この方式では、無駄にスイッチ帯域を浪費することとなり、更にパケット長に依存して主信号の転送効率が低下することになる。
【0025】
【発明が解決しようとする課題】
上述されたように従来では、以下に述べるような問題点があった。
【0026】
従来の、従来のIP転送系のみに対応するルータでは、MPLSパケットを、MPLSによる効率の良い転送を行なうことができない。このため、低コストかつ簡易な作業のみにより、こうしたIP転送系のみに対応する従来のルータを変更し、MPLSをサポートさせる方法が求められていた。
【0027】
また、上記(3)、(4)に示した通常のIPパケットに対しては、従来通りのフォワーディング処理部81にヘッダ情報を転送して宛先検索を行なうというIPパケットの転送メカニズム(フォワーディングエンジンカードによる経路解決手法)を実行し、かつ同時に(1)、(2)に示すMPLSラベル化パケットに対しては、カットスルー処理(回線カードによる経路解決)による転送を実現し、かつこれらの転送処理の切替が容易にできるルータが求められていた。
【0028】
また、装置内の転送においては、MPLSでいうラベルを持ち回る場合には、装置内における転送オーバーヘッド(装置内転送帯域)が変動する。このため、例えば複数のラベルがプッシュされる場合には、トラヒックの定量的な制御が複雑になり、運用負荷が重くなるという問題点があった。
【0029】
本発明の第1の目的は、上記従来技術の欠点を解決し、IPパケット及びMPLSパケットのそれぞれを効率よく転送するルータとそのパケット交換方法及びパケット交換プログラムを提供することである。
【0030】
本発明の第2の目的は、上記従来技術の欠点を解決し、IP転送系のみに対応する従来のルータから、低コストかつ簡易な作業により製造することができMPLSをサポートする、第1の目的のルータを提供することである。
【0031】
【課題を解決するための手段】
上記目的を達成するため本発明のルータは、パケットを中継するルータにおいて、パケットを送受する複数のパケット処理部と、パケットを受信した前記パケット処理部から、当該パケットを送信する前記パケット処理部へ、当該パケットを転送するスイッチ処理部を備え、前記パケット処理部は、外部から受信したパケットがIPパケット及びMPLSパケットのいずれの場合においても、当該パケットに対し装置内ヘッダを付加して、IPパケットの装置内転送時の形式に当該パケットを変換し、前記変換されたパケットを前記スイッチ処理部に送ることにより、IPパケット及びMPLSパケットを中継すると共に、さらに、前記パケット処理部は、外部からパケットを受信する側の受信側処理部と、外部へパケットを送信する側の送信側処理部を備え、前記受信側処理部は、外部から受信したパケットの情報を解析して、当該パケットの転送先経路及び当該パケットに対し実行すべき処理方法を識別し、前記装置内ヘッダを前記転送経路及び前記処理方法の情報を含めて生成し、当該パケットに前記生成した装置内ヘッダを付加して前記スイッチ処理部に送り、前記スイッチ処理部は、各前記パケット処理部の受信側処理部から送られるパケットを、当該パケットの前記装置内ヘッダにおいて指定された、当該パケットの転送先経路である前記パケット処理部の送信側処理部へ転送し、前記送信側処理部は、前記スイッチ処理部から転送されるパケットを、前記装置内ヘッダを取り外し、当該装置内ヘッダにおいて指定された当該パケットの処理方法に基づいて処理することを特徴とする。
【0032】
請求項2の本発明のルータは、前記受信側処理部は、外部から受信したパケットがMPLSパケットでありかつラベルを備える場合には、その先頭のラベルを取り外した後に、前記装置内ヘッダを付加して前記スイッチ処理部に送り、前記送信側処理部は、前記スイッチ処理部から転送されたパケットがMPLSパケットである場合には、当該パケットに対し付加するラベルの有無及びその枚数を決定し、外部に送信するパケットを生成することを特徴とする。
【0033】
請求項3の本発明のルータは、前記送信側処理部は、前記スイッチ処理部から転送されたパケットがMPLSパケットである場合において、MPLSドメインの入口の境界である場合には、受信時よりも1枚多いラベル枚数により外部に送信するパケットを生成し、MPLSドメインの内部である場合には、受信時と同じラベル枚数により外部に送信するパケットを生成し、MPLSドメインの出口の境界である場合には、受信時とよりも1枚少ないラベル枚数により外部に送信するパケットを生成することを特徴とする。
【0034】
請求項4の本発明のルータは、前記受信側処理部は、受信したパケットが、IPパケットとMPLSパケットのいずれであるのかを識別するプロトコル識別部と、前記受信したパケットのパケットヘッダに示される情報を基に、当該パケットのフローを識別し転送先経路を解決するフロー識別及び経路解決部と、前記フロー識別及び経路解決部の指示に基づいて、前記装置内ヘッダを生成し付与する装置内ヘッダ付与部と、当該パケットの属性情報を生成するパケット属性生成部を備えることを特徴とする。
【0035】
請求項5の本発明のルータは、前記送信側処理部は、前記スイッチ処理部から送られるパケットのシェーピング及び優先スケジューリングを処理するスケジューリング部と、当該パケットに対し付加するラベルの有無及びその枚数を決定する送信パケット処理判定部と、前記送信パケット処理判定部の決定に基づいて、送信するパケットを生成する送信パケット組立部を備えることを特徴とする。
【0036】
請求項6の本発明のルータは、経路検索を処理するフォワーディング処理部と、ルーティングプロトコルを終端し、経路計算を処理し、経路テーブルを生成するルーティングプロトコル処理部を備えることを特徴とする。
【0037】
請求項7の本発明のルータは、前記パケット処理部における前記スイッチ処理部側のインタフェースは、全ての宛先ポート毎に仮想出力キューを備えることを特徴とする。
【0038】
請求項8の本発明は、パケットを中継するルータのパケット交換方法において、前記ルータは、パケットを送受する複数のパケット処理部と、パケットを受信した前記パケット処理部から当該パケットを送信する前記パケット処理部へ当該パケットを転送するスイッチ処理部を備え、前記パケット処理部において、外部から受信したパケットがIPパケット及びMPLSパケットのいずれの場合においても、当該パケットに対し装置内ヘッダを付加して、IPパケットの装置内転送時の形式に当該パケットを変換し、前記変換されたパケットを前記スイッチ処理部に送ることにより、IPパケット及びMPLSパケットを中継すると共に、前記パケット処理部は、外部からパケットを受信する側の受信側処理部と、外部へパケットを送信する側の送信側処理部を備え、前記受信側処理部において、外部から受信したパケットの情報を解析して、当該パケットの転送先経路及び当該パケットに対し実行すべき処理方法を識別し、前記装置内ヘッダを前記転送経路及び前記処理方法の情報を含めて生成し、当該パケットに前記生成した装置内ヘッダを付加して前記スイッチ処理部に送り、前記スイッチ処理部において、各前記パケット処理部の受信側処理部から送られるパケットを、当該パケットの前記装置内ヘッダにおいて指定された、当該パケットの転送先経路である前記パケット処理部の送信側処理部へ転送し、前記送信側処理部において、前記スイッチ処理部から転送されるパケットを、前記装置内ヘッダを取り外し、当該装置内ヘッダにおいて指定された当該パケットの処理方法に基づいて処理することを特徴とする。
【0039】
請求項9の本発明のパケット交換方法は、前記受信側処理部において、外部から受信したパケットがMPLSパケットでありかつラベルを備える場合には、その先頭のラベルを取り外した後に、前記装置内ヘッダを付加して前記スイッチ処理部に送り、前記送信側処理部において、前記スイッチ処理部から転送されたパケットがMPLSパケットである場合には、当該パケットに対し付加するラベルの有無及びその枚数を決定し、外部に送信するパケットを生成することを特徴とする。
【0040】
請求項10の本発明のパケット交換方法は、前記送信側処理部において、前記スイッチ処理部から転送されたパケットがMPLSパケットである場合において、MPLSドメインの入口の境界である場合には、受信時よりも1枚多いラベル枚数により外部に送信するパケットを生成し、MPLSドメインの内部である場合には、受信時と同じラベル枚数により外部に送信するパケットを生成し、MPLSドメインの出口の境界である場合には、受信時とよりも1枚少ないラベル枚数により外部に送信するパケットを生成することを特徴とする。
【0041】
請求項11の本発明のパケット交換方法は、経路検索を処理するフォワーディング処理ステップと、ルーティングプロトコルを終端し、経路計算を処理し、経路テーブルを生成するルーティングプロトコル処理ステップを備えることを特徴とする。
【0042】
請求項12の本発明のパケット交換プログラムは、コンピュータを制御することにより、パケットを中継するルータのパケットの交換を処理するパケット交換プログラムにおいて、前記ルータは、パケットを送受する複数のパケット処理部と、パケットを受信した前記パケット処理部から当該パケットを送信する前記パケット処理部へ当該パケットを転送するスイッチ処理部を備え、前記パケット処理部において、外部から受信したパケットがIPパケット及びMPLSパケットのいずれの場合においても、当該パケットに対し装置内ヘッダを付加して、IPパケットの装置内転送時の形式に当該パケットを変換し、前記変換されたパケットを前記スイッチ処理部に送る処理を実行させると共に、前記パケット処理部は、外部からパケットを受信する側の受信側処理部と、外部へパケットを送信する側の送信側処理部を備え、前記受信側処理部において、外部から受信したパケットの情報を解析して、当該パケットの転送先経路及び当該パケットに対し実行すべき処理方法を識別し、前記装置内ヘッダを前記転送経路及び前記処理方法の情報を含めて生成し、当該パケットに前記生成した装置内ヘッダを付加して前記スイッチ処理部に送る処理を実行させ、前記スイッチ処理部において、各前記パケット処理部の受信側処理部から送られるパケットを、当該パケットの前記装置内ヘッダにおいて指定された、当該パケットの転送先経路である前記パケット処理部の送信側処理部へ転送する処理を実行させ、前記送信側処理部において、前記スイッチ処理部から転送されるパケットを、前記装置内ヘッダを取り外し、当該装置内ヘッダにおいて指定された当該パケットの処理方法に基づく処理を実行させることを特徴とする。
【0043】
請求項13の本発明のパケット交換プログラムは、前記受信側処理部において、外部から受信したパケットがMPLSパケットでありかつラベルを備える場合には、その先頭のラベルを取り外した後に、前記装置内ヘッダを付加して前記スイッチ処理部に送る処理を実行させ、前記送信側処理部において、前記スイッチ処理部から転送されたパケットがMPLSパケットである場合には、当該パケットに対し付加するラベルの有無及びその枚数を決定し、外部に送信するパケットを生成する処理を実行させることを特徴とする。
【0044】
請求項14の本発明のパケット交換プログラムは、前記送信側処理部において、前記スイッチ処理部から転送されたパケットがMPLSパケットである場合において、MPLSドメインの入口の境界である場合には、受信時よりも1枚多いラベル枚数により外部に送信するパケットを生成し、MPLSドメインの内部である場合には、受信時と同じラベル枚数により外部に送信するパケットを生成し、MPLSドメインの出口の境界である場合には、受信時とよりも1枚少ないラベル枚数により外部に送信するパケットを生成する処理を実行させることを特徴とする。
【0045】
本発明のルータでは、専用のパケット処理ハードウエア回路等の主信号入出力部を有するパケット処理部と、経路検索処理部を有するフォワーディング処理部と、多様なルーティングプロトコルを終端し、最短経路となる経路計算を実施し、経路テーブルを生成する機能を有するルーティングプロトコル処理部と、転送スケジューリング機能付きNxNクロスバ方式のスイッチ処理部を備えている。また、前記主信号入出力部を有するパケット処理部において、受信した主信号パケットのプロトコルを識別し、PPPのリンクフェーズとプロトコルタイプに対応したパケット転送、あるいは廃棄処理を決定するための機能を有するプロトコル識別部、プロトコル識別部より転送されたパケットヘッダより、該パケットのフロー(あるいはラベル)を識別し、転送経路と該識別フロー(あるいは、ラベル)に対する処理方法(送信先タグ情報)をテーブル参照により解決し、装置内ヘッダ付与部及びパケット属性生成部に対して指示する機能を有するフロー識別及び経路解決部、フロー識別及び経路解決部の指示により、(固定長の)装置内ヘッダをパケットの先頭ページに付与すると共に、フロー識別及び経路解決部の指示内容によっては、受信パケットのラベル(シムヘッダ)を抜去した後、VOQアクセス制御を行なう装置内ヘッダ付与部、フロー識別及び経路解決部の指示により、該パケットの属性情報を生成してVOQアクセス制御部へ出力するパケット属性生成部を備えている。
【0046】
また、本発明のルータでは、VIQアクセス制御部より受信したパケット属性情報内に収容された“送信先タグ情報”を元に、該パケットの装置内フロー識別子(Flow_ID)を解決して、前記フロー識別子毎にパケット属性情報をキューイング(メモリに格納)すると共に、ピークレートと平均レートに基づくDual Token Bucket方式によるシェーピング及び優先スケジューリング(scheduling)機能(によるメモリ読出)を有するスケジューリング部、スケジューリング部60より受信したパケット属性内に収容されるフロー識別子より、送信パケットに対するラベル化処理方法を決定づける送信パケット処理判定部、送信パケット処理判定部が決定したラベル化処理方法に従い、VIQアクセス制御部からの読み出し制御を行ない、更に読み出した主信号パケットに対してラベル(シムヘッダ)の挿抜又は、ラベル変換処理を行った後、PPPフレームへの組み立て(カプセル化)を行なう送信パケット組立部を備えている。
【0047】
また、本発明のルータでは、Flow Classifier Tableとして、CAM(Contents Addressable Memory)検索キーテーブル、CAMヒットエントリーテーブル、FTN(FEC to Next hop)テーブルに展開され、入力回線カード内のポート番号とIPヘッダ内の送信IPアドレス、宛先IPアドレス、Diffserv Code Point(DSCP)、プロトコル番号とレイヤ4(TCP/UDP)ヘッダ内の送信ポート番号、宛先ポート番号の任意組み合わせであるか、もしくは入力回線カード内のポート番号と、ラベル化パケットのシムヘッダ内のラベルフィールド、EXPフィールドの任意組み合わせを元に、転送先経路を決定する識別子、ポリシング対象となるフローを決定する識別子、転送QoSクラスを決定する識別子、統計情報カウント単位を規定する識別子を解決するためのメモリを備え、転送先経路を決定する識別子が、スケジューリング部と接続されるフローテーブルのアドレスポインタとしてリンクされ、該パケットの装置内フロー識別子と出力先の物理ポート番号を解決するためのメモリを備え、装置内フロー識別子は、送信パケット制御部と接続されるアクションテーブルのアドレスポインタとしてリンクされ、パケットのシムヘッダ処理(シムヘッダのプッシュ/スワップ/ポップ等)を決定する手段を備える。
【0048】
本発明のルータの装置構成は、従来のIPパケットの転送のみを行なうルータの装置構成と、パケット処理部(インタフェース回線カード)のみが異なるのであり、パケット処理部の受信側処理部(受信側回線カード)が解決した送信側の転送処理を決定するための情報をルータ内で持ち回り、送信側処理部(送信側回線カード)において、実際のシムヘッダのプッシュ、スワップ、ポップ処理に関連する処理等を実行することができ、IPパケット及びMPLSパケットの双方を効率よく転送することができる。これにより、(MPLS未サポートの)従来のルータから、本発明のルータである(MPLSサポートの)LSRへの移行は、従来のルータのアーキテクチャを踏襲しつつ低コストかつ柔軟に行なうことができる。
【0049】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【0050】
本発明においては、従来ルータをLSR(Label Switch Router)に拡張するに際して、従来ルータのアーキテクチャを踏襲し低コストで柔軟な移行が可能(seamless)であり、汎用性に優れたルータを提供する。
【0051】
本発明のルータは、多元的なレイヤ3トラヒックを収容するMPLS(Multi Protocol Label Switching)網において、MPLSパケット及びIPパケットを交換する。
【0052】
図12は、本発明の第1の実施の形態のルータ100の構成を示すブロック図である。また、本実施の形態のルータ100は、パケット処理部10に特徴があり、図12に示される各部の配置は従来のルータと同様である。
【0053】
図12を参照すると、本実施の形態のルータは、フォワーディング処理部81、ルーティングプロトコル処理部82、スイッチ処理部80と、複数のパケット処理部10−1〜10−nを備えている。
【0054】
各パケット処理部10−1〜10−nは、専用のパケット処理ハードウエア回路等の主信号(パケット)の入出力部を備える。キャリアクラスルータに実装するPPP over SONET/SDH(PoS)回線カードである。
【0055】
フォワーディング処理部81は、経路検索を処理する。
【0056】
ルーティングプロトコル処理部82は、多様なルーティングプロトコルを終端し、最短経路となる経路計算を実施し、経路テーブルを生成する。
【0057】
スイッチ処理部80は、転送スケジューリングを行なうNxNクロスバ方式のスイッチである。
【0058】
各パケット処理部10−1〜10−nのスイッチ側インタフェースは、全ての宛先ポート毎に仮想出力キュー(VOQ:Virtual Output Queue)を備える。これは、理論上100%のスイッチ効率を備えるノンブロッキングスイッチであり、これにより、従来のクロスバスイッチの弱点であったHOL(Head of Line)ブロッキング現象によるスイッチ効率低下の問題が解消される。
【0059】
ルータ内の各スイッチサイクルにおける転送単位は、固定長セルに分割されており、以下この単位をページ(Page)と呼ぶ。これにより、パケット長によらず効率よく、かつ低遅延でスイッチング処理が実現できる。
【0060】
また、転送スケジューリング判定の処理は、スイッチ処理部80に備えられるアロケータにより実行される。このアロケータは、各カードのビッド(Bid)信号(接続を要求するNビットマスク信号)、Inhibit信号(着信禁止を要求するNビットマスク信号)の状態から接続パターンを決定する。
【0061】
スイッチの接続パターンは、固定周期単位に切り替わり、この動作単位をエポック(Epoch)と呼び、アロケータはエポック単位でパイプライン動作を行なう。
【0062】
なお、アロケータは、複数レベルの優先度を設定しており、フォワーディング処理部からのビッド信号は、パケット処理部からのビッド信号よりも高優先処理される。ビッド要求信号の衝突が発生したときは、優先度を加味してその順位を決定する。また、優先度が同じ場合は、シャッフリングを行ない公平性を確保する。
【0063】
図1は、本実施の形態のパケット処理部10の構成を示すブロック図である。この図1を参照して、パケット処理部10の構成とその処理について説明する。
【0064】
図1では、パケット処理部10を、外部からパケットを受信する側のパケット受信側(受信側処理部)と、外部へパケットを送信する側のパケット送信側(送信側処理部)に分けて示している。
【0065】
パケット処理部10のパケット受信側は、プロトコル識別部21、フロー識別及び経路解決部30、装置内ヘッダ付与部22、パケット属性生成部23、VOQ(Virtual Output Queue)アクセス制御部40、メモリ(31、41)を備えている。
【0066】
プロトコル識別部21は、受信した主信号パケットのプロトコルを識別し、PPP(Point to Point Protocol)のリンクフェーズとプロトコルタイプに対応したパケット転送、あるいは廃棄処理を決定する。
【0067】
フロー識別及び経路解決部30は、プロトコル識別部21より転送されたパケットヘッダより、該パケットのフロー(あるいはラベル)を識別し、転送経路と該識別フロー(あるいは、ラベル)に応じた処理方法(宛先タグ情報)をテーブル参照により解決し、装置内ヘッダ付与部22、及びパケット属性生成部23に対して指示する。
【0068】
装置内ヘッダ付与部22は、フロー識別及び経路解決部30の指示により、図11に示す(固定長の)装置内ヘッダをパケットの先頭ページに付与すると共に、フロー識別及び経路解決部30の指示内容によっては、受信パケットのラベル(シムヘッダ)を抜去した後、VOQアクセス制御を行なう。
【0069】
パケット属性生成部23は、フロー識別及び経路解決部30の指示により、該パケットの属性情報を生成してVOQアクセス制御部40へ出力する。
【0070】
パケット処理部10のパケット送信側は、VIQ(Virtual Input Queue)アクセス制御部50、スケジューリング部60、送信パケット処理判定部71、送信パケット組立部72、メモリ(51、61、73)を備えている。
【0071】
スケジューリング部60は、VIQアクセス制御部50より受信したパケット属性情報内に収容された“宛先タグ情報”を元に、該パケットの装置内フロー識別子(Flow_ID)を解決する。そして、そのフロー識別子毎にパケット属性情報をキューイング(メモリに格納)すると共に、ピークレートと平均レートに基づくDual Token Bucket方式によるシェーピング(Shaping)及び優先スケジューリング(によるメモリ読出)を行なう。
【0072】
送信パケット処理判定部71は、スケジューリング部60より受信したパケット属性内に収容されるフロー識別子より、送信パケットに対するラベル化処理方法を決定づける。
【0073】
送信パケット組立部72は、送信パケット処理判定部71が決定したラベル化処理方法に従い、VIQアクセス制御部50からの読み出し制御を行ない、更に読み出した主信号パケットに対してラベル(シムヘッダ)の挿抜又は、ラベル変換処理を行った後、PPPフレームへの組み立て(カプセル化)を行なう。
【0074】
図1に示される、本実施の形態のルータには、複数のテーブル(メモリ31、61、73)を備えている。
【0075】
ここで、図8を参照して、主信号の転送系に着目した場合の各テーブルの構成とその相関関係を説明する。
【0076】
Flow Classifier Table31(フロー分類テーブル)は、CAM(Contents Addressable Memory)検索キーテーブル、CAMヒットエントリーテーブル、FTN(FEC to Next hop)テーブルに展開される。
【0077】
このFlow Classifier Table31は、フロー識別及び経路解決部30により検索が行なわれる。この検索を行なうためには、例えばIPパケットの場合は、入力回線カード内のポート番号とIPヘッダ内の送信IPアドレス、宛先IPアドレス、Diffserv Code Point(DSCP)、プロトコル番号とレイヤ4(TCP/UDP)ヘッダ内の送信ポート番号、宛先ポート番号、の任意組み合わせ等を用いることができ(抽出するフィールドは、図10において網掛け部が対応している)、またラベル化パケットの場合には、入力回線カード内のポート番号、ラベル化パケットのシムヘッダ内のラベルフィールド、EXPフィールドの任意組み合わせ等を用いて検索することができる。そして、この検索により、転送先経路を決定する識別子(FEC_ID)、ポリシング対象となるフローを決定する識別子(PLC_ID)、転送QoSクラスを決定する識別子(CLS_ID)、統計情報カウント単位を規定する識別子(STAT_ID)を解決する。
【0078】
また、この図8のFEC_ID内の“宛先タグ(Dtag)情報”は、スケジューリング部60と接続されるフローテーブル(Flow Table)61のアドレスポインタとしてリンクされている。
【0079】
フローテーブル61は、FEC_IDの“宛先タグ情報”を元に、該パケットの装置内フロー識別子(Flow_ID、フローID)と出力先の物理ポート番号(HWcode)を管理している。
【0080】
フロー識別子は、更に送信パケット制御部70と接続されるアクションテーブル(Action Table)73のアドレスポインタとしてリンクされ、パケットのシムヘッダ処理(シムヘッダのプッシュ/スワップ/ポップ等)を決定する。
【0081】
次に、本実施の形態の動作を説明する。
【0082】
図2は、本実施の形態のパケット処理部のパケット受信側の処理を説明するための図であり、図3は、本実施の形態のパケット処理部のパケット送信側の処理を説明するための図である。この図2、図3に示されるように、本実施の形態のパケット処理部10の動作は、図2に示されるパケット受信側で3つのステップ(ステップ1〜ステップ3)、図3に示されるパケット送信側で3つのステップ(ステップ4〜ステップ6)の6ステップにより説明される。
【0083】
以下、この個々の各ステップにおける処理動作を説明する。
【0084】
まず、図2に示されるパケット受信側の処理(ステップ1〜ステップ3)を説明する。
【0085】
[ステップ1]
パケットを受信すると、まず、プロトコル識別部21は、受信したPPPパケットヘッダのプロトコルIDを参照して、制御パケットであるか、主信号パケットであるかを識別する。
【0086】
この識別処理において、主信号パケットの場合には、そのパケットヘッダをフロー識別及び経路解決部30に送出し、制御パケットの場合には、ボード上に実装されるCPUによりPPPにおけるリンク確立等の処理を実施する。
【0087】
ここで、主信号パケットとは、IPパケット及びMPLSパケット(ラベル化パケット)が該当する。
【0088】
[ステップ2]
次に、フロー識別及び経路解決部30が、プロトコル識別部21から前述したパケットのパケットヘッダを受信する。そして、受信したパケットヘッダ内から複数フィールド(MF:Multi−Field、マルチフィールド)の予め定められた組み合わせのデータを取り出して、これを検索キーとして、Flow Classifier Table31の検索処理を行なう。
【0089】
フロー識別及び経路解決部30は、Flow Classifier Table31のマルチフィールド検索において、下記5つの要素を解決対象とし、これらを解決する。
・Forwarding Equivalent Class Identification(FEC_ID):転送先経路を決定する識別子
・Policing Identification(PLC_ID):ポリシング対象となるフローを決定する識別子
・Class Identification(CLS_ID):転送QoSクラスを決定する識別子
・Statistic Information Counter Identification(STAT_ID):統計情報のカウント単位を規定する識別子
・Pre−defined Color(PCOLOR):ポリシング処理を行なう以前に、パケットに設定されている優先度
【0090】
[ステップ3]
フロー識別及び経路解決部30にて解決された上記の各識別子の情報は、装置内ヘッダ付与部22とパケット属性生成部23に配布される。そして、このそれぞれの処理ブロックにおいて、ページ(Page)及び当該パケットの必要最小限の情報を示すオブジェクト(Object)の所定位置にマッピングされた後、スイッチ処理部80を経由して、当該パケットを送信する側のパケット処理部10まで持ち回る。
【0091】
次に、図3に示されるパケット受信側の処理(ステップ4〜ステップ6)を説明する。以下の処理は、スイッチ処理部80からパケットを転送され当該パケットを送信する側のパケット処理部10における、パケット送信側の処理である。
【0092】
[ステップ4]
スイッチ処理部80を経由して受信したオブジェクトには、パケット受信側で解決した、転送経路と識別フロー(又ラベル)に応じた処理方法を示す“宛先タグ情報”が搭載されている。
【0093】
パケットスケジューリング部60では、この宛先タグ情報を元に、フロー毎のシェーピング(出力規制)処理あるいは、スケジューリング(出力順序決定)処理等のQoS(Quality of Service)制御を行なう。
【0094】
ここで、ルータに要求されるサービスモデルや運用形態に応じて、具備するQoS機構が異なることが想定されるが、この宛先タグ毎にポリシング及びシェーピングのパラメータを予め設定することで、シェーピング及びスケジューリングをラベル単位もしくはIPフロー単位で実施することができる。
【0095】
このため、パケット送信側には、宛先タグ情報から任意のフロー識別子(Flow_ID)を割り当てることを目的としたフローテーブル61を備えている。パケットスケジューリング部60は、このフローテーブル61を、受信した宛先タグ情報を基に検索することにより、フロー識別子(Flow_ID)を取得する。フローテーブル61は、宛先タグをアドレスとして、フロー識別子を管理するテーブル構成である。
【0096】
また、フロー識別子を複数のリンクポインタにて繋ぐ構成にすることにより、1つの宛先タグ値が複数の回線ポートに対するフロー処理を割り当てることも可能となり、一対多(マルチキャスト)転送にも対応することができる。
【0097】
[ステップ5]
送信パケット処理判定部71では、パケットスケジューリング部60で宛先タグ情報を基に変換されたフロー識別子を用いて、そのパケットに対する処理を決定付ける処理を行なう。
【0098】
前述のフロー識別子毎に、パケット処理を決定するためのアクションテーブル73を備えている。アクションテーブル73は、フロー識別子をアドレスとして、パケットのシムヘッダ処理(シムヘッダのプッシュ/スワップ/ポップ等)を設定するラベルアクションエントリ(Label Action entry)を備える。ラベルアクションエントリは、パケットスケジューリング部60からのオブジェクトに含まれるフロー識別子毎に管理されている。
【0099】
送信パケット処理判定部71は、フロー識別子をアドレスとして、アクションテーブル73を引き、ラベルアクションエントリを得ることで、当該パケットに対するアクションシムヘッダのプッシュ/スワップ/ポップ等)を決定する。
【0100】
図9は、本実施の形態のラベルアクションエントリの構成の一例を示す図であり、ラベルアクションエントリのフォーマット(実メモリ上でのイメージ)を示している。
【0101】
図9の例では、ラベルアクションエントリは、15ビットのアクションエントリ(Action entry)と、20ビットのラベルエントリから構成されている。
【0102】
アクションエントリ(Action entry)は、出力シムヘッダに挿入するラベル、EXP、TTLを導き出す目的で使用する。挿入するEXP、TTLの値は、例えば、装置内ヘッダ付与されてパケット受信側よりスイッチ経由で通知される値(図11中OUTEXP、OUTTTL)や、パケット送信側に備えるアクションテーブル73に予め登録されている値や、このいずれかの値を選択して用いることができる。
【0103】
[ステップ6]
アクションテーブル73の表引きにより、ラベルアクションエントリを取得し、パケットに対するアクションを決定付けられると、そのアクションにかなったパケットのシムヘッダ処理(シムヘッダのプッシュ(Push)/スワップ(Swap)/ポップ(Pop)等)を行なう。
【0104】
次に、装置内での転送フォーマットを、それぞれ図面を参照して説明する。図4〜7の4種類の図面が、下記処理のそれぞれに対応している。
図4:入口処理(Ingress処理)[ラベルプッシュ処理]
図5:出口処理(Egress処理)[ラベルポップ処理]
図6:内部処理(Intermediate処理)[ラベルスワップ処理]
(入力パケットのラベル枚数が1枚の場合)
図7:内部処理(Intermediate処理)[ラベルスワップ処理]
(入力パケットのラベル枚数が2枚以上の場合)
【0105】
まず、図4:入口処理(Ingress処理)[ラベルプッシュ処理]における装置内転送形態ついて説明する。本処理は、POS LC(Line Card)のマルチフィールド(MF:Multi−Field)検索に一致するIPパケットが入力した場合、直接宛先のPOSカードに転送するべく処理を行なう。
【0106】
パケット受信側では、マルチフィールド検索により宛先タグ番号を解決する。そして、当該パケットを送信する側のパケット処理部10のパケット送信側では、その宛先タグ番号を利用してIPパケットをMPLSパケットにカプセル化する(ラベルプッシュ)。
【0107】
次に、図5:出口処理(Egress処理)[ラベルポップ処理]について説明する。本処理は、POS LCのラベル検索において出口処理を決定する。
【0108】
出口処理において、パケット受信側で宛先タグ番号を解決することは、入口処理と同等であるが、パケット受信側で入力ラベル(シムヘッダ)を取り外してパケット送信側へ転送する点が入口処理と異なる。
【0109】
当該パケットを送信する側のパケット処理部10のパケット送信側では、到着した宛先タグ番号を利用して、パケットをスルー(シムヘッダに関するアクションなし)すればよいことになる。
【0110】
次に、図6、図7:内部処理(Intermediate処理)[ラベルスワップ処理]について説明する。図6、図7では、受信するラベル化パケットにおいて付加されているラベル枚数(ラベルのスタック枚数)が異なっているが装置内部の処理は同様のため、両者を統括して説明する。
【0111】
本処理は、POS LCのラベル検索においてラベルのスワップ処理を決定している。このスワップ処理において、パケット受信側で宛先タグ番号を解決することは、入口、及び出口処理と同等であり、またパケット受信側で入力ラベル(シムヘッダを1枚分)を取り外してパケット送信側へ転送する点は、出口処理と同等である。
【0112】
当該パケットを送信する側のパケット処理部10のパケット送信側では、到着した宛先タグ番号を利用して、パケット受信側にて1枚ポップされたパケットに対してシムヘッダを1枚挿入することを決定し、結果として、ラベルが付け換えられることとなる。
【0113】
なお、シムヘッダのEXP及びTTLフィールドは、パケット受信側において既に解決され、装置内ヘッダ内に搭載されている。このため、パケット送信側では、これらの情報を実際に付与するシムヘッダにコピーすればよい。
【0114】
以上説明された、本実施の形態のルータ100(LSR、ラベル化パケット処理装置)内において、個々のシムヘッダ処理(プッシュ、スワップ、ポップ)を行なうにあたり、パケット受信側及びパケット送信側の役割は、以下の表1に示されるように整理することができる。
【0115】
【表1】
【0116】
このように本実施の形態のルータ100では、パケット受信側(inbound側)のインタフェース回線カードでは、受信したパケットがMPLSパケットであると判断した場合は、当該装置がMPLSドメイン内の境界であるか内部であるかに関係なく、先頭ラベルを取り外す。
【0117】
そして、受信側のインタフェース回線カードは、受信したパケットのヘッダ情報を検索キーとして、該パケットに対するフローの識別、ポリシングを実行し、送信側の転送アクションを決定するための情報(宛先タグ:Dtag)、及び受信側に閉じたアクション情報を決定するための識別テーブルを配備する。前記テーブルの参照結果として、解決した宛先タグ情報、及びアクション情報を固定長の装置内ヘッダ、及び該パケットの必要最小限の情報を示すオブジェクトと呼ばれる固定長セルに収容して装置内転送する。前述の宛先タグ情報は、装置内においてローカルに使用され、送信側での処理方法を決定するポインタ用途として、同じ転送ルールを持つ集合体であるFEC(Forwarding Equivalence Class)と一対一に対応付けられる。またアクション情報は、受信側で該パケットの扱い(従来方法/カットスルー/廃棄等)を指定する目的で使用される。
【0118】
そして、パケット送信側(outbound側)のインタフェース回線カードは、オブジェクトに含まれる宛先タグ情報を基に当該パケットフローを識別して、パケット転送のシェーピング/スケジューリングを実行する。このため、宛先タグ情報をキーとして、出力シムヘッダ(MPLSラベル又はVPNラベル)を決定するためのアクションテーブルを備えて、前記解決ラベル処理方法(プッシュ、スワップ、ポップ処理)を決定する。
【0119】
以上、説明したように本実施の形態のルータ100は、IPパケット及びMPLSパケットのそれぞれを効率よく転送することができ、更に、IP転送系のみに対応する従来のルータから、低コストかつ簡易な作業により製造することができる。
【0120】
なお、本実施の形態のルータ100は、パケット処理部10におけるプロトコル識別部21、装置内ヘッダ付与部22、パケット属性生成部23、フロー識別及び経路解決部30、スケジューリング部60、送信パケット制御部70、送信パケット処理判定部71、送信パケット組立部72等の機能や、その他の機能をハードウエア的に実現することは勿論として、各機能を備えるコンピュータプログラムを、コンピュータ処理装置のメモリにロードされることで実現することができる。このコンピュータプログラムは、磁気ディスク、半導体メモリその他の記録媒体90に格納される。そして、その記録媒体からコンピュータ処理装置にロードされ、コンピュータ処理装置の動作を制御することにより、上述した各機能を実現する。
【0121】
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。
【0122】
【発明の効果】
以上説明したように本発明のルータ(LSR)によれば、以下のような効果が達成される。
【0123】
パケット受信側(inbound側)のインタフェースカードは、受信したパケットをMPLSパケットであると判断した場合は、そのノードが境界(出口)あるいは内部に関係なく、入力ラベルを取り外す。
これにより、以下の効果が得られる。
【0124】
入力パケットのヘッダ情報(ラベル化パケット内の入力ラベル、あるいはIPパケットのヘッダ)と入力物理ポート番号の組合わせ情報を元に転送先を解決する際に、送信側の転送アクションである宛先タグに一旦変換してルータ内を持ち回ることができる。これにより、汎用的なパケットスイッチ機構を備えるのみの従来のルータにおいても、スイッチ処理部を改版する必要なく、パケット処理部の簡易な改造のみでLSRの機能を実現することができる。このため、LSRの装置コストを下げ、MPLS網を容易に設置することができる。
【0125】
装置内転送において、MPLSの出力ラベルを持ち回る必要がないため、例えば複数のラベルがプッシュされる場合でも、装置内における転送オーバーヘッドは固定長でよい。そのため、装置内で必要となる転送帯域の変動を抑えることができる。また、これに付随して入力パケット(がラベル化パケットであっても、そうでなくとも)に依存せず、スイッチリソースを効率よく利用できると共に、トラヒックの定量的な制御が可能となり、運用上の負荷を軽減できる。
【0126】
また、IPパケットの処理(フォワーディングエンジンカードによる経路解決)と、MPLSパケットのカットスルー処理(回線カードによる経路解決)の処理を切り替えるための機構を、簡素化できる。
【0127】
パケット送信側(outbound側)のインタフェースカードは、オブジェクトに含まれる宛先タグ情報でフロー識別して、パケット転送のシェーピング/スケジューリングを実行し、宛先タグ情報を装置内における動作規定ポインタとして、MPLSラベル/VPNラベルを決定すると共に、その解決ラベル処理方法(プッシュ、スワップ、ポップ処理)を決定する。
これにより、以下の効果が得られる。
【0128】
MPLSパケット、IPパケットが混在した運用形態においても、装置内では、宛先タグ情報のみの一元管理で該パケットの処理アクションが決定付けられるため、装置トータルでの管理が簡素化され、出力処理が容易となる。また、MPLSをサポートしていない回線カードからのパケット入力でも、ラベルプッシュ相当のMPLSへのカプセル化が可能である。マルチキャスト転送等の付加的サービスを実現する場合においても、既存のアーキテクチャの延長で転送処理が実現可能である。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態のパケット処理部の構成を示すブロック図である。
【図2】本発明の第1の実施の形態のパケット処理部のパケット受信側の処理を説明するための図である。
【図3】本発明の第1の実施の形態のパケット処理部のパケット送信側の処理を説明するための図である。
【図4】本発明の第1の実施の形態によるルータの、MPLSドメイン内に入るパケットの転送処理を示す図である。
【図5】本発明の第1の実施の形態によるルータの、MPLSドメイン内から外部に出るパケットの転送処理を示す図である。
【図6】本発明の第1の実施の形態によるルータの、MPLSドメイン内において転送されるパケットの、ラベル枚数が1枚の場合の転送処理を示す図である。
【図7】本発明の第1の実施の形態によるルータの、MPLSドメイン内において転送されるパケットの、ラベル枚数が2枚以上の場合の転送処理を示す図である。
【図8】本発明の第1の実施の形態のパケット処理部内の、各テーブルの構成を説明するための図である。
【図9】本発明の第1の実施の形態のラベルアクションエントリの構成の一例を示す図である。
【図10】本発明の第1の実施の形態のパケットヘッダの構成の一例を示す図である。
【図11】本発明の第1の実施の形態の装置内ヘッダの構成の一例を示す図である。
【図12】ルータの装置構成を示すブロック図である。
【図13】MPLSによるパケットの転送を説明するための図である。
【図14】MPLSによるパケットの転送を説明するための図である。
【図15】MPLSのシムヘッダ(Shim−Header)の構成の一例を示す図である。
【符号の説明】
100 LSR(Label Switch Router)
10 パケット処理部
21 プロトコル識別部
22 装置内ヘッダ付与部
23 パケット属性生成部
30 フロー識別及び経路解決部
31 Flow Classifier Table
40 VOQアクセス制御部
50 VIQアクセス制御部
60 スケジューリング部
61 フローテーブル
70 送信パケット制御部
71 送信パケット処理判定部
72 送信パケット組立部
73 アクションテーブル
80 スイッチ処理部
81 フォワーディング処理部
82 ルーティングプロトコル処理部
200 MPLSドメイン
201 入口境界LSR
202 内部LSR
203 出口境界LSR
210 LSP(Label Switch Path)
Claims (15)
- パケットを中継するルータにおいて、
パケットを送受する複数のパケット処理部と、
パケットを受信した前記パケット処理部から、当該パケットを送信する前記パケット処理部へ、当該パケットを転送するスイッチ処理部を備え、
前記パケット処理部は、
外部から受信したパケットがIPパケット及びMPLSパケットのいずれの場合においても、当該パケットに対し装置内ヘッダを付加して、IPパケットの装置内転送時の形式に当該パケットを変換し、前記変換されたパケットを前記スイッチ処理部に送ることにより、IPパケット及びMPLSパケットを中継すると共に、
さらに、前記パケット処理部は、
外部からパケットを受信する側の受信側処理部と、
外部へパケットを送信する側の送信側処理部を備え、
前記受信側処理部は、
外部から受信したパケットの情報を解析して、当該パケットの転送先経路及び当該パケットに対し実行すべき処理方法を識別し、前記装置内ヘッダを前記転送経路及び前記処理方法の情報を含めて生成し、当該パケットに前記生成した装置内ヘッダを付加して前記スイッチ処理部に送り、
前記スイッチ処理部は、
各前記パケット処理部の受信側処理部から送られるパケットを、当該パケットの前記装置内ヘッダにおいて指定された、当該パケットの転送先経路である前記パケット処理部の送信側処理部へ転送し、
前記送信側処理部は、
前記スイッチ処理部から転送されるパケットを、前記装置内ヘッダを取り外し、当該装置内ヘッダにおいて指定された当該パケットの処理方法に基づいて処理することを特徴とするルータ。 - 前記受信側処理部は、
外部から受信したパケットがMPLSパケットでありかつラベルを備える場合には、その先頭のラベルを取り外した後に、前記装置内ヘッダを付加して前記スイッチ処理部に送り、
前記送信側処理部は、
前記スイッチ処理部から転送されたパケットがMPLSパケットである場合には、当該パケットに対し付加するラベルの有無及びその枚数を決定し、外部に送信するパケットを生成することを特徴とする請求項1に記載のルータ。 - 前記送信側処理部は、
前記スイッチ処理部から転送されたパケットがMPLSパケットである場合において、MPLSドメインの入口の境界である場合には、受信時よりも1枚多いラベル枚数により外部に送信するパケットを生成し、MPLSドメインの内部である場合には、受信時と同じラベル枚数により外部に送信するパケットを生成し、MPLSドメインの出口の境界である場合には、受信時とよりも1枚少ないラベル枚数により外部に送信するパケットを生成することを特徴とする請求項2に記載のルータ。 - 前記受信側処理部は、
受信したパケットが、IPパケットとMPLSパケットのいずれであるのかを識別するプロトコル識別部と、
前記受信したパケットのパケットヘッダに示される情報を基に、当該パケットのフローを識別し転送先経路を解決するフロー識別及び経路解決部と、
前記フロー識別及び経路解決部の指示に基づいて、前記装置内ヘッダを生成し付与する装置内ヘッダ付与部と、
当該パケットの属性情報を生成するパケット属性生成部を備えることを特徴とする請求項1から請求項3のいずれか一つに記載のルータ。 - 前記送信側処理部は、
前記スイッチ処理部から送られるパケットのシェーピング及び優先スケジューリングを処理するスケジューリング部と、
当該パケットに対し付加するラベルの有無及びその枚数を決定する送信パケット処理判定部と、
前記送信パケット処理判定部の決定に基づいて、送信するパケットを生成する送信パケット組立部を備えることを特徴とする請求項1から請求項4のいずれか一つに記載のルータ。 - 経路検索を処理するフォワーディング処理部と、
ルーティングプロトコルを終端し、経路計算を処理し、経路テーブルを生成するルーティングプロトコル処理部を備えることを特徴とする請求項1から請求項5のいずれか一つに記載のルータ。 - 前記パケット処理部における前記スイッチ処理部側のインタフェースは、
全ての宛先ポート毎に仮想出力キューを備えることを特徴とする請求項1から請求項6のいずれか一つに記載のルータ。 - パケットを中継するルータのパケット交換方法において、
前記ルータは、パケットを送受する複数のパケット処理部と、パケットを受信した前記パケット処理部から当該パケットを送信する前記パケット処理部へ当該パケットを転送するスイッチ処理部を備え、
前記パケット処理部において、
外部から受信したパケットがIPパケット及びMPLSパケットのいずれの場合においても、当該パケットに対し装置内ヘッダを付加して、IPパケットの装置内転送時の形式に当該パケットを変換し、前記変換されたパケットを前記スイッチ処理部に送ることにより、IPパケット及びMPLSパケットを中継すると共に、
前記パケット処理部は、外部からパケットを受信する側の受信側処理部と、外部へパケットを送信する側の送信側処理部を備え、
前記受信側処理部において、
外部から受信したパケットの情報を解析して、当該パケットの転送先経路及び当該パケットに対し実行すべき処理方法を識別し、前記装置内ヘッダを前記転送経路及び前記処理方法の情報を含めて生成し、当該パケットに前記生成した装置内ヘッダを付加して前記スイッチ処理部に送り、
前記スイッチ処理部において、
各前記パケット処理部の受信側処理部から送られるパケットを、当該パケットの前記装置内ヘッダにおいて指定された、当該パケットの転送先経路である前記パケット処理部の送信側処理部へ転送し、
前記送信側処理部において、
前記スイッチ処理部から転送されるパケットを、前記装置内ヘッダを取り外し、当該装置内ヘッダにおいて指定された当該パケットの処理方法に基づいて処理することを特徴とするパケット交換方法。 - 前記受信側処理部において、
外部から受信したパケットがMPLSパケットでありかつラベルを備える場合には、その先頭のラベルを取り外した後に、前記装置内ヘッダを付加して前記スイッチ処理部に送り、
前記送信側処理部において、
前記スイッチ処理部から転送されたパケットがMPLSパケットである場合には、当該パケットに対し付加するラベルの有無及びその枚数を決定し、外部に送信するパケットを生成することを特徴とする請求項8に記載のパケット交換方法。 - 前記送信側処理部において、
前記スイッチ処理部から転送されたパケットがMPLSパケットである場合において、MPLSドメインの入口の境界である場合には、受信時よりも1枚多いラベル枚数により外部に送信するパケットを生成し、MPLSドメインの内部である場合には、受信時と同じラベル枚数により外部に送信するパケットを生成し、MPLSドメインの出口の境界である場合には、受信時とよりも1枚少ないラベル枚数により外部に送信するパケットを生成することを特徴とする請求項9に記載のパケット交換方法。 - 経路検索を処理するフォワーディング処理ステップと、
ルーティングプロトコルを終端し、経路計算を処理し、経路テーブルを生成するルーティングプロトコル処理ステップを備えることを特徴とする請求項8から請求項10のいずれか一つに記載のパケット交換方法。 - コンピュータを制御することにより、パケットを中継するルータのパケットの交換を処理するパケット交換プログラムにおいて、
前記ルータは、パケットを送受する複数のパケット処理部と、パケットを受信した前記パケット処理部から当該パケットを送信する前記パケット処理部へ当該パケットを転送するスイッチ処理部を備え、
前記パケット処理部において、
外部から受信したパケットがIPパケット及びMPLSパケットのいずれの場合においても、当該パケットに対し装置内ヘッダを付加して、IPパケットの装置内転送時の形式に当該パケットを変換し、前記変換されたパケットを前記スイッチ処理部に送る処理を実行させると共に、
前記パケット処理部は、外部からパケットを受信する側の受信側処理部と、外部へパケットを送信する側の送信側処理部を備え、
前記受信側処理部において、
外部から受信したパケットの情報を解析して、当該パケットの転送先経路及び当該パケットに対し実行すべき処理方法を識別し、前記装置内ヘッダを前記転送経路及び前記処理方法の情報を含めて生成し、当該パケットに前記生成した装置内ヘッダを付加して前記スイッチ処理部に送る処理を実行させ、
前記スイッチ処理部において、
各前記パケット処理部の受信側処理部から送られるパケットを、当該パケットの前記装置内ヘッダにおいて指定された、当該パケットの転送先経路である前記パケット処理部の送信側処理部へ転送する処理を実行させ、
前記送信側処理部において、
前記スイッチ処理部から転送されるパケットを、前記装置内ヘッダを取り外し、当該装置内ヘッダにおいて指定された当該パケットの処理方法に基づく処理を実行させることを特徴とするパケット交換プログラム。 - 前記受信側処理部において、
外部から受信したパケットがMPLSパケットでありかつラベルを備える場合には、その先頭のラベルを取り外した後に、前記装置内ヘッダを付加して前記スイッチ処理部に送る処理を実行させ、
前記送信側処理部において、
前記スイッチ処理部から転送されたパケットがMPLSパケットである場合には、当該パケットに対し付加するラベルの有無及びその枚数を決定し、外部に送信するパケットを生成する処理を実行させることを特徴とする請求項12に記載のパケット交換プログラム。 - 前記送信側処理部において、
前記スイッチ処理部から転送されたパケットがMPLSパケットである場合において、MPLSドメインの入口の境界である場合には、受信時よりも1枚多いラベル枚数により外部に送信するパケットを生成し、MPLSドメインの内部である場合には、受信時と同じラベル枚数により外部に送信するパケットを生成し、MPLSドメインの出口の境界である場合には、受信時とよりも1枚少ないラベル枚数により外部に送信するパケットを生成する処理を実行させることを特徴とする請求項13に記載のパケット交換プログラム。 - 経路検索を処理するフォワーディング処理と、
ルーティングプロトコルを終端し、経路計算を処理し、経路テーブルを生成するルーティングプロトコル処理を実行させることを特徴とする請求項12から請求項14のいずれか一つに記載のパケット交換プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001037665A JP3610913B2 (ja) | 2001-02-14 | 2001-02-14 | ルータとそのパケット交換方法、及びパケット交換プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001037665A JP3610913B2 (ja) | 2001-02-14 | 2001-02-14 | ルータとそのパケット交換方法、及びパケット交換プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002247086A JP2002247086A (ja) | 2002-08-30 |
JP3610913B2 true JP3610913B2 (ja) | 2005-01-19 |
Family
ID=18900754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001037665A Expired - Fee Related JP3610913B2 (ja) | 2001-02-14 | 2001-02-14 | ルータとそのパケット交換方法、及びパケット交換プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3610913B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015537429A (ja) * | 2012-10-10 | 2015-12-24 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | Mplsベースの仮想プライベートクラウドネットワーキングのためのipマルチキャストサービス退去処理 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1416681A1 (en) * | 2002-10-29 | 2004-05-06 | Alcatel | Method for traffic engineering and ingress router adapted to perform such a method |
KR100570836B1 (ko) | 2003-10-14 | 2006-04-13 | 한국전자통신연구원 | 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 |
US20050286512A1 (en) * | 2004-06-28 | 2005-12-29 | Atul Mahamuni | Flow processing |
JP4894736B2 (ja) * | 2006-12-27 | 2012-03-14 | 日本電気株式会社 | レイヤ3スイッチ装置及びその制御方法 |
KR101500251B1 (ko) * | 2010-12-17 | 2015-03-06 | 닛본 덴끼 가부시끼가이샤 | 통신 시스템, 노드, 패킷 전송 방법 및 프로그램을 기록한 컴퓨터 판독가능 기록 매체 |
JP5961745B2 (ja) * | 2013-02-18 | 2016-08-02 | 日本電信電話株式会社 | 通信装置またはパケット転送方法 |
US9325609B2 (en) * | 2013-08-23 | 2016-04-26 | Futurewei Technologies, Inc. | Segmented source routing in a network |
CN115225586B (zh) * | 2022-07-14 | 2024-04-26 | 中科驭数(北京)科技有限公司 | 数据包发送方法、装置、设备及计算机可读存储介质 |
-
2001
- 2001-02-14 JP JP2001037665A patent/JP3610913B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015537429A (ja) * | 2012-10-10 | 2015-12-24 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | Mplsベースの仮想プライベートクラウドネットワーキングのためのipマルチキャストサービス退去処理 |
Also Published As
Publication number | Publication date |
---|---|
JP2002247086A (ja) | 2002-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7520170B2 (ja) | パケット処理方法および装置、デバイス、ならびにシステム | |
US7953885B1 (en) | Method and apparatus to apply aggregate access control list/quality of service features using a redirect cause | |
US6977932B1 (en) | System and method for network tunneling utilizing micro-flow state information | |
CN100488157C (zh) | 数据通信交换机的服务质量的形成和提供的方法和装置 | |
Keshav et al. | Issues and trends in router design | |
EP1645086B1 (en) | Method and system for packet labeling, queuing, scheduling, and encapsulation | |
US6643292B2 (en) | Efficient packet data transport mechanism and an interface therefor | |
US6647428B1 (en) | Architecture for transport of multiple services in connectionless packet-based communication networks | |
US7391778B2 (en) | Label switching router having internal channel share function over ATM, and method for sharing internal channel using the same | |
US8064344B2 (en) | Flow-based queuing of network traffic | |
JP3947471B2 (ja) | ネットワークトンネリング | |
US6473434B1 (en) | Scaleable and robust solution for reducing complexity of resource identifier distribution in a large network processor-based system | |
EP1650908A2 (en) | Internal load balancing in a data switch using distributed network process | |
US8284789B2 (en) | Methods and apparatus for providing dynamic data flow queues | |
WO1999034558A1 (fr) | Repeteur mta et reseau le comprenant | |
JP2001237876A (ja) | Ip仮想プライベート網の構築方法及びip仮想プライベート網 | |
JP2013009406A (ja) | インターネットにアクセスする加入者への所望のサービス・ポリシーの提供 | |
JP2005341591A (ja) | 仮想プライベートネットワーク、マルチサービスプロビジョニングプラットフォーム及び方法 | |
JP3610913B2 (ja) | ルータとそのパケット交換方法、及びパケット交換プログラム | |
US20050135418A1 (en) | Multiplexing of control and data over an HTTP connection | |
JP4451389B2 (ja) | 仮想イーサネットmacスイッチング | |
US7061919B1 (en) | System and method for providing multiple classes of service in a packet switched network | |
WO2002098821A2 (en) | Method of addressing and routing data | |
KR20080021491A (ko) | 차등화 서비스 엠피엘에스망에서 네트워크 프로세서를이용한 플로우별 패킷 처리 방법 | |
JP2023532737A (ja) | パケット処理方法およびネットワークデバイス |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040623 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040630 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040830 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040928 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041011 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071029 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081029 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091029 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091029 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101029 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111029 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121029 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131029 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |