(57)【特許請求の範囲】
【請求項１】
ＩＰネットワークに接続するＮ個のオーバーレイノードによって構成される論理網であるオーバーレイネットワークの、発信元ノードから着信先ノードへの通信経路を決定する通信経路決定方法において、
上記オーバーレイネットワークに属する各ノードｉ（ｉ＝１〜Ｎ）は、自ノードを発信元とし他のノードｊ（ｉを除く全て）を着信先ノードｊとして、発信元ノードｉと着信先ノードｊの間の通信品質を測定し、
また、上記各ノードｉは、Ｎ個のノードの中からＭ個のノードを中継ノード候補として選択し、該中継候補ノードｋから着信先ノードｊの間の通信品質測定結果を該中継候補ノードから取得し、
該各ノードｉは、自ノードｉと着信先ノードｊの間の通信品質と、自ノードｉから中継候補ノードｋを経由して着信先ノードｊに到達するときの通信品質を比較し、前者の方がよい品質を与える場合には、中継ノードは用いることなく、着信先ノードｊへ直接転送する経路を自ノードｉから着信先ノードｊへの通信経路とし、後者の方がよい品質を与える場合には、その中でも最も高品質を提供するノードｋ＊を中継ノードとし、通信経路を自ノード→中継ノードｋ＊→着信先ノードｊと決定し、
次回の中継ノード候補選択時には、過去に中継ノードとして選択された頻度が高いノードが選択される確率を大きくしておき、
さらに、
前記オーバーレイネットワーク内に中継ノード候補の情報を管理するサーバを配置し、
該サーバは、各ノードｋのｎ番目の測定周期での得点Ｃ（ｎ，ｋ）を管理し、
時点ｎにおいて、発信元ノードｉは、着信先ノードｊへの経路を決定する際に、該サーバから各ノードｋ（ｋ＝１〜Ｎ）の得点Ｃ（ｎ，ｋ）を読み出し、確率ｐ＿ｋ＝Ｃ（ｎ，ｋ）／ΣｋＣ（ｎ，ｋ）でノードｋ（ｋはｉ以外）を中継候補ノードとして選択し、これをＭ個の中継候補ノードが決定するまで繰り返し、
発信元ノードｉは、着信先ノードｊへの経路を決定する際に、ノードｋ＊が中継ノードとして決定されたならば、該ノードｋ＊は該サーバへその旨を通知し、
同様の手順を、全ての発信元−着信先ノードのペアについて実施し、
上記サーバは、各ノードから自身が中継ノードとして決定された旨を受信し、各ノードｋが時点ｎに中継ノードとなった回数Ｃ’（ｎ，ｋ）をカウントし、
該サーバは、カウントした値を用いて、次の時点ｎ＋１における各ノードｋの得点をＣ（ｎ＋１，ｋ）＝（１−α）Ｃ（ｎ，ｋ）＋αＣ’（ｎ，ｋ）により更新することを特徴とするオーバーレイネットワークにおける通信経路決定方法。
（αは予め定める平滑化パラメータで０＜α＜１、Ｃ（ｎ，ｋ）の初期値はＣ（０，ｋ）＝１（全てのｋ））
【請求項２】
請求項１に記載オーバーレイネットワークにおける通信経路決定方法において、
前記中継ノードの得点Ｃ（ｎ，ｋ）を更新する場合、請求項１に記載のように更新する代わりに、予め定めるパラメータβ（＞０）とｃ（＞１）を用いてｔ’＝ｍｉｎ｛ｎ＋β，ｃ｝を計算し、
Ｃ（ｎ＋１）＝（１−１／ｔ’）Ｃ（ｎ，ｋ）＋１／ｔ’Ｃ’（ｎ，ｋ）により得点を更新することを特徴とするオーバーレイネットワークにおける通信経路決定方法。
【請求項３】
請求項１もしくは請求項２のいずれかに記載のオーバーレイネットワークにおける通信経路決定方法において、
前記中継ノード候補を選択する場合、請求項１に記載のように選択する代わりに、
ｐ＿ｋ＝｛ｅｘｐ（Ｃ（ｎ，ｋ））−１｝／Σｋ｛ｅｘｐ（Ｃ（ｎ，ｋ）−１）｝の確率でノードｋを中継ノード候補とすることを特徴とするオーバーレイネットワークにおける通信経路決定方法。
【請求項４】
請求項１から請求項３のいずれかに記載のオーバーレイネットワークにおける通信経路決定方法において、
前記通信品質を測定する場合、自ノードｉと着信先ノードｊの間の通信品質として、遅延時間ｄ（ｉ，ｊ）を用い、自ノードｉから着信先ノードｊへの経路を決定するときにＭ個の中継候補ノードのいずれかを用いて迂回するか否かを決定する際には、自ノードｉから中継候補ノードｋの遅延時間ｄ（ｉ，ｋ）と中継候補ノードｋと着信先ノードｊの間の遅延時間ｄ（ｋ，ｊ）を用いて、ｄ（ｉ，ｊ）＞ｄ（ｉ，ｋ）＋ｄ（ｋ，ｊ）を満たすｋが存在するか否かを判断し、
存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最小にするｋの中継ノードｋ＊とし、通信経路を自ノードｉ→中継ノードｋ＊→着信先ノードｊと決定することを特徴とするオーバーレイネットワークにおける通信経路決定方法。
【請求項５】
請求項１から請求項３のいずれかに記載のオーバーレイネットワークにおける通信経路決定方法において、
前記通信品質を測定する場合、自ノードｉと着信先ノードｊの間の通信品質として、ノードｉとｊの間のパケット損失率ｐ（ｉ，ｊ）を用い、自ノードｉから着信先ノードｊへの経路を決定するときにＭ個の中継候補ノードのいずれかを用いて迂回するか否かを決定する際には、自ノードｉから中継候補ノードｋのパケット損失率ｐ（ｉ，ｋ）と中継候補ノードｋから着信先ノードｊのパケット損失率ｐ（ｋ，ｊ）を用いて、ｐ（ｉ，ｊ）＞１−｛１−ｐ（ｉ，ｋ）｝｛１−ｐ（ｋ，ｊ）｝を満たすｋが存在するか否かを調べ、存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最小にするｋを中継ノードｋ＊とし、通信経路を自ノードｉ→中継ノードｋ＊→着信先ノードｊと決定することを特徴とするオーバーレイネットワークにおける通信経路決定方法。
【請求項６】
請求項１から請求項３のいずれかに記載のオーバーレイネットワークにおける通信経路決定方法において、
前記通信品質を測定する場合、自ノードｉと着信先ノードｊの間の通信品質として、ノードｉとｊの間の利用可能帯域Ｂ（ｉ，ｊ）を用い、自ノードｉから着信先ノードｊへの経路を決定するときにＭ個の中継候補ノードのいずれかを用いて迂回するか否かを決定する際には、自ノードｉから中継候補ノードｋの利用可能帯域Ｂ（ｉ，ｋ）と中継候補ノードｋと着信先ノードｊの間の上記Ｂ（ｋ，ｊ）を用いて、Ｂ（ｉ，ｊ）＜ｍｉｎ｛Ｂ（ｉ，ｋ），Ｂ（ｋ，ｊ）｝を満たすｋが存在するか否かを調べ、存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最大にするｋを中継ノードｋ＊とし、通信経路を自ノードｉ→中継ノードｋ＊→着信先ノードｊと決定することを特徴とするオーバーレイネットワークにおける通信経路決定方法。
【請求項７】
請求項１から請求項６のいずれかに記載のオーバーレイネットワークにおける通信経路決定方法において、
前記中継ノード候補を管理するサーバは、各ノードｋが時点ｎに中継ノードとなった回数Ｃ’（ｎ，ｋ）をカウントしておき、その合計値ΣｋＣ’ （ｎ，ｋ）が予め定めた閾値よりも小さい場合には、各ノードの得点Ｃ（ｎ，ｋ）を再び初期化してＣ（０，ｋ）（ｋ＝１〜Ｎ）とすることを特徴とするオーバーレイネットワークにおける通信経路決定方法。
【請求項８】
請求項１から請求項７に記載のいずれかの方法でノード間の通信品質を測定し、測定結果を用いて迂回するか否かを決定する手段、および、請求項１から請求項７に記載のいずれかの方法で中継候補ノードを選択し、中継ノードを決定する手段を具備することを特徴とするオーバーレイネットワークにおける通信経路決定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットにおけるエンド・ツー・エンドの通信品質を向上させる技術に関し、特にＩＰネットワーク上に論理的に形成されたオーバーレイネットワークを用いた通信経路で、エンド・ツー・エンドの通信品質を効率的に向上させるために好適な通信経路決定方法および通信経路決定システムに関する。
【背景技術】
【０００２】
ＩＰネットワークを代表するインターネットは、多様なアプリケーションの収容を可能にすべく発展かつ普及してきており、昨今では、ＶｏＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  ＩＰ）やストリーミングに代表されるＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）に敏感な実時間アプリケーション等の収容も急速に発展している。
【０００３】
これに伴って、エンド・ツー・エンドでの輻輳を回避し、品質を向上するための技術（「エンド・ツー・エンドＱｏＳ管理技術」）をインターネット上で実現することが重要な課題となっている。しかしながら、このような技術を実現する上では、以下に示す問題点がある。
１）インターネットは既に社会的インフラ化しており、既存のネットワーク構造を大きく変更するような、ネットワークレイヤでの新たな機能拡張は困難である。
２）インターネットは管理主体の異なる複数のＡＳ（Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍ）によって形成されており、全てのＡＳに対して一斉に新たな機能を拡張することは困難である。
【０００４】
こうした中で、下位のネットワークレイヤを変更することなくエンド・ツー・エンドＱｏＳの向上を可能とする有力な技術として、例えば、Ｌ．Ｚｈｉ  ａｎｄ  Ｐ．Ｍｏｈａｐａｔｒａ，“ＱＲＯＮ：ＱｏＳ−ａｗａｒｅ  ｒｏｕｔｉｎｇ  ｉｎ  ｏｖｅｒｌａｙ  ｎｅｔ−ｗｏｒｋｓ，”ＩＥＥＥ  Ｊ．Ｓｅｌｅｃｔ．Ａｒｅａｓ  Ｃｏｍｍｕｎ．，ｖｏｌ．２２，ｐｐ．２９−４０，Ｊａｎｕａｒｙ  ２００４．（非特許文献１参照）に記載された「オーバ−レイネットワークによるＱｏＳ管理技術」が注目されている。
【０００５】
オーバーレイネットワークとは、例えば、ＷＩＤＥプロジェクト，“オーバーレイネットワークによる統合分散環境，”ＷＩＤＥプロジェクト研究報告書，第１７部，２００２．（非特許文献２参照）においても記載されているように、既存のリンクを用いて、その上位層に目的に応じて論理的（仮想的）なリンクを形成し、構成するネットワークである。
【０００６】
図１は、オーバーレイネットワークによるＱｏＳ管理の基本的な既念を示す図である。
図１において、ｘからｙに向けて、破線矢印で表わされる経路にトラヒックが流れているものとする。また、この経路上には輻輳しているＩＰルータが存在しており、その結果として、ｘ，ｙ間のＱｏＳが低下しているとする。
このとき、オーバーレイノードａ，ｂ，ｃで形成されるオーバーレイネットワークを用いて、実践矢印で表される経路（ｘ→オーバーレイノードａ→オーバーレイノードｂ→オーバーレイノードｃ→ｙ）にトラヒックを迂回させることができれば、上記の輻輳を回避できる。
【０００７】
実際に、亀井，川原，“エンドホストオーバーレイネットワークによるトラヒックオンジニアリングとその有効性，”信学ソ大．ＢＳ−５−３，２００４．（非特許文献３参照）、あるいは、Ｓ．Ｒｅｗａｓｋａｒ  ａｎｄ  Ｊ．Ｋａｕｒ，“Ｔｅｓｔｉｎｇ  ｔｈｅ  Ｓｃａｌａｂｉｌｉｔｙ  ｏｆ  Ｏｖｅｒｌａｙ  Ｒｏｕｔｉｎｇ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅｓ，”Ｐｒｏｃ．ＰＡＭ  ２００４．Ａｐｒｉｌ  ２００４．（非特許文献４参照）、あるいは、Ｓ．Ｂａｎｅｒｊｅｅ，Ｔ．Ｇ．Ｇｒｉｆｉｎ  ａｎｄ  Ｍ．Ｐｉａｓ，“Ｔｈｅ  Ｉｎｔｅｒｄｏｍａｉｎ  Ｃｏｎｎｅｃｔｉｖｉｔｙ  ｏｆ  ＰｌａｎｅｔＬａｂ  Ｎｏｄｅｓ，”Ｐｒｏｃ．ＰＡＭ２００４，Ａｐｒｉｌ  ２００４．（非特許文献５参照）では、上記のような迂回経路が実網において多数存在していることを実測に基づいて示している。
【０００８】
しかし、上記非特許文献３と５の結果は、オーバーレイネットワークのトポロジをフルメッシュとし、全てのオーバーレイノード間で測定した品質情報を利用して理想的な通信経路計算を行った場合の評価となっており、オーバーレイノードの総数が増加した場合のスケーラビリティ（システムの拡張性）の低下については考慮されていない。
すなわち、オーバーレイノードの総数が大きい場合には、全てのオーバーレイノード間の品質測定情報を用いて通信経路の計算を行うことは現実的には不可能である、という問題がある。
上記の問題を回避するため、上記非特許文献４では、迂回経路を提供する中継ノード候補数を制限した場合を評価している。しかし、中継ノード候補は単にランダムに選択しているに過ぎず、中継ノード候補の選択方法までは検討していなかった。
【０００９】
【非特許文献１】Ｌ．Ｚｈｉ  ａｎｄ  Ｐ．Ｍｏｈａｐａｔｒａ，“ＱＲＯＮ：ＱｏＳ−ａｗａｒｅ  ｒｏｕｔｉｎｇ  ｉｎ  ｏｖｅｒｌａｙ  ｎｅｔ−ｗｏｒｋｓ，”ＩＥＥＥ  Ｊ．Ｓｅｌｅｃｔ．Ａｒｅａｓ  Ｃｏｍｍｕｎ．，ｖｏｌ．２２，ｐｐ．２９−４０，Ｊａｎｕａｒｙ  ２００４．
【非特許文献２】ＷＩＤＥプロジェクト，“オーバーレイネットワークによる統合分散環境，”ＷＩＤＥプロジェクト研究報告書，第１７部，２００２．
【非特許文献３】亀井，川原，“エンドホストオーバーレイネットワークによるトラヒックオンジニアリングとその有効性，”信学ソ大．ＢＳ−５−３，２００４．
【非特許文献４】Ｓ．Ｒｅｗａｓｋａｒ  ａｎｄ  Ｊ．Ｋａｕｒ，“Ｔｅｓｔｉｎｇ  ｔｈｅ  Ｓｃａｌａｂｉｌｉｔｙ  ｏｆ  Ｏｖｅｒｌａｙ  Ｒｏｕｔｉｎｇ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅｓ，”Ｐｒｏｃ．ＰＡＭ  ２００４．Ａｐｒｉｌ  ２００４．
【非特許文献５】Ｓ．Ｂａｎｅｒｊｅｅ，Ｔ．Ｇ．Ｇｒｉｆｉｎ  ａｎｄ  Ｍ．Ｐｉａｓ，“Ｔｈｅ  Ｉｎｔｅｒｄｏｍａｉｎ  Ｃｏｎｎｅｃｔｉｖｉｔｙ  ｏｆ  ＰｌａｎｅｔＬａｂ  Ｎｏｄｅｓ，”Ｐｒｏｃ．ＰＡＭ２００４，Ａｐｒｉｌ  ２００４．
【非特許文献６】内田真人，亀井聡，川原亮一、“オーバーレイネットワークによるＱｏＳルーチング制御に関する評価、”電子情報通信学会技術研究報告ＩＮ２００５−３１、ｐｐ．１３−１８、（２００５−０７）．
【発明の開示】
【発明が解決しようとする課題】
【００１０】
一方、内田真人，亀井聡，川原亮一、“オーバーレイネットワークによるＱｏＳルーチング制御に関する評価、”電子情報通信学会技術研究報告ＩＮ２００５−３１、ｐｐ．１３−１８、（２００５−０７）．（非特許文献６参照）において、本発明者等は中継ノード候補を計測データに基づいて適切に制限することにより、全ノードを中継候補として経路探索を行った最適な場合とほぼ同等のＱｏＳ向上を図れることを示している。
【００１１】
しかしながら、この方法では、全てのノードペアに対する経路について、全ノードを中継ノード候補とした場合の最適な経路を計算しておき、各ノードが最適な経路を提供する中継ノードとして選択される頻度を計算しておき、その頻度の高い上位Ｍノードを抽出しておき、以上の準備の下で、以降の経路計算時にはＭ個の中継候補ノードのみを用いていた。従って、一旦、全経路探索を行う必要があり、そのための経路計算コストは依然として存在してしまう、という問題があった。
【００１２】
また、上位Ｍノードを決定した後に、ＩＰネットワークのトラヒック特性が大きく変化した場合に、該Ｍノードはもはや上位Ｍノードではなくなっている可能性があり、トラヒック特性の変化に追従できない可能性があった。
【００１３】
（目的）
本発明の目的は、上述の問題に鑑み、常に中継ノード候補数を一定数以下に抑えておき、実際の中継ノード選択行為を通じて高品質な経路を提供可能な中継ノードが選択される確率が高くなるように、該選択確率を動的に変化させてオーバーレイネットワークにおける高品質な通信経路を決定できる通信経路決定方法および通信経路決定システムを提供することにある。
【課題を解決するための手段】
【００１４】
本発明の第１の方法は、ＩＰネットワークに接続するＮ個のオーバーレイノードによって構成される論理網であるオーバーレイネットワークの、発信元ノードから着信先ノードへの通信経路を決定する通信経路決定方法において、上記オーバーレイネットワークに属する各ノードｉ（ｉ＝１〜Ｎ）は、自ノードを発信元とし他のノードｊ（ｉを除く全て）を着信先ノードｊとして、発信元ノードｉと着信先ノードｊの間の通信品質を測定しておき、その一方でＮ個のノードの中からＭ個のノードを中継ノード候補として選択し、該中継候補ノードｋから着信先ノードｊの間の通信品質測定結果を該中継候補ノードから取得し、自ノードｉと着信先ノードｊの間の通信品質と、自ノードｉから中継候補ノードｋを経由して着信先ノードｊに到達するときの通信品質を比較し、前者の方がよい品質を与える場合には中継ノードは用いずに着信先ノードｊへ直接転送する経路を自ノードｉから着信先ノードｊへの通信経路とし、後者がよい品質を与える場合には、その中でも最も高品質を提供するノードｋ＊を中継ノードとし、通信経路を自ノード→中継ノードｋ＊→着信先ノードｊと決定し、次回の中継ノード候補選択時には、過去に中継ノードとして選択された頻度が高いノードが選択される確率を大きくしておくことを特徴とする。
【００１５】
本発明の第２の方法は、上記第１の方法において、オーバーレイネットワーク内に中継ノード候補の情報を管理するサーバが存在し、該サーバは各ノードｋのｎ番目の測定周期（時点ｎ）での得点Ｃ（ｎ，ｋ）を管理している。時点ｎにおいて発信元ノードｉは着信先ノードｊへの経路を決定する際に、該サーバから各ノードｋ（ｋ＝１〜Ｎ）の得点Ｃ（ｎ，ｋ）を読み出し、確率ｐ＿ｋ＝Ｃ（ｎ，ｋ）／ΣｋＣ（ｎ，ｋ）でノードｋ（ｋはｉ以外）を中継候補ノードとして選択し、これをＭ個の中継候補ノードが決定するまで繰り返す。発信元ノードｉは着信先ノードｊへの経路を上記第１の方法で決定する。その際に、ノードｋ＊が中継ノードとして決定されたならば、該ノードｋ＊は該サーバへその旨を通知する。同様の手順は全ての発信元−着信先ノードのペアについて実施される。該サーバは、各ノードから自身が中継ノードとして決定された旨を受信し、各ノードｋが時点ｎに中継ノードとなった回数Ｃ’（ｎ，ｋ）をカウントする。その値を用いて、次の時点ｎ＋１における各ノードｋの得点をＣ（ｎ＋１，ｋ）＝（１−α）Ｃ（ｎ，ｋ）＋αＣ’（ｎ，ｋ）により更新する。なお、ここで、αは予め定める平滑化パラメータで０＜α＜１であり、Ｃ（ｎ，ｋ）の初期値はＣ（０，ｋ）＝１（全てのｋ）とすることを特徴とする。
ここで、ノードの得点Ｃ（ｎ，ｋ）は、ノードｋが高品質な経路を提供すると増加していき、そうでないと減少するように更新している。従って、この得点に比例して中継ノード候補を選択することにより、高品質な経路を提供した中継ノードが次回の中継ノード候補選択時に選ばれ易くなるようにしている。
【００１６】
本発明の第３の方法は、上記第２の方法に記載の中継ノードの得点Ｃ（ｎ，ｋ）を更新する方法において、第２の方法のように更新する代わりに、予め定めるパラメータβ（＞０）とｃ（＞１）を用いてｔ’＝ｍｉｎ｛ｎ＋β，ｃ｝を計算し、Ｃ（ｎ＋１）＝（１−１／ｔ’）Ｃ（ｎ，ｋ）＋１／ｔ’Ｃ’（ｎ，ｋ）により得点を更新することを特徴とする。
ｎ＋βとｃの最小値をとって、得点更新の平滑化パラメータ１／ｔ’として用いる理由は、学習の初期の段階（つまり、ｎが小さい段階）では、そのときの中継ノードとして選択された回数Ｃ’（ｎ，ｋ）を積極的に反映するようにするためである。このようにすることにより、目標値へ迅速に収束させることが可能になる。
【００１７】
本発明の第４の方法は、上記第２の方法に記載の中継ノード候補を選択する方法において、第２の方法のように選択する代わりに、ｐ＿ｋ＝｛ｅｘｐ（Ｃ（ｎ，ｋ））−１｝／Σｋ｛ｅｘｐ（Ｃ（ｎ，ｋ）−１）｝とすることを特徴とする。
ｅｘｐｏｎｅｎｔｉａｌをとることにより、Ｃ（ｎ，ｋ）の値が大きいノードｋがより選ばれ易くしている。
【００１８】
本発明の第５の方法は、上記第１の方法において、自ノードｉと着信先ノードｊの間の通信品質として、遅延時間ｄ（ｉ，ｊ）を用い、自ノードｉから着信先ノードｊへの経路を決定するときにＭ個の中継候補ノードのいずれかを用いて迂回するか否かを決定する際には、自ノードｉから中継候補ノードｋの遅延時間ｄ（ｉ，ｋ）と中継候補ノードｋと着信先ノードｊの間の遅延時間ｄ（ｋ，ｊ）を用いて、ｄ（ｉ，ｊ）＞ｄ（ｉ，ｋ）＋ｄ（ｋ，ｊ）を満たすｋが存在するかを調べ、存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最小にするｋの中継ノードｋ＊とし、通信経路を自ノードｉ→中継ノードｋ＊→着信先ノードｊと決定することを特徴とする。
【００１９】
本発明の第６の方法は、上記第５の方法のように遅延時間を品質として用いる代わりに、ノードｉとｊの間のパケット損失率ｐ（ｉ，ｊ）を用い、自ノードｉから着信先ノードｊへの経路を決定するときにＭ個の中継候補ノードのいずれかを用いて迂回するか否かを決定する際には、自ノードｉから中継候補ノードｋのパケット損失率ｐ（ｉ，ｋ）と中継候補ノードｋから着信先ノードｊのパケット損失率ｐ（ｋ，ｊ）を用いて、ｐ（ｉ，ｊ）＞１−｛１−ｐ（ｉ，ｋ）｝｛１−ｐ（ｋ，ｊ）｝を満たすｋが存在するか否かを調べ、存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最小にするｋを中継ノードｋ＊とし、通信経路を自ノードｉ→中継ノードｋ＊→着信先ノードｊと決定することを特徴とする。
【００２０】
本発明の第７の方法は、上記第５の方法のように遅延時間を品質として用いる代わりに、ノードｉとｊの間の利用可能帯域Ｂ（ｉ，ｊ）を用い、自ノードｉから着信先ノードｊへの経路を決定するときにＭ個の中継候補ノードのいずれかを用いて迂回するか否かを決定する際には、自ノードｉから中継候補ノードｋの利用可能帯域Ｂ（ｉ，ｋ）と中継候補ノードｋと着信先ノードｊの間のそれＢ（ｋ，ｊ）を用いて、Ｂ（ｉ，ｊ）＜ｍｉｎ｛Ｂ（ｉ，ｋ），Ｂ（ｋ，ｊ）｝を満たすｋが存在するか否かを調べ、存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最大にするｋを中継ノードｋ＊とし、通信経路を自ノードｉ→中継ノードｋ＊→着信先ノードｊと決定することを特徴とする。
【００２１】
本発明の第８の方法は、上記第２の方法に記載の中継ノード候補管理サーバにおいて、各ノードｋが時点ｎに中継ノードとなった回数Ｃ’（ｎ，ｋ）をカウントしておき、その合計値ΣｋＣ’（ｎ，ｋ）が予め定めた閾値よりも小さい場合には、各ノードの得点Ｃ（ｎ，ｋ）を再び初期化してＣ（０，ｋ）（ｋ＝１〜Ｎ）とすることを特徴とする。
ΣｋＣ’（ｎ，ｋ）は、高品質な経路を提供するノードが適切に選ばれた回数を表すので、この値が小さくなるということは、ＩＰレイヤのトラヒック条件やＩＰレイヤのルーチングが変わった等の要因で、これまでの学習結果（つまり、各ノードの得点Ｃ（ｎ，ｋ））は不適切となっていることを意味する。従って、得点をリセットすることにより、得点を学習し直して、新たなトラヒック条件に適した状態に迅速に対応できるようにしている。
【００２２】
本発明の第９のシステムは、上記第１，５，６，７のいずれかの方法で、ノード間の通信品質を測定し、それを用いて迂回するか否かを決定する手段、上記第２，３，４，８のいずれかの方法で、中継候補ノードを選択し、中継ノードを決定する手段を具備することを特徴とする。
【発明の効果】
【００２３】
本発明によれば、オーバーレイネットワークにおける通信経路計算に伴うコストを削減しながら、通信品質の改善を図ることが可能になる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施例を、図面により詳細に説明する。
（実施例１）
図２は、本発明の実施例１に係るオーバーレイネットワークの基本構成図である。
各オーバーレイノード１〜５は、他のノードと論理的に接続している。すなわち、オーバレイノード１〜５は、オーバーレイネットワークに存在する他のノードのＩＰアドレスを知っており、通信可能な状態にある。また、中継ノード候補を管理する管理サーバ１０が存在する。各ノード１〜５は、他ノードとの通信経路を一定周期毎に更新する。
以下、ノード１に着目して説明を進める（他のノード２〜５も、各々が独立に同様の振る舞いを行う）。なお、図２の実線は通信経路、破線は管理サーバ１０から各オーバレイノード１〜５への制御線である。
【００２５】
図３は、本発明の第２の方法で中継候補を選択し、第５の方法でノード間の通信品質を測定し、それを用いて迂回するか否かを決定するオーバーレイノード１の構成例を示すブロック図であり、図６は管理サーバの構成例を表すブロック図である。
図３に示すように、通信品質測定部２１は、測定周期τ毎に自身（オーバーレイノード１）と他のノードｊ（ｊ＝２〜５）との間の遅延時間ｄ（１，ｊ）を測定する（同様に、ノードｉ（ｉ＝２〜５）も、他のノードｊ（ｊ＝ｉを除くｊ＝１〜５のいずれか）との遅延時間ｄ（ｉ，ｊ）を測定している）。遅延時間の測定を実施したならば、その旨を中継候補選択部２４に通知する。また、他ノードの通信品質取得部２２からの指示に従って、遅延時間測定結果を通知する。
【００２６】
中継候補選択部２４は、管理サーバ１０から、各ノードｋのｎ番目の測定周期（以下、時点ｎと呼ぶ）での得点Ｃ（ｎ，ｋ）をダウンロードし、確率ｐ＿ｋ＝Ｃ（ｎ，ｋ）／ΣｋＣ（ｎ，ｋ）でノードｋ（ｋはｉ以外）を中継候補ノードとして選択し、これをＭ個の中継候補ノードが選択されるまで繰り返す。選択されたＭ個の中継候補ノードを、中継ノード決定部２３に通知する。
【００２７】
中継ノード決定部２３は、通信品質取得部２２に対して、該中継候補ノードｋからノードｋとノードｊの遅延時間測定結果ｄ（ｋ，ｊ）を取得するように指示する。通信品質取得部２２は、ｄ（ｋ，ｊ）を取得した後、中継ノード決定部２３にそれを通知する。
以上の手順を、全ての中継候補ノードに対して実施する。
【００２８】
中継ノード決定部２３は、自ノード１から中継候補ノードｋの遅延時間ｄ（ｋ，ｊ）を通信品質測定部２２から取得し、それと中継候補ノードｋと着信先ノードｊの間に遅延時間ｄ（ｋ，ｊ）を用いて、ｄ（１，ｊ）＞ｄ（１，ｋ）＋ｄ（ｋ，ｊ）を満たすｋがＭ個の候補の中に存在するか否かを調べ、存在しない場合には、ノード１からｊの直通路を該通信経路として決定し、存在する場合には、右辺を最小にするｋを中継ノードｋ＊として決定する。
決定後、ノードｋ＊に対して、通信経路を自ノード１→中継ノードｋ＊→着信先ノードｊと設定するように要求する。以上の手順を、全ての着信先ノードｊ（ｊ＝２〜５）に対して実施する。
【００２９】
中継ノードｋ＊は、ノード１→中継ノードｋ＊→着信先ノードｊの経路を設定する。その後、自身が中継ノードとして選択された旨を管理サーバ１０に通知する。
【００３０】
管理サーバ１０は、中継ノードｋ＊からの通知を受けたならば、中継ノード選択回数管理部３１においてノードｋ＊が中継ノードとなった回数Ｃ’（ｎ，ｋ）を、Ｃ’（ｎ，ｋ）←Ｃ’（ｎ，ｋ）＋１とカウントアップする。以上の動作を、ｎ番目の測定周期が終わるまで繰り返して、各ノードの中継ノードとなった回数を数える。
ｎ＋１番目の測定周期になったならば、管理サーバ１０のノード得点更新部３２において全てのノードの得点Ｃ（ｎ＋１，ｋ）をＣ（ｎ＋１，ｋ）＝（１−α）Ｃ（ｎ，ｋ）＋αＣ’（ｎ，ｋ）により更新する。なお、ここで、αは予め定められる平滑化パラメータで０＜α＜１であり、Ｃ（ｎ，ｋ）の初期値はＣ（０，ｋ）＝１（全てのｋ）とする。
【００３１】
（実施例２）
以下、実施例２について、実施例１の変更点のみを記述し、それ以外は実施例１と同じ処理を行うので、それ以外の説明を省略する。
実施例２では、実施例１における管理サーバ１０で得点を更新する手順を、実施例１のように行う代わりに、予め定めるパラメータβ（＞０）とｃ（＞１）を用いてｔ’＝ｍｉｎ｛ｎ＋β，ｃ｝を計算し、Ｃ（ｎ＋１）＝（１−１／ｔ’）Ｃ（ｎ，ｋ）＋１／ｔ’Ｃ’（ｎ，ｋ）により得点を更新する。
【００３２】
（実施例３）
以下、実施例３について、実施例１の変更点のみを記述し、それ以外は実施例１と同じ処理を行うので、それ以外の説明を省略する。
実施例１における中継（ノード）候補選択部２４において、確率ｐ＿ｋ＝Ｃ（ｎ，ｋ）／ΣｋＣ（ｎ，ｋ）でノードｋ（ｋはｉ以外）を中継候補ノードとして選択していた代わりに、ｐ＿ｋ＝｛ｅｘｐ（Ｃ（ｎ，ｋ）−１）／Σｋ（ｅｘｐ（Ｃ（ｎ，ｋ）−１）｝で中継ノードを選択する。
【００３３】
（実施例４）
以下、実施例４について、実施例１の変更点のみを記述し、それ以外は実施例１と同じ処理を行うので、それ以外の説明を省略する。
実施例１における通信品質測定部２１において、遅延時間を品質として用いた代わりに、ノードｉとｊの間のパケット損失率ｐ（ｉ，ｊ）を用い、中継ノード決定部２３においては、Ｍ個の中継候補ノードのいずれかを用いて迂回するか否かを決定する際に、自ノードｉから中継候補ノードｋのパケット損失率ｐ（ｉ，ｋ）と中継候補ノードｋと着信先ノードｊの間のパケット損失率ｐ（ｋ，ｊ）を用いて、ｐ（ｉ，ｊ）＞１−｛１−ｐ（ｉ，ｋ）｝｛１−ｐ（ｋ，ｊ）｝を満たすｋが存在するか否かを調べ、存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最小にするｋを中継ノードｋ＊として決定する。
【００３４】
（実施例５）
以下、実施例５について、実施例１の変更点のみを記述し、それ以外は実施例１と同じ処理を行うので、それ以外の説明を省略する。
実施例１における通信品質測定部２１において、遅延時間を品質として用いていた代わりに、ノードｉとｊの間の利用可能帯域Ｂ（ｉ，ｊ）を用い、中継ノード決定部２３においては、Ｍ個の中継候補ノードｋの利用可能帯域Ｂ（ｉ，ｋ）と中継候補ノードｋと着信先ノードｊの間のそれＢ（ｋ，ｊ）を用いて、Ｂ（ｉ，ｊ）＜ｍｉｎ｛Ｂ（ｉ，ｋ），Ｂ（ｋ，ｊ）｝を満たすｋが存在するか否かを調べ、存在しない場合には、ノードｉからｊの直通を該通信経路として決定し、存在する場合には、右辺を最大にするｋを中継ノードｋ＊として決定する。
【００３５】
（実施例６）
以下、実施例６について、実施例１〜５の変更点のみを記述し、それ以外は実施例１と同じ処理を行うので、それ以外の説明を省略する。
実施例１から５に記載の管理サーバ１０において、各ノードｋが時点ｎに中継ノードとなった回数Ｃ’（ｎ，ｋ）をカウントしておき、その合計値ΣｋＣ’（ｎ，ｋ）が予め定めた閾値よりも小さい場合には、各ノードの得点Ｃ（ｎ，ｋ）を再び初期化してＣ（０，ｋ）とする。
【００３６】
（実施例の評価）
以下、本発明の実施例２の手順を実行したときの評価結果を記述する。
図４は、全ノードペアの遅延時間の累積分布を示す図である。
本評価においては、国内で適当に地理的に離れた１８箇所のＩＳＰに利用者として契約したコンピュータ端末において、各端末間において１時間毎に毎秒１パケットを３分間送出して、遅延時間（３分間での最大遅延）を測定したデータを用いた。ｎ時間目（ｎ＝１，２，・・・２４）における端末ｉとｊの間の遅延時間ｄ（ｎ，ｉ，ｊ）を用い、１８個の端末をオーバーレイノードとみなし、各ノードｉは他のノードｊへの通信経路を本発明の実施例の手順に従って決定していく。なお、中継ノード候補数Ｍ＝４とし、β＝０．５、ｃ＝４とした。このときの全ノードペアの遅延時間の累積分布（２４時間分）を、図４に示している。図中、ｐｒｏｐｏｓｅｄが実施例２の場合である。
【００３７】
なお、図４においては、比較するために、経路制御を行わなかった場合、つまり、全ての直通路を選択した場合を、ｄｅｆａｕｌｔで示している。また、中継ノード候補数を制限せずにＮ＝１８個の全ノードを中継候補として利用できる最適な場合を、ｏｐｔｉｍａｌで示している。また、中継ノード候補を単純にランダムに４個選択するようにした場合を、ｒａｎｄｏｍで示している。
これにより、本発明では、全経路探索時（ｏｐｔｉｍａｌ）とほぼ同等の品質改善ができていることが分かる。
【００３８】
図５は、ｎ時間毎の遅延時間の時系列を示す図である。
ここでは、ｎ時間毎、つまりｎ番目の測定周期の遅延時間の時系列を示している。すなわち、ｎ時間目における、全ノードペアの遅延時間の９５パーセンタイルをプロットしている。この図からも、本発明は安定して低遅延時間を維持できていることが確認できる。
【図面の簡単な説明】
【００３９】
【図１】オーバーレイネットワークによる経路制御の概念を説明する図である。
【図２】本発明の実施例１に係るオーバーレイネットワークの基本構成図である。
【図３】本発明におけるオーバレイノードの構成例を示す図である。
【図４】本発明の効果を示す説明図である。
【図５】本発明を適用した場合の遅延時間の振る舞いを示した図である。
【図６】本発明における管理サーバの構成例を示す図である。
【符号の説明】
【００４０】
１，２，３，４，５  オーバーレイノード
１０  管理サーバ
２１  通信品質測定部
２２  通信品質取得部
２３  中継ノード決定部
２４  中継候補選択部
３１  中継ノード選択回数管理部
３２  ノード得点更新部
ａ，ｂ，ｃ  オーバーレイノード
【図１】
0004553314.tif 000002
【図２】
0004553314.tif 000003
【図３】
0004553314.tif 000004
【図４】
0004553314.tif 000005
【図５】
0004553314.tif 000006
【図６】
0004553314.tif 000007