(57)【要約】【課題】経路の特性を考慮してパケットの転送先を判定することにより、スループットを向上させる。【解決手段】複数の経路を経由してパケットを転送可能なルータは、経路毎に転送先ノードと経路の特性を示す経路情報とを対応付けて格納するルーティングテーブルと、受信したパケットのヘッダの情報を検出し、前記ルーティングテーブルの経路情報と該ヘッダの情報とに基づいて、転送先ノードを判定する転送先判定部と、前記受信したパケットを前記判定された転送先ノードに転送するパケット転送部を有する。【選択図】図２
2013175839.tif 000002
【特許請求の範囲】
【請求項１】
複数の経路を経由してパケットを転送可能なルータであって、
経路毎に転送先ノードと経路の特性を示す経路情報とを対応付けて格納するルーティングテーブルと、
受信したパケットのヘッダの情報を検出し、前記ルーティングテーブルの経路情報と該ヘッダの情報とに基づいて、転送先ノードを判定する転送先判定部と、
前記受信したパケットを前記判定された転送先ノードに転送するパケット転送部と、
を有するルータ。
【請求項２】
前記ルーティングテーブルは、経路距離又は経路品質を示す経路情報を格納し、
前記転送先判定部は、前記ヘッダの情報が高優先度又はＴＣＰを示す場合、経路距離の短い方の転送先ノード又は経路品質の良い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定する、請求項１に記載のルータ。
【請求項３】
経路の混雑状況を監視し、混雑状況を前記ルーティングテーブルに格納する混雑状況監視部を更に有し、
前記転送先判定部は、前記ルーティングテーブルに格納された混雑状況を考慮して、前記ヘッダの情報が高優先度又はＴＣＰを示す場合、経路距離の短い方の転送先ノード又は経路品質の良い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定する、請求項２に記載のルータ。
【請求項４】
前記転送先判定部は、
混雑状況が第１の閾値未満である場合、経路距離の短い方の転送先ノード又は経路品質の良い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定し、
混雑状況が第１の閾値以上である場合、且つ、前記ヘッダの情報が高優先度又はＴＣＰを示す場合、経路距離の短い方の転送先ノード又は経路品質の良い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定する、請求項３に記載のルータ。
【請求項５】
前記転送先判定部は、
混雑状況が第１の閾値未満である場合、経路距離の短い方の転送先ノード又は経路品質の良い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定し、
混雑状況が第１の閾値以上であり第２の閾値未満である場合、且つ、前記ヘッダの情報が低優先度且つＵＤＰを示す場合、経路距離の長い方の転送先ノード又は経路品質の悪い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定し、
混雑状況が第２の閾値以上であり第３の閾値未満である場合、且つ、前記ヘッダの情報がＵＤＰを示す場合、経路距離の長い方の転送先ノード又は経路品質の悪い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定し、
混雑状況が第３の閾値以上である場合、且つ、前記ヘッダの情報がＵＤＰを示す場合又は前記ヘッダの情報が低優先度且つＴＣＰを示す場合、経路距離の長い方の転送先ノード又は経路品質の悪い方の転送先ノードを、前記受信したパケットの転送先ノードとして判定する、請求項３に記載のルータ。
【請求項６】
複数の経路を経由してパケットを転送可能なルータにおけるパケット転送方法であって、
受信したパケットのヘッダの情報を検出し、経路毎に転送先ノードと経路の特性を示す経路情報とを対応付けて格納するルーティングテーブルの経路情報と該ヘッダの情報とに基づいて、転送先ノードを判定するステップと、
前記受信したパケットを前記判定された転送先ノードに転送するステップと、
を有するパケット転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルータ及びパケット転送方法に関する。
【背景技術】
【０００２】
一般のＩＰ（Internet Protocol）ネットワークにおいて、あるノード間に複数の経路を設定することができる。このような複数の経路が存在する場合、これらの経路に同量のトラフィックが収容されるように負荷分散されることが行われている。例えば、ＥＣＭＰ（Equal Cost Multi Path）アルゴリズムでは、送信元アドレスと宛先アドレスとを含むハッシュ関数を用いて、転送先ノードを判定する（非特許文献１参照）。
【０００３】
図１に、ＥＣＭＰ（Equal Cost Multi Path）アルゴリズムによるトラフィックの流れを示す。ルータＳにおいて受信したパケットは、ルータＳにおいて、０系（Ｓ−Ｒ０）又は１系（Ｓ−Ｒ１−Ｒ２−Ｒ０）に振り分けられ、宛先ネットワークＸに転送される。例えば、６ＧビットのＴＣＰ（Transmission Control Protocol）パケットと６ＧビットのＵＤＰ（User Datagram Protocol）パケットとを含む１２Ｇビットのパケットは、ルータＳにおいて、ほぼ均等に０系又は１系に振り分けられる。このため、０系に流れるトラフィックは、３ＧビットのＴＣＰパケット及び３ＧビットのＵＤＰパケットであり、１系に流れるトラフィックも、３ＧビットのＴＣＰパケット及び３ＧビットのＵＤＰパケットである。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】RFC 2992, "Analysis of ECMP Algorithm", November 2000
【発明の概要】
【発明が解決しようとする課題】
【０００５】
図１に示すような複数の経路が存在するネットワークでは、これらの経路の特性が異なる可能性がある。例えば、経路によって経路距離が異なる可能性がある。また、無線等の品質の悪い経路を経由する可能性がある。このように経路の特性が異なるネットワークにおいて均等にトラフィックを振り分けた場合、通信品質が劣化するという問題が発生する。例えば、ＴＣＰパケットは到達確認が行われるため、距離の長い方の経路を経由した場合、スループットが低下する。また、途中で通信品質が安定しない無線を経由する経路が存在する場合、通信品質劣化が懸念される経路にも均等にトラフィックが振り分けられる。このように、パケット種別によっては、選択された経路の特性が転送効率に影響を与える。
【０００６】
本発明は、経路の特性を考慮してパケットの転送先を判定することにより、スループットを向上させることを目的とする。
【課題を解決するための手段】
【０００７】
本発明のルータは、
複数の経路を経由してパケットを転送可能なルータであって、
経路毎に転送先ノードと経路の特性を示す経路情報とを対応付けて格納するルーティングテーブルと、
受信したパケットのヘッダの情報を検出し、前記ルーティングテーブルの経路情報と該ヘッダの情報とに基づいて、転送先ノードを判定する転送先判定部と、
前記受信したパケットを前記判定された転送先ノードに転送するパケット転送部と、
を有することを特徴とする。
【０００８】
本発明のパケット転送方法は、
複数の経路を経由してパケットを転送可能なルータにおけるパケット転送方法であって、
受信したパケットのヘッダの情報を検出し、経路毎に転送先ノードと経路の特性を示す経路情報とを対応付けて格納するルーティングテーブルの経路情報と該ヘッダの情報とに基づいて、転送先ノードを判定するステップと、
前記受信したパケットを前記判定された転送先ノードに転送するステップと、
を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、経路の特性を考慮してパケットの転送先を判定することにより、スループットを向上させることが可能になる。
【図面の簡単な説明】
【００１０】
【図１】ＥＣＭＰ（Equal Cost Multi Path）アルゴリズムによるトラフィックの流れを示す図
【図２】本発明の実施例に係るルータの構成図
【図３】本発明の実施例によるトラフィックの流れを示す図
【図４】本発明の実施例によるトラフィックの振り分け設定例を示す図
【発明を実施するための形態】
【００１１】
以下、本発明の実施例について詳細に説明する。
【００１２】
図２に、本発明の実施例に係るルータ１０の構成図を示す。ルータ１０は、図１に示すルータＳに対応する装置（エッジルータも含む）であり、宛先ネットワークＸまで複数の経路を経由してパケットを転送することができる。０系の経路の次の転送先ノードはＲ０であり、１系の経路の次の転送先ノードはＲ１である。ここでは、２つの経路を用いて説明するが、本発明は、３つ以上の経路が存在する場合にも適用可能である。ルータ１０は、経路の特性（経路距離、経路品質、混雑状況等）と、パケットの特性（プロトコル、サービス品質（ＱｏＳ：Quality of Service）等）とを組み合わせて、転送先ノードを判定する。
【００１３】
ルータ１０は、ルーティングテーブル１０１と、ヘッダ検出・転送先判定部１０３と、パケット転送部１０５と、混雑状況監視部１０７とを有する。
【００１４】
ルーティングテーブル１０１は、経路毎に、宛先アドレスと、次の転送先ノードのアドレスと、経路の特性を示す経路情報とを対応付けて格納する。経路情報には、経路距離、経路品質及び混雑状況のうち１つ以上が含まれる。経路距離は、ネットワーク設計時にユーザにより入力された値でもよく、ホップ数のような数値でもよく、パケットの到達所要時間等の測定値でもよい。同様に、経路品質は、ネットワーク設計時にユーザにより入力された値でもよく、パケットの誤り率等の測定値でもよい。図１の構成では、ルーティングテーブル１０１は、２つの経路の情報を格納する。なお、経路のいずれかのノード（例えば、Ｒ２）が故障した場合、ルーティングプロトコルに従って当該経路の情報（次の転送先：Ｒ１）は、ルーティングテーブル１０１から削除されてもよい。
【００１５】
ヘッダ検出・転送先判定部１０３は、受信したパケットのヘッダの情報を検出し、前記ルーティングテーブルの経路情報とヘッダの情報とに基づいて、転送先ノードを判定する。ヘッダの情報には、サービス品質（ＱｏＳ）及びプロトコル（ＴＣＰ又はＵＤＰ）が含まれる。また、ヘッダの情報に、送信元・宛先ＩＰアドレス又は同種のパケットを識別するためのフラグが含まれてもよい。例えば、ヘッダ検出・転送先判定部１０３は、高優先度のパケット又はＴＣＰパケットを、経路距離の短い方の転送先ノード又は経路品質の良い方の転送先ノードに振り分ける。また、ヘッダ検出・転送先判定部１０３は、混雑状況を考慮して、混雑状況が閾値未満である場合には、全てのパケットを、経路距離の短い方の転送先ノード又は経路品質の良い方の転送先ノードに振り分ける。混雑状況が高くなるにつれて、低優先度のパケット又はＵＤＰパケットを、経路距離の長い方の転送先ノード又は経路品質の悪い方の転送先ノードに振り分ける。また、ヘッダ検出・転送先判定部１０３は、送信元・宛先ＩＰアドレスが同じパケットを同じ経路に振り分けてもよく、フラグにより同種のパケットであることを識別した場合、同種のパケットを同じ経路に振り分けてもよい。
【００１６】
パケット転送部１０５は、受信したパケットを判定された転送先ノードに転送する。
【００１７】
混雑状況監視部１０７は、経路の混雑状況を監視し、混雑状況をルーティングテーブル１０１に格納する。混雑状況監視部１０７は、ネットワークを監視する外部のサーバから帯域の利用帯域又は利用率を取得し、帯域の利用帯域又は利用率を混雑状況としてルーティングテーブル１０１に格納してもよい。また、混雑状況監視部１０７は、プローブパケットのＲＴＴ（Round Trip Time）を利用して混雑状況を判定してもよい。例えば、帯域の利用率が高くなると、その経路を経由するパケットの間隔は広くなる。このため、プローブパケットのＲＴＴも大きくなる。例えばＲＴＴと利用帯域との関係を予め実験的に求めておき、混雑状況監視部１０７は、ＲＴＴの変化によって混雑状況を判定してもよい。
【００１８】
図３に、本発明の実施例によるトラフィックの流れを示す。本発明の実施例によれば、例えば、６ＧビットのＴＣＰパケットは、経路距離の短い０系の経路に流れる。また、０系の経路にＴＣＰパケットを収容しても、０系の混雑状況には余裕があると考えられる。従って、混雑状況が閾値に到達するまで（この例では利用帯域が１０Ｇになるまで）、４ＧビットのＵＤＰパケットは、経路距離の短い０系の経路に流れる。残りの２ＧビットのＵＤＰパケットは、経路距離の短い１系の経路に流れる。このように、経路距離による通信品質劣化の少ないＵＤＰパケットを１系に振り分けることで、品質劣化を防ぐことができる。なお、０系の通信品質が１系の通信品質より良い場合にも、同様に振り分けることで、品質劣化を防ぐことができる。
【００１９】
図２及び図３では、ルーティングテーブルを用いた例を示したが、例えば、ＶＰＮ（Virtual Private Network）により静的にルーティング情報を設定しておき、ＴＣＰパケットを０系の経路に振り分けることも可能である。
【００２０】
図４に、本発明の実施例によるトラフィックの振り分け設定例を示す。本発明の実施例では、経路距離の短い方の経路又は通信品質の良い方の経路（０系）の混雑状況に対して閾値を設定し、０系の混雑状況を監視する。０系の混雑状況が閾値を超えた場合、０系の経路に振り分けていたパケットを、１系の経路にパケットを振り分け始める。また、０系の混雑状況が閾値を下回った場合、０系の経路に振り分ける制御に戻す。更に、ＩＰパケットのヘッダ情報からパケット種別（ＴＣＰパケット又はＵＤＰパケット）を判別し、１系の経路への収容に適さないＴＣＰパケットは、０系の経路に収容する。
【００２１】
図４（Ａ）には、混雑状況に対して２つの閾値（６Ｇ、８Ｇ）を定め、混雑状況によって、ＴＣＰパケット及びＵＤＰパケットを０系又は１系の経路に振り分ける設定例を示している。例えば、混雑状況を示す利用帯域が０Ｇ〜６Ｇである場合、全てのパケットを０系に振り分ける。利用帯域が６Ｇ〜８Ｇである場合、ＴＣＰパケットを０系に振り分け、ＵＤＰパケットを１系に振り分ける。利用帯域が８Ｇ〜１０Ｇである場合、ＥＣＭＰアルゴリズムに従い、ハッシュ関数を使用してパケットを０系又は１系に振り分ける。
【００２２】
図４（Ｂ）には、混雑状況に対して４つの閾値（６Ｇ、７Ｇ、８Ｇ、９Ｇ）を定め、混雑状況によって、低品質（ＢＥ：Best Effort）のＴＣＰパケット、その他の品質のＴＣＰパケット、低品質のＵＤＰパケット及びその他の品質のＵＤＰパケットを０系又は１系の経路に振り分ける設定例を示している。例えば、混雑状況を示す利用帯域が０Ｇ〜６Ｇである場合、全てのパケットを０系に振り分ける。利用帯域が６Ｇ〜７Ｇである場合、ＴＣＰパケット及びＢＥ以外の品質のＵＤＰを０系に振り分け、ＢＥのＵＤＰパケットを１系に振り分ける。利用帯域が７Ｇ〜８Ｇである場合、ＴＣＰパケットを０系に振り分け、ＵＤＰパケットを１系に振り分ける。利用帯域が８Ｇ〜９Ｇである場合、ＢＥ以外の品質のＴＣＰパケットを０系に振り分け、ＢＥのＴＣＰパケット及びＵＤＰパケットを１系に振り分ける。利用帯域が９Ｇ〜１０Ｇである場合、ＥＣＭＰアルゴリズムに従い、ハッシュ関数を使用してパケットを０系又は１系に振り分ける。
【００２３】
＜本発明の実施例の効果＞
本発明の実施例によれば、経路の特性を考慮してパケットの転送先を判定することにより、スループットを向上させることが可能になる。
【００２４】
また、通信品質の悪い経路等の制限が存在する場合においても、その制限の影響を抑制することができる。例えば、経路距離の増大による通信品質劣化が大きいとされるＴＣＰパケットを経路距離の短い０系に振り分けることで、通信品質劣化を抑制できる。
【００２５】
説明の便宜上、本発明の実施例に係る装置は機能的なブロック図を用いて説明しているが、本発明の装置は、ハードウェア、ソフトウェア又はそれらの組み合わせで実現されてもよい。また、各機能部が必要に応じて組み合わせて使用されてもよい。
【００２６】
以上、本発明の実施例について説明したが、本発明は、上記の実施例に限定されることなく、特許請求の範囲内において、種々の変更・応用が可能である。
【符号の説明】
【００２７】
１０    ルータ
１０１  ルーティングテーブル
１０３  ヘッダ検出・転送先判定部
１０５  パケット転送部
１０７  混雑状況監視部
【図１】
2013175839.tif 000003
【図２】
2013175839.tif 000004
【図３】
2013175839.tif 000005
【図４】
2013175839.tif 000006