(57)【要約】【課題】インターネットのような大規模IPネットワークにおいてもノードの位置および経路情報の取得として、十分に利用可能な通信における経路提供装置およびその経路測定方法を提供。【解決手段】経路推定装置10は、送受信部12、経路検出機能部14および経路情報保存部16を含み、経路検出機能部14の距離推定機能部26で応答を基に通信対象までの距離を推定し、推定した距離の真偽を検証し、経路調査機能部28で距離の真偽に応じて経路を調査し、調査結果に応じて経路情報を経路情報保存部16に格納することにより通常のコマンドでの調査による送受信回数に比べて回数を格段に減らす。【選択図】図１
2008028735.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークにおいて、制御メッセージの規約を基にしたコマンドにより経路情報を収集し、通信対象との経路を提供する経路提供装置において、該装置は、
該装置から前記通信対象に前記コマンドを送信し、該コマンドに対する前記通信対象からの応答を受信する送受信手段と、
前記経路情報を検出する検出機能ブロックと、
検出した経路情報を保存する情報保存手段とを含み、
前記検出機能ブロックは、前記応答を基に前記通信対象までの距離を推定し、推定した距離の真偽を検証する推定機能ブロックと、
前記距離の真偽に応じて経路を調査する調査機能ブロックとを含み、
調査結果に応じて前記経路情報を前記情報保存手段に格納することを特徴とする経路提供装置。
【請求項２】
請求項１に記載の装置において、前記通信ネットワークは、IP（Internet Protocol）ネットワークであることを特徴とする経路提供装置。
【請求項３】
請求項１に記載の装置において、前記推定機能ブロックは、前記応答を基に前記通信対象までの距離を推定する距離算出機能ブロックと、
推定した距離の真偽を検証する距離検証機能ブロックとを含むことを特徴とする経路提供装置。
【請求項４】
請求項１に記載の装置において、前記調査機能ブロックは、前記コマンドの検出方向と逆の方向の順に検出し、調査した経路情報を判定し、既存のノードの検出に応じて前記情報保存手段に格納させる逆順検出機能ブロックと、
前記コマンドの検出方向と同方向の順に検出し、調査した経路情報を判定し、判定結果に応じて前記情報保存手段に格納させる正順検出機能ブロックとを含むことを特徴とする経路提供装置。
【請求項５】
請求項１に記載の装置において、前記検出機能ブロックは、サブネットを検出する拡大機能ブロックを含むことを特徴とする経路提供装置。
【請求項６】
請求項１に記載の装置において、前記検出機能ブロックは、サブネットのサイズを縮小する縮小機能ブロックを含むことを特徴とする経路提供装置。
【請求項７】
通信ネットワークにおいて、制御メッセージの規約を基にしたコマンドにより経路情報を収集し、通信対象との経路を測定する方法において、該方法は、
前記通信対象に前記コマンドを送信し、該コマンドに対する前記通信対象からの応答を受信し、
前記応答を基に前記通信対象までの距離を推定し、推定した距離の真偽を検証する第１の工程と、
前記距離の真偽に応じて経路を調査する第２の工程と、
第２の工程は、前記コマンドの検出方向と逆の方向の順に検出し、調査した経路情報を判定し、既存のノードの検出に応じて前記経路情報を格納する第３の工程と、
前記コマンドの検出方向と同方向の順に検出し、調査した経路情報を判定し、判定結果に応じて前記経路情報を格納する第４の工程とを含むことを特徴とする経路測定方法。
【請求項８】
請求項７に記載の方法において、該方法は、サブネットを検出する第５の工程を含むことを特徴とする距離測定方法。
【請求項９】
請求項７に記載の方法において、該方法は、サブネットのサイズを縮小する縮小機能ブロックを含むことを特徴とする経路測定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信における経路提供装置およびその経路測定方法に関するものである。とくに、本発明の通信における経路提供装置は、通信ネットワークにおけるノードの位置および通信経路から得られる距離を動的に検出する距離検出装置に関するものである。また、本発明の通信における経路測定方法は、得られる情報を基に通信相手までの距離を動的に推定する方法に関するものである。
【背景技術】
【０００２】
ネットワークの経路情報を収集する方法として、“traceroute”を利用するものがある。“traceroute”は、ある基点となるノード、すなわち端末から別のノードまでの中継ノードであるルータの列を知ることができるコマンドである。特許文献１に開示されているように、“traceroute”は、OSI（Open Systems Interconnection）基本参照モデルのネットワーク層に相当するIP（Internet Protocol）内のICMP（Internet Control Message Protocol）を利用して開発されたコマンドである。“traceroute”は、複数のノードに対して経路を調査し、その結果を統合すれば、ネットワークの接続情報を「基点ノードを根とする木構造」として得ることができる。
【０００３】
この木構造は、基点ノードからの定点観測によるものであることから、各ノード間の距離は、実際のネットワーク上の距離と異なる可能性もある。しかしながら、一般的なルーティングプロトコルによって管理されているネットワークにおいては十分近似した結果を得ることができる。一般的なルーティングプロトコルには、RIP（Routing Information Protocol）、OSPF（Open Shortest Path First）、BGP（Broader Gateway Protocol）、IS-IS（Intermediate System To Intermediate System）等がある。
【特許文献１】特開2004−208068号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
“traceroute”は、経路情報を取得する手段として最も安易で、かつ現在最も広く使われている方法であるが次のようないくつかの問題がある。第１に、“traceroute”は、一つの経路を調べるために数回の通信処理（ICMP Echo Request）を行なうため時間を要する。第２に、“traceroute”は、一つの経路調査に時間がかかるから、複数のノードに対する経路調査する用途には向いていない。第３に、“traceroute”は、動的な経路制御が行なわれているネットワークではノードやリンクの増設、および障害や輻輳といった事象によって経路情報が変化する場合があることから、一度経路を調べても時間が経過にともない得られた情報が陳腐化してしまう。
【０００５】
本発明はこのような従来技術の欠点を解消し、インターネットのような大規模IPネットワークにおいてもノードの位置および経路情報の取得として、十分に利用可能な通信における経路提供装置およびその経路測定方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は上述の課題を解決するために、通信ネットワークにおいて、制御メッセージの規約を基にしたコマンドにより経路情報を収集し、通信対象との経路を提供する経路提供装置において、この装置は、この装置から通信対象にコマンドを送信し、このコマンドに対する通信対象からの応答を受信する送受信手段と、経路情報を検出する検出機能ブロックと、検出した経路情報を保存する情報保存手段とを含み、検出機能ブロックは、応答を基に通信対象までの距離を推定し、推定した距離の真偽を検証する推定機能ブロックと、距離の真偽に応じて経路を調査する調査機能ブロックとを含み、調査結果に応じて経路情報を情報保存手段に格納することを特徴とする。
【０００７】
また、本発明は上述の課題を解決するために、通信ネットワークにおいて、制御メッセージの規約を基にしたコマンドにより経路情報を収集し、通信対象との経路を測定する方法において、この方法は、通信対象にコマンドを送信し、このコマンドに対する通信対象からの応答を受信し、応答を基に通信対象までの距離を推定し、推定した距離の真偽を検証する第１の工程と、距離の真偽に応じて経路を調査する第２の工程と、第２の工程は、コマンドの検出方向と逆の方向の順に検出し、調査した経路情報を判定し、既存のノードの検出に応じて経路情報を格納する第３の工程と、コマンドの検出方向と同方向の順に検出し、調査した経路情報を判定し、判定結果に応じて経路情報を格納する第４の工程とを含むことを特徴とする。
【発明の効果】
【０００８】
本発明に係る経路提供装置およびその経路測定方法によれば、検出機能ブロックの推定機能ブロックで応答を基に通信対象までの距離を推定し、推定した距離の真偽を検証し、調査機能ブロックで距離の真偽に応じて経路を調査し、調査結果に応じて経路情報を情報保存手段に格納することにより通常のコマンドでの調査による送受信回数に比べて回数を格段に減らすことができ、調査時間も短縮させることができ、調査結果が蓄積されてくると、調査済みの近隣ノードの量が増え、効果を高め、情報量と経路検査にかかる負荷を抑制し、動的な経路変更を検出し、情報の陳腐化を抑制することができる。
【発明を実施するための最良の形態】
【０００９】
次に添付図面を参照して本発明による通信における経路提供装置の実施例を詳細に説明する。図１を参照すると、本発明による通信における経路提供装置の実施例は、経路推定装置10に送受信部12、経路検出機能部14および経路情報保存部16を含み、経路検出機能部14の距離推定機能部26で応答を基に通信対象までの距離を推定し、推定した距離の真偽を検証し、経路調査機能部28で距離の真偽に応じて経路を調査し、調査結果に応じて経路情報を経路情報保存部16に格納することにより通常のコマンドでの調査による送受信回数に比べて回数を格段に減らすことができ、調査時間も短縮させることができ、調査結果が蓄積されてくると、調査済みの近隣ノードの量が増え、効果を高め、情報量と経路検査にかかる負荷を抑制し、動的な経路変更を検出し、情報の陳腐化を抑制することができる。
【００１０】
本実施例は、本発明の通信における経路提供装置を経路推定装置10に適用した場合である。本発明と直接関係のない部分について図示および説明を省略する。以下の説明で、信号はその現れる接続線の参照番号で指示する。
【００１１】
経路推定装置10は、図１に示すように、送受信部12、経路検出機能部14および経路情報保存部16を含む。送受信部12は、IPネットワーク18と経路推定装置10とを接続し、ICMPを基に通信情報送受信する機能を有する。送受信部12は、IPネットワーク18に接続され、経路推定装置10の内部では経路検出機能部14と接続される。送受信部12は、ICMPの通信規約に応じた情報を扱い、この情報20を、IPネットワーク18を介して、通信先に送信し、IPネットワーク18を介して、通信先から情報20を受信する。また、送受信部12は、上述したICMPの通信規約に応じて受信した情報20を、情報22として経路検出機能部14に送信し、経路検出機能部14から情報22を受信し、情報20として送信する。
【００１２】
経路検出機能部14は、指定した端末装置までの経路を検出する機能を有する。経路検出機能部14は、送受信部12との間で情報22を送受信する。また、経路検出機能部14は、経路情報保存部16との間で情報24を送受信する。経路検出機能部14は、場合に応じて経路情報保存部16から読み出した情報24をスルーさせ、送受信部12に供給してもよい。経路検出機能部14は、この機能を実現させるため距離推定機能部26および経路調査機能部28を含む。
【００１３】
距離推定機能部26は、端末装置、すなわちノードまでの距離を推定する機能を有する。距離推定機能部26は、さらに、距離算出機能部30および距離検証機能部32を含む。距離算出機能部30は、距離を推定し、算出する機能を有する。距離算出機能部30は、後述する距離推定処理（SUB1）に対応する。また、距離検証機能部32は、算出した距離Dの真偽を検証する機能を有する。距離検証機能部32は、後述する距離検証処理（SUB2）に対応する。
【００１４】
また、経路調査機能部28は、たとえば装置10から指定された端末装置、すなわちノードまでの経路である中間ノード列を調査する機能を有する。経路調査機能部28は、逆順検出機能部34および正順検出機能部36を含む。逆順検出機能部34および正順検出機能部36は、互いに逆向きの関係にあり、各順序で向きのノード列を調査する。逆順検出機能部34および正順検出機能部36は、それぞれ、後述する逆順検出処理（SUB3）および正順検出処理（SUB4）に対応する。
【００１５】
経路情報保存部16は、IPネットワーク18の接続情報を保存管埋する機能を有する。経路情報保存部16はストレージである。
【００１６】
なお、経路推定装置10における送受信部12、経路検出機能部14および経路情報保存部16は、図示しないがシステム制御部により制御されている。
【００１７】
次に本発明の経路提供装置を適用した経路推定装置10によって特定のノードまでの経路を調査する場合の動作を説明する。ここで、特定のノードとは、端末装置やルータ等である。最初に、経路推定装置10は、経路推定機能部26で距離推定処理を実行する。経路推定装置10は、この装置10から検査対象ノードまでの推定距離、すなわち中継ノードの数を記号Dとして表わし、決定する（SUB1）。
【００１８】
次に距離検証機能部32で決定した距離Dに対する真偽を検証する（SUB2）。検証は、距離Dの値と実際の距離とを比較し、距離Dの値が実際の距離と同じか大きいか否かを判定する。距離Dの値が実際の距離と同じか大きい場合、真と判定する。また、距離Dの値が実際の値より小さい場合は偽と判定する。この検証後、真偽判断に進む（ステップS10へ）。
【００１９】
次に検証結果が真か否かを判定する（ステップS10）。真であった場合(YES)、逆順検出処理に進む（SUB3へ）。また、偽であった場合（NO）、正順検出処理に進む（SUB4へ）。
【００２０】
次に経路調査機能部28において逆順検出処理では、検査対象のノードと経路推定装置10との間にある経路を距離D-1の位置から経路推定装置10に向かって検出する。この検出方向は、tracerouteとは逆の方向であることから、逆順という。この検出後、経路の推定を終了する。また、正順検出処理では、検査対象ノードと経路推定装置10との間にある経路を距離D+1の位置から検査対象ノードに向かって検出する。この検出方向は、tracerouteと同じ方向であることから、正順という。この検出後、逆順検出処理に進む（SUB3へ）。
【００２１】
次に経路推定装置10において実行される各処理動作の詳細をさらに説明する。まず、距離推定処理（SUB1）を、図３を参照しながら、説明する。距離推定処埋は、距離推定機能部30において実行される処理である。距離推定処理が実行されると、有効回数（TTL：Time To Live）に最大値である255を設定する。この設定値を含むICMP Echo Requestメッセージを作成する（サブステップSS10）。
【００２２】
次に作成したICMP Echo Requestメッセージは、距離推定機能部30からICMP Echo Requestメッセージ22として送受信部12に供給される。送信部12は、ICMP Echo Requestメッセージ20をIPネットワーク18に送信する（サブステップSS12）。
【００２３】
次に送受信部12でIPネットワーク18を介して、供給される応答メッセージ20を受信する。送信部12は、受信した応答メッセージ20を応答メッセージ22として経路検出機能部14に出力する。経路検出機能部14の距離算出機能部30では、応答メッセージ22を解析し、応答メッセージ22がICMP Echo Replyであるか否かを判断する（サブステップSS14）。応答メッセージ22がICMP Echo Replyである場合（YES）、距離Dの算出処理に進む（サブステップSS16へ）。応答メッセージ22がICMP Echo Reply以外であった場合（NO）、エラーとして処理し、接続子Aを介して、処理を終了する。
【００２４】
応答メッセージ22がICMP Echo Replyである場合に応じて、距離Dを算出する（サブステップSS16）。整数値｛255、128、64、32、16｝と受信したICMP Echo Replyに設定されている有効回数（TTLの値）とそれぞれの差を算出し、この差の中で最も小さい正数を推定距離Dとする。この差を推定距離とする理由は、受信したICMP Echo Replyの有効回数（TTL）の値が初期値から経路上にあるルータの数だけ減算された値になるからである。有効回数（TTL）は、中継ノードを通過する都度、１つずつ減算された値になるからである。また、有効回数（TTL）の初期値には任意の値が付けられる。しかしながら、実際整数値｛255、128、64｝以外の値が設定されることは皆無に近い。たとえ。あったとしても整数値はせいぜい｛32、16｝のいずれかである。さらに、たとえばIPネットワーク18上で任意の２つのノード間の経路に16台以上の中継ノードがあることは皆無に近いからである。
【００２５】
このように推定した距離Dの値を引数に格納し、リターンを介して、検証処理（SUB2）に進む。
【００２６】
次に経路推定装置10における距離検証処理の手順について図４を参照しながら説明する。距離検証処理は、距離推定機能部14における距離検証機能部32にて実行される処理である。この距離検証処理が実行されると、まず、有効回数（TTL）に距離推定処理（SUB1）で算出した推定距離Dを設定したICMP Echo Requestメッセージが作成される（サブステップSS20）。次に作成したICMP Echo Requestメッセージ22を送受信部12に送り、送受信部12からIPネットワーク18に送信する（サブステップSS22）。
【００２７】
次に送受信部12でIPネットワーク18を介して、供給される応答メッセージ20を受信する。送信部12は、受信した応答メッセージ20を応答メッセージ22として経路検出機能部14に出力する。経路検出機能部14の距離検証機能部32では、供給される応答メッセージ22を解析し判定する（サブステップSS24）。この解析により応答メッセージ22がICMP Echo Replyであった場合（YES）、検証結果を真とする。検証結果の真を引数に格納し、リターンを介して、図２の真偽判定に進む（ステップS10へ）。また、応答メッセージ22がICMP Echo Replyではない場合（NO）、ICMP Timeの判断処理に進む（サブステップSS26へ）。
【００２８】
次にICMP Timeが所定の値を越えているか否かを判断する（サブステップSS26）。ICMP Timeが所定の値を越えている場合（YES）、検証結果を偽とする。ICMP Timeが所定の値以下の場合（NO）、エラーと判断して、接続子Aを介して、処理を終了する。
【００２９】
次に経路推定装置10における逆順検出処理の手順について図５を参照しながら説明する。逆順検出処理（SUB3）は、経路調査機能部28において実行される処理である。逆順検出処理が実行されると、有効回数（TTL）に距離推定処理（SUB1）で算出した推定距離Dを設定する（サブステップSS30）。
【００３０】
次に有効回数（TTL）の値を１つ減算した値（TTL-1）を有するICMP Echo Requestメッセージを作成する（サブステップSS32）。このメッセージ作成後、確認処理に進む（サブステップSS34へ）。
【００３１】
確認処理では、有効回数（TTL）の値が１以上であるか否か確認する（サブステップSS34）。有効回数（TTL）が１以上である場合(YES)、逆順検出機能部34からICMP Echo Requestメッセージ22を送受信部12に送り、送受信部12を介して、IPネットワーク18にICMP Echo Requestメッセージ22をICMP Echo Requestメッセージ24として送信する送信処理に進む（サブステップSS36へ）。また、有効回数（TTL）が１より小さい場合(NO)、保存処理に進む（サブステップSS38へ）。次に保存処理は、経路情報24を登録し、保存する（サブステップSS38）。この保存後、リターンを介して、逆順検出処理を終える。この場合、逆順検出処理後、図２に示すように、距離検出を終了する。
【００３２】
次に送信処理は、ICMP Echo Requestメッセージ24をIPネットワーク18に送出する（サブステップSS36）。この送信後、送受信部12でIPネットワーク18を介して、供給される応答メッセージ20を受信する。送信部12は、受信した応答メッセージ20を応答メッセージ22として経路調査機能部28に出力する（サブステップSS40へ）。
【００３３】
次に経路調査機能部28における逆順検出機能部34にて受信した応答メッセージ22がICMP Echo Replyか否かを判断する（サブステップSS40）。応答メッセージ22がICMP Echo Replyである場合（YES）、再び、有効回数（TTL）の値を１つ減算した値（TTL-1）を有するICMP Echo Requestメッセージの作成に戻り、再度実行する（サブステップSS32へ）。また、受信した応答メッセージ22がICMP Echo Replyでない場合（NO）、ICMP Timeの判断処理に進む（サブステップSS42へ）。
【００３４】
次に受信した応答メッセージ22がICMP Time Exceededか否かを判断する（サブステップSS42）。受信した応答メッセージ22がICMP Time Exceededの場合（YES）、新規ノード検出処理に進む（サブステップSS44へ）。また、受信した応答メッセージ22がICMP Time Exceeded以外のメッセージの場合（NO）、エラーと判断して、接続子Aを介して、処理を終了する。
【００３５】
次に新規ノード検出処理は、ICMP Echo Exceededを返信してきたノードの情報24が新規のノードか否かを確認する（サブステップSS44）。この確認は、情報24と経路情報保存部16に登録されている情報とを比較し、判断する。すなわち、ノードが過去に調査済かを確認した際に、比較結果が不一致の場合（YES）、新規に発見した端末であると判断して、ICMP Echo Requestメッセージの作成処理に進む（サブステップSS32へ）。情報経路保存部16にノードが存在する場合（NO）、保存処理に進む（サブステップSS38へ）。
【００３６】
次に保存処理を実行する（サブステップSS38）。保存処理は、ここまでに調査した経路情報、すなわち中継ノードの列を経路情報保存部16に登録し、リターンに進んで、逆順検出処理を正常終了する。
【００３７】
次に経路推定装置10における正順検出処理の手順について図６を参照しながら説明する。逆順検出処理（SUB4）は、経路調査機能部28において実行される処理である。逆順検出処理が実行されると、有効回数（TTL）に距離推定処理（SUB1）で算出した推定距離Dを設定する（サブステップSS46）。
【００３８】
次に有効回数（TTL）の値を１つ加算した値（TTL+1）を有するICMP Echo Requestメッセージを作成する（サブステップSS48）。このメッセージ作成後、送信処理に進む（サブステップSS50へ）。
【００３９】
次に送信処理は、作成したICMP Echo Requestメッセージ24をIPネットワーク18に送出する（サブステップSS50）。この送信後、送受信部12でIPネットワーク18を介して、供給される応答メッセージ20を受信する。送信部12は、受信した応答メッセージ20を応答メッセージ22として経路調査機能部28に出力する（サブステップSS52へ）。
【００４０】
次に受信した応答メッセージ22がICMP Time Exceededであるか否かを確認する（サブステップSS52）。応答メッセージ22がICMP Time Exceededの場合（YES）、値（TTL+1）を有するICMP Echo Requestメッセージを作成処理に戻り、再実行する。また、応答メッセージがICMP Time Exceededでない場合（NO）、メッセージ判断処理に進む（サブステップSS54へ）。
【００４１】
次にメッセージ判断処理は、応答メッセージ22がICMP Echo Replyメッセージか否かを判断する（サブステップSS54）。応答メッセージ22がICMP Echo Replyメッセージの場合（YES）、保存処理に進む（サブステップSS56へ）。また、それ以外のメッセージの場合（NO）、エラーとして処理を終了する。
【００４２】
次に保存処理では、ここまでに調査した経路情報24、すなわち中継ノードの列を経路情報保存部16に登録し、リターンを介して、正順検出処理を正常終了する。
【００４３】
通常のtracerouteは、観測の基点となるノード自身から遠くなる順に、すなわち木の根から葉の方向に向かって中継ノードの列を調査していくことから、多数のノードを調査していると、近隣のノードを何度も調べることになる。しかしながら、本実施例によれば、観測ノードから距離Dの位置から観測の基点ノードに近くなる順、すなわち木の葉から根の方向に向かって中継ノードを調査することができる。
【００４４】
この調査によれば、調査途中で過去に調査済のノードを検出した場合、そこから近隣はすでに経路が判明しているので、調査しないで済ませることができる。したがって、何度も繰り返して、近隣ノードを調査してしまうことがなくなり、通常のtracerouteの調査に比べて経路調査に用いるICMPメッセージの送受信回数を格段に減らすことができる。
【００４５】
このような動作は、上述したように通信回数を減らし、調査時間を短縮し、さらに、経路調査する回数自体を削減し、調査の効率を向上させることができる。複数のノードに対する検出結果が蓄積されてくると、調査済の近隣ノードの量も増えることから、この効果をより一層高くなる。この結果から、大規模なネットワークでの経路調査にも明らかに有効に利用可能であることは言うまでもない。
【００４６】
次に本発明の経路提供装置を経路推定装置10に適用した概略的な他の構成について説明する。経路推定装置10は、図７に示すように、先の実施例の構成要素とともに、経路検出機能部14にサブネット拡大機能部38を配設する。サブネット拡大機能部38は、サブネットを検出する機能を有する。
【００４７】
次に経路推定装置10の動作を説明する。この動作は、この装置10から特定のノードまでの経路を調査する手順について図８を用いて説明する。経路推定装置10は、サブネット生成処理が実行されると、距離推定処理（SUB1）の前に、調査対象であるノードのアドレスが経路情報保存部16に登録されているサブネットのいずれかに含まれているか否かを調査する（ステップS12）。
【００４８】
次に調査対象のノードのアドレスが登録されたサブネットに含まれているかを判断する（ステップS14）。調査結果がどのサブネットにも属していなかった場合（NO）、経路検出処理に進む（SUB1へ）。また、調査結果がサブネットに属している場合（YES）、調査ノードはそのサブネットにあるものとして実際に経路を調査することなく、終了に移行し、終了する。
【００４９】
次に経路検出処理では、経路を検出する（SUB1）。この検出後、経路調査結果、調査対象ノードの前段ノードと同じノードまたはサブネットが経路情報保存部16に登録されていないかを調査する（ステップS16）。この調査結果に前段ノードと同じノードまたはサブネットが存在するか否か判断する（ステップS18）。存在した場合（YES）、最小サイズの算出処理に進む（ステップS20へ）。また、前段ノードと同じものが存在しなかった場合（NO）、終了に移行し、経路検出処理を終了する。
【００５０】
次に最小サイズの算出処理は、サブネット拡大機能部38で調査対象ノードと検出したノードまたはサブネットの双方を含むサブネットの内、サブネットマスク長が最長、すなわちサブネットのサイズが最小となるものを選択する（ステップS20）。この最小サイズは、IPv4の場合8〜32、IPv6の場合64〜128の値となる。
【００５１】
次に選択したサブネットを経路情報保存部16に登録する（ステップS22）。登録後、経路検出処理を終了に移行し、終了する。
【００５２】
本実施例によれば、先の実施例の効果とともに、先の実施例と異なる端末の集合であるサブネットになることから、先の実施例に比べて、管理する情報サイズを縮小させることができる。先の実施例では、木構造を形成する経路情報における葉の部分はノード、すなわち端末を管理する。また、調査対象ノードが経路情報保存部16に登録されているいずれかのサブネットに属しているならば、調査せずに済ますことができる。さらに、多くのノードを調査していくと、次第に経路情報保存部16に登録されているサブネットが徐々に大きくなる傾向となることから、調査不要なノードが増加していく。したがって、先の実施例よりも調査する回数を大幅に削減でき、大規模ネットワークにおける経路調査にも十分利用可能となる。
【００５３】
次に本発明の経路提供装置を経路推定装置10に適用した概略的な他の構成について説明する。経路推定装置10は、図９に示すように、先の実施例の構成要素とともに、経路検出機能部14にサブネット縮小機能部40を配設する。サブネット縮小機能部40は、サブネットのサイズを縮小する機能を有する。
【００５４】
次に経路推定装置10におけるサブネット縮小機能部40の動作について説明する。サブネット縮小部40におけるサブネット縮小処理は、ユーザによる処理または周期的に発生するタイマイベントをトリガとして用いて、実行する。
【００５５】
サブネット縮小処理を実行すると、まず、経路情報保存部16に保存されているサブネットの情報を順に検索する（ステップS24）。次に経路情報保存部16に保存されているサブネット情報すべての検査が完了か否かを判定する（ステップS26）。すべてのサブネット情報を検査が完了した場合（YES）、サブネット縮小処理を正常終了する。まだ検査していないサブネット情報がある場合（NO）、サブネット情報を順に取り出す。この後、期限チェックに進む（ステップS26へ）。
【００５６】
期限チェックでは、取り出したサブネット情報が期限切れか否かを判断する（ステップS28）。期限切れは、所定の閾値を基に取り出したサブネット情報の作成時刻または更新した時刻と現在時刻との差を比較し、判断する。求めた差が所定の閾値より大きいサブネット情報が検出されると（YES）、サブネット情報が生成または更新されてから一定時刻以上が経っていたと判断する。この判断を基に距離検出処理に進む（SUB1へ）。期限切れが検出されなかった場合（NO）、サブネット検索に戻って、検索を繰り返す（ステップS24へ）。
【００５７】
次に経路検出処理を実行する（SUB1）。ここでの処理は、該当するサブネット情報に属するノードに対して実行し、経路を再調査する。このノードとは、過去に調査したことのあるノードのことである。
【００５８】
次に前段ノードが変化しているか否かを判断する（ステップS30）。経路の再調査の結果、サブネットの前段ノードが変化した場合（YES）、経路情報保存部16の保存処理に進む（ステップS32へ）。再調査の結果、サブネットの前段ノードが不変の場合（NO）、サブネットサイズの縮小処理に進む（ステップS34へ）。
【００５９】
次に経路情報保存部16の保存処理は、経路検出処理の実行により得られた経路情報に更薪し、この情報を保存する（ステップS32）。この後、サブネットサイズの縮小処理に進む（ステップS34へ）。
【００６０】
次にサブネットサイズの縮小処理では、経路情報保存部16に保存されている該当のサブネット情報におけるサブネット長を１つ増加させ、該当サブネット情報の更新時刻を現在時刻に設定する（ステップS34）。この場合の設定は、サブネット長の最大長さはIPv4で32、IPv6の場合は128とする。この処理後、再びサブネット検索に戻る（ステップS24へ）。このように処理を繰り返すことにより経路情報保存部16に保存されている全サブネット情報に対して情報を更新する。
【００６１】
先の実施例では、経路情報保存部16に保存されるサブネット情報のサイズは拡大するだけであり、一度サブネットが登録されてしまうとそのサブネットに属するノードに対しICMPによる経路調査は行われなくなる。これによりネットワークの増設や故障などによりネットワークの接続構成が変更されても、その変化を検出することができなくなる。
【００６２】
これに対して、本実施例では、このように動作させることにより先の実施例の効果に加え、ネットワークの接続構成が変更された場合、変更を検出でき、時間とともに、サブネットのサイズを徐々に小さくすることから、再調査の機会が徐々に増加し、動的に経路を制御しているようなネットワークにおいても、再調査の回数を抑えつつ、経路情報を更新し、情報の陳腐化を防ぐことができる。
【００６３】
ネットワーク上の距離が品質に影響するサービスには、VOD（Video On Demand）サービス、テレビ会議サービスおよびPtoP（Point-to-Point）サービス等がある。サービスの適用は、VODサービスにおいてネットワーク上に複数配置されているVODサーバの中からもっとも視聴者に近いサーバを判定する場合に有効である。また、テレビ会議サービスでは、ネットワーク上に複数配置されている会議サーバのうち、複数参加者とサーバ間の距離の分散が一番小さいものを選択する場合に有効である。さらに、PtoPサービスでは、ユーザから一番近い別のユーザを検出したり、ユーザからある一定距離内にいる別ユーザを収集したりする場合に有効である。
【００６４】
なお、本発明におけるネットワークは、実施例それぞれにおいて、IPネットワークとしたが、これに限定されるものでなく、専用回線、ケーブルネットワークにおいて本発明を適用してもよいことは言うまでもない。
【図面の簡単な説明】
【００６５】
【図１】本発明に係る経路提供装置を適用した経路推定装置の実施例における概略的な構成を示すブロック図である。
【図２】図１の経路推定装置における経路検出の動作を説明するフローチャートである。
【図３】図２の経路検出における距離推定処理の手順を説明するフローチャートである。
【図４】図２の経路検出における距離検証処理の手順を説明するフローチャートである。
【図５】図２の経路検出における逆順検出処理の手順を説明するフローチャートである。
【図６】図２の経路検出における正順検出処理の手順を説明するフローチャートである。
【図７】本発明に係る経路提供装置を適用した経路推定装置の他の実施例における概略的な構成を示すブロック図である。
【図８】図７の経路検出におけるサブネットを拡大させる手順を説明するフローチャートである。
【図９】本発明に係る経路提供装置を適用した経路推定装置の他の実施例における概略的な構成を示すブロック図である。
【図１０】図９の経路検出におけるサブネットを縮小させる手順を説明するフローチャートである。
【符号の説明】
【００６６】
10  経路推定装置
12  送受信部
14  経路検出機能部
16  経路情報保存部
26  距離推定機能部
28  経路調査機能部
30  距離算出機能部
32  距離検証機能部
34  逆順検出機能部
36  正順検出機能部
【図１】
2008028735.tif 000003
【図２】
2008028735.tif 000004
【図３】
2008028735.tif 000005
【図４】
2008028735.tif 000006
【図５】
2008028735.tif 000007
【図６】
2008028735.tif 000008
【図７】
2008028735.tif 000009
【図８】
2008028735.tif 000010
【図９】
2008028735.tif 000011
【図１０】
2008028735.tif 000012