(57)【要約】  ディレイトレラントネットワーク内の各ノード(1)のルーティングプロトコル部(11)において、ルーティングテーブル(12)内の宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて宛先ノードへの配送確率を計算し、これらノードで計算された宛先ノードへの配送確率に基づいて、ソースノードのＤＴＮ転送部(13)により転送データを転送する際の次ホップノードを決定する。
2009078427.tif 000002
【特許請求の範囲】
【請求項１】
転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワークで用いられる経路制御方法であって、
前記ディレイトレラントネットワーク内の各ノードが、当該ノードのルーティングテーブルに登録されている当該ノードから前記宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける前記宛先ノードへの配送確率を計算するルーティングプロトコルステップと、
前記ソースノードが、前記各ノードで計算された個々のノードにおける前記宛先ノードへの配送確率に基づいて、当該ソースノードから前記宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送ステップと
を備えることを特徴とする経路制御方法。
【請求項２】
前記ルーティングプロトコルステップは、現在において当該ノードから前記宛先ノードへのエンド−エンドの経路が存在せず、過去に前記エンド−エンドの経路が存在した場合、過去の前記エンド−エンドの経路が消滅してからの経過時間に応じて当該配送確率を逓減させるステップを含むことを特徴とする請求項１に記載の経路制御方法。
【請求項３】
前記ルーティングプロトコルステップは、過去の前記エンド−エンドの経路におけるホップ数またはメトリックのいずれかに応じて前記配送確率を逓減させるステップを含むことを特徴とする請求項２に記載の経路制御方法。
【請求項４】
前記ルーティングプロトコルステップは、現在において前記宛先ノードへのエンド−エンドの経路が存在する場合、前記配送確率を１．０と設定するステップを含むことを特徴とする請求項１に記載の経路制御方法。
【請求項５】
前記ルーティングプロトコルステップは、前記配送確率が予め設定されたしきい値以下となった場合、前記配送確率を消去するステップを含むことを特徴とする請求項１に記載の経路制御方法。
【請求項６】
前記ＤＴＮ転送部ステップは、前記宛先ノードへの転送データを転送する次ホップノードを選択する際、当該転送ノードから前記ディレイトレラントネットワーク内へ経路要求メッセージを同報送信し、この経路要求メッセージに応じた他のノードからの経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率に基づいて、当該転送ノードから前記宛先ノードへ転送データを転送する際の次ホップノードを選択するステップを含むことを特徴とする請求項１に記載の経路制御方法。
【請求項７】
前記ＤＴＮ転送ステップは、前記経路応答メッセージで通知された前記配送確率のうち、最も高い配送確率を持つノードを次ホップノードとして選択するステップを含むことを特徴とする請求項６に記載の経路制御方法。
【請求項８】
前記ルーティングプロトコルステップは、前記経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率をキャッシュとして保存し、他のノードから受信した経路要求メッセージに対して、前記キャッシュとして保存した前記宛先ノードへの配送確率を経路応答メッセージに含めて前記他のノードへ応答するステップを含むことを特徴とする請求項７に記載の経路制御方法。
【請求項９】
前記ルーティングプロトコルステップは、前記キャッシュとして保存した前記宛先ノードへの配送確率に対してライフタイムを設定し、当該ライフタイムが０以下になった場合には当該配送確率を消去するステップを含むことを特徴とする請求項８に記載の経路制御方法。
【請求項１０】
前記ルーティングプロトコルステップは、前記キャッシュとして保存した前記宛先ノードへの配送確率は、キャッシュ元のノードからのホップ数とキャッシュした時刻からの経過時間のいずれか一方または両方に応じて逓減するステップを含むことを特徴とする請求項８に記載の経路制御方法。
【請求項１１】
転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワークで用いられる経路制御方法であって、
前記ディレイトレラントネットワーク内の各ノードが、当該ノードのルーティングテーブルに登録されている当該ノードから前記宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける前記宛先ノードへの配送確率を計算するルーティングプロトコルステップと、
前記ディレイトレラントネットワーク内の任意の転送ノードが、前記宛先ノードへの転送データを転送する次ホップノードを選択する際、当該転送ノードから前記ディレイトレラントネットワーク内へ経路要求メッセージを同報送信し、この経路要求メッセージに応じた他のノードからの経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率に基づいて、当該転送ノードから前記宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送ステップと
を備えることを特徴とする経路制御方法。
【請求項１２】
前記ＤＴＮ転送ステップは、前記経路応答メッセージで通知された前記配送確率のうち、最も高い配送確率を持つノードを次ホップノードとして選択するステップを含むことを特徴とする請求項１１に記載の経路制御方法。
【請求項１３】
前記ルーティングプロトコルステップは、前記経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率をキャッシュとして保存し、他のノードから受信した経路要求メッセージに対して、前記キャッシュとして保存した前記宛先ノードへの配送確率を経路応答メッセージに含めて前記他のノードへ応答するステップを含むことを特徴とする請求項１２に記載の経路制御方法。
【請求項１４】
前記ルーティングプロトコルステップは、前記キャッシュとして保存した前記宛先ノードへの配送確率に対してライフタイムを設定し、当該ライフタイムが０以下になった場合には当該配送確率を消去するステップを含むことを特徴とする請求項１３に記載の経路制御方法。
【請求項１５】
前記ルーティングプロトコルステップは、前記キャッシュとして保存した前記宛先ノードへの配送確率は、キャッシュ元のノードからのホップ数とキャッシュした時刻からの経過時間のいずれか一方または両方に応じて逓減するステップを含むことを特徴とする請求項１３に記載の経路制御方法。
【請求項１６】
転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワーク、で用いられるノードであって、
当該ノードのルーティングテーブルに登録されている当該ノードから前記宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける前記宛先ノードへの配送確率を計算するルーティングプロトコル部と、
自ノードが前記ソースノードである場合、前記各ノードで計算された個々のノードにおける前記宛先ノードへの配送確率に基づいて、当該ソースノードから前記宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送部と
を備えること特徴とするノード。
【請求項１７】
前記ルーティングプロトコル部は、現在において当該ノードから前記宛先ノードへのエンド−エンドの経路が存在せず、過去に前記エンド−エンドの経路が存在した場合、過去の前記エンド−エンドの経路が消滅してからの経過時間に応じて当該配送確率を逓減させることを特徴とする請求項１６に記載のノード。
【請求項１８】
前記ルーティングプロトコル部は、過去の前記エンド−エンドの経路におけるホップ数またはメトリックのいずれかに応じて前記配送確率を逓減させることを特徴とする請求項１７に記載のノード。
【請求項１９】
前記ルーティングプロトコル部は、現在において前記宛先ノードへのエンド−エンドの経路が存在する場合、前記配送確率を１．０と設定することを特徴とする請求項１６に記載のノード。
【請求項２０】
前記ルーティングプロトコル部は、前記配送確率が予め設定されたしきい値以下となった場合、前記配送確率を消去することを特徴とする請求項１６に記載のノード。
【請求項２１】
前記ＤＴＮ転送部は、自ノードが前記ディレイトレラントネットワーク内の任意の転送ノードである場合、前記宛先ノードへの転送データを転送する次ホップノードを選択する際、当該転送ノードから前記ディレイトレラントネットワーク内へ経路要求メッセージを同報送信し、この経路要求メッセージに応じた他のノードからの経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率に基づいて、当該転送ノードから前記宛先ノードへ転送データを転送する際の次ホップノードを選択することを特徴とする請求項１６に記載のノード。
【請求項２２】
前記ＤＴＮ転送部は、前記経路応答メッセージで通知された前記配送確率のうち、最も高い配送確率を持つノードを次ホップノードとして選択することを特徴とする請求項２１に記載のノード。
【請求項２３】
前記ルーティングプロトコル部は、前記経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率をキャッシュとして保存し、他のノードから受信した経路要求メッセージに対して、前記キャッシュとして保存した前記宛先ノードへの配送確率を経路応答メッセージに含めて前記他のノードへ応答することを特徴とする請求項２２に記載のノード。
【請求項２４】
前記ルーティングプロトコル部は、前記キャッシュとして保存した前記宛先ノードへの配送確率に対してライフタイムを設定し、当該ライフタイムが０以下になった場合には当該配送確率を消去することを特徴とする請求項２３に記載のノード。
【請求項２５】
前記ルーティングプロトコル部は、前記キャッシュとして保存した前記宛先ノードへの配送確率は、キャッシュ元のノードからのホップ数とキャッシュした時刻からの経過時間のいずれか一方または両方に応じて逓減することを特徴とする請求項２３に記載のノード。
【請求項２６】
転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワーク、で用いられるノードであって、
当該ノードのルーティングテーブルに登録されている当該ノードから前記宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける前記宛先ノードへの配送確率を計算するルーティングプロトコル部と、
前記宛先ノードへの転送データを転送する次ホップノードを選択する際、当該転送ノードから前記ディレイトレラントネットワーク内へ経路要求メッセージを同報送信し、この経路要求メッセージに応じた他のノードからの経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率に基づいて、当該転送ノードから前記宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送部と
を備えることを特徴とするノード。
【請求項２７】
前記ＤＴＮ転送部は、前記経路応答メッセージで通知された前記配送確率のうち、最も高い配送確率を持つノードを次ホップノードとして選択することを特徴とする請求項２６に記載のノード。
【請求項２８】
前記ルーティングプロトコル部は、前記経路応答メッセージで通知された個々のノードにおける前記宛先ノードへの配送確率をキャッシュとして保存し、他のノードから受信した経路要求メッセージに対して、前記キャッシュとして保存した前記宛先ノードへの配送確率を経路応答メッセージに含めて前記他のノードへ応答することを特徴とする請求項２７に記載のノード。
【請求項２９】
前記ルーティングプロトコル部は、前記キャッシュとして保存した前記宛先ノードへの配送確率に対してライフタイムを設定し、当該ライフタイムが０以下になった場合には当該配送確率を消去することを特徴とする請求項２８に記載のノード。
【請求項３０】
前記ルーティングプロトコル部は、前記キャッシュとして保存した前記宛先ノードへの配送確率は、キャッシュ元のノードからのホップ数とキャッシュした時刻からの経過時間のいずれか一方または両方に応じて逓減することを特徴とする請求項２８に記載のノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワーク技術に関し、特にディレイトレラントネットワークにおける経路制御技術に関する。
【背景技術】
【０００２】
転送データを直ちに次ホップへ転送せずに一時的に蓄積する機能を備えるディレイトレラントネットワーク(Delay Tolerant Network;ＤＴＮ)は、無線アドホックネットワークや衛星回線など、ノード間の接続性が不安定、低信頼な場合であっても、エンド−エンド間でデータ・コンテンツを高信頼に届けることを可能にするネットワークシステムである。【０００３】
このＤＴＮでは、転送データをバンドルと呼ばれる単位サイズに分割し、バンドル単位で宛先への転送処理を行う。ＤＴＮの最大の特徴として、転送しようとするバンドルの宛先への経路が不明な場合であっても、該バンドルを廃棄せず、転送すべき次ホップが見つかるまで該バンドルを蓄積して待機する、という点が挙げられる。このような動作をとることにより、ソースから宛先までエンド−エンドの経路が同時に存在しない場合でも、途中のノードまでバンドルを転送しておき、その後に宛先までの経路ができた時点でバンドルの転送を再開するということが可能となり、その結果宛先への到達率が向上するという効果がある。【０００４】
したがって、ＤＴＮにおける経路制御方法は、ソースから宛先までのエンド−エンドの経路を発見する一般的なＩＰルーティングとは異なる方法が用いられる。
ＤＴＮにおける経路制御方法の例については、例えば、文献「Anders Lindgren, Avri Doria, Olv Schelen, "Probabilistic Routing in Intermittently Connected Networks," In Proceedings of The First International Workshop on Service Assurance with Partial and Intermittent Resources (SAPIR 2004), August 2004, Fortaleza, Brazil.」に記載されている。この文献を参照すると、ＰＲＯＰＨＥＴと呼ばれる方式について説明されている。ＰＲＯＰＨＥＴでは、宛先への配送確率に基づいたルーティングを行う。具体的には、あるノードＡにおいて、別のノードＢが隣接したときに、ノードＡは、ノードＢに対する配送確率 P_i を以下の式（１）で更新する。【０００５】
P_i = P_(i-1)＋(1-P_(i-1))×P_init  (但し、0＜P_init＜1)  …（１）
ここで、P_(i-1) は、更新前のノードＡにおけるノードＢに対する配送確率であり、P_initは、初期化定数である。【０００６】
また、ノードＡとノードＢが隣接していない状態が継続する場合は、エージングと呼ばれる方法で次の式（２）に従って定期的に更新し、配送確率を逓減させる。
P_i = P_(i-1)×γ^k  (但し、0＜γ＜1)  …（２）
ここでγは、最後にノードＡとノードＢが隣接してから単位時間が経過した回数である。【０００７】
各ノードは、あるノードを宛先とするバンドルをもっている場合、該宛先ノードに対する配送確率 P_i を隣接ノードと交換し、最も高い配送確率を持つ隣接ノードに該バンドルを渡す。また、もし自ノードが持つ該宛先ノードまでの配送確率よりも、隣接ノードが持つ該宛先ノードまでの配送確率の方が小さい場合、該バンドルは該隣接ノードへ渡さずに、自ノードで保持し続ける。
以上のようにして、ＰＲＯＰＨＥＴでは、隣接履歴に基づいて計算された宛先ノードへの配送確率の大小の比較によるルーティングが行われる。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
このような技術では、宛先ノードと隣接したことにだけ基づいて配送確率が更新されるため、経路選択に制約があるという問題点があった。
すなわち、前述したＰＲＯＰＨＥＴでは、ノードＡがノードＢと隣接することによってノードＡにおけるノードＢに対する配送確率（およびノードＢにおけるノードＡに対する配送確率）が上がるという方法であり、ノードＡとノードＢの隣接頻度が高いほど、ノードＢ（またはノードＡ）を宛先とするバンドルについて、ノードＡ（またはノードＢ）へとバンドルが誘導される確率が高くなる。【０００９】
しかしながら、ノードＢが別のノードＣと常に隣接しており、ノードＡとノードＢが隣接したとしても（ノードＡとノードＣは隣接しないものとする）、ノードＡにおいて、ノードＣに対する配送確率は高くならない。すなわち、隣接によって配送確率が高くなるのは、直接隣接したノードに対してだけであり、直接隣接したノードの先に存在する別のノードに対する配送確率は高くならないため、これらの別のノードに対する到達率が高くならないという問題があった。【００１０】
本発明はこのような課題を解決するためのものであり、自ノードと直接隣接することがない場合であっても、直接隣接したノードの先に存在する別のノードに対して、自ノードからの配送確率に反映させることかできる経路制御方法およびノードを提供することを目的としている。
【課題を解決するための手段】
【００１１】
このような目的を達成するために、本発明にかかる経路制御方法は、転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワークで用いられる経路制御方法であって、ディレイトレラントネットワーク内の各ノードが、当該ノードのルーティングテーブルに登録されている当該ノードから宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける宛先ノードへの配送確率を計算するルーティングプロトコルステップと、ソースノードが、各ノードで計算された個々のノードにおける宛先ノードへの配送確率に基づいて、当該ソースノードから宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送ステップとを備えている。【００１２】
また、本発明にかかる他の経路制御方法は、転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワークで用いられる経路制御方法であって、ディレイトレラントネットワーク内の各ノードが、当該ノードのルーティングテーブルに登録されている当該ノードから宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける宛先ノードへの配送確率を計算するルーティングプロトコルステップと、ディレイトレラントネットワーク内の任意の転送ノードが、宛先ノードへの転送データを転送する次ホップノードを選択する際、当該転送ノードからディレイトレラントネットワーク内へ経路要求メッセージを同報送信し、この経路要求メッセージに応じた他のノードからの経路応答メッセージで通知された個々のノードにおける宛先ノードへの配送確率に基づいて、当該転送ノードから宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送ステップとを備えている。【００１３】
また、本発明にかかるノードは、転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワーク、で用いられるノードであって、当該ノードのルーティングテーブルに登録されている当該ノードから宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける宛先ノードへの配送確率を計算するルーティングプロトコル部と、自ノードがソースノードである場合、各ノードで計算された個々のノードにおける宛先ノードへの配送確率に基づいて、当該ソースノードから宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送部とを備えている。【００１４】
また、本発明にかかる他のノードは、転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワーク、で用いられるノードであって、当該ノードのルーティングテーブルに登録されている当該ノードから宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける宛先ノードへの配送確率を計算するルーティングプロトコル部と、宛先ノードへの転送データを転送する次ホップノードを選択する際、当該転送ノードからディレイトレラントネットワーク内へ経路要求メッセージを同報送信し、この経路要求メッセージに応じた他のノードからの経路応答メッセージで通知された個々のノードにおける宛先ノードへの配送確率に基づいて、当該転送ノードから宛先ノードへ転送データを転送する際の次ホップノードを選択するＤＴＮ転送部とを備えている。
【発明の効果】
【００１５】
本発明によれば、宛先ノードが自ノードと直接隣接することがなく、２ホップ以上離れて存在している場合であっても、自ノードからの配送確率に反映させることができる。このため、宛先への到達率を大幅に向上させることが可能となり、高い信頼性を有するディレイトレラントネットワークを実現することが可能となる。
【図面の簡単な説明】
【００１６】
【図１】図１は、本発明の第１の実施形態にかかるノードの基本構成を示すブロック図である。
【図２】図２は、無線アドホックネットワークの構成例である。
【図３】図３は、本発明の第１の実施形態にかかるノードの構成を示すブロック図である。
【図４】図４は、配送確率データベースの構成例である。
【図５】図５は、ルーティングテーブルの構成例である。
【図６】図６は、本発明の第１の実施形態にかかるノードの配送確率データベース更新処理を示すフローチャートである。
【図７】図７は、本発明の第１の実施形態にかかるノードの経路解決処理を示すフローチャートである。
【図８】図８は、本発明の第２の実施形態にかかるノードの構成を示すブロック図である。
【図９】図９は、配送確率データベースの他の構成例である。
【図１０】図１０は、本発明の第２の実施形態にかかるノードの配送確率データベース更新処理を示すフローチャートである。
【発明を実施するための最良の形態】
【００１７】
次に、本発明の実施形態について図面を参照して説明する。
［第１の実施形態］
まず、図１および図２を参照して、本発明の第１の実施形態にかかるノードの基本構成について説明する。【００１８】
このノード１は、ディレイトレラントネットワークを構成する情報通信端末からなり、例えばディレイトレラントネットワークが図２に示すような無線アドホックネットワークの場合、ノード１は携帯電話機などの無線端末から構成される。【００１９】
各ノード１は、単独で動作するものではなく、図２に示すような無線アドホックネットワークにおける１つのノードとして機能する。図２に示す無線アドホックネットワークにおけるノード１Ａ〜１Ｄは、全てノード１と同一の機能を含んでいる。これらノード１Ａ〜１Ｄを中心とした点線の円は、それぞれのノードからの電波が届く範囲を示しており、この円の内部に存在するノードが隣接ノードとして認識される。例えば、ノード１Ａの隣接ノードはノード１Ｂ〜１Ｄとなる。【００２０】
図１に示すように、ノード１は、基本構成として、ルーティングプロトコル部１１、ルーティングテーブル１２、およびＤＴＮ転送部１３を含む。これら基本構成は、一般的な情報通信端末が備えるＣＰＵ、メモリ、各種インターフェース回路などを含むハードウェアとプログラムやアプリケーションからなるソフトウェアとが協働して実現される。【００２１】
本実施形態は、ネットワーク内の各ノード１において、ルーティングテーブル１２内の宛先ノードへの現在および過去のエンド−エンドの経路の履歴に基づいて、ルーティングプロトコル部１１により宛先ノードへの配送確率を計算し、各ノード１における宛先ノードへの配送確率の大小に基づいて、ＤＴＮ転送部１３により転送データを転送する際の次ホップノードを決定する。【００２２】
次に、図３を参照して、ノード１の詳細な構成について説明する。
図３において、ノード１は、主な機能部として、ルーティングプロトコル部１１、ルーティングテーブル１２、ＤＴＮ転送部１３、およびＴＣＰ／ＩＰ部１４を含む。これら機能部は、一般的な情報通信端末が備えるＣＰＵ、メモリ、各種インターフェース回路などを含むハードウェアとプログラムやアプリケーションからなるソフトウェアとが協働して実現される。【００２３】
ルーティングプロトコル部１１は、主な処理部として、経路・確率情報交換部１１Ａ、配送確率データベース１１Ｂ、配送確率計算部１１Ｃ、および経路計算・設定部１１Ｄを含む。
経路・確率情報交換部１１Ａは、隣接ノードとノード情報、リンク情報、配送確率情報などを交換し、交換した情報を基にルーティングエントリを作成し、作成したルーティングエントリをルーティングテーブル１２に更新する機能を含んでいる。
配送確率データベース１１Ｂは、ネットワーク内の各ノードに対する配送確率の情報が格納されているデータベースである。【００２４】
ここで、配送確率とは、各ノードがどれくらいバンドルを宛先ノードまで配送できる可能性をもっているかを数値化したものである。例えば、あるノードにおいて、宛先ノードに対して１．０の配送確率をもっているというのは、該ノードが宛先ノードへの直接の経路（以降直接経路と呼ぶ）がある場合である。また、あるノードにおいて、宛先ノードに対して０の配送確率をもっているというのは、該ノードが宛先ノードのことを全く知らないなど、該ノードから宛先ノードまでバンドルを配送できる可能性がない、または不明であることを表している。【００２５】
これに対して、あるノードにおいて、宛先ノードに対して０から１．０の間の配送確率をもっている場合は、該ノードが宛先ノードと直接経路をもっていたことがあり、現在は直接経路がない状態を表している。そして、配送確率の大小は、最後に宛先ノードまでの直接経路があった時刻からの経過時間、および、該経路における宛先ノードまでのホップ数に基づいて計算される。【００２６】
図４に示す配送確率データベース１１Ｂの構成例を参照すると、ネットワーク内の各ノードのＩＰアドレスおよび該ノードに対する配送確率が登録されており、例えば、ＩＰアドレスが１０．０．０．２のノードに対しては、配送確率が１．０であり、ＩＰアドレスが１０．０．０．１７のノードに対しては、配送確率が０．５であることがわかる。【００２７】
配送確率計算部１１Ｃは、ルーティングテーブル１２内に格納されている経路情報、すなわち当該ノードから宛先ノードへの過去から現時点、すなわち配送確率計算時までのエンド−エンドの経路の履歴に基づいて、各宛先ノードへの配送確率を計算し、配送確率データベース１１Ｂへ登録する機能を含んでいる。
配送確率の計算は、配送確率データベース１１Ｂの説明において述べたように、宛先ノードまでの直接経路があるかどうか（直接経路がある場合は１．０）、および、宛先ノードまでの直接経路がない場合は、最後に宛先ノードまでの直接経路があった時刻からの経過時間、および該直接経路における宛先ノードまでのホップ数に基づいて計算される。【００２８】
計算アルゴリズムの例として、ノードａにおいて、最後にノードｂへの直接経路があった時刻からの経過時間をｔ、該直接経路におけるノードａからノードｂまでのホップ数をｄとしたとき、ノードａにおけるノードｂに対する配送確率P(a,b)は、次の式（３）により計算する。【００２９】
P(a,b) = P(a,b)old×γ^ｔ×r^(d-1)   …（３）
ここで、P(a,b)oldは計算前のP(a,b)の値、γは時間についての減衰定数、ｒはホップ数についての減衰定数である。この際、ホップ数ではなく、リンクコストの総和であるメトリックが用いられてもよい。上記のｔ，ｄ以外のパラメータが配送確率の計算に用いられてもよく、例えば、ＧＰＳによってノードの位置を取得することができる場合は、ノードａとノードｂとの距離が用いられる、などの方法が考えられる。【００３０】
経路計算・設定部１１Ｄは、経路・確率情報交換部１１Ａを介して他のノードから受信したネットワーク内のノード情報、リンク情報から、ネットワーク内の各ノードへの直接経路を計算し、計算された結果得られた経路エントリをルーティングテーブル１２へ登録する機能を含んでいる。【００３１】
経路計算・設定部１１Ｄにおいて各ノードへの直接経路を計算するためのプロトコルとしては、例として、ＭＡＮＥＴ(Mobile Ad-hoc NETwork)ルーティングプロトコルとして用いられている、ＯＬＳＲ(Optimized Link State Routing Protocol)やＡＯＤＶ(Ad Hoc On Demand Distance Vector Algorithm)が挙げられる。以下、本実施形態では、経路計算・設定部１１Ｄで用いられるプロトコルとして、ＡＯＤＶが用いられるものとして説明を行う。【００３２】
経路計算・設定部１１Ｄは、従来のルーティングプロトコルのように、直接エンド−エンドで接続されているノードへの直接経路だけではなく、確率的に宛先ノードまで配送可能な途中の中継ノードまでの経路も、宛先ノードへの確率的経路としてルーティングテーブル１２へ登録するという特徴を持つ。具体的には、現時点ではエンド−エンドで接続されていないが、ある中継ノードまで転送すれば、該中継ノードからは自ノードよりも高い確率で宛先ノードまでＤＴＮ転送される場合、該中継ノードへの経路が宛先ノードへの確率的経路として登録される。【００３３】
確率的経路の設定においては、自ノードから直接経路のあるノードのうち、最も高い宛先ノードまでの配送確率を持つノードを中継ノードとして選択する。ここで、自ノードから直接経路のある各ノードにおける宛先ノードまでの配送確率を知る方法として、ＭＡＮＥＴルーティングプロトコルのメッセージを用いる。詳細な動作については図７を参照して後述する。【００３４】
ルーティングテーブル１２は、ネットワーク内の各ノードに対する直接経路および確率的経路が登録されているテーブルである。
図５に示したルーティングテーブル１２の構成例を参照すると、宛先ノードごとに次ホップノードのＩＰアドレス、メトリックが登録されている。ここで、メトリックとは、宛先ノードまでの直接経路におけるリンクコストの総和として定義される。各リンクのリンクコストが１の場合は、メトリックは宛先ノードまでのホップ数と同一の値となる。【００３５】
この他に、タイプが登録されており、１および２のいずれかのタイプが登録されている。ここで、タイプ１は、宛先ノードまで直接経路が存在する場合で、従来のＩＰルーティングプロトコルで登録されているエントリと同一のものである。【００３６】
タイプ１は、ルーティングテーブル１２における上から１番目のエントリの場合、宛先ＩＰアドレスが１０．０．０．２のノードへ到達するためには、ＩＰアドレスが１０．０．０．２を持つ次ホップノードへ転送すればよいエントリであることを示している。この場合、宛先ノードが自ノードと隣接しているため、同一の次ホップノードとなっている。また、宛先ノードまでのメトリックは１である。次に、２番目のエントリの場合は、宛先ＩＰアドレス１０．０．０．７のノードへ到達するためには、ＩＰアドレスが１０．０．０．３を持つ次ホップノードへ転送すればよいことを示している。また、宛先ノードまでのメトリックは２である。【００３７】
一方、タイプ２は、必ずしも宛先ノードまでエンド−エンドでつながっているとは限らない場合に登録され、確率的に宛先ノードへ到達できることを示すエントリ（確率的経路）である。タイプ２の経路エントリには、中継ノードのＩＰアドレス、配送確率が加えて登録されている。ここで、中継ノードＩＰアドレスは、宛先ノードまで転送したいバンドルを到達させられる確率（配送確率）が最も高いノードのＩＰアドレスで、中継ノードは、自ノードからタイプ１の経路があるノードのなかから選択される。また、タイプ２の経路エントリの場合、メトリックは中継ノードまでのメトリックが登録されている。【００３８】
ルーティングテーブル１２における上から３番目のエントリの場合、宛先ＩＰアドレスが１０．０．０．１６のノードに対しては、１０．０．０．９のＩＰアドレスを持つ中継ノードが最も配送確率が高く、該中継ノードまでのメトリックは１、該中継ノードが持つ配送確率は０．６であるとわかる。また、該中継ノードへ到達するために転送すべき次ホップノードとして、ＩＰアドレスが１０．０．０．４の隣接ノードへ転送する必要があることが示されている。【００３９】
ＤＴＮ転送部１３は、ＤＴＮ転送を行う機能を含んでいる。具体的には、隣接ノードから受信したバンドルをデータとして再構成し、自ノードに一旦蓄積を行う。そして転送すべき次ホップが見つかった時点で、該データをバンドルに分割し、次ホップへ転送を行う。ここで、転送すべき次ホップはルーティングテーブル１２を参照することにより決定する。また、バンドルの送受信は、ＴＣＰ／ＩＰ部１４を介して送受信を行う。【００４０】
ＴＣＰ／ＩＰ部１４は、ＤＴＮ転送部１３が送受信するバンドルをＩＰパケットとして他ノードと送受信する機能を含んでいる。各バンドルは、直接ＩＰパケットのペイロードとして埋め込まれるのではなく、ＴＣＰ(Transmission Control Protocol)やＵＤＰ(User Datagram Protocol)などのトランスポートプロトコルのデータグラムとしてＩＰパケット化され、隣接ノードと送受信が行われる。【００４１】
［第１の実施形態の動作］
次に、図６を参照して、本実施形態において、ノード１における配送確率データベース１１Ｂを更新する動作について詳細に説明する。【００４２】
まず、配送確率計算部１１Ｃは、定期的に配送確率データベース１１Ｂを参照し（ステップ１０１）、現在データベース上に配送確率が登録されている宛先ＩＰアドレスを調べ、各宛先への直接経路が存在するかどうかをルーティングテーブル１２を参照してチェックする（ステップ１０２）。
次に、配送確率計算部１１Ｃは、該宛先ノードに対応する現在有効な直接経路を自ノードがもっているかをルーティングテーブル１２を参照して調べる（ステップ１０３）。【００４３】
ここで、有効な直接経路が存在した場合（ステップ１０３：ＹＥＳ）、配送確率計算部１１Ｃは、該宛先ノードに対応する配送確率を１．０に設定し（ステップ１０４）、配送確率データベース１１Ｂにおける該当エントリを新しい配送確率へと更新し（ステップ１０７）、一連の配送確率データベース更新処理を終了する。
一方、有効な直接経路が存在しなかった場合（ステップ１０３：ＮＯ）、配送確率計算部１１Ｃは、新しい配送確率を計算する（ステップ１０５）。この際、配送確率の計算においては、配送確率計算部１１Ｃの説明において例として挙げられたアルゴリズムが用いられてもよいし、他のアルゴリズムが用いられてもよい。【００４４】
続いて、配送確率計算部１１Ｃは、ステップ１０５で計算された新しい配送確率が、予め設定されたしきい値未満であるか検査する（ステップ１０６）。ここで、新しい配送確率がしきい値未満の場合（ステップ１０６：ＹＥＳ）、配送確率計算部１１Ｃは、配送確率を更新せずに該当エントリを消去し（ステップ１０８）、一連の処理を終了する。
一方、新しい配送確率がしきい値未満でない場合（ステップ１０６：ＮＯ）、ステップ１０７へ移行して、配送確率データベース１１Ｂにおける該当エントリを新しい配送確率へと更新し（ステップ１０７）、一連の配送確率データベース更新処理を終了する。【００４５】
次に、図７を参照して、本実施形態において、ノード１がバンドルを送信する際の経路解決動作について詳細に説明する。【００４６】
まず、ＤＴＮ転送部１３で転送すべきバンドルを受信したり、自ノードがソースノードとなって送信すべきバンドルが存在する場合（ステップ２０１）、ＤＴＮ転送部１３は、ルーティングテーブル１２を参照して、該バンドルの宛先ノードのＩＰアドレスに対応する経路エントリがあるか検索し（ステップ２０２）、対応するエントリが存在するかどうか判定する（ステップ２０３）。【００４７】
ここで、対応するエントリが存在した場合（ステップ２０２：ＹＥＳ）、該エントリに登録されている次ホップノードのＩＰアドレスを解決し、次ホップとして設定する（ステップ２０４）。この後、設定された次ホップに対してバンドルを転送し（ステップ２１１）、一連の経路解決処理を終了する。【００４８】
一方、ステップ２０３において、対応するエントリが存在しなかった場合（ステップ２０３：ＮＯ）、ＤＴＮ転送部１３は、宛先ノードまでの経路を解決するための経路要求メッセージを経路・確率情報交換部１１Ａを介して送出する（ステップ２０５）。
経路要求メッセージは、フラッディングによりネットワーク内に同報送信され、該宛先ノード自身、該宛先ノードへの直接経路を有するノード、該宛先ノードへの確率的経路を有するノードのいずれかが該経路要求メッセージを受信すると、これらノードのルーティングプロトコル部１１は、経路・確率情報交換部２１Ａにより、自ノードから宛先ノードへの経路に関する情報（例えば、宛先ノード自身であること、該宛先ノードへの直接経路または確率的経路の有無やその配送確率）を含む経路応答メッセージをソースノード（この場合ノード１）に対して応答する。【００４９】
ステップ２０５の後、経路・確率情報交換部１１Ａは、経路応答メッセージを受信するまで一定時間待機する（ステップ２０６）。
ここで、待機時間内に経路応答メッセージを受信せずにタイムアウトした場合（ステップ２０６：ＮＯ）、一旦バンドルを蓄積し（ステップ２０８）、一定時間後にステップ２０２へ戻って処理を繰り返し実行する。【００５０】
一方、待機時間内に経路応答メッセージを受信した場合（ステップ２０６：ＹＥＳ）、ＤＴＮ転送部１３は、当該経路応答メッセージが、該宛先ノードへの確率的経路を有するノードによって応答されたものであるか、それ以外のノードによって応答されたものであるかを判定する（ステップ２０７）。【００５１】
ここで、該経路応答メッセージが該宛先ノードへの確率的経路を有するノードによって応答されたものではない場合（ステップ２０７：ＹＥＳ）、ＤＴＮ転送部１３は、メッセージに含まれる宛先ノードまでのホップ数が最も少なくなる経路に対応する経路応答メッセージを選択し、該経路応答メッセージを自ノード（ノード１）へ転送したノードを次ホップとして設定する（ステップ２０９）。この後、ステップ２１１へ移行して、設定された次ホップに対してバンドルを転送し、一連の経路解決処理を終了する。【００５２】
一方、ステップ２０７において、該経路応答メッセージが、該宛先ノードへの確率的経路を有するノードによって応答されたものである場合（ステップ２０７：ＮＯ）、ＤＴＮ転送部１３は、その経路応答メッセージに含まれる宛先ノードへの配送確率が最も高い経路応答メッセージを応答したノードを中継ノードとして選択し、該経路応答メッセージを自ノードへ転送したノードを次ホップとして設定する（ステップ２１０）。この後、ステップ２１１へ移行して、設定された次ホップに対してバンドルを転送し、一連の経路解決処理を終了する。【００５３】
［第１の実施形態の効果］
このように、本実施形態では、ディレイトレラントネットワーク内の各ノードにおいて、当該ノードのルーティングテーブルに登録されている当該ノードから宛先ノードへの過去から現在までのエンド−エンドの経路の履歴に基づいて、当該ノードにおける宛先ノードへの配送確率をルーティングプロトコル部により計算し、ソースノードにより、各ノードで計算された個々のノードにおける宛先ノードへの配送確率に基づいて、当該ソースノードから宛先ノードへ転送データを転送する際の次ホップノードをＤＴＮ転送部により選択している。
これにより、自ノードと直接隣接することがない場合であっても、直接隣接したノードの先に存在する別のノードに対して、自ノードからの配送確率に反映させることかできる。このため、宛先への到達率を大幅に向上させることが可能となり、高い信頼性を有するディレイトレラントネットワークを実現することが可能となる。【００５４】
また、本実施形態では、宛先ノードへの配送確率は、ＭＡＮＥＴルーティングプロトコルの直接経路を持つことによって１．０と設定される。設定された配送確率は、該宛先ノードへの直接経路がなくなった後も、経路がなくなってからの経過時間と、該直接経路のホップ数とによって逓減し、確率的経路として保持される。このようにＭＡＮＥＴルーティングプロトコルが設定する直接経路と連動することで、宛先ノードと直接隣接することがなくても、配送確率を計算することができる。これにより、宛先ノードが自ノードと直接隣接することがなく、２ホップ以上離れて存在している場合であっても、宛先ノードまでの配送確率を持つことができ、さらに、その配送確率を直接隣接していないノードへと伝えることが可能となる。【００５５】
さらに、本実施形態では、バンドルを転送する際に、ルーティングテーブル上にヒットするエントリがない場合、ルーティングプロトコル部における経路・確率情報交換部が、ＭＡＮＥＴルーティングプロトコルの経路要求メッセージに対する応答メッセージを受け取る形で、自ノードから直接経路のあるノードのうち、最も高い宛先ノードへの配送確率を持つノードを探すことができる。すなわち、自ノードと隣接するノード以外のノードのなかからも、宛先ノードへの配送確率を持つノードを探索することができる。これにより、配送確率を持つノードと隣接するノード以外のノードであっても、該配送確率を知ることができる。【００５６】
［第２の実施形態］
次に、図８を参照して、本発明の第２の実施形態にかかるノードについて説明する。
図８を参照すると、本実施形態にかかるノード２は、第１の実施形態のノード１の構成に加えて、ルーティングプロトコル部２１内に確率キャッシュ部２１Ｅが追加された構成となっている。これら機能部は、一般的な情報通信端末が備えるＣＰＵ、メモリ、各種インターフェース回路などを含むハードウェアとプログラムやアプリケーションからなるソフトウェアとが協働して実現される。【００５７】
なお、経路・確率情報交換部２１Ａ、経路計算・設定部２１Ｄ、ルーティングテーブル２２、ＤＴＮ転送部２３、ＴＣＰ／ＩＰ部２４は、ノード１における経路・確率情報交換部１１Ａ、経路計算・設定部１１Ｄ、ルーティングテーブル１２、ＤＴＮ転送部１３、ＴＣＰ／ＩＰ部１４と同等であるため、ここでの説明は省略する。【００５８】
確率キャッシュ部２１Ｅは、経路・確率情報交換部２１Ａを介して、経路応答メッセージにより取得した他のノードが持つ配送確率をキャッシュとして配送確率データベース２１Ｂへ格納する機能を含んでいる。
配送確率データベース２１Ｂは、第１の実施形態におけるノード１の配送確率データベース１１Ｂの機能に加え、確率キャッシュ部２１Ｅによりキャッシュとして設定された配送確率情報を格納する機能を含む。キャッシュされた配送確率も、通常に登録されている配送確率と同様、他のノードからの経路要求メッセージに応答する形で経路・確率情報交換部２１Ａから返送通知することが可能である。【００５９】
図９に示す配送確率データベース２１Ｂの構成例を参照すると、各配送確率のエントリにおいて、該エントリがキャッシュした配送確率であるかどうかを判別するキャッシュフラグが設定されている。キャッシュフラグが０である場合、該エントリはキャッシュした配送確率ではないことを示し、１である場合、キャッシュした配送確率であることを示す。さらに、キャッシュフラグが１の場合はライフタイムが設定され、該エントリの残り有効時間が示されている。例えば、宛先ＩＰアドレスが１０．０．０．３１であるノードに対する配送確率は、キャッシュしたエントリであり、配送確率が０．６、ライフタイムは１０秒であることがわかる。【００６０】
配送確率計算部２１Ｃは、第１の実施形態におけるノード１の配送確率計算部１１Ｃの機能に加え、配送確率データベース２１Ｂにおいて、キャッシュフラグが１であるエントリに対しても配送確率を更新する機能を含んでいる。
具体的には、ライフタイムを時間の経過とともに更新していき、ライフタイムが０以下になった時点で該エントリを消滅させる。また、ライフタイムが０になる前においても配送確率の更新を定期的に行う。例えば、キャッシュ元のノードからのホップ数やキャッシュした時刻からの経過時間に基づいて配送確率を逓減させる方法などが考えられる。【００６１】
［第２の実施形態の動作］
次に、図１０を参照して、本実施形態において、ノード２における配送確率データベースを更新する動作について説明する。【００６２】
まず、配送確率計算部２１Ｃは、定期的に配送確率データベース２１Ｂを参照し（ステップ３０１）、データベース上に登録されている各エントリに対し、該エントリのキャッシュフラグが０であるかどうかをチェックする（ステップ３０２）。
ここで、キャッシュフラグが０である場合（ステップ３０２：ＹＥＳ）、配送確率計算部１１Ｃは、前述した図６のステップ１０２以降の処理を実行し（ステップ３０３）、一連の配送確率データベース更新処理を終了する。【００６３】
一方、キャッシュフラグが１である場合（ステップ３０２：ＮＯ）、配送確率計算部２１Ｃは、当該エントリのライフタイムを前回更新時刻からの経過時間に基づいて更新する（ステップ３０４）。
次に、配送確率計算部２１Ｃは、ステップ３０４の結果、ライフタイムが０以下になるかどうかをチェックする（ステップ３０５）。【００６４】
ここで、ライフタイムが０以下であった場合（ステップ３０５：ＹＥＳ）、配送確率計算部２１Ｃは、該エントリは無効なエントリとして消去し（ステップ３０６）、一連の配送確率データベース更新処理を終了する。
一方、ライフタイムが０より大きい場合、配送確率計算部２１Ｃは、前述した図６のステップ１０５以降の処理を実行し（ステップ３０７）、一連の配送確率データベース更新処理を終了する。【００６５】
［第２の実施形態の効果］
このように、本実施形態では、確率キャッシュ部が経路・確率情報交換部を介して経路応答メッセージにより取得した他のノードが持つ配送確率をキャッシュとして配送確率データベースへ格納する。そして、キャッシュされた配送確率も通常登録されている配送確率と同様に、他のノードからの経路要求メッセージに応答する形で通知することが可能である。こうすることにより、経路要求メッセージの送信量を下げることや、経路要求メッセージを送信するノードが、宛先ノードへの配送確率を持つノードを発見するまでの時間を短縮する効果が期待できる。
【産業上の利用可能性】
【００６６】
本発明にかかる経路制御方法およびノードは、転送データを途中ノードにおいて一時的に蓄積することにより、ソースノードから宛先ノードまでエンド−エンドの到達性がなくても配送を可能にするディレイトレラントネットワークにおける経路制御技術に適しており、特に無線アドホックネットワークや衛星回線など、ノード間の接続性が不安定、低信頼なネットワークに最適である。
【図１】
2009078427.tif 000003
【図２】
2009078427.tif 000004
【図３】
2009078427.tif 000005
【図４】
2009078427.tif 000006
【図５】
2009078427.tif 000007
【図６】
2009078427.tif 000008
【図７】
2009078427.tif 000009
【図８】
2009078427.tif 000010
【図９】
2009078427.tif 000011
【図１０】
2009078427.tif 000012
【国際調査報告】
2009078427.tif 000013
2009078427.tif 000014