JP2004193644A - Mplsにおけるルータおよびパス設定方法およびネットワーク - Google Patents
Mplsにおけるルータおよびパス設定方法およびネットワーク Download PDFInfo
- Publication number
- JP2004193644A JP2004193644A JP2002355369A JP2002355369A JP2004193644A JP 2004193644 A JP2004193644 A JP 2004193644A JP 2002355369 A JP2002355369 A JP 2002355369A JP 2002355369 A JP2002355369 A JP 2002355369A JP 2004193644 A JP2004193644 A JP 2004193644A
- Authority
- JP
- Japan
- Prior art keywords
- router
- mpls
- information
- label
- path
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】MPLSの多数のパスを設定する場合にルータのCPUの負荷の軽減とパス設定時間の短縮を図る。ルータに搭載するメモリ量を削減する。
【解決手段】ルーティングプロトコルを拡張し、ルーティングプロトコルを用いてMPLSのラベル付きパケットを転送するために用いるMPLS転送表の作成に必要な情報を広告させ、ルーティングプロトコルが広告する情報を元にMPLS転送表の作成を行う。
【選択図】 図1
【解決手段】ルーティングプロトコルを拡張し、ルーティングプロトコルを用いてMPLSのラベル付きパケットを転送するために用いるMPLS転送表の作成に必要な情報を広告させ、ルーティングプロトコルが広告する情報を元にMPLS転送表の作成を行う。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、通信網に収容されるパスまたはコネクションの設定を行う方法および装置に関する。本発明は、パケットに固定長のラベルを付与してパケットの転送方路を決定することにより通信網内のパケット転送を実現するMPLS(MultiProtocol Label Switching)ネットワークに利用する。
【0002】
【従来の技術】
近年、インターネットやLANの急速な普及から、IPトラヒックを含めたデータトラヒックが指数関数的に増加している。トラヒックの増加に対応するため、バックボーンネットワークにおける高速なIPパケットの転送と高度なサービスを提供するメカニズムが求められている。このような要求に対応するため、これまでにMPLSが提案されている。
【0003】
MPLSは、転送するパケットに固定長のラベルを付与し、このラベルをもとに通信網内の各ノードでは転送する方路を決定する。このMPLSをIPバックボーンネットワークに導入することにより高速なIP転送と高度なTraffic Engineeringが可能となる。
MPLSネットワークにおいてパケットを転送するためには事前にパス設定を行う必要があるが、これを行うためにはルーティングプロトコルでネットワークのトポロジ情報を収集し、CR−LDPやRSVP−TE等のMPLSシグナリングプロトコルによってMPLSのパスを設定する(例えば、非特許文献1、2、3参照)。
【0004】
【非特許文献1】
宮村 崇、栗本 崇、青木 道宏,“A Scalable Multipath Algorithum in Hierachical MPLS Networks”,Proc.of WTC/ISS2002.
【非特許文献2】
R.Coltun,“The OSPF Opaque LSA Option”,IETF RFC2370.
【非特許文献3】
B.S.Davie and Y.Rekhter,“MPLS:Technology and Applications”,Morgan Kaufmann Publisher,2002.
【0005】
【発明が解決しようとする課題】
通常、各リンクで使用するMPLSラベルの値はそのリンクで固有の値であれば基本的に制限がなく、対向するルータ同士でシグナリングプロトコルを用いて決定する。
【0006】
図12は従来例を説明するためのネットワークの構成例を示す図であるが、例えば、図12のようにMPLSを用いてルータ1がルータ3、ルータ4にパケットを送信するケースを考える。ルータ2はルータ1から受信したパケットの宛先がルータ3かルータ4か、ラベルを見て判断する。そのため、ルータ1とルータ2の間であらかじめ、各ラベルの値と送信先をシグナリングプロトコル等を用いて決定する必要があり、MPLSではパス設定するためにはシグナリングは不可欠である。
【0007】
しかし、多数のパスを収容する大規模なMPLSネットワークでは、パスを設定する際にシグナリングメッセージが大量に発生するため、ルータのCPU負荷が増大し、パス設定時間が増大するという問題点がある。
【0008】
また、ルータのCPU資源の大半をシグナリングプロトコルが消費するため、他のプロトコルや装置管理等の処理ができなくなるという問題点が存在する。
【0009】
また、ルーティングプロトコルとシグナリングプロトコルを常時動作させる必要があるため、必要とするCPUの処理能力やメモリ量が大きい点も問題である。
【0010】
本発明は、このような背景に行われたものであって、シグナリングプロトコルを用いることなくMPLSのパス設定が可能となるため、多数のパスを設定するような場合にルータのCPUの負荷の軽減とパス設定時間の短縮が図れ、また、各ルータにシグナリングプロトコルを実装する必要がないため、ルータに搭載するメモリ量を削減することができるルータおよびパス設定方法およびネットワークを提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明では、ルーティングプロトコルを拡張し、ルーティングプロトコルを用いてMPLSのラベル付きパケットを転送するために用いるMPLS転送表の作成に必要な情報を広告させ、ルーティングプロトコルが広告する情報を元にMPLS転送表の作成を行うことを特徴とする。
【0012】
すなわち、本発明の第一の観点は、MPLSネットワークに設置されたルータであって、本発明の特徴とするところは、ルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する手段を備えたところにある。
【0013】
前記付加する手段は、隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する手段を備えたり、あるいは、前記付加する手段は、隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する手段を備えることが望ましい。
【0014】
自他の広告情報に基づき宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表を作成する手段を備えることが望ましい。
【0015】
前記MPLSラベルの一例として、前記ポートを識別可能な情報を含むことにより、例えば、目的の宛先アドレスに到達するために通過するルータのポート番号を認識することができる。あるいは、前記MPLSラベルの一例として、ネットワーク内でルータを識別可能な情報と前記ポートを識別可能な情報とを含むことにより、例えば、目的の宛先アドレスに到達するために通過するルータおよび当該ルータのポート番号を認識することができる。
【0016】
前者の例では、宛先アドレスとそこに行くためのポート番号が認識できるので、とりあえず、MPLSパスを設定することができる。後者の例では、宛先アドレスとそこに行くためのポート番号に加えてルータが認識できるので、ラベル付きパケットが誤ったルータに誤配された場合にはこれを検出することができる。
【0017】
例えば、前記MPLS転送表を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択する手段と、当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせる手段と、当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送する手段とを備えることにより、MPLSによるパケット転送を実現することができる。
【0018】
また、ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータが前記MPLS転送表を作成する手段を有することを広告する手段を備え、当該広告により前記MPLS転送表を作成する手段を有することを確認したルータに対するルーティングプロトコルにおける広告情報に前記付加する手段によりMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する手段を備えれば、MPLSによるパケット転送が可能な能力を持つルータと持たないルータとを区別し、無効となる広告情報を無くすことができるため、効率の良い広告を行うことができる。
【0019】
また、MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、前記MPLS転送表を作成する手段は、自他の広告情報に基づき1つの宛先アドレスに対応する複数のMPLSラベルの対応関係を記録したMPLS転送表を作成する手段を備え、当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替える手段を備えれば、障害箇所を迂回する経路によりパケット転送が行えるため、信頼性の高いMPLSネットワークを実現することができる。
【0020】
本発明の第二の観点は、MPLSネットワークにおけるパス設定方法であって、本発明の特徴とするところは、ルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加するところにある。
【0021】
例えば、隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する、あるいは、隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する。
【0022】
自他の広告情報に基づき宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表を作成することが望ましい。
【0023】
このとき、例えば、前記MPLSラベルには、前記ポートを識別可能な情報を含む、あるいは、前記MPLSラベルには、ネットワーク内でルータを識別可能な情報と前記ポートを識別可能な情報とを含む。
【0024】
前記MPLS転送表を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択し、当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせ、当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送すれば、MPLSによるパケット転送を実現することができる。
【0025】
また、ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータが前記MPLS転送表を作成する能力を有することを広告し、当該広告により前記MPLS転送表を作成する能力を有することを確認したルーティングに対するルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加することにすれば、無効となる広告を無くすことができ、効率の良い広告を行うことができる。
【0026】
また、MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、自他の広告情報に基づき1つの宛先アドレスに対応する複数のMPLSラベルの対応関係を記録したMPLS転送表を作成し、当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替えることにすれば、障害箇所を迂回した経路を速やかに設定でき、信頼性の高いMPLSネットワークを実現することができる。
【0027】
本発明の第三の観点は、本発明のルータを備えたことを特徴とするMPLSネットワークである。
【0028】
【発明の実施の形態】
本発明実施例のルータを図1、図3、図7、図11を参照して説明する。図1は本実施例のルータのブロック構成図である。図3、図7、図11は本実施例のMPLS転送表の構成例を示す図である。
【0029】
本実施例は、MPLSネットワークに設置されたルータであって、本実施例の特徴とするところは、図1に示す広告部11から送出されるルーティングプロトコルにおける広告情報(図13)にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加するMPLS情報付加部12を備えたところにある。この広告内容を図2に示す。
【0030】
MPLS情報付加部12は、図3に示すように、隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する。あるいは、図7に示すように、MPLS情報付加部12は、隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する。
【0031】
すなわち、自他の広告情報に基づき、図3および図7に示すような、宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表14を作成するMPLS転送表作成部13を備える。MPLSラベルには、図3に示すように、ポートを識別可能な情報としてのポート番号を含む。あるいは、MPLSラベルには、図7に示すように、ネットワーク内でルータを識別可能な情報とポートを識別可能な情報とを含む。
【0032】
このようなMPLS転送表14を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択し、当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせるMPLSパケット生成部15と、当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送するMPLSパケット処理部16とを備える。
【0033】
また、MPLS情報付加部12は、ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータがMPLS転送表作成部3を有することを広告部11により広告(これを能力広告という)し、MPLS情報付加部12は、当該能力広告によりMPLS転送表作成部13を有することを確認したルータに対するルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する。
【0034】
また、MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、MPLS転送表作成部13は、自他の広告情報に基づき、図11に示すように、1つの宛先アドレスに対応する複数のMPLSラベル(プライマリ、セカンダリ)の対応関係を記録したMPLS転送表を作成し、MPLSパケット生成部15は、当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替える。
【0035】
以下では、本実施例をさらに詳細に説明する。
【0036】
通常のルーティングプロトコルでは、広告部11は、図13のように情報を広告するルータのアドレスと自身が接続しているルータのインタフェースのIPアドレス(またはルータID)とそのルータまでのコスト(距離)を含んだ情報を広告する。
【0037】
本実施例では、図2のように広告部11が従来広告している情報に加えて、MPLS情報付加部12により、接続しているルータのポート番号やラインカード番号のようなルータ内部の物理的な情報をMPLSラベルの値にエンコードして広告する。つまり、各ルータのポート番号やラインカード番号とMPLSラベルの値を一対一で対応させる。通常のOSPFと同様に自ルータの接続構成に変化が生じるとこの情報を広告する。
【0038】
各ルータのMPLS転送表作成部13は、上述の情報を含んだメッセージを受信すると、それを元にMPLS転送表14を作成する。図3はMPLS転送表14の一例である。図3のようにMPLS転送表作成部13はパケットの宛先アドレスと付与すべきラベルが対応付けられた表を作成する。
【0039】
このMPLS転送表14の作成方法について説明する。MPLS転送表作成部13は、まず、通常のルーティングプロトコルを用いてネットワーク全体のトポロジを作成し、Dijkstraアルゴリズム等の最短経路算出アルゴリズムを用いて宛先までに通過するルータを特定する。次に広告された情報を元に通過するポート番号を求める。
【0040】
例えば、図4のようなネットワーク構成の場合で、ルータ1が宛先アドレスA宛てのMPLS転送表14を作成する例を考える。まず、最短経路算出アルゴリズムを用いて、通過するルータを求める。次に各ルータが広告した情報を元に付与すべきラベルを特定する。この場合に、ルータ1からアドレスAまでの間にルータ2とルータ3を通過する。ルータ2のポート3番がルータ3と接続しており、ルータ3はポート2番を通してアドレスAと接続している。ルータ1は宛先アドレスに近いラベル値を順に並べることでMPLS転送表14を作成する。この場合には、ポート3番、ポート2番の順に通過するので、図3のようにアドレスAに対応するMPLS転送表14内のラベル値は3、2となる。
【0041】
図5は転送するラベル付きパケットの例である。ルータ1にアドレスA宛てのパケットが到着した場合に、MPLSパケット生成部15は、まず、MPLS転送表14を検索し、付与すべきラベル値が3と2であることを確認し、到着したパケットにラベル値3と2の2つのラベルを多段に付与する。
【0042】
次に、ルータ1はラベル付きパケットをルータ2に送信する。ラベル付きパケットを受信したルータ2のMPLSパケット処理部16は、最も上位にあるラベルの値を元に、出力すべき自ルータのポート番号を求めてから、最上位のラベルを削除(Hop)して、出力先ポートにパケットを送出する。
【0043】
次に、ルータ3がこのパケットを受信すると、MPLSパケット処理部16は、同様に最上位のラベルから出力先のポート番号を求めて、このラベルを削除した後に、出力先ポートへと出力する。このようにして、ルータ1からアドレスAが属するネットワークまでパケットが送信される。
【0044】
ここでは、さらに具体的な実施例として、本発明をOSPF、IS−IS等のリンク状態型プロトコルを用いて実施した例について記述する。ここでは、特にOSPFが動作しているネットワークについて記述するが、IS−ISやRIP、BGP等の他ルーティングプロトコルが動作するネットワークにも本発明は適用可能である。
【0045】
ネットワーク内の各ルータでは、OSPFが動作しており、まず各ルータがリンクにより接続されると、OSPFの隣接発見の段階を経て、OSPFの隣接関係が確立され、各ルータはネットワークのトポロジを学習し、それを元にIPパケットのIP転送表を作成する。
【0046】
上記の一連の処理が終わると、OSPFによるラベル配布が可能な能力を持つルータはIETFのRFC2370で規定されているOpaqueLSAを用いて、自ルータがOSPFを用いてラベル配布可能を能力を持つことを広告部11により広告する。ここで、使用するOpaqueLSAのLink−statetypeは“9”、つまりリンクローカル・スコープで、隣接ルータのみに広告する。これは広告する範囲を制限することで、ネットワーク内に流通するOSPFの制御メッセージ量を削減するためである。ただし、小規模ネットワークの場合には、Link−state typeが“10”のエリアローカル・スコープで自ルータが所属するエリア全体に広告してもよい。
【0047】
上記プロセスにより、MPLS情報付加部12は、隣接するルータの中でOSPFによるラベル配布が可能な能力を持つルータのリストを作成する。次に各ルータのMPLS情報付加部12は、MPLS設定に必要な広告情報を作成する。基本的には、作成したラベル配布能力を持つルータのリスト内に入っているルータと接続しているポート番号に関する情報を広告する。具体的には、自ルータがポートを特定可能なルータ内部でのみ使用する内部識別子等を広告する。内部識別子としては、MIB(Management Information Base)のインタフェース番号やスイッチングに用いる内部ヘッダのタグの番号などが利用可能である。最終的に広告する情報を最低限以下のものを含む。
【0048】
・ラベル配布能力を持つ隣接ルータのルータIDもしくはインタフェースのI
Pアドレス
・接続しているリンクのリンクコスト
・ラベル情報(接続しているポートを特定可能な内部識別子)
ここで、MPLSのラベルは20bitであるが、20bit全てのポートを特定可能な内部識別子のエンコードに使用することも可能であるが、20bitの中の上位数bit(例えば、8bit)でネットワーク内で自ルータを識別可能な情報(以下、ルータ識別子と呼ぶ)をエンコードし、残りのbit(例え、12bit)でポートを特定可能な内部識別子をエンコードしてもよい。ここで、ネットワーク内でルータを識別する情報は、ネットワークの運用者がネットワーク内で固有な値を各ルータにあらかじめ付与しておく。
【0049】
このようにMPLSラベル内にルータを判別する情報とポートを識別する情報を併せて入れることにより、何らかの要因でラベル付きパケットが誤配された場合に、誤配先のルータで自ルータとは異なるルータ識別子のコードが付けられていることから誤配先を検出し、該当パケットを廃棄するなどの適切な処理が可能になる。
【0050】
また、このラベル配布能力を持つ隣接ルータのルータIDおよびラベル情報を含んだ広告情報(これを以下、ラベル拡張LSAと呼ぶ)は、自ルータが所属するOSPFエリア全体に広告する。通常のOSPFと同様に自ルータの隣接構成に変化が生じると上述のラベル情報を含めた情報を広告する。
【0051】
各ルータのMPLS転送表作成部13は、上述の情報を含んだメッセージを受信すると、それを元にMPLSパケットの転送に必要なMPLS転送表14を作成する。図7は、図6のネットワークにおけるルータ1のMPLSパケットのMPLS転送表14の一例である。図のようにネットワーク内の各ルータはパケットの宛先アドレスと付与すべきラベルが対応付けられたMPLS転送表14を作成する。
【0052】
一連のMPLS転送表作成までの処理をまとめたものが図8の処理フローである。すなわち、MPLS情報付加部12は、他ルータからのルーティングプロトコルにおける広告に基づき、ルーティングプロトコルの隣接関係を確立する(ステップ1)。続いて、広告部11によりラベル配布の能力があることを広告する(ステップ2)。この広告は、MPLS情報付加部12の指示に基づき広告部11が行ってもよいし、広告部11が自律的に行ってもよい。MPLS情報付加部12は、隣接ルータの中でラベル配布能力を持つルータのリストを作成し(ステップ3)、ラベル配布能力を持つルータに対して、通常の広告情報に加えて、付与すべきラベル情報を広告する(ステップ4)。MPLS転送表作成部13は、隣接ルータからラベル情報を含んだリンク状態広告を受信すると、それをもとにMPLS転送表14を作成する(ステップ5)。
【0053】
以下、MPLS転送表14の作成方法の具体例について説明する。まず、MPLS転送表作成部13は、通常のルーティングプロトコルを用いてネットワーク全体のトポロジを作成し、Dijkstraアルゴリズム等の最短経路算出アルゴリズムを用いて宛先までに通過するルータを特定する。次に広告された情報を元に通過する各ルータで転送に用いるラベルのラベル値を求める。
【0054】
ルータ1が宛先IPアドレス10.8./16宛てのMPLS転送表14を作成する例を考える。最短経路算出アルゴリズムを用いて、自ルータから宛先アドレスまでに通過するルータを特定する。基本的に通過する経路はOSPFが選択する経路と同じとなるが、途中通過するルータを指定する明示的経路指定(Explicit routing)も可能である。
【0055】
次に各ルータが広告したラベル拡張LSAを元に付与すべきMPLSラベルを決定する。この場合には、ルータ1から宛先アドレスまでの間にルータ2とルータ3を通過する。ルータ2のポート3番がルータ3と接続しており、ルータ3はポート5番を通してルータ4と接続している。ルータ1は宛先アドレスに近いラベル値を順に並べることでMPLS転送表14を作成する。この場合には、図7のように、MPLS転送表は“2:3,3:5”となる。ここで、“2:3”で一つのMPLSラベルを表し、この例では“:”の前がルータを判別する情報のルータ識別子、“:”の後がポートを識別するポート識別子となっている。例では、10進表記でラベル値が記述されているが、実際にラベルとして付与する場合には、それぞれの値を2進数に変換してラベルを付与する。はじめから、2進数でMPLS転送表14を作成することも可能である。また、ラベルに通過するポート番号を識別する情報のみを載せる場合は、宛先アドレスに対するラベル値は“3,5”となる。このような手順により、各ルータは各宛先IPアドレスに対して付与すべきラベルを決定し、MPLS転送表14を完成させる。MPLS転送表14が完成したルータはMPLSパケットが転送可能となる。
【0056】
次に、各ルータでのMPLSパケットの転送方法を説明する。図9はルータ1から宛先アドレス10.8./16に転送するラベル付きパケットの例である。ルータ1に該当宛先アドレス宛てのパケットが到着した場合には、MPLSパケット生成部15は、まずMPLS転送表14を検索し、付与すべきラベル値が“3:5”と“2:3”であることを確認し、到着したパケットにラベル値“3:5”と“2:3”のラベルを順にスタックさせて付与する。
【0057】
次にルータ1はこのラベル付きパケットをルータ2に送信する。このラベル付きパケットを受信したルータ2のMPLSパケット処理部16は、最も上位にあるラベルの値(2:3)を検索し、まずルータ識別子の情報から自ルータを通過するパケットであることを確認した上で、出力ポートをポート識別子から出力すべきポート番号を求める。最上位のラベルを削除(Hop)して、出力先ポートにパケットを送出する。
【0058】
次にルータ3がこのパケットを受信すると、MPLSパケット処理部16により、同様に最上位のラベル値(“3:5”)から自ルータを通過すべきパケットであることを確認した上で、出力先のポートを求めて、このラベルを削除した後に、該当ポートへと出力する。このようにして、ルータ1から宛先IPアドレス10.8./16が属するネットワークまでパケットが送信される。
【0059】
次にネットワーク内にリンク故障やルータ故障等の障害が発生したケースを考える。図10のように、ルータ1からIPアドレス10.8./16のネットワークまでMPLSを用いてパケットを転送する例を考える。通常の方式では、障害発生後、再びOSPFによりトポロジ情報を学習し、その上でMPLSのMPLS転送表を作成するため、障害発生後の通信再開に要する時間が大きいという問題がある。この問題を以下の方法により解決する。
【0060】
宛先アドレスには、ルータ3を通過する経路と、ルータ2とルータ4を通過する経路の2経路が存在する。MPLS転送表作成部13は、それぞれの経路に対するラベル値を求めて、あらかじめ1つのアドレスに対して、図11のように2つのMPLSの経路のラベル値を持つMPLS転送表14を作成する。MPLSパケット生成部15は、通常はより宛先までのコストが小さいルータ3を経由するプライマリのラベル値“3:5”のMPLSラベルを付与して送信する。
【0061】
プライマリの経路上に何らかの障害が発生し、その情報がルータ1に伝達されると、障害情報を受信したルータ1のMPLSパケット生成部15は、は正常に通信可能なセカンダリのラベル“2:1,4:2”を付与し、この経路上を転送する。
【0062】
この経路切替方式の利点は、あらかじめ、通常転送する経路に対するバックアップの経路に対するラベル値を作成しておくことで、障害発生後に瞬時に通信を再開することが可能であるところにある。
【0063】
【発明の効果】
以上説明したように、本発明によれば、シグナリングプロトコルを用いることなくMPLSのパス設定が可能となるため、多数のパスを設定するような場合にルータのCPUの負荷の軽減とパス設定時間の短縮が図れる。また、各ルータにシグナリングプロトコルを実装する必要がないため、ルータに搭載するメモリ量を削減することができる。
【図面の簡単な説明】
【図1】本実施例のルータのブロック構成図。
【図2】本実施例におけるルーティングプロトコルの広告情報の一例を示す図。
【図3】本実施例のMPLS転送表の構成例を示す図。
【図4】本実施例のネットワーク構成例を示す図。
【図5】本実施例のラベル付きパケットの一例を示す図。
【図6】本実施例のネットワーク構成例を示す図。
【図7】本実施例のMPLS転送表の構成例を示す図。
【図8】本実施例の処理フローを示すフローチャート。
【図9】本実施例のラベル付きパケットの一例を示す図。
【図10】本実施例のネットワークの構成例を示す図。
【図11】本実施例のMPLS転送表の構成例を示す図。
【図12】従来例を説明するためのネットワークの構成例を示す図。
【図13】従来のルーティングプロトコルの広告情報
【符号の説明】
1〜4 ルータ
11 広告部
12 MPLS情報付加部
13 MPLS転送表作成部
14 MPLS転送表
15 MPLSパケット生成部
16 MPLSパケット処理部
【発明の属する技術分野】
本発明は、通信網に収容されるパスまたはコネクションの設定を行う方法および装置に関する。本発明は、パケットに固定長のラベルを付与してパケットの転送方路を決定することにより通信網内のパケット転送を実現するMPLS(MultiProtocol Label Switching)ネットワークに利用する。
【0002】
【従来の技術】
近年、インターネットやLANの急速な普及から、IPトラヒックを含めたデータトラヒックが指数関数的に増加している。トラヒックの増加に対応するため、バックボーンネットワークにおける高速なIPパケットの転送と高度なサービスを提供するメカニズムが求められている。このような要求に対応するため、これまでにMPLSが提案されている。
【0003】
MPLSは、転送するパケットに固定長のラベルを付与し、このラベルをもとに通信網内の各ノードでは転送する方路を決定する。このMPLSをIPバックボーンネットワークに導入することにより高速なIP転送と高度なTraffic Engineeringが可能となる。
MPLSネットワークにおいてパケットを転送するためには事前にパス設定を行う必要があるが、これを行うためにはルーティングプロトコルでネットワークのトポロジ情報を収集し、CR−LDPやRSVP−TE等のMPLSシグナリングプロトコルによってMPLSのパスを設定する(例えば、非特許文献1、2、3参照)。
【0004】
【非特許文献1】
宮村 崇、栗本 崇、青木 道宏,“A Scalable Multipath Algorithum in Hierachical MPLS Networks”,Proc.of WTC/ISS2002.
【非特許文献2】
R.Coltun,“The OSPF Opaque LSA Option”,IETF RFC2370.
【非特許文献3】
B.S.Davie and Y.Rekhter,“MPLS:Technology and Applications”,Morgan Kaufmann Publisher,2002.
【0005】
【発明が解決しようとする課題】
通常、各リンクで使用するMPLSラベルの値はそのリンクで固有の値であれば基本的に制限がなく、対向するルータ同士でシグナリングプロトコルを用いて決定する。
【0006】
図12は従来例を説明するためのネットワークの構成例を示す図であるが、例えば、図12のようにMPLSを用いてルータ1がルータ3、ルータ4にパケットを送信するケースを考える。ルータ2はルータ1から受信したパケットの宛先がルータ3かルータ4か、ラベルを見て判断する。そのため、ルータ1とルータ2の間であらかじめ、各ラベルの値と送信先をシグナリングプロトコル等を用いて決定する必要があり、MPLSではパス設定するためにはシグナリングは不可欠である。
【0007】
しかし、多数のパスを収容する大規模なMPLSネットワークでは、パスを設定する際にシグナリングメッセージが大量に発生するため、ルータのCPU負荷が増大し、パス設定時間が増大するという問題点がある。
【0008】
また、ルータのCPU資源の大半をシグナリングプロトコルが消費するため、他のプロトコルや装置管理等の処理ができなくなるという問題点が存在する。
【0009】
また、ルーティングプロトコルとシグナリングプロトコルを常時動作させる必要があるため、必要とするCPUの処理能力やメモリ量が大きい点も問題である。
【0010】
本発明は、このような背景に行われたものであって、シグナリングプロトコルを用いることなくMPLSのパス設定が可能となるため、多数のパスを設定するような場合にルータのCPUの負荷の軽減とパス設定時間の短縮が図れ、また、各ルータにシグナリングプロトコルを実装する必要がないため、ルータに搭載するメモリ量を削減することができるルータおよびパス設定方法およびネットワークを提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明では、ルーティングプロトコルを拡張し、ルーティングプロトコルを用いてMPLSのラベル付きパケットを転送するために用いるMPLS転送表の作成に必要な情報を広告させ、ルーティングプロトコルが広告する情報を元にMPLS転送表の作成を行うことを特徴とする。
【0012】
すなわち、本発明の第一の観点は、MPLSネットワークに設置されたルータであって、本発明の特徴とするところは、ルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する手段を備えたところにある。
【0013】
前記付加する手段は、隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する手段を備えたり、あるいは、前記付加する手段は、隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する手段を備えることが望ましい。
【0014】
自他の広告情報に基づき宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表を作成する手段を備えることが望ましい。
【0015】
前記MPLSラベルの一例として、前記ポートを識別可能な情報を含むことにより、例えば、目的の宛先アドレスに到達するために通過するルータのポート番号を認識することができる。あるいは、前記MPLSラベルの一例として、ネットワーク内でルータを識別可能な情報と前記ポートを識別可能な情報とを含むことにより、例えば、目的の宛先アドレスに到達するために通過するルータおよび当該ルータのポート番号を認識することができる。
【0016】
前者の例では、宛先アドレスとそこに行くためのポート番号が認識できるので、とりあえず、MPLSパスを設定することができる。後者の例では、宛先アドレスとそこに行くためのポート番号に加えてルータが認識できるので、ラベル付きパケットが誤ったルータに誤配された場合にはこれを検出することができる。
【0017】
例えば、前記MPLS転送表を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択する手段と、当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせる手段と、当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送する手段とを備えることにより、MPLSによるパケット転送を実現することができる。
【0018】
また、ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータが前記MPLS転送表を作成する手段を有することを広告する手段を備え、当該広告により前記MPLS転送表を作成する手段を有することを確認したルータに対するルーティングプロトコルにおける広告情報に前記付加する手段によりMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する手段を備えれば、MPLSによるパケット転送が可能な能力を持つルータと持たないルータとを区別し、無効となる広告情報を無くすことができるため、効率の良い広告を行うことができる。
【0019】
また、MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、前記MPLS転送表を作成する手段は、自他の広告情報に基づき1つの宛先アドレスに対応する複数のMPLSラベルの対応関係を記録したMPLS転送表を作成する手段を備え、当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替える手段を備えれば、障害箇所を迂回する経路によりパケット転送が行えるため、信頼性の高いMPLSネットワークを実現することができる。
【0020】
本発明の第二の観点は、MPLSネットワークにおけるパス設定方法であって、本発明の特徴とするところは、ルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加するところにある。
【0021】
例えば、隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する、あるいは、隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する。
【0022】
自他の広告情報に基づき宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表を作成することが望ましい。
【0023】
このとき、例えば、前記MPLSラベルには、前記ポートを識別可能な情報を含む、あるいは、前記MPLSラベルには、ネットワーク内でルータを識別可能な情報と前記ポートを識別可能な情報とを含む。
【0024】
前記MPLS転送表を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択し、当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせ、当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送すれば、MPLSによるパケット転送を実現することができる。
【0025】
また、ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータが前記MPLS転送表を作成する能力を有することを広告し、当該広告により前記MPLS転送表を作成する能力を有することを確認したルーティングに対するルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加することにすれば、無効となる広告を無くすことができ、効率の良い広告を行うことができる。
【0026】
また、MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、自他の広告情報に基づき1つの宛先アドレスに対応する複数のMPLSラベルの対応関係を記録したMPLS転送表を作成し、当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替えることにすれば、障害箇所を迂回した経路を速やかに設定でき、信頼性の高いMPLSネットワークを実現することができる。
【0027】
本発明の第三の観点は、本発明のルータを備えたことを特徴とするMPLSネットワークである。
【0028】
【発明の実施の形態】
本発明実施例のルータを図1、図3、図7、図11を参照して説明する。図1は本実施例のルータのブロック構成図である。図3、図7、図11は本実施例のMPLS転送表の構成例を示す図である。
【0029】
本実施例は、MPLSネットワークに設置されたルータであって、本実施例の特徴とするところは、図1に示す広告部11から送出されるルーティングプロトコルにおける広告情報(図13)にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加するMPLS情報付加部12を備えたところにある。この広告内容を図2に示す。
【0030】
MPLS情報付加部12は、図3に示すように、隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する。あるいは、図7に示すように、MPLS情報付加部12は、隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する。
【0031】
すなわち、自他の広告情報に基づき、図3および図7に示すような、宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表14を作成するMPLS転送表作成部13を備える。MPLSラベルには、図3に示すように、ポートを識別可能な情報としてのポート番号を含む。あるいは、MPLSラベルには、図7に示すように、ネットワーク内でルータを識別可能な情報とポートを識別可能な情報とを含む。
【0032】
このようなMPLS転送表14を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択し、当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせるMPLSパケット生成部15と、当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送するMPLSパケット処理部16とを備える。
【0033】
また、MPLS情報付加部12は、ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータがMPLS転送表作成部3を有することを広告部11により広告(これを能力広告という)し、MPLS情報付加部12は、当該能力広告によりMPLS転送表作成部13を有することを確認したルータに対するルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する。
【0034】
また、MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、MPLS転送表作成部13は、自他の広告情報に基づき、図11に示すように、1つの宛先アドレスに対応する複数のMPLSラベル(プライマリ、セカンダリ)の対応関係を記録したMPLS転送表を作成し、MPLSパケット生成部15は、当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替える。
【0035】
以下では、本実施例をさらに詳細に説明する。
【0036】
通常のルーティングプロトコルでは、広告部11は、図13のように情報を広告するルータのアドレスと自身が接続しているルータのインタフェースのIPアドレス(またはルータID)とそのルータまでのコスト(距離)を含んだ情報を広告する。
【0037】
本実施例では、図2のように広告部11が従来広告している情報に加えて、MPLS情報付加部12により、接続しているルータのポート番号やラインカード番号のようなルータ内部の物理的な情報をMPLSラベルの値にエンコードして広告する。つまり、各ルータのポート番号やラインカード番号とMPLSラベルの値を一対一で対応させる。通常のOSPFと同様に自ルータの接続構成に変化が生じるとこの情報を広告する。
【0038】
各ルータのMPLS転送表作成部13は、上述の情報を含んだメッセージを受信すると、それを元にMPLS転送表14を作成する。図3はMPLS転送表14の一例である。図3のようにMPLS転送表作成部13はパケットの宛先アドレスと付与すべきラベルが対応付けられた表を作成する。
【0039】
このMPLS転送表14の作成方法について説明する。MPLS転送表作成部13は、まず、通常のルーティングプロトコルを用いてネットワーク全体のトポロジを作成し、Dijkstraアルゴリズム等の最短経路算出アルゴリズムを用いて宛先までに通過するルータを特定する。次に広告された情報を元に通過するポート番号を求める。
【0040】
例えば、図4のようなネットワーク構成の場合で、ルータ1が宛先アドレスA宛てのMPLS転送表14を作成する例を考える。まず、最短経路算出アルゴリズムを用いて、通過するルータを求める。次に各ルータが広告した情報を元に付与すべきラベルを特定する。この場合に、ルータ1からアドレスAまでの間にルータ2とルータ3を通過する。ルータ2のポート3番がルータ3と接続しており、ルータ3はポート2番を通してアドレスAと接続している。ルータ1は宛先アドレスに近いラベル値を順に並べることでMPLS転送表14を作成する。この場合には、ポート3番、ポート2番の順に通過するので、図3のようにアドレスAに対応するMPLS転送表14内のラベル値は3、2となる。
【0041】
図5は転送するラベル付きパケットの例である。ルータ1にアドレスA宛てのパケットが到着した場合に、MPLSパケット生成部15は、まず、MPLS転送表14を検索し、付与すべきラベル値が3と2であることを確認し、到着したパケットにラベル値3と2の2つのラベルを多段に付与する。
【0042】
次に、ルータ1はラベル付きパケットをルータ2に送信する。ラベル付きパケットを受信したルータ2のMPLSパケット処理部16は、最も上位にあるラベルの値を元に、出力すべき自ルータのポート番号を求めてから、最上位のラベルを削除(Hop)して、出力先ポートにパケットを送出する。
【0043】
次に、ルータ3がこのパケットを受信すると、MPLSパケット処理部16は、同様に最上位のラベルから出力先のポート番号を求めて、このラベルを削除した後に、出力先ポートへと出力する。このようにして、ルータ1からアドレスAが属するネットワークまでパケットが送信される。
【0044】
ここでは、さらに具体的な実施例として、本発明をOSPF、IS−IS等のリンク状態型プロトコルを用いて実施した例について記述する。ここでは、特にOSPFが動作しているネットワークについて記述するが、IS−ISやRIP、BGP等の他ルーティングプロトコルが動作するネットワークにも本発明は適用可能である。
【0045】
ネットワーク内の各ルータでは、OSPFが動作しており、まず各ルータがリンクにより接続されると、OSPFの隣接発見の段階を経て、OSPFの隣接関係が確立され、各ルータはネットワークのトポロジを学習し、それを元にIPパケットのIP転送表を作成する。
【0046】
上記の一連の処理が終わると、OSPFによるラベル配布が可能な能力を持つルータはIETFのRFC2370で規定されているOpaqueLSAを用いて、自ルータがOSPFを用いてラベル配布可能を能力を持つことを広告部11により広告する。ここで、使用するOpaqueLSAのLink−statetypeは“9”、つまりリンクローカル・スコープで、隣接ルータのみに広告する。これは広告する範囲を制限することで、ネットワーク内に流通するOSPFの制御メッセージ量を削減するためである。ただし、小規模ネットワークの場合には、Link−state typeが“10”のエリアローカル・スコープで自ルータが所属するエリア全体に広告してもよい。
【0047】
上記プロセスにより、MPLS情報付加部12は、隣接するルータの中でOSPFによるラベル配布が可能な能力を持つルータのリストを作成する。次に各ルータのMPLS情報付加部12は、MPLS設定に必要な広告情報を作成する。基本的には、作成したラベル配布能力を持つルータのリスト内に入っているルータと接続しているポート番号に関する情報を広告する。具体的には、自ルータがポートを特定可能なルータ内部でのみ使用する内部識別子等を広告する。内部識別子としては、MIB(Management Information Base)のインタフェース番号やスイッチングに用いる内部ヘッダのタグの番号などが利用可能である。最終的に広告する情報を最低限以下のものを含む。
【0048】
・ラベル配布能力を持つ隣接ルータのルータIDもしくはインタフェースのI
Pアドレス
・接続しているリンクのリンクコスト
・ラベル情報(接続しているポートを特定可能な内部識別子)
ここで、MPLSのラベルは20bitであるが、20bit全てのポートを特定可能な内部識別子のエンコードに使用することも可能であるが、20bitの中の上位数bit(例えば、8bit)でネットワーク内で自ルータを識別可能な情報(以下、ルータ識別子と呼ぶ)をエンコードし、残りのbit(例え、12bit)でポートを特定可能な内部識別子をエンコードしてもよい。ここで、ネットワーク内でルータを識別する情報は、ネットワークの運用者がネットワーク内で固有な値を各ルータにあらかじめ付与しておく。
【0049】
このようにMPLSラベル内にルータを判別する情報とポートを識別する情報を併せて入れることにより、何らかの要因でラベル付きパケットが誤配された場合に、誤配先のルータで自ルータとは異なるルータ識別子のコードが付けられていることから誤配先を検出し、該当パケットを廃棄するなどの適切な処理が可能になる。
【0050】
また、このラベル配布能力を持つ隣接ルータのルータIDおよびラベル情報を含んだ広告情報(これを以下、ラベル拡張LSAと呼ぶ)は、自ルータが所属するOSPFエリア全体に広告する。通常のOSPFと同様に自ルータの隣接構成に変化が生じると上述のラベル情報を含めた情報を広告する。
【0051】
各ルータのMPLS転送表作成部13は、上述の情報を含んだメッセージを受信すると、それを元にMPLSパケットの転送に必要なMPLS転送表14を作成する。図7は、図6のネットワークにおけるルータ1のMPLSパケットのMPLS転送表14の一例である。図のようにネットワーク内の各ルータはパケットの宛先アドレスと付与すべきラベルが対応付けられたMPLS転送表14を作成する。
【0052】
一連のMPLS転送表作成までの処理をまとめたものが図8の処理フローである。すなわち、MPLS情報付加部12は、他ルータからのルーティングプロトコルにおける広告に基づき、ルーティングプロトコルの隣接関係を確立する(ステップ1)。続いて、広告部11によりラベル配布の能力があることを広告する(ステップ2)。この広告は、MPLS情報付加部12の指示に基づき広告部11が行ってもよいし、広告部11が自律的に行ってもよい。MPLS情報付加部12は、隣接ルータの中でラベル配布能力を持つルータのリストを作成し(ステップ3)、ラベル配布能力を持つルータに対して、通常の広告情報に加えて、付与すべきラベル情報を広告する(ステップ4)。MPLS転送表作成部13は、隣接ルータからラベル情報を含んだリンク状態広告を受信すると、それをもとにMPLS転送表14を作成する(ステップ5)。
【0053】
以下、MPLS転送表14の作成方法の具体例について説明する。まず、MPLS転送表作成部13は、通常のルーティングプロトコルを用いてネットワーク全体のトポロジを作成し、Dijkstraアルゴリズム等の最短経路算出アルゴリズムを用いて宛先までに通過するルータを特定する。次に広告された情報を元に通過する各ルータで転送に用いるラベルのラベル値を求める。
【0054】
ルータ1が宛先IPアドレス10.8./16宛てのMPLS転送表14を作成する例を考える。最短経路算出アルゴリズムを用いて、自ルータから宛先アドレスまでに通過するルータを特定する。基本的に通過する経路はOSPFが選択する経路と同じとなるが、途中通過するルータを指定する明示的経路指定(Explicit routing)も可能である。
【0055】
次に各ルータが広告したラベル拡張LSAを元に付与すべきMPLSラベルを決定する。この場合には、ルータ1から宛先アドレスまでの間にルータ2とルータ3を通過する。ルータ2のポート3番がルータ3と接続しており、ルータ3はポート5番を通してルータ4と接続している。ルータ1は宛先アドレスに近いラベル値を順に並べることでMPLS転送表14を作成する。この場合には、図7のように、MPLS転送表は“2:3,3:5”となる。ここで、“2:3”で一つのMPLSラベルを表し、この例では“:”の前がルータを判別する情報のルータ識別子、“:”の後がポートを識別するポート識別子となっている。例では、10進表記でラベル値が記述されているが、実際にラベルとして付与する場合には、それぞれの値を2進数に変換してラベルを付与する。はじめから、2進数でMPLS転送表14を作成することも可能である。また、ラベルに通過するポート番号を識別する情報のみを載せる場合は、宛先アドレスに対するラベル値は“3,5”となる。このような手順により、各ルータは各宛先IPアドレスに対して付与すべきラベルを決定し、MPLS転送表14を完成させる。MPLS転送表14が完成したルータはMPLSパケットが転送可能となる。
【0056】
次に、各ルータでのMPLSパケットの転送方法を説明する。図9はルータ1から宛先アドレス10.8./16に転送するラベル付きパケットの例である。ルータ1に該当宛先アドレス宛てのパケットが到着した場合には、MPLSパケット生成部15は、まずMPLS転送表14を検索し、付与すべきラベル値が“3:5”と“2:3”であることを確認し、到着したパケットにラベル値“3:5”と“2:3”のラベルを順にスタックさせて付与する。
【0057】
次にルータ1はこのラベル付きパケットをルータ2に送信する。このラベル付きパケットを受信したルータ2のMPLSパケット処理部16は、最も上位にあるラベルの値(2:3)を検索し、まずルータ識別子の情報から自ルータを通過するパケットであることを確認した上で、出力ポートをポート識別子から出力すべきポート番号を求める。最上位のラベルを削除(Hop)して、出力先ポートにパケットを送出する。
【0058】
次にルータ3がこのパケットを受信すると、MPLSパケット処理部16により、同様に最上位のラベル値(“3:5”)から自ルータを通過すべきパケットであることを確認した上で、出力先のポートを求めて、このラベルを削除した後に、該当ポートへと出力する。このようにして、ルータ1から宛先IPアドレス10.8./16が属するネットワークまでパケットが送信される。
【0059】
次にネットワーク内にリンク故障やルータ故障等の障害が発生したケースを考える。図10のように、ルータ1からIPアドレス10.8./16のネットワークまでMPLSを用いてパケットを転送する例を考える。通常の方式では、障害発生後、再びOSPFによりトポロジ情報を学習し、その上でMPLSのMPLS転送表を作成するため、障害発生後の通信再開に要する時間が大きいという問題がある。この問題を以下の方法により解決する。
【0060】
宛先アドレスには、ルータ3を通過する経路と、ルータ2とルータ4を通過する経路の2経路が存在する。MPLS転送表作成部13は、それぞれの経路に対するラベル値を求めて、あらかじめ1つのアドレスに対して、図11のように2つのMPLSの経路のラベル値を持つMPLS転送表14を作成する。MPLSパケット生成部15は、通常はより宛先までのコストが小さいルータ3を経由するプライマリのラベル値“3:5”のMPLSラベルを付与して送信する。
【0061】
プライマリの経路上に何らかの障害が発生し、その情報がルータ1に伝達されると、障害情報を受信したルータ1のMPLSパケット生成部15は、は正常に通信可能なセカンダリのラベル“2:1,4:2”を付与し、この経路上を転送する。
【0062】
この経路切替方式の利点は、あらかじめ、通常転送する経路に対するバックアップの経路に対するラベル値を作成しておくことで、障害発生後に瞬時に通信を再開することが可能であるところにある。
【0063】
【発明の効果】
以上説明したように、本発明によれば、シグナリングプロトコルを用いることなくMPLSのパス設定が可能となるため、多数のパスを設定するような場合にルータのCPUの負荷の軽減とパス設定時間の短縮が図れる。また、各ルータにシグナリングプロトコルを実装する必要がないため、ルータに搭載するメモリ量を削減することができる。
【図面の簡単な説明】
【図1】本実施例のルータのブロック構成図。
【図2】本実施例におけるルーティングプロトコルの広告情報の一例を示す図。
【図3】本実施例のMPLS転送表の構成例を示す図。
【図4】本実施例のネットワーク構成例を示す図。
【図5】本実施例のラベル付きパケットの一例を示す図。
【図6】本実施例のネットワーク構成例を示す図。
【図7】本実施例のMPLS転送表の構成例を示す図。
【図8】本実施例の処理フローを示すフローチャート。
【図9】本実施例のラベル付きパケットの一例を示す図。
【図10】本実施例のネットワークの構成例を示す図。
【図11】本実施例のMPLS転送表の構成例を示す図。
【図12】従来例を説明するためのネットワークの構成例を示す図。
【図13】従来のルーティングプロトコルの広告情報
【符号の説明】
1〜4 ルータ
11 広告部
12 MPLS情報付加部
13 MPLS転送表作成部
14 MPLS転送表
15 MPLSパケット生成部
16 MPLSパケット処理部
Claims (19)
- MPLS(Multi Protocol Label Switching)ネットワークに設置されたルータにおいて、
ルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する手段を備えたことを特徴とするルータ。 - 前記付加する手段は、隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する手段を備えた請求項1記載のルータ。
- 前記付加する手段は、隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する手段を備えた請求項1記載のルータ。
- 自他の広告情報に基づき宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表を作成する手段を備えた請求項2または3記載のルータ。
- 前記MPLSラベルには、前記ポートを識別可能な情報を含む請求項2または4記載のルータ。
- 前記MPLSラベルには、ネットワーク内でルータを識別可能な情報と前記ポートを識別可能な情報とを含む請求項3または4記載のルータ。
- 前記MPLS転送表を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択する手段と、
当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせる手段と、
当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送する手段と
を備えた請求項1ないし6のいずれかに記載のルータ。 - ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータが前記MPLS転送表を作成する手段を有することを広告する手段を備え、
当該広告により前記MPLS転送表を作成する手段を有することを確認したルータに対するルーティングプロトコルにおける広告情報に前記付加する手段によりMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する手段を備えた請求項1または4記載のルータ。 - MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、
前記MPLS転送表を作成する手段は、自他の広告情報に基づき1つの宛先アドレスに対応する複数のMPLSラベルの対応関係を記録したMPLS転送表を作成する手段を備え、
当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替える手段を備えた
請求項4記載のルータ。 - MPLS(Multi Protocol Label Switching)ネットワークにおけるパス設定方法において、
ルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加することを特徴とするパス設定方法。 - 隣接ルータを判別可能な情報とその隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する請求項10記載のパス設定方法。
- 隣接ルータを判別可能な情報とネットワーク内で自ルータを識別可能な情報と隣接ルータと接続している自ルータのポートを識別可能な情報とをルーティングプロトコルにおける広告情報に付加する請求項10記載のパス設定方法。
- 自他の広告情報に基づき宛先アドレスとMPLSラベルとの対応関係を記録したMPLS転送表を作成する請求項11または12記載のパス設定方法。
- 前記MPLSラベルには、前記ポートを識別可能な情報を含む請求項11または13記載のパス設定方法。
- 前記MPLSラベルには、ネットワーク内でルータを識別可能な情報と前記ポートを識別可能な情報とを含む請求項12または13記載のパス設定方法。
- 前記MPLS転送表を参照してMPLSパスの起点から終点までの各ホップにおけるラベル値を選択し、
当該起点から転送されるパケットに当該各ホップにおけるラベル値を多段にスタックさせ、
当該パケットを受け取り多段にスタックされた前記ラベル値の最上位にあるラベル値で宛先方路を決定しこのラベル値を削除した上で次ホップ先のルータに当該パケットを転送する
請求項10ないし15のいずれかに記載のパス設定方法。 - ルーティングプロトコルによりパス設定に必要な情報を広告するのに先立って自ルータが前記MPLS転送表を作成する能力を有することを広告し、
当該広告により前記MPLS転送表を作成する能力を有することを確認したルータに対するルーティングプロトコルにおける広告情報にMPLSのパスにおける各ホップでのラベル値の決定に用いる情報を付加する
請求項10または13記載のパス設定方法。 - MPLSパスの起点から終点までの間に2経路以上のパスが存在するときには、
自他の広告情報に基づき1つの宛先アドレスに対応する複数のMPLSラベルの対応関係を記録したMPLS転送表を作成し、
当該複数のMPLSラベルの内のいずれかを現用とし他を予備として障害発生に応じて切り替える
請求項13記載のパス設定方法。 - 請求項1ないし9のいずれかに記載のルータを備えたことを特徴とするMPLSネットワーク。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002355369A JP2004193644A (ja) | 2002-12-06 | 2002-12-06 | Mplsにおけるルータおよびパス設定方法およびネットワーク |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002355369A JP2004193644A (ja) | 2002-12-06 | 2002-12-06 | Mplsにおけるルータおよびパス設定方法およびネットワーク |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004193644A true JP2004193644A (ja) | 2004-07-08 |
Family
ID=32756089
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002355369A Pending JP2004193644A (ja) | 2002-12-06 | 2002-12-06 | Mplsにおけるルータおよびパス設定方法およびネットワーク |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004193644A (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7680136B2 (en) | 2005-03-18 | 2010-03-16 | Fujitsu Limited | Method and apparatus for allocating label to path in ring network |
| JP2012509018A (ja) * | 2008-11-14 | 2012-04-12 | ノーテル・ネットワークス・リミテッド | Mplsネットワークに適用されるサービスインスタンス |
| JP2015154192A (ja) * | 2014-02-13 | 2015-08-24 | 日本電信電話株式会社 | 通信制御システム及び方法及びプログラム |
| US12425324B2 (en) | 2012-12-27 | 2025-09-23 | Morris Routing Technologies, Llc | Methods, systems, and computer program products for associating a name with a network path |
| US12483494B1 (en) | 2012-12-27 | 2025-11-25 | Morris Routing Technologies, Llc | Routing methods, systems, and computer program products |
-
2002
- 2002-12-06 JP JP2002355369A patent/JP2004193644A/ja active Pending
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7680136B2 (en) | 2005-03-18 | 2010-03-16 | Fujitsu Limited | Method and apparatus for allocating label to path in ring network |
| JP2012509018A (ja) * | 2008-11-14 | 2012-04-12 | ノーテル・ネットワークス・リミテッド | Mplsネットワークに適用されるサービスインスタンス |
| US8811388B2 (en) | 2008-11-14 | 2014-08-19 | Rockstar Consortium Us Lp | Service instance applied to MPLS networks |
| US12425324B2 (en) | 2012-12-27 | 2025-09-23 | Morris Routing Technologies, Llc | Methods, systems, and computer program products for associating a name with a network path |
| US12483494B1 (en) | 2012-12-27 | 2025-11-25 | Morris Routing Technologies, Llc | Routing methods, systems, and computer program products |
| JP2015154192A (ja) * | 2014-02-13 | 2015-08-24 | 日本電信電話株式会社 | 通信制御システム及び方法及びプログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7644064B2 (ja) | 伝送経路故障を処理するための方法と装置、及びシステム | |
| EP3648420B1 (en) | Enabling non-flexible-algorithm routers to participate in flexiblealgorithm routing protocols | |
| US7668116B2 (en) | Root node shutdown messaging for multipoint-to-multipoint transport tree | |
| US9054956B2 (en) | Routing protocols for accommodating nodes with redundant routing facilities | |
| CN100512238C (zh) | Mpls网络中的递归bgp路由更新方法 | |
| CN101164265B (zh) | 用于备份pe选择的算法 | |
| CA2287721C (en) | Router device and label switched path control method using upstream initiated aggregation | |
| US7983153B2 (en) | Fast reroute (FRR) protection at the edge of a RFC 2547 network | |
| CN113452610B (zh) | 跨城域网的无缝端到端分段路由的方法及区域边界路由器 | |
| US7969898B1 (en) | Technique for breaking loops in a communications network | |
| US10742599B2 (en) | Conflict resolution in segment routing | |
| CN114070782A (zh) | 一种传输路径故障的处理方法、装置及系统 | |
| JP5625121B2 (ja) | ルーティング情報更新の優先順位付け | |
| US11323371B1 (en) | Micro SID packet processing with operations, administration, and management | |
| US12021734B2 (en) | Network-topology discovery using packet headers | |
| CN114631293B (zh) | 利用灵活算法的标签推导 | |
| US7133402B2 (en) | Link identifier assignment system in connection-oriented communication network | |
| CN113709033A (zh) | 用于分段路由流量工程的分段跟踪路由 | |
| CN114978975A (zh) | 以太网虚拟私有网络中的bum业务的快速重路由 | |
| JP2004193644A (ja) | Mplsにおけるルータおよびパス設定方法およびネットワーク | |
| CN100469063C (zh) | Gmpls+ip/mpls节点和ip/mpls节点 | |
| EP3422645B1 (en) | Conflict resolution in segment routing | |
| CN119966887B (zh) | 一种数据报文的传输方法、装置及设备 | |
| CN116405425B (zh) | 用于分段路由标签交换路径的方法和设备 | |
| JP4369882B2 (ja) | ルーティング方法、および、ネットワークシステム |