(57)【要約】【課題】経路またはリンクの品質情報の計測結果に基づいてＱｏＳルーティングを行う装置において、計測トラフィックのオーバヘッドを抑制しつつ、計測精度を高める技術を提供する。【解決手段】ユーザ端末（D1〜D4）間で交信されるデータを伝送するための論理ネットワークのノードであるＱｏＳルーティング装置（A1〜A4）が、受信したデータが特定データか否かを判別し該データを転送する中継部（A14）と、自装置に接続された各リンクの通信品質値を特定データのフローに基づき計測する品質計測部（A13）と、通信品質値の計測精度をリンクごとに求める品質精度設定部（A111）と、より低い計測精度のリンクに対しより高い比率で特定データのフロー本数を割り当てる経路設定部（A114）とを備える。【選択図】図１
2008113186.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末間で交信されるデータを伝送するための論理ネットワークを形成する複数のノード装置のそれぞれが、
受信したデータが特定データか否かを判別し、自装置に接続された各リンクの通信品質値を特定データのフローに基づき計測し、通信品質値の計測精度をリンクごとに求め、より低い計測精度のリンクに対しより高い比率で特定データのフロー本数を割り当てることを特徴とするＱｏＳルーティング方法。
【請求項２】
前記複数のノード装置のそれぞれが、
各リンクの通信品質値の計測精度をコスト値に正規化し、各リンクに対する特定データのフロー本数をコスト値を用いて割り当てることを特徴とする請求項１記載のＱｏＳルーティング方法。
【請求項３】
前記複数のノード装置のそれぞれが、
各リンクの通信品質値の計測精度を他のノード装置へ通知することを特徴とする請求項１記載のＱｏＳルーティング方法。
【請求項４】
前記複数のノード装置のそれぞれが、
各リンクに特定データのフロー本数を割り当てるとき、前記論理ネットワークにおけるホップ数が所定のホップ数以下である経路のリンクを割り当ての対象とすることを特徴とする請求項１記載のＱｏＳルーティング方法。
【請求項５】
前記複数のノード装置のそれぞれが、
自装置に接続されたリンク間における通信品質値の相関値を測定し、閾値より大きい相関値を持つ一対のリンクのうちの一方の計測精度が更新されたとき、他方の計測精度を前記一方の計測精度および当該相関値に基づき変更することを特徴とする請求項１記載のＱｏＳルーティング方法。
【請求項６】
前記複数のノード装置のそれぞれが、
各リンクに対し割り当てたフロー本数の比率に基づき特定データの１フローあたりの伝送量を複数のリンクに分割することを特徴とする請求項１記載のＱｏＳルーティング方法。
【請求項７】
前記複数のノード装置のそれぞれが、
各リンクに対し割り当てたフロー本数の比率に対応する伝送量にて特定データの複製を複数のリンクに送出することを特徴とする請求項１記載のＱｏＳルーティング方法。
【請求項８】
前記複数のリンクのそれぞれは、フロー本数の比率が閾値より大きいリンクであることを特徴とする請求項６又は７記載のＱｏＳルーティング方法。
【請求項９】
前記複数のノード装置のそれぞれが、
各リンクに対し特定データのフローの伝送量に関する上限を設定し、リンクにおける特定データのフローの伝送量が前記上限を超える場合、当該フローの割り当てを他のリンクに切り替えることを特徴とする請求項１乃至８のいずれか１項に記載のＱｏＳルーティング方法。
【請求項１０】
前記複数のノード装置のそれぞれが、
受信したデータの宛先ポート番号により該データが特定データか否かを判別することを特徴とする請求項１乃至９のいずれか１項に記載のＱｏＳルーティング方法。
【請求項１１】
前記複数のノード装置のそれぞれが、
各リンクの通信品質値に基づき特定データ以外のデータのフロー本数を各リンクに割り当てることを特徴とする請求項１乃至１０のいずれか１項に記載のＱｏＳルーティング方法。
【請求項１２】
前記複数のノード装置のそれぞれが、
前記論理ネットワークとしてオーバレイネットワークを形成することを特徴とする請求項１乃至１１のいずれか１項に記載のＱｏＳルーティング方法。
【請求項１３】
ユーザ端末間で交信されるデータを伝送するための論理ネットワークのノードであるＱｏＳルーティング装置であって、
受信したデータが特定データか否かを判別し該データを転送する中継部と、自装置に接続された各リンクの通信品質値を特定データのフローに基づき計測する品質計測部と、通信品質値の計測精度をリンクごとに求める品質精度設定部と、より低い計測精度のリンクに対しより高い比率で特定データのフロー本数を割り当てる経路設定部とを備えることを特徴とするＱｏＳルーティング装置。
【請求項１４】
前記品質精度設定部は、各リンクの通信品質値の計測精度をコスト値に正規化し、
前記経路設定部は、各リンクに対する特定データのフロー本数をコスト値を用いて割り当てることを特徴とする請求項１３記載のＱｏＳルーティング装置。
【請求項１５】
さらに、各リンクの通信品質値の計測精度を前記論理ネットワークの他のノードへ通知する経路情報交換部を備えることを特徴とする請求項１３記載のＱｏＳルーティング装置。
【請求項１６】
前記経路設定部は、各リンクに特定データのフロー本数を割り当てるとき、前記論理ネットワークにおけるホップ数が所定のホップ数以下である経路のリンクを割り当ての対象とすることを特徴とする請求項１３記載のＱｏＳルーティング装置。
【請求項１７】
さらに、自装置に接続されたリンク間における通信品質値の相関値を測定する相関判定部を備え、
前記品質精度設定部は、閾値より大きい相関値を持つ一対のリンクのうちの一方の計測精度が更新されたとき、他方の計測精度を前記一方の計測精度および当該相関値に基づき変更することを特徴とする請求項１３記載のＱｏＳルーティング装置。
【請求項１８】
前記中継部は、各リンクに対し割り当てられたフロー本数の比率に基づき特定データの１フローあたりの伝送量を複数のリンクに分割する手段を有することを特徴とする請求項１３記載のＱｏＳルーティング装置。
【請求項１９】
前記中継部は、各リンクに対し割り当てられたフロー本数の比率に対応する伝送量にて特定データの複製を複数のリンクに送出する手段を有することを特徴とする請求項１３記載のＱｏＳルーティング装置。
【請求項２０】
前記複数のリンクのそれぞれは、フロー本数の比率が閾値より大きいリンクであることを特徴とする請求項１８又は１９記載のＱｏＳルーティング装置。
【請求項２１】
前記経路設定部は、各リンクに対し特定データのフローの伝送量に関する上限を設定し、リンクにおける特定データのフローの伝送量が前記上限を超える場合、当該フローの割り当てを他のリンクに切り替えることを特徴とする請求項１３乃至２０のいずれか１項に記載のＱｏＳルーティング装置。
【請求項２２】
前記中継部は、受信したデータの宛先ポート番号により該データが特定データか否かを判別することを特徴とする請求項１３乃至２１のいずれか１項に記載のＱｏＳルーティング装置。
【請求項２３】
前記経路設定部は、各リンクの通信品質値に基づき特定データ以外のデータのフロー本数を各リンクに割り当てることを特徴とする請求項１３乃至２２のいずれか１項に記載のＱｏＳルーティング装置。
【請求項２４】
前記論理ネットワークとしてオーバレイネットワークを形成することを特徴とする請求項１３乃至２３のいずれか１項に記載のＱｏＳルーティング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーバレイネットワークやＭＰＬＳ(Multi Protocol Label Switching)ネットワークのような、複数の候補経路のなかから適切な経路を選択可能な論理ネットワークの通信品質を制御するＱｏＳルーティング技術に関する。
【背景技術】
【０００２】
従来、ネットワークリソースの利用率の最適化や通信品質の向上を目的として、ネットワークの状態に基づいた経路選択・経路制御を実現するＱｏＳルーティング技術が知られている。この種の技術は、例えば後述の特許文献１及び２に記載されている。
【０００３】
特許文献１には、オーバレイネットワークにおけるルーティング方法が開示されている。このルーティング方法では、ソースノードから宛先ノードへのデフォルトパス（オーバレイノードが介在しない経路）のコストと、デフォルトパス以外の代替パスのコストとを測定する。コストとは、パスを評価するために、そのパスの遅延や利用可能帯域などの通信品質パラメータに基づいて算出される値である。同文献の方法は、測定した２種類のコストの比較結果に基づき最適なパスを選択することにより、遅延やスループットなどの点でネットワークパフォーマンスの向上を図る。
【０００４】
特許文献２には、ＭＰＬＳネットワークにおいて経路を選択する方法が開示されている。この方法は、制御戦略パラメータとリンク利用率とに基づいて網内の各リンクのリンクコストを変更し、該リンクコストに基づいて経路を選択するという方法である。これにより、ネットワークの状態に応じて効率的に経路が選択される。
【０００５】
このように、ＱｏＳルーティング技術では、経路またはリンクの品質情報を取得することが必要となる。オーバレイネットワークのように、ベースネットワーク上で論理的に構成されるネットワークの場合、隣接するオーバレイノード間には、ベースネットワーク上のルータやスイッチなど物理的なノードが介在する。
【０００６】
よって、オーバレイネットワークでは、ベースネットワークのトラフィック状況に応じて品質情報も変化するため、品質情報の取得をローカルノードのみにより行うことは困難である。そのため、特許文献１にも記載されているように、経路やリンクに対する品質計測により品質情報を取得することが行われている。また、上述したＭＰＬＳネットワークの場合でも、全ての品質情報をローカルノードで取得できるわけではなく、遅延やロス率などの品質情報は計測によって求める必要がある。
【０００７】
計測によりパスの品質情報を取得する方法は、アクティブ計測及びパッシブ計測の２種類に大分できる。アクティブ計測とは、ユーザのフロー以外に計測専用のフローを別途作成し、被計測経路またはリンクに計測専用のフローを流すことによって通信品質を計測する手法である。パッシブ計測は、計測用の特別のフローを用いず、ユーザのフローを観測することで品質の測定を行う。また、パッシブ計測の発展手法の１つとして、インライン計測と呼ばれる手法が存在する。このインライン計測は、ユーザフローのパケット間隔を調整しつつ、パケットの送信間隔と受信間隔とを比較することで通信品質を計測するというものである。
【特許文献１】特開２００６−１０９４５４号公報
【特許文献２】特表２００３−５０２９４１号公報
【非特許文献１】D. Rubenstein, J. Kurose, D. Towsley、“Detecting Shared Congestion of Flows Via End-to-End Measurement"、IEEE/ACM Transactions on Networking, Vol. 10, No. 3, June 2002
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、前述したような計測によって品質情報の取得を行う方法には、以下に挙げる課題がある。
【０００９】
１つ目は、計測手法としてアクティブ計測を用いる場合、計測用のフローがネットワークに余分な負荷をかけるという点である。経路やリンクの品質計測を行うには、ネットワークに対し定期的に計測用のパケットを送信せねばならないが、それは、計測トラフィックがネットワークに一定の負荷をかけることになる。特に、パスの伝送帯域が狭い、あるいは、既に混雑している経路やリンクに対して計測用パケットを送出する場合は、より負荷が大きくなり、その結果、通常パケットの伝送に支障が生じる。
【００１０】
２つ目の課題は、計測手法としてパッシブ計測を用いる場合、計測精度が低下する可能性があるという点である。パッシブ計測ではユーザのトラフィックを計測に用いるため、十分なユーザトラフィックが存在しない場合は、計測データとして有意な値を取得し難い。
【００１１】
本発明の目的は、経路またはリンクの品質情報の計測結果に基づいてＱｏＳルーティングを行う装置において、計測トラフィックのオーバヘッドを抑制しつつ、計測精度を高める技術を提供することにある。
【課題を解決するための手段】
【００１２】
本発明に係るＱｏＳルーティング方法は、ユーザ端末間で交信されるデータを伝送するための論理ネットワークを形成する複数のノード装置のそれぞれが、受信したデータが特定データか否かを判別し、自装置に接続された各リンクの通信品質値を特定データのフローに基づき計測し、通信品質値の計測精度をリンクごとに求め、より低い計測精度のリンクに対しより高い比率で特定データのフロー本数を割り当てるという方法である。
【００１３】
本発明に係るＱｏＳルーティング装置は、ユーザ端末間で交信されるデータを伝送するための論理ネットワークのノードであるＱｏＳルーティング装置であって、受信したデータが特定データか否かを判別し該データを転送する中継部と、自装置に接続された各リンクの通信品質値を特定データのフローに基づき計測する品質計測部と、通信品質値の計測精度をリンクごとに求める品質精度設定部と、より低い計測精度のリンクに対しより高い比率で特定データのフロー本数を割り当てる経路設定部とを備える。
【発明の効果】
【００１４】
本発明によれば、ＱｏＳルーティングの際に、より低い計測精度となったリンクに特定データのフローを誘導するよう動的に制御することから、各リンクの通信品質の計測精度が特定のリンクに偏ることを防ぐことができる。これにより、全てのリンクにおいて高い計測精度を得ることができる。また、通信品質の計測にユーザ端末間のフローを利用することから、計測オーバヘッドを抑制することができる。
【発明を実施するための最良の形態】
【００１５】
図１に、本発明の第１の実施形態の構成を示す。本実施形態のシステム１０１は、オーバレイノードＡ１〜Ａ４、リンクＢ１２〜Ｂ３４、ベースネットワークＣ１、及び、端末群Ｄ１〜Ｄ４から構成される。オーバレイノードＡ１〜Ａ４は、物理的なベースネットワークＣ１に接続されおり、このベースネットワークＣ１上に設定された論理的な伝送路であるリンクＢ１２〜Ｂ３４によりオーバレイネットワークを形成する。
【００１６】
オーバレイノードＡ１〜Ａ４には、ユーザの端末群Ｄ１〜Ｄ４が接続されている。端末群Ｄ１〜Ｄ４は、それぞれ、オーバレイノードＡ１〜Ａ４の配下に存在するクライアントやサーバなどの機器の集合を指し、オーバレイネットワークを介して相互に通信を行う。
【００１７】
オーバレイノードＡ１〜Ａ４は、いずれも同一の構成を持ち、以下、オーバレイノードＡ１を例に挙げてその構成を説明する。図１に示すように、オーバレイノードＡ１は、ルーティングプロトコルＡ１１と、ルーティングテーブルＡ１２と、品質計測部Ａ１３と、フロー中継部Ａ１４とを備える。
【００１８】
ルーティングプロトコルＡ１１は、オーバレイネットワーク内の経路情報情報の交換および経路計算を行う機能を備え、コスト設定部Ａ１１１と、経路情報交換部Ａ１１２と、リンクステートテーブルＡ１１３と、経路計算・設定部Ａ１１４とを含む。
【００１９】
コスト設定部Ａ１１１は、本発明のＱｏＳルーティング装置における品質精度設定部に対応する構成要素であり、転送データの経路計算に用いる、各経路やリンクのコストを設定する機能を有する。コストとは、従来のルーティング技術に用いられるものと同様であり、パスを評価するために、そのパスの遅延や利用可能帯域などの通信品質パラメータを正規化することにより得られる値である。コスト設定部Ａ１１１は、オーバレイノードＡ１が収容するリンクのコストを片方向ずつ設定する。すなわち、オーバレイノードＡ１においては、オーバレイノードＡ１からオーバレイノードＡ２、Ａ３、Ａ４へ向かうリンクＢ１２、Ｂ１３、Ｂ１４のコストが設定される。ここで設定したコストは、リンクステートテーブルＡ１１３へ登録され、また、経路情報交換部Ａ１１２により他のオーバレイノードへ通知される。
【００２０】
また、コスト設定部Ａ１１１は、通常の転送データのフローのルーティングに用いるコストの他に、転送データのうち計測用フローとして定義された特定のデータフローのコストを設定する。以下、前者を通常コスト、後者を計測用コストと呼ぶ。ここで、フローとは、ソース及び宛先のＩＰアドレス及びポート番号が共通のパケット群を指し、１つのパケット群は１本のフローに相当する。
【００２１】
通常コストは、従来のＱｏＳルーティング装置で用いられているものと同様であり、通信品質の情報に基づいて値が算出される。品質情報としての遅延に基づいてＱｏＳルーティングを行う場合は、各リンクの遅延の値をそのままコストとして用いることができる。より具体的には、例えば、遅延が１０ミリ秒の場合はコストを「10」とする。これにより、コストの総和が最も小さくなる経路を、最も遅延が小さい経路として取り扱うという、遅延ベースのＱｏＳルーティングを行うことができる。
【００２２】
また、品質情報として、例えば利用可能帯域を用いる場合は、各リンクの利用可能帯域の逆数をコストの値とし、各リンクの最大コストが閾値以下となるような経路を選ぶなどの方法がある。
【００２３】
なお、通常コストを算出する際は、計測の誤差を抑制するために、品質情報の１回分の計測値に基づいて算出するのではなく、複数回の計測値を用いて算出すべきである。そのためには、例えば、現在時刻t´からx秒以内に計測したn個の計測値の平均、あるいは、各計測値に重みをつけて加重平均処理した値を用いて算出する方法が考えられる。
【００２４】
一方、計測用コストは、各リンクの品質情報の計測精度に基づいて定める値である。計測用コストを設定するにあたっては、リンクの計測精度が低いほど小さい値を定め、反対に、計測精度が高いほど大きい値を定める。ここで、リンクの計測精度を高めるためには、計測回数を増加させる、すなわちそのリンクのフローを増加させればよい。そこで、コスト設定部Ａ１１１は、計測精度が低いリンクほどリンクコストを小さく設定することで、そのリンクの計測用フローを増加させるよう誘導する。これにより、計測精度が低くなったリンクの計測精度の向上を図る。
【００２５】
品質情報の計測精度をどのように定義するかは、さまざまな方法が考えられる。例えば、遅延を品質情報として用いる場合、遅延を計測したパケットのうち、現在時刻t´からx秒以内に計測したn個の値の計測時刻をt(k) (k=1,..,n)とすると、計測精度MAは次の式（１）により求めることができる。
【００２６】
MA＝Σ_k (1/(t´-t(k)))  ・・・（１）
上記式（１）によれば、現在から近い期間に計測された回数が多いほど、計測精度の値は大きくなる。計測精度の求め方は、上記の他にも、例えば、測定に使ったパケット数あるいは信頼区間の幅を用いた方法などがある。また、現行の品質情報の種類や運用ポリシに応じた方法を適宜採用してよい。
【００２７】
経路情報交換部Ａ１１２は、各ノードのＩＰアドレス及びインターフェース情報といった、各ノード間の経路やリンクに対する品質情報を他のオーバレイノード（Ａ２〜Ａ４）と交換する。本機能により、オーバレイネットワークに参加する各オーバレイノード間で、トポロジ情報および経路／リンクの品質情報を共有することができる。経路情報交換部Ａ１１２によって交換したネットワーク内のノードおよびリンクに関する情報は、リンクステートテーブルＡ１１３に記録される。
【００２８】
図２に、リンクステートテーブルＡ１１３の一例としてのリンクステートテーブルＡ１１３_１を示す。リンクステートテーブルＡ１１３_１には、オーバレイネットワークのオーバレイノード（Ａ１〜Ａ４）ごとに、そのノードに関連するリンク（片方向）の通常コストおよび計測用コストが保持されている。テーブルの「通常コスト」及び「計測用コスト」には、前述した方法により算出されたコスト値が記録される。なお、図示のリンクステートテーブルＡ１１３_１は、オーバレイノードＡ１のものであることから、このノードＡ１が設定した情報は「ノード」の「Ａ１」に記録される。また、他の「Ａ２」、「Ａ３」及び「Ａ４」に関する情報は、対応する他のオーバレイノード（Ａ２〜Ａ４）から通知された情報に基づき記録される。
【００２９】
経路計算・設定部Ａ１１４は、リンクステートテーブルＡ１１３に保持されているノード及びリンクの情報を用いて、転送データの宛先ごとにフローの経路計算を行う機能を有する。経路計算では、通常フロー及び計測用フローのそれぞれについて、各リンクに割り当てるフロー本数の比率を計算する。計算された比率は、ルーティングテーブルＡ１２に反映される。
【００３０】
経路計算・設定部Ａ１１４で用いる経路計算アルゴリズムは、通常フローと計測用フローとで異なるものを用いることができる。通常フローのための経路計算アルゴリズムは、コスト設定部Ａ１１１における通常コストの説明において例を示したが、その他のものであってもよい。一方、計測用フローに対する計算アルゴリズムとしては、基本的には、コストがより小さいリンクへと計測用フローを誘導するアルゴリズムを採用する。以下に、そのアルゴリズムの例を２つ挙げる。
【００３１】
計測用フローのためのアルゴリズムの第１の例は、最短パス優先アルゴリズム（Shortest Path First：SPF）である、いわゆるダイクストラ(Dijkstra)アルゴリズムである。このアルゴリズムによれば、各リンクに設定された計測用コストの和が最も小さい経路へ計測用フローを流すよう誘導される。
【００３２】
第２の例は、ある宛先までの経路を、１ホップ（ノードが介在しない）または２ホップ（１ノードが介在）の経路に限定した上で、各経路のリンクに設定された計測用コストのうちの小さい方の値を選択し、選択した値の逆数比に基づき各経路へのフロー本数を割り当てるというアルゴリズムである。
【００３３】
ここで、第２の例のアルゴリズムを用いて、オーバレイノードＡ１が計測用フローに対するオーバレイノードＡ３への経路を計算する事例を説明する。図３に、オーバレイノードＡ１からオーバレイノードＡ３への経路の候補を示す。候補は、経路Ｅ１３、Ｅ１２３、Ｅ１４３の３つである。経路Ｅ１３は、オーバレイノードＡ１からオーバレイノードＡ３への１ホップの経路であり、また、経路Ｅ１２３及び経路Ｅ１４３は、２ホップの経路である。
【００３４】
図２に示すリンクステートテーブルＡ１１３_１より、計測用コストを参照すると、１ホップである経路Ｅ１３（Ａ１→Ａ３）に対する計測用コストは「４」である。また、２ホップの経路Ｅ１２３については、この経路を構成する２つのリンクＢ１２及びリンクＢ２３（Ａ２→Ａ３）の情報を参照する。リンクＢ１２（Ａ１→Ａ２）の計測用コストは「８」であり、リンクＢ２３（Ａ２→Ａ３）のほうは「６」である。このとき、より小さい値を選択することにより、経路Ｅ１２３の計測用コストとして「６」を得る。同様にして、２ホップの経路Ｅ１４３に対する計測用コストは「１」となる。
【００３５】
上記のようにして求められた計測用コストに基づいて、経路Ｅ１３、Ｅ１２３、Ｅ１４３に対して、「1/4」、「1/6」及び「1」の比で計測用フローの本数が割り当てられる。その結果、上記３つの経路のうち、計測用コストが最も小さい、すなわち品質の計測精度が最も低い経路Ｅ１４３に対し、最も大きい割り当て比率が与えられる。これにより、経路Ｅ１４３に、より多くの計測用フローが流れるようになる。なお、割り当てられた比率は、例えば、重み付きラウンドロビン(Weighted Round Robin：WRR)アルゴリズムに適用することができる。そして、オーバレイノードＡ１を通過する新規のフローが発生した際、上記アルゴリズムにより、新規フローに何れかの経路を設定する。
【００３６】
経路計算・設定部Ａ１１４により求められた経路情報は、ルーティングテーブルＡ１２へ記録される。図４に、ルーティングテーブルＡ１２の一例であるルーティングテーブルＡ１２_１を示す。ルーティングテーブルＡ１２_１には、各「宛先ＩＰアドレス」における「フロークラス」の「通常」及び「計測」の各々に対して経路情報が設定されている。
【００３７】
「識別子」フィールドは、転送データのフロークラスを識別するための識別子である。図示の例では、ポート番号、あるいは、ＩＰアドレスおよびポート番号の組み合わせが設定されている。図示の識別子“any”は、ワイルドカードを示すエントリであり、“dst port”は特定の宛先ポート番号を表す。図４の例では、宛先ＩＰアドレス「100.2/16」のフローのうち、宛先ポート番号が「1080」であるもの（“dst port=1080”）を計測用フローとし、その他の宛先ポート番号（“any”）のフローが通常フローと定義されている。また、図示の他の例では、宛先ＩＰアドレスが「100.3/16」のフローのうち、ソースＩＰアドレス（“src addr”）が「200.1.0/24」であり、且つ、ソースポート番号（“src port”）が「1024」であるものを計測用フローと定義している。
【００３８】
なお、計測用フローに適用する宛先ポート番号としては、オーバレイネットワークを頻繁に利用する通信のものを設定することが望ましい。より具体的な例としては、例えば、Ｐ２Ｐ（Peer to Peer）のファイル共有アプリケーションであるNapster（登録商標）を用いる場合、ポート番号「8875」あるいは「7777」を計測用フローの識別子として設定することができる。
【００３９】
図４において、宛先ＩＰアドレス「100.2/16」の計測用フローに対する経路（「次ホップ」）としては、オーバレイノードＡ２に対応する「2.2.2.2」、オーバレイノードＡ３に対応する「3.3.3.3」、オーバレイノードＡ４に対応する「4.4.4.4」の３つがある。
【００４０】
また、それぞれの経路には「ウェイト」（重み）が設定されている。このウェイトは、経路計算・設定部Ａ１１４により算出される、前述のフロー本数の割り当て比率に対応する値である。図示の例では、宛先ＩＰアドレス「100.2/16」の計測用フローのための上記３つの経路に対し、「0.14」、「0.29」及び「0.57」のウェイトが記録されている。この比率に従って、宛先ＩＰアドレス「100.2/16」を持つ計測用フローのそれぞれに何れかの経路が設定される。
【００４１】
図４の「付与ラベル」は、フローを特定の経路に固定するためにフローの各パケットに付与されるラベルの値である。これは、経路を識別するためにＭＰＬＳネットワークで用いられるラベルと同等のものである。このようなラベルを用いることにより、１ホップごとに経路を選定するホップバイホップルーティングに替えて、フローの入側ノードが出側ノードまでの経路を一意に指定するルーティングを行うことができる。
【００４２】
品質計測部Ａ１３は、フロー中継部Ａ１４によって中継されるフローを用いて、パッシブ計測を行う機能を有する。ここで計測する品質情報の種類には、オーバレイノードＡ１と隣接するノード（Ａ２〜Ａ４）との間のリンクの遅延、ロス率、利用可能帯域などがある。計測した品質情報は、コスト設定部Ａ１１１へ渡され、前述した通常コストおよび計測用コストの設定に用いられる。
【００４３】
フロー中継部Ａ１４は、端末群Ｄ１のような、オーバレイノードＡ１の配下から送信されたパケットを受信し、受信したパケットが、通常フロー及び計測用フローの何れのものかを、そのパケットの宛先ポート番号のような識別子をもとに判別する。また、そのパケットの転送経路をルーティングテーブルＡ１２に基づき決定する。この際、必要に応じて、経路を固定するためのラベル（図４：付与ラベル）の付与も行う。
【００４４】
フロー中継部Ａ１４により中継するレイヤは、様々な種類が考えられる。以下に、ＩＰレベル中継の場合、ＵＤＰレベル中継の場合、ＴＣＰレベル中継の場合について説明する。
【００４５】
ＩＰレベル中継では、フロー中継部Ａ１４は、端末群Ｄ１からのＩＰパケットを受信し、必要ならばオーバレイネットワーク用のＩＰヘッダでカプセル化を行い、それを転送する。ＵＤＰレベル中継では、端末群Ｄ１からのＵＤＰコネクションを一旦終端し、オーバレイノード間で別のＵＤＰコネクションを張りなおすことにより、ＵＤＰコネクションレベルでの中継を行う。ＴＣＰレベル中継では、一旦端末群Ｄ１からのＴＣＰコネクションを終端し、オーバレイノード間で別のＴＣＰコネクションを張りなおし、ＴＣＰコネクションレベルでの中継を行う。
【００４６】
また、フロー中継部Ａ１４は、品質計測部Ａ１３がパッシブ計測を行うためのＡＰＩ(Application Program Interface)を備えており、このＡＰＩにより、各リンクの遅延、ロス率、利用可能帯域などの計測情報を取り扱う。具体的には、遅延情報、パケットロス情報、パケット間隔調整に関する制御情報が、ＡＰＩと品質計測部Ａ１３との間でやりとりされる。
【００４７】
ここで、品質計測部Ａ１３において利用可能帯域を測定するために、フロー中継部Ａ１４は、インライン計測と呼ばれる計測機能を備える。インライン計測は、送信するパケット間隔を調整しながら利用帯域を計測する機能である。このインライン計測技術を用いて利用可能帯域を測定する例を以下に説明する。
【００４８】
送信側では、パケットサイズMの２つのパケットのペア(P_i, P_(i+1))を、x_i秒の間隔を空けて送信し、各々のパケットに対する確認応答(Ack)パケットの間隔y_iをモニタする。そして、送信レート（M/x_i）と受信側での到着レート（M/y_i）とを比較し、「M/x_i=M/y_i」であれば利用可能帯域は「M/x_i」以上であり、「M/x_i>M/y_i」であれば利用可能帯域は「M/x_i」より小さいとみなす。このようにして、様々な間隔「x_k」でパケットペアを送信し、計測結果を統計的に処理することにより、利用可能帯域を推定することができる。
【００４９】
リンクＢ１２〜Ｂ３４は、図１に示すようにオーバレイノードＡ１〜Ａ４の各々を接続しており、ＩＰトンネルなど、パケットのカプセル化によりエミュレートされる仮想的な伝送路である。オーバレイネットワークのトポロジは、全ノード間にリンクが存在するフルメッシュでもよいし、一部のノード間にだけリンクが存在するパーシャルメッシュトポロジであってもよい。前者のフルメッシュトポロジを用いる場合、全てのオーバレイノードペア間で品質計測が行われる。そして、計測されたオーバレイノードペア間の中から、実際にフローを流す経路として用いられるリンクが決定される。また、経路の候補から特定のリンクを外したい場合など、フローの経路を予め制約したい場合は、後者のパーシャルメッシュトポロジが好適である。この場合、品質計測は、事前に利用可能と設定されたリンクに対応するオーバレイノードペア間だけで行われる。
【００５０】
ベースネットワークＣ１は、仮想的なオーバレイネットワークのベースとなる物理的なネットワークである。例えば、オーバレイネットワークにおいて、オーバレイノードＡ１→Ａ２→Ａ３という経路で流れるパケットは、ベースネットワークＣ１のソース・宛先アドレスを含むヘッダでカプセル化される。そして、ベースネットワークＣ１内において、ノードＡ１→Ａ２の区間では、オーバレイノードＡ１から送信されオーバレイノードＡ２を宛先とするパケットとして取り扱われる。また、ノードＡ２→Ａ３の区間では、オーバレイノードＡ２から送信されオーバレイノードＡ３を宛先とするパケットとして取り扱われる。
【００５１】
図５に示すフローチャートを参照して、計測用フローに関するオーバレイノードＡ１の動作について詳細に説明する。オーバレイノードＡ１は、宛先ポート番号等により計測用フローと判別されたパケットをフロー中継部Ａ１４が受信したとき、ルーティングテーブルＡ１２の該当するエントリに基づいて次ホップおよび付与ラベルを決定し、受信したパケットを転送する（ステップＳ１０１）。
【００５２】
品質計測部Ａ１３は、計測用フローが通過するリンクの通信品質をパッシブ計測により計測する（ステップＳ１０２）。ここで行うパッシブ計測は、前述のインライン計測機能を用いたものであり、例えば、各リンクの遅延や利用可能帯域の値を計測する。
【００５３】
品質計測部Ａ１３によるリンクの品質計測の結果が出ると、コスト設定部Ａ１１１は、その計測値を基に通常コストを求め、リンクステートテーブルＡ１１３の通常コストを更新する（ステップＳ１０３）。なお、前述したように、コスト算出の際は、複数回分の計測値を用いて算出することにより、計測誤差を影響を受け難くすることができる。
【００５４】
次に、コスト設定部Ａ１１１は、通信品質の計測精度を算出する（ステップＳ１０４）。計測精度は、コスト設定部Ａ１１１の説明において記したように、現在から近い期間に計測された値が多いほど計測精度の値が大きくなるようなアルゴリズムを用いて算出する。そして、算出された計測精度に基づきリンクステートテーブルＡ１１３の計測用コストを更新する（ステップＳ１０５）。計測用コストは、前述したように、算出された計測精度が低いほど小さな値となるよう更新される。更新されたコストは、経路情報交換部Ａ１１２により、他のオーバレイノードとの間で交換される（ステップＳ１０６）。
【００５５】
経路計算・設定部Ａ１１４は、交換したオーバレイネットワーク内の各リンクの通常コスト・計測用コストを基に、各宛先ＩＰアドレスに関する経路の計算を行い、その結果を用いてルーティングテーブルＡ１２を更新する（ステップＳ１０７）。
【００５６】
なお、リンクステートテーブルＡ１１３に設定される情報としては、通常コスト及び計測用コストに替えて、それぞれの根拠となる品質情報および計測精度をそのまま用いてもよい。その場合のリンクステートテーブルＡ１１３の例を図６に示す。
【００５７】
図６に示すリンクステートテーブルＡ１１３_２は、図２のリンクステートテーブルＡ１１３_１における「通常コスト」及び「計測コスト」に替えて、品質情報としての「利用可能帯域」と、「計測精度」とが設定されている。品質情報としては、図示の利用可能帯域に限らず、例えば、遅延またはロス率、あるいは、それらの組み合わせなどであってもよい。
【００５８】
図６のリンクステートテーブルＡ１１３_２を用いる場合、コスト設定部Ａ１１１が、各リンクの利用可能帯域及び計測精度をリンクステートテーブルＡ１１３へ設定する。また、経路計算・設定部Ａ１１４は、通常コストの代わりに利用可能帯域、計測用コストの代わりに計測精度の値を用いて経路計算を行う。このように、ルーティングプロトコルＡ１１が、必ずしも品質情報および計測精度をコストへ変換して扱わなくてもよい。
【００５９】
本実施形態では、計測用フローが、より小さい計測用コストのリンクへ自動的に誘導されるが、仮に、そのリンクの利用可能帯域が比較的小さい場合、大量の計測用フローが同時的に発生することにより、そのリンクで輻輳が生じるおそれがある。そこで、このような事態を防止するために、予め各リンクに対する計測用フローの量に上限を設け、上限を超える場合は、現行のリンクの次に計測用コストが小さいリンク、すなわち現行リンクの次に振り分けウェイトが大きいリンクへ切り替えるように制御してもよい。
【００６０】
以上説明したように、第１の実施形態の各オーバレイノードＡ１〜Ａ４は、通常フローのＱｏＳルーティングに用いる通常コストとは別に、パッシブ計測に用いる計測用フローのための計測用コストを設定する。そして、計測精度が低いリンクほど計測用コストを小さく設定する。これにより、計測用フローが、より計測精度の低いリンクへと動的に誘導されることから、そのリンクの計測回数が増加し、ひいては、計測精度が高められる。
【００６１】
よって、本実施形態によれば、ＱｏＳルーティングの品質計測にパッシブ計測を用いても、各リンクの計測精度が特定のリンクに偏ることなく、全てのリンクにおいて高い計測精度が得られるよう制御できる。また、アクティブ計測のように計測負荷が増大せず、計測オーバヘッドを抑制することができる。
【００６２】
図７に、本発明の第２の実施形態の構成を示す。本実施形態のシステム１０２におけるオーバレイノード（Ａ２〜Ａ５）は、前述した第１の実施形態（図１）におけるオーバレイノード（Ａ１〜Ａ４）に相関判定部Ａ１５及び相関テーブルＡ１６を付加したものと同等である。なお、図１のオーバレイノードＡ１は、本実施形態ではオーバレイノードＡ５に置き換えられている。
【００６３】
相関判定部Ａ１５は、品質計測部Ａ１３による通信品質の計測結果に基づいて、複数のリンク間に品質変化の相関があるか否かを判定する。品質変化の相関は、複数のリンクが互いにボトルネック箇所を共有することに起因するものである。ボトルネック箇所を共有するとは、オーバレイネットワーク上の複数の異なるリンクが、ベースネットワークＣ１上の同じノードやリンクを共用し、且つ、その共用するノードやリンクが各リンクの通信品質を劣化させるボトルネックになっているという状態を指す。このように複数のリンクに共通するボトルネック箇所が存在する場合、それら複数のリンク間に品質変化の相関が現れ易い。よって、その相関を計測することによりボトルネック箇所を共有するかどうかを判定することができる。
【００６４】
品質変化の相関に関し、より具体的に説明する。図７のオーバレイネットワークにおいて、例えば、リンクＢ１２及びリンクＢ１３がベースネットワークＣ１でボトルネック箇所を共有している場合、そのボトルネック箇所での輻輳によりリンクＢ１２のロス率が高くなると、同時に他方のリンクＢ１３のロス率も高くなる現象が観測される。この現象を観測することにより、リンクペア（Ｂ１２／Ｂ１３）間のロス率の相関度を求める。
【００６５】
なお、相関度を求めるにあたり、その値を相関の有無を表す２値で算出すると誤差が大きくなることから、例えば、「０」から「１」の間の任意の数値で表すようにすることが望ましい。相関度の求め方としては、例えば、非特許文献１に記載されている方法などを適用することができる。また、相関度を求める他の方法として、オーバレイネットワークの各リンクがベースネットワークＣ１の何れのノード間にあるかの情報を用いるという方法であってもよい。ただし、この方法は、ベースネットワークＣ１のトポロジおよび経路情報を予め把握することができるシステムに限られる。
【００６６】
相関テーブルＡ１６には、相関判定部Ａ１５による判定結果がリンクペアごとに登録される。図８に、相関テーブルＡ１６の一例としての相関テーブルＡ１６_１を示す。相関テーブルＡ１６_１には、ロス率の相関度が示されており、例えば、リンクＢ１２（Ａ５→Ａ２）とリンクＢ１３（Ａ５→Ａ３）との間のロス率の相関度は「0.8」であることがわかる。
【００６７】
本実施形態のコスト設定部Ａ１１１は、相関テーブルＡ１６に記録された相関度を利用して通常コストおよび計測用コストを設定する。これは、相関度が比較的高いリンクペアに対し、一方のリンクのコストが更新されたとき、その更新内容を他方のリンクのコストに反映させるという制御である。この制御を実行すべきか否かを判定するために、相関度に予め閾値を設定する。そして、対象のリンクペアの相関度が閾値より高い場合に上記制御を行う。また、閾値より低い場合は、両者の相関が低いとみなし、上記制御を行うことなく現状のコスト値を維持する。
【００６８】
通常コストの場合、リンクペアの一方のリンクの通常コストが更新されたとき、更新された通常コストと相関度とに基づいて、他方のリンクの通常コストを更新する。一例を挙げると、いま、リンクＢ１２及びリンクＢ１３に対する現在の通常コストがそれぞれ「20」及び「30」であるとする。また、これら２つのリンクの相関度は、予め設定された閾値「0.5」より高い「0.8」であるとする。この場合、リンクＢ１２の通常コストが「20」から「15」に更新されたとき、他方のリンクＢ１３の通常コスト「30」が、リンクＢ１２の通常コスト「20」と相関度「0.8」とを用いて更新される。具体的には、「(30+20x0.8)/2=23」より、リンクＢ１３の通常コスト「30」が「23」へ更新される。
【００６９】
計測用コストの場合も、一方のリンクの計測用コストが更新されたとき、他方のリンクの計測用コストを更新する。ここで、計測用コストの更新の例を、計測用コストとして計測精度をそのまま適用する方法（図６）を用いて説明する。いま、リンクＢ１２及びリンクＢ１３に対する計測精度が「0.1」及び「0.7」であり、両リンクの相関度が閾値「0.5」より高い「0.8」であるとする。
【００７０】
現状では、リンクＢ１２の計測精度が他方のリンクＢ１３のそれより低いため、計測用フローがリンクＢ１２へ流れやすい。しかしながら、リンクＢ１２とリンクＢ１３との相関度は、比較的高いことから、リンクＢ１２に対する計測は、リンクＢ１３に対する計測をもって代替可能である。
【００７１】
そこで、リンクＢ１２に対する計測を代替するため、リンクＢ１３の計測精度をリンクＢ１２の計測精度へ反映させる。具体的には、２つのリンクの計測精度「0.1」（Ｂ１２）及び「0.7」（Ｂ１３）と相関度「0.8」とを用いて、「(0.7x0.8+0.1x(1-0.8))=0.58」の演算を行う。その結果、リンクＢ１２の計測精度「0.1」が「0.58」に更新され、更新された計測精度「0.58」が他のノードへ通知される。
【００７２】
上記の制御は、すなわち、リンクＢ１２への計測用フローを増加させて計測精度を徐々に高める代わりに、相関度を利用して、リンクＢ１２の計測精度を一挙に高い値へ変更するという制御である。よって、本実施形態によれば、計測用フローを、より計測精度が低く且つ他のリンクとの相関度が低いリンクへまわすことができる。そして、結果として、少ない計測用フローでオーバレイネットワーク全体の計測精度を高める効果が期待できる。
【００７３】
図９に、本発明の第３の実施形態の構成を示す。本実施形態のシステム１０３におけるオーバレイノード（Ａ２〜Ａ４、Ａ６）は、前述した第１の実施形態（図１）におけるオーバレイノード（Ａ１〜Ａ４）に、フロー中継部Ａ１４に替えて、フロー分割・中継部Ａ１７を備えたものと同等である。なお、図１のオーバレイノードＡ１は、本実施形態ではオーバレイノードＡ６に置き換えられている。
【００７４】
フロー分割・中継部Ａ１７は、対応する端末群（Ｄ１〜Ｄ４）からのフローを中継する際に、そのフローを複数に分割する。いま、端末群Ｄ１のある端末をソースとし、端末群Ｄ３のある端末を宛先とする１つのフローが存在すると仮定する。この場合、そのフローをオーバレイノードＡ６で例えば２つに分割し、片方のフローはオーバレイノードＡ２を経由する経路を割り当て、もう片方のフローはオーバレイノードＡ４を経由する経路を割り当てるといった制御が可能となる。なお、分割数は、２つに限らず、２つ以上であってもよい。
【００７５】
また、フロー分割・中継部Ａ１７は、オーバレイネットワーク側から分割されたフローを受信した際、受信したフロー部分の組立て処理により１つのフローを形成する中継処理を行う。
【００７６】
次に、フロー分割・中継部Ａ１７の動作について、オーバレイノードＡ６を例に挙げて説明する。オーバレイノードＡ６のフロー分割・中継部Ａ１７は、計測用フローを端末群Ｄ１から受信したとき、そのフローを、ルーティングテーブルＡ１２に基づいて複数フローに分割し、それらを複数経路により伝送する処理を行う。ルーティングテーブルＡ１２として、図４のルーティングテーブルＡ１２_１を参照すると、宛先ＩＰアドレス「100.2/16」への計測用フローに対する候補経路は、次ホップＩＰアドレス「2.2.2.2」、「3.3.3.3」、「4.4.4.4」の３つの経路がある。また、ウェイトは、それぞれ「0.14」、「0.29」、「0.57」である。
【００７７】
そこで、宛先ＩＰアドレスとして「100.2/16」を持つ１本の計測用フローを、ウェイトの比率に従って３つのフローに分割し、それらを上記の３つの経路へ伝送する。また、経路が３つあっても、必ずしもフローを３分割する必要はなく、例えば、所定の閾値以上のウェイトをもつ経路を対象に分割してもよい。これにより、より低い計測精度の経路へ優先的に計測用フローを流すよう制御できる。
【００７８】
フロー分割・中継部Ａ１７は、転送するフローを複数に分割する際、そのフローをパケットごとにマッピングする。これにより、フロー中の各パケットは、単一の何れかの経路にマッピングされるが、この方法に替えて、１つのパケットをコピーし、それらを複数の経路へ流すようマッピングしてもよい。コピーの対象は、全てのフローを対象としてもよいし、一部のフローとしてもよい。この場合、受信側のオーバレイノードでは、複数フローから同一のパケットを受信することになるので、各ノードに、受信したパケットがコピー対象のパケットか否かを検出する機能を持たせる。そして、受信したパケットがコピー対象のパケットである場合、２個目以降の重複パケットは無視してフロー組立て・中継処理を行うよう制御する。
【００７９】
以上説明した第３の実施形態によれば、フロー分割・中継部Ａ１７が、１つの計測用フローを複数のフローに分割し複数の経路に流す機能を具備することから、少ない計測用フローでより多くのリンクを計測することができ、計測の効率化を図ることができる。また、同時に複数の経路やリンクへ計測用フローを流すことにより、リンク間の相関の計測が行い易くなる効果もある。
【００８０】
上記実施形態では、計測用フローの識別子（図４）に宛先ポート番号を用いたが、本発明を実施するにあたっては、宛先ポート番号に限らず、例えば、受信したパケットに含まれるデータパターン（シグニチャ：signature）を計測用フローの識別子としてもよい。その場合、受信パケットから検出したパターンが、予め定義されたパターンに合致したとき、そのパケットが計測用フローに対応すると判定する。
【図面の簡単な説明】
【００８１】
【図１】本発明の第１の実施形態の構成を示すブロック図である。
【図２】本発明の第１の実施形態におけるリンクステートテーブルの説明図である。
【図３】本発明の第１の実施形態における経路の候補に関する説明図である。
【図４】本発明の第１の実施形態におけるルーティングテーブルの説明図である。
【図５】本発明の第１の実施形態の動作を示すフローチャートである。
【図６】本発明の第１の実施形態におけるリンクステートテーブルの説明図である。
【図７】本発明の第２の実施形態の構成を示すブロック図である。
【図８】本発明の第２の実施形態における相関テーブルの説明図である。
【図９】本発明の第３の実施形態の構成を示すブロック図である。
【符号の説明】
【００８２】
Ａ１〜Ａ６  オーバレイノード
Ａ１１  ルーティングプロトコル
Ａ１１１  コスト設定部
Ａ１１２  経路情報交換部
Ａ１１３  リンクステートテーブル
Ａ１１４  経路計算・設定部
Ａ１２  ルーティングテーブル
Ａ１３  品質計測部
Ａ１４  フロー中継部
Ａ１５  相関判定部
Ａ１６  相関テーブル
Ａ１７  フロー中継・分割部
Ｂ１２、Ｂ１３、Ｂ１４、Ｂ２３、Ｂ２４、Ｂ３４  リンク
Ｃ１  ベースネットワーク
Ｄ１〜Ｄ３  端末群
Ｅ１３、Ｅ１２３、Ｅ１４３  経路
【図１】
2008113186.tif 000003
【図２】
2008113186.tif 000004
【図３】
2008113186.tif 000005
【図４】
2008113186.tif 000006
【図５】
2008113186.tif 000007
【図６】
2008113186.tif 000008
【図７】
2008113186.tif 000009
【図８】
2008113186.tif 000010
【図９】
2008113186.tif 000011