(57)【要約】【課題】ノードの電力消費量を減少させ、ノード数が増大した場合でも、ルーティング情報数を適切な量に抑えることができ、ネットワーク帯域の消費量を減少させ、ノードの管理負荷を減少させることができ、ノードの移動を考慮した場合に、移動するノード間でルートを安定化させ、ルート変更時におけるルーティングテーブル更新時間を減少させることができるアドホックネットワークシステム等を提供する。【解決手段】アドホックネットワークシステム１のノードを、隣接するノードの発見に関しては電波を定期的に送信する側であり、マルチホップに関してはパケットの転送を行う役割を担う親ノードＰａ１０等と、隣接するノードの発見に関しては親ノードＰａ１０等からの電波を受信した時にのみ反応を起こし、マルチホップに関してはパケットの送受信を行うというアドホックネットワークシステム１上でサービスを利用する側の子ノードＣａ４０等とに分ける。【選択図】  図１
2009094823.tif 000002
【特許請求の範囲】
【請求項１】
ルートを管理するルーティングノードとルートを管理しない非ルーティングノードとを備えたアドホックネットワークシステムであって、該ルーティングノードは、パケットの転送に用いる宛先ノード部及び次ホップノード部を含むルーティングテーブルを有しており、
前記ルーティングノードは、
定期的にハローメッセージを送信するハローメッセージ送信手段と、
１以上の前記非ルーティングノードから送信された登録要求メッセージを受信した場合、ルーティングテーブルの宛先ノード部及び次ホップノード部に該非ルーティングノードを登録する登録手段と、
受信したパケットに示される宛先ノードに一致するルーティングテーブルの宛先ノード部に対応する次ホップノード部に示されるノードへ該パケットを転送するパケット転送手段とを備え、
前記非ルーティングノードは、
１以上のルーティングノードの前記ハローメッセージ送信手段により送信されたハローメッセージを受信した場合、最適なルーティングノードを選択するルーティングノード選択手段と、
前記ルーティングノード選択手段により選択されたルーティングノードへ登録要求メッセージを送信する登録要求メッセージ送信手段と、
前記ルーティングノード選択手段により選択されたルーティングノードへ宛先ノードを非ルーティングノード又はルーティングノードとするパケットを送信するパケット送信手段と、
前記ルーティングノード選択手段により選択されたルーティングノードから自己を宛先とするパケットを受信するパケット受信手段とを備えたことを特徴とするアドホックネットワークシステム。
【請求項２】
請求項１記載のアドホックネットワークシステムにおいて、電力供給量が相対的に多いノードをルーティングノードとし、電力供給量が相対的に少ないノードを非ルーティングノードとすることを特徴とするアドホックネットワークシステム。
【請求項３】
請求項１記載のアドホックネットワークシステムにおいて、移動性が相対的に高いノードを非ルーティングノードとし、移動性が相対的に低いノードをルーティングノードとすることを特徴とするアドホックネットワークシステム。
【請求項４】
請求項１乃至３のいずれかに記載のアドホックネットワークシステムにおいて、ルーティングノード及び非ルーティングノードは、ルーティングノードであるか又は非ルーティングノードであるかを示す現トポロジを動的に変更する動的変更手段をさらに備えたことを特徴とするアドホックネットワークシステム。
【請求項５】
ルートを管理するルーティングノードとルートを管理しない非ルーティングノードとを備えたアドホックネットワークシステムのルーティング制御方法であって、該ルーティングノードは、パケットの転送に用いる宛先ノード部及び次ホップノード部を含むルーティングテーブルを有しており、
前記ルーティングノードが、
定期的にハローメッセージを送信するハローメッセージ送信ステップと、
前記非ルーティングノードが、
前記ハローメッセージ送信ステップで送信された１以上のルーティングノードのハローメッセージを受信した場合、最適なルーティングノードを選択するルーティングノード選択ステップと、
前記ルーティングノード選択ステップにより選択されたルーティングノードへ登録要求メッセージを送信する登録要求メッセージ送信ステップと、
前記ルーティングノードが、
１以上の非ルーティングノードから前記登録要求メッセージ送信ステップで送信された登録要求メッセージを受信した場合、ルーティングテーブルの宛先ノード部及び次ホップノード部に該非ルーティングノードを登録する登録ステップと、
前記非ルーティングノードが、
前記ルーティングノード選択ステップにより選択されたルーティングノードへ宛先ノードを非ルーティングノード又はルーティングノードとするパケットを送信するパケット送信ステップと、
前記ルーティングノードが、
前記パケット送信ステップで送信されたパケットに示される宛先ノードに一致するルーティングテーブルの宛先ノード部に対応する次ホップノード部に示されるノードへ該パケットを転送するパケット転送ステップと、
前記非ルーティングノードが、
前記パケット転送ステップで送信された自己を宛先とするパケットを受信するパケット受信ステップとを備えたことを特徴とするアドホックネットワークシステムのルーティング制御方法。
【請求項６】
請求項５記載のアドホックネットワークシステムのルーティング制御方法において、電力供給量が相対的に多いノードをルーティングノードとし、電力供給量が相対的に少ないノードを非ルーティングノードとすることを特徴とするアドホックネットワークシステムのルーティング制御方法。
【請求項７】
請求項５記載のアドホックネットワークシステムのルーティング制御方法において、移動性が相対的に高いノードを非ルーティングノードとし、移動性が相対的に低いノードをルーティングノードとすることを特徴とするアドホックネットワークシステムのルーティング制御方法。
【請求項８】
請求項５乃至７のいずれかに記載のアドホックネットワークシステムのルーティング制御方法において、ルーティングノード及び非ルーティングノードは、ルーティングノードであるか又は非ルーティングノードであるかを示す現トポロジを動的に変更する動的変更ステップをさらに備えたことを特徴とするアドホックネットワークシステムのルーティング制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルートを管理するルーティングノードとルートを管理しない非ルーティングノードとを備えたアドホックネットワークシステム等に関する。
【背景技術】
【０００２】
一般に、アドホックネットワークシステムにはネットワークの構成に関し、１）隣接するノードの発見、２）遠くのノードへ通信するためのバケツリレー的なマルチホップ、３）マルチホップのルーティング情報の管理、の３つの機能が必要であると言われている。従来、上記１）に関しては、隣接する２ノードの内、いずれか一方のノードから他方のノードへ電波を定期的に送信し、他方のノードは当該電波を受信したタイミングで返信を行うことにより実現されている。上記２）に関しては、各ノードで受信したパケットを再送信することにより実現されている。上記３）に関しては、上記２）のマルチホップを実現する際に取り扱われている。ここで、ノード数をｎとすると、送信元ノードと宛先ノードとの組合せを考慮すると、ルーティング情報数のオーダはＯ（ｎ２）となるため、ルーティング情報の管理には種々の検討が行なわれてきた。例えば特許文献１では、宛先ノードへのルーティングを発見した後、リンク基準に従って発見ルートをランク付けし、ランクに基づいて宛先ノードにメッセージデータを送信している。
【０００３】
上述したアドホックネットワークシステムには、ＭＡＮＥＴ（Mobile Ad Hoc Network）等のＩＥＴＦ（Internet Engineering Task Force）標準化プロトコル（ＲＦＣ３５６１、ＲＦＣ３６２６、ＲＦＣ３６８４）が存在する。これらのＩＥＴＦ標準化プロトコルでは全てのノードが同じ振る舞いをしている。その理由は、通信方式としてのインフラスチラクチャモード（アクセスポイントとの通信はクライアント・サーバ型）とアドホックモード（Ｐ２Ｐ型）とを区別するため、アドホックネットワークシステムを考慮する際に均質性（ホモジニアス）を前提としているためと言われている。あるいは、学術的な意図から均質性が要請されているものとも考えられる。
【０００４】
【特許文献１】特表２００５−５３５２５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した１）隣接するノードの発見の実現方法では、いずれか一方のノードから他方のノードへ電波を定期的に送信するため、電波を送信する側のノードの電力消費量が多くなってしまうという問題があった。上述した２）バケツリレー的なマルチホップの実現方法ではルーティング情報の管理が重要となるが、ノード数が増大すると以下のような種々の問題が生じることになる。すなわち、ノード数が増大するとルーティング情報数が膨大な量になるだけではなく、ネットワーク帯域の消費量も増大し、ノードの管理負荷が増大することになるという問題があった。さらに、ノードの移動を考慮すると、移動するノード間でルートが安定しなくなるという問題があった。加えて、ルート変更時におけるルーティングテーブル更新時間が増大するという問題があった。特許文献１の方法ではノード数が増大した場合、ルートの発見が困難になることは避けられない。上述のように、アドホックネットワークシステムを考慮する際に均質性が前提とされているが、異質性（ヘテロジニアス）を有するノードが存在（混在）した場合、ノード数が増大すると、従来の均質性を前提としたアドホックネットワークシステムでは対応が困難になるという問題があった。
【０００６】
そこで、本発明の目的は、上記問題を解決するためになされたものであり、ノードの電力消費量を減少させ、ノード数が増大した場合でも、ルーティング情報数を適切な量に抑えることができ、ネットワーク帯域の消費量を減少させ、ノードの管理負荷を減少させることができ、ノードの移動を考慮した場合に、移動するノード間でルートを安定化させ、ルート変更時におけるルーティングテーブル更新時間を減少させることができるアドホックネットワークシステム等を提供することにある。
【０００７】
本発明の第２の目的は、異質性を有するノードが存在した場合にも対応することが可能なアドホックネットワークシステム等を提供することにある。
【課題を解決するための手段】
【０００８】
この発明のアドホックネットワークシステムは、ルートを管理するルーティングノードとルートを管理しない非ルーティングノードとを備えたアドホックネットワークシステムであって、該ルーティングノードは、パケットの転送に用いる宛先ノード部及び次ホップノード部を含むルーティングテーブルを有しており、前記ルーティングノードは、定期的にハローメッセージを送信するハローメッセージ送信手段と、１以上の前記非ルーティングノードから送信された登録要求メッセージを受信した場合、ルーティングテーブルの宛先ノード部及び次ホップノード部に該非ルーティングノードを登録する登録手段と、受信したパケットに示される宛先ノードに一致するルーティングテーブルの宛先ノード部に対応する次ホップノード部に示されるノードへ該パケットを転送するパケット転送手段とを備え、前記非ルーティングノードは、１以上のルーティングノードの前記ハローメッセージ送信手段により送信されたハローメッセージを受信した場合、最適なルーティングノードを選択するルーティングノード選択手段と、前記ルーティングノード選択手段により選択されたルーティングノードへ登録要求メッセージを送信する登録要求メッセージ送信手段と、前記ルーティングノード選択手段により選択されたルーティングノードへ宛先ノードを非ルーティングノード又はルーティングノードとするパケットを送信するパケット送信手段と、前記ルーティングノード選択手段により選択されたルーティングノードから自己を宛先とするパケットを受信するパケット受信手段とを備えたことを特徴とする。
【０００９】
ここで、この発明のアドホックネットワークシステムにおいて、電力供給量が相対的に多いノードをルーティングノードとし、電力供給量が相対的に少ないノードを非ルーティングノードとすることができる。
【００１０】
ここで、この発明のアドホックネットワークシステムにおいて、移動性が相対的に高いノードを非ルーティングノードとし、移動性が相対的に低いノードをルーティングノードとすることができる。
【００１１】
ここで、この発明のアドホックネットワークシステムにおいて、ルーティングノード及び非ルーティングノードは、ルーティングノードであるか又は非ルーティングノードであるかを示す現トポロジを動的に変更する動的変更手段をさらに備えることができる。
【００１２】
この発明のアドホックネットワークシステムのルーティング制御方法は、ルートを管理するルーティングノードとルートを管理しない非ルーティングノードとを備えたアドホックネットワークシステムのルーティング制御方法であって、該ルーティングノードは、パケットの転送に用いる宛先ノード部及び次ホップノード部を含むルーティングテーブルを有しており、前記ルーティングノードが、定期的にハローメッセージを送信するハローメッセージ送信ステップと、前記非ルーティングノードが、前記ハローメッセージ送信ステップで送信された１以上のルーティングノードのハローメッセージを受信した場合、最適なルーティングノードを選択するルーティングノード選択ステップと、前記ルーティングノード選択ステップにより選択されたルーティングノードへ登録要求メッセージを送信する登録要求メッセージ送信ステップと、前記ルーティングノードが、１以上の非ルーティングノードから前記登録要求メッセージ送信ステップで送信された登録要求メッセージを受信した場合、ルーティングテーブルの宛先ノード部及び次ホップノード部に該非ルーティングノードを登録する登録ステップと、前記非ルーティングノードが、前記ルーティングノード選択ステップにより選択されたルーティングノードへ宛先ノードを非ルーティングノード又はルーティングノードとするパケットを送信するパケット送信ステップと、前記ルーティングノードが、前記パケット送信ステップで送信されたパケットに示される宛先ノードに一致するルーティングテーブルの宛先ノード部に対応する次ホップノード部に示されるノードへ該パケットを転送するパケット転送ステップと、前記非ルーティングノードが、前記パケット転送ステップで送信された自己を宛先とするパケットを受信するパケット受信ステップとを備えたことを特徴とする。
【００１３】
ここで、この発明のアドホックネットワークシステムのルーティング制御方法において、電力供給量が相対的に多いノードをルーティングノードとし、電力供給量が相対的に少ないノードを非ルーティングノードとすることができる。
【００１４】
ここで、この発明のアドホックネットワークシステムのルーティング制御方法において、移動性が相対的に高いノードを非ルーティングノードとし、移動性が相対的に低いノードをルーティングノードとすることができる。
【００１５】
ここで、この発明のアドホックネットワークシステムのルーティング制御方法において、ルーティングノード及び非ルーティングノードは、ルーティングノードであるか又は非ルーティングノードであるかを示す現トポロジを動的に変更する動的変更ステップをさらに備えることができる。
【発明の効果】
【００１６】
本発明のアドホックネットワークシステムによれば、アドホックネットワークシステムのノードを、隣接するノードの発見に関しては電波を定期的に送信する側であり、マルチホップに関してはパケットの転送を行う役割を担う親ノードと、隣接するノードの発見に関しては親ノードからの電波を受信した時にのみ反応を起こし、マルチホップに関してはパケットの送受信を行うというアドホックネットワークシステム上でサービスを利用する側の子ノードとに分けている。この結果、子ノード側では電波を定期的に送信する必要がなくなるため、子ノードの電力消費量を減少させることができる。これは、アドホックネットワークシステム全体としての電力消費量を減少させることになる。さらに、親ノードと子ノードとに役割分担した結果、ノード数が増大した場合であっても、ルーティング情報数はオーダＯ（ｎ）（ｎはノード数）に抑えることができ、アドホックネットワークシステムの帯域の消費量も減少させることができ、子ノードの管理負荷を減少させることができる。加えて、子ノードは親ノードのアドレスのみを知っていればよく、他のノードのアドレスを知る必要がないため、ルーティングテーブルをアドホックネットワークシステムの構成に応じて動的に変更する必要がない。このため、ルート変更時における子ノードのルーティングテーブルの更新時間をなくしてしまうことが可能である。以上の結果、ノードの電力消費量を減少させ、ノード数が増大した場合でも、ルーティング情報数を適切な量に抑えることができ、ネットワーク帯域の消費量を減少させ、ノードの管理負荷を減少させることができ、ノードの移動を考慮した場合に、移動するノード間でルートを安定化させ、ルート変更時におけるルーティングテーブル更新時間を減少させることができるアドホックネットワークシステム等を提供することができるという効果がある。
【発明を実施するための最良の形態】
【００１７】
以下、各実施例について図面を参照して詳細に説明する。
【実施例１】
【００１８】
図１は、本発明の実施例１におけるアドホックネットワークシステム１を示す。図１で、符号１０、１１および１２は各々ルートを管理するルーティングノードＰａ、ＰｂおよびＰｃ（以下、「親ノードＰａ１０等」と言う。）であり、符号４０、４１、４２、４３および４５は各々ルートを管理しない非ルーティングノードＣａ、Ｃｂ、Ｃｃ、Ｃｄ、ＣｅおよびＣｆ（以下、「子ノードＣａ４０等」と言う。）であり、各ノード間の関連は実線で示す。図１に示されるように、アドホックネットワークシステム１は符号Ｒで示される点線内の親ノードＰａ１０等と、符号非Ｒで示される点線内の子ノードＣａ４０等とを有している。親ノードＰａ１０等は、隣接するノードの発見に関しては電波を定期的に送信する側であり、マルチホップに関してはパケットの転送を行う役割を担っている。一方、子ノードＣａ４０等は、隣接するノードの発見に関しては親ノードＰａ１０等からの電波を受信した時にのみ反応を起こす側であり、マルチホップに関してはパケットの送受信を行うという、アドホックネットワークシステム１上でサービスを利用する側である。アドホックネットワークシステム１上の各ノードは、親ノードまたは子ノードのいずれかの役割を担っている。図１に示されるように、点線Ｒ内の親ノードＰａ１０等によりマルチホップのルートが構成されており、パケット送信の最初の１ホップは、子ノードＣａ４０等から親ノードＰａ１０等へ行き、最後の１ホップは親ノードＰａ１０等から子ノードＣａ４０等へ行くことになる。一般にアドホックネットワークシステムは、インフラストラクチャに依存しない端末のみからなる無線ネットワークを意味する場合と、インフラストラクチャまたは有線設備等も利用して一時的に構成されるようなネットワークを意味する場合とがある。本発明のアドホックネットワークシステム１は上述の２つのネットワークのいずれか一方に限定されるものではなく、どちらにも適用可能である。
【００１９】
図１で、符号２０は親ノードＰａ１０等の有する機能を示す機能ブロックである。図１の機能ブロック２０に示されるように、親ノードＰａ１０等は、パケットの転送に用いる宛先ノード部および次ホップノード部を含むルーティングテーブル３０と、定期的にハローメッセージ（ＨＥＬＬＯ）を送信するハローメッセージ送信部２１（ハローメッセージ送信手段）と、１以上の子ノードＣａ４０等から送信された登録要求メッセージを受信した場合、ルーティングテーブル３０の宛先ノード部および次ホップノード部に子ノードＣａ４０等を登録する登録部２２（登録手段）と、受信したパケットに示される宛先ノードに一致するルーティングテーブル３０の宛先ノード部に対応する次ホップノード部に示されるノードへ当該パケットを転送するパケット転送部２３（パケット転送手段）とを備えている。
【００２０】
図１で、符号５０は子ノードＣａ４０等の有する機能を示す機能ブロックである。図１の機能ブロック５０に示されるように、子ノードＣａ４０等は、パケットの送信に用いる宛先ノード部および次ホップノード部を含むルーティングテーブル６０と、１以上の親ノードＰａ１０等のハローメッセージ送信部２１により送信されたハローメッセージを受信した場合、最適な親ノードＰａ１０等を選択するルーティングノード選択部５１（ルーティングノード選択手段）と、ルーティングノード選択部５１により選択された親ノードＰａ１０等へ登録要求メッセージ（ＲＥＧＩＳＴＥＲ）を送信する登録要求メッセージ送信部５２（登録要求メッセージ送信手段）と、ルーティングノード選択部５１により選択された親ノードＰａ１０等へ宛先ノードを子ノードＣａ４０等または親ノードＰａ１０等とするパケットを送信するパケット送信部５３（パケット送信手段）と、ルーティングノード選択部５１により選択された親ノードＰａ１０等から自己を宛先とするパケットを受信するパケット受信部５４（パケット受信手段）とを備えている。
【００２１】
図２は、親ノードＰａ１０のルーティングテーブル３０を示す。図２のルーティングテーブル３０において、符号３１は宛先ノード部、３２は次ホップノード部であり、ノードのアドレスは説明の便宜上ノード名と同じ符号で示している。図２に示されるように、親ノードＰａ１０が受信したパケットに示される宛先ノードのアドレスがＣａの場合、当該Ｃａに一致するルーティングテーブル３０の宛先ノード部３１に対応する次ホップノード部３２に示されるノードのアドレスはＣａである。このため、受信したパケットは子ノードＣａへ転送される。親ノードＰａ１０が受信したパケットに示される宛先ノードのアドレスがＰｂの場合、当該Ｐｂに一致するルーティングテーブル３０の宛先ノード部３１に対応する次ホップノード部３２に示されるノードのアドレスはＰｂである。このため、受信したパケットは親ノードＰｂへ転送される。親ノードＰａ１０が受信したパケットに示される宛先ノードのアドレスがＣｄの場合、当該Ｃｄに一致するルーティングテーブル３０の宛先ノード部３１に対応する次ホップノード部３２に示されるノードのアドレスはＰｃである。このため、受信したパケットは親ノードＰｃへ転送される。他も同様であるため説明は省略する。他の親ノードＰｂ１１、Ｐｃ１２でも同様のルーティングテーブルを有しているため、他の親ノードＰｂ等のルーティングテーブルについての説明は省略する。
【００２２】
図３は、子ノードＣａ４０のルーティングテーブル６０を示す。図３のルーティングテーブル６０において、符号６１は宛先ノード部、６２は次ホップノード部であり、図２と同様にノードのアドレスを説明の便宜上ノード名と同じ符号で示している。図３に示されるように、子ノードＣａ４０が親ノードＰａ１０にパケットを送信する場合、当該親ノードＰａ１０のアドレスに一致するルーティングテーブル６０の宛先ノード部６１に対応する次ホップノード部６２に示されるノードのアドレスは親ノードＰａ１０である。このため、受信したパケットは親ノードＰａ１０へ転送される。子ノードＣａ４０が子ノードＣｂ４１にパケットを送信する場合、当該子ノードＣｂ４１のアドレスに一致するルーティングテーブル６０の宛先ノード部６１に対応する次ホップノード部６２に示されるノードのアドレスは親ノードＰａ１０である。このため、受信したパケットは親ノードＰａ１０へ転送される。子ノードＣａ１０が子ノードＣｃ４２にパケットを送信する場合、当該子ノードＣｃ４２のアドレスに一致するルーティングテーブル６０の宛先ノード部６１に対応する次ホップノード部６２に示されるノードのアドレスは親ノードＰａである。このため、受信したパケットは親ノードＰａへ転送される。以下同様に、子ノードＣａ４０においてはルーティングテーブル６０のすべての次ホップノードのアドレスは自分の親ノードＰａ１０のアドレスである。このため、子ノードＣａ４０は他のノード（端末）のアドレスを知る必要がなく、ルーティングテーブル６０をアドホックネットワークシステム１の構成に応じて動的に変更する必要もない。結局、アドホックネットワークシステム１の構成に応じたルーティングテーブルの管理は、ルーティングテーブル３０についてのみ行い、親ノードＰａ等間の情報交換により各親ノードＰａ等がルートを設定することにより行えばよい。アドホックネットワークシステム１を従来のＴＣＰ／ＩＰネットワーク上で実装する場合、ＴＣＰ／ＩＰの要請によりパケット送信に際してルーティングテーブルは必ず必要となる。このため、子ノードＣａ４０においてもルーティングテーブル６０が必要となる。しかし、上述のようにルーティングテーブル６０のすべての次ホップノードは自分の親ノードＰａ１０であるため、子ノードＣａ４０においては親ノードＰａのアドレスを静的に設定するだけで済むため、ネットワーク的な負荷、端末（ノード）における負荷を軽減することが可能である。ＴＣＰ／ＩＰネットワーク上で実装しない場合には子ノード４０にはルーティングテーブル６０というような形式で次ホップノードのアドレスを用意しておく必要はなく、親ノードＰａのアドレスのみを保持しておけばよい。
【００２３】
図４は、本発明のアドホックネットワークシステム１のルーティング制御方法の流れをフローチャートで示す。図４で、左側は図１の符号Ｒで示される点線内にある親ノードＰａ１０等側の処理を示し、右側は図１の符号非Ｒで示される点線内にある子ノードＣａ４０等側の処理を示し、両者間の通信は点線で示す。図４に示されるように、親ノードＰａ１０等が、定期的にハローメッセージＨＭを送信する（ハローメッセージ送信ステップ。ステップＳ１０）。
【００２４】
子ノードＣａ４０等が、ハローメッセージ送信ステップ（ステップＳ１０）で送信された１以上の親ノードＰａ等のハローメッセージＨＭを受信した場合、最適な親ノードＰａ１０等を選択する（ルーティングノード選択ステップ。ステップＳ２０）。続いて、ルーティングノード選択ステップ（ステップＳ２０）により選択された親ノードＰａ１０等へ登録要求メッセージＲＥＧを送信する（登録要求メッセージ送信ステップ。ステップＳ２２）。
【００２５】
親ノードＰａ等が、１以上の子ノードＣａ４０等から登録要求メッセージ送信ステップ（ステップＳ２２）で送信された登録要求メッセージＲＥＧを受信した場合、ルーティングテーブル３０の宛先ノード部３１および次ホップノード部３２に当該子ノードＣａ４０等を登録する（登録ステップ。ステップＳ１２）。
【００２６】
子ノードＣａ４０等が、ルーティングノード選択ステップ（ステップＳ２０）により選択された親ノードＰａ１０等へ宛先ノードを子ノードＣｂ４１等または親ノードＰａ１０等とするパケットＰＡＫを送信する（パケット送信ステップ。ステップＳ２４）。
【００２７】
親ノードＰａ１０等が、パケット送信ステップ（ステップＳ２４）で送信されたパケットＰＡＫに示される宛先ノードのアドレスに一致するルーティングテーブル３０の宛先ノード部３１に対応する次ホップノード部３２に示されるノードのアドレスへ当該パケットＰＡＫを転送する（パケット転送ステップ。ステップＳ１４）。すなわち、図１の点線Ｒ内に示される親端末間のネットワーク（アドホックネットワークシステム１の一部）を利用してパケットＰＡＫを届ける。
【００２８】
子ノードＣａ４０等が、パケット転送ステップ（ステップＳ１４）で送信された自己を宛先とするパケットＰＡＫ’を受信する（パケット受信ステップ。ステップＳ２６）。
【００２９】
以上より、本発明の実施例１によれば、アドホックネットワークシステム１のノードを、隣接するノードの発見に関しては電波を定期的に送信する側であり、マルチホップに関してはパケットの転送を行う役割を担う親ノードＰａ１０等と、隣接するノードの発見に関しては親ノードＰａ１０等からの電波を受信した時にのみ反応を起こし、マルチホップに関してはパケットの送受信を行うというアドホックネットワークシステム１上でサービスを利用する側の子ノードＣａ４０等とに分けている。この結果、子ノードＣａ４０等側では電波を定期的に送信する必要がなくなるため、子ノードＣａ４０等の電力消費量を減少させることができる。これは、アドホックネットワークシステム１全体としての電力消費量を減少させることになる。さらに、親ノードＰａ１０等と子ノードＣａ４０等とに役割分担した結果、ノード数が増大した場合であっても、ルーティング情報数はオーダＯ（ｎ）（ｎはノード数）に抑えることができ、アドホックネットワークシステム１の帯域の消費量も減少させることができ、子ノードＣａ４０等の管理負荷を減少させることができる。加えて、子ノードＣａ４０は親ノードＰａ１０等のアドレスのみを知っていればよく、他のノードのアドレスを知る必要がないため、ルーティングテーブル６０をアドホックネットワークシステム１の構成に応じて動的に変更する必要がない。このため、ルート変更時における子ノードＣａ４０等のルーティングテーブル６０の更新時間をなくしてしまうことが可能である。以上の結果、ノードの電力消費量を減少させ、ノード数が増大した場合でも、ルーティング情報数を適切な量に抑えることができ、ネットワーク帯域の消費量を減少させ、ノードの管理負荷を減少させることができ、ノードの移動を考慮した場合に、移動するノード間でルートを安定化させ、ルート変更時におけるルーティングテーブル更新時間を減少させることができるアドホックネットワークシステム１等を提供することができる。
【実施例２】
【００３０】
上述した実施例１のアドホックネットワークシステム１において、電力供給量が相対的に多いノードを親ノードＰａ１０等とし、電力供給量が相対的に少ないノードを子ノードＣａ４０等とすることができる。この結果、電力供給量が少ないノードは子ノードＣａ４０等とすることによりアドホックネットワークシステム１に接続することが可能となる。すなわち、電力供給量の多寡によってアドホックネットワークシステム１を構成することにより、電力供給量の多いノードおよび少ないノードが混在したアドホックネットワークシステム１を効率的に構成することができる。このため、電力供給量において異質性を有するノードが存在した場合にも対応することが可能なアドホックネットワークシステム１等を提供することができる。
【実施例３】
【００３１】
上述した実施例１のアドホックネットワークシステム１において、移動性が相対的に高いノードを子ノードＣａ４０等とし、移動性が相対的に低いノードを親ノードＰａ１０等とすることができる。この結果、ルートのリンク切れまたはルートの変更等の頻度が下がり、接続性が比較的安定したアドホックネットワークシステム１を構成することができる。すなわち、移動性の多寡によってアドホックネットワークシステム１のネットワークトポロジを構成することにより、移動するノード間でルートが安定するという相互リンクの安定性を確保することができるアドホックネットワークシステム１を構成することができる。このため、移動性において異質性を有するノードが存在した場合にも対応することが可能なアドホックネットワークシステム１等を提供することができる。
【実施例４】
【００３２】
上述した実施例１ないし３のいずれかのアドホックネットワークシステム１において、親ノードＰａ１０等および子ノードＣａ４０等は、親ノードＰａ１０等であるかまたは子ノードＣａ４０等であるかを示す現トポロジを動的に変更する動的変更手段（アドホックネットワークシステム１のルーティング制御方法では動的変更ステップ）をさらに備えることができる。以下、動的変更手段の機能について説明する。図５は、子ノードを持たない親ノードが親ノードから子ノードへ動的に変更する例を示す。図５（Ａ）に示されるように、親ノードＰｉ１３とＰｋ１５とは各々親ノードＰｊ１４に接続されている。親ノードＰｉ１３とＰｋ１５とは各々子ノードＣｉ４６とＣｋ４８とを持っているが、親ノードＰｊ１４は子ノードを持っていない（図５（Ａ）で、持っていない子ノードは点線で示し、親ノードＰｊ１４とそのような子ノードとの関係も点線で示す。以下同様）。このように子ノードを持っていない親ノードＰｊ１４であっても、最低１つ以上の他の親ノードＰｉ１３等との通信は可能である必要がある。このような親ノードＰｊ１４の場合、まず周囲に親ノードが存在することを確認する。図５（Ａ）では親ノードＰｉ１３とＰｋ１５とが存在することを確認する。次に、周囲のすべての親ノードＰｉ１３およびＰｋ１５に、自分が親ノードを終了することを示すメッセージＭＰｊを送信する。これはマルチホップのルートに、親ノードＰｊ１４が含まれている可能性があるためである。図５（Ｂ）に示されるように、この時点で、ノードＰｊ１４は親ノードのネットワークに接続されていない状態になる（図５（Ｂ）では接続されていない状態を点線で示す。以下同様）。ノードＰｊ１４は周囲の任意の親ノードＰｋ１５へ接続要求ＲＱｊを送信する。接続要求ＲＱｊは実施例１で説明した登録要求メッセージＲＥＧと同様である。図５（Ｂ）に示されるように、ノードＰｊ１４が親ノードＰｋ１５から接続応答ＲＥｋを受信すると、ノードＰｊ１４と親ノードＰｋ１５とは、それぞれルーティングテーブルを更新する。これは実施例１で説明した登録ステップ（ステップＳ１２）と同様である。以上の結果、図５（Ｃ）に示されるように、ノードＰｊ１４は親ノードＰｋ１５の子ノードＰｊ１４へと移行する。
【００３３】
図６は、子ノードを持つ親ノードが親ノードから子ノードへ動的に変更する例を示す。図６で図５と同じ符号を付した箇所は同じ要素を示すため説明は省略する。但し、図６（Ａ）に示されるように、親ノードＰｊ１４は子ノードＣｊ４７を持っている。このような親ノードＰｊ１４の場合、まず周囲に親ノードが存在することを確認する。図６（Ａ）では親ノードＰｉ１３とＰｋ１５とが存在することを確認する。次に、周囲のすべての親ノードＰｉ１３およびＰｋ１５に、自分が親ノードを終了することを通知する。図６（Ａ）ではメッセージＭＰｊで示す。これはマルチホップのルートに、親ノードＰｊ１４が含まれている可能性があるためである。図６（Ｂ）に示されるように、この時点で、ノードＰｊ１４は親ノードのネットワークに接続されていない状態になる。ノードＰｊ１４は周囲の任意の親ノードＰｋ１５へ接続要求ＲＱｊを送信する。接続要求ＲＱｊは実施例１で説明した登録要求メッセージＲＥＧと同様である。図６（Ｂ）に示されるように、ノードＰｊ１４が親ノードＰｋ１５から接続応答ＲＥｋを受信すると、ノードＰｊ１４と親ノードＰｋ１５とは、それぞれルーティングテーブルを更新する。これは実施例１で説明した登録ステップ（ステップＳ１２）と同様である。以上の結果、図６（Ｃ）に示されるように、ノードＰｊ１４は親ノードＰｋ１５の子ノードＰｊ１４へと移行する。一方、子ノードＣｊ４７は、図６（Ｂ）に示されるように、親ノードＰｊ１４から親ノードＰｊ１４が子ノードに切り替わる通知Ｍを受信する。あとは実施例１と同様に、子ノードＣｊ４７が親ノードＰｉ１３からＨＥＬＬＯメッセージを受信した場合であって且つ親ノードＰｉ１３を最適な親ノードとして選択した場合、図６（Ｃ）に示されるように、子ノードＣｊ４７は親ノードＰｉ１３に登録される。親ノードＰｉ１３と子ノードＣｊ４７とは、それぞれルーティングテーブルを更新する。
【００３４】
図７は、子ノードから親ノードへ動的に変更する例を示す。図７（Ａ）に示されるように、親ノードＰｉ１３とＰｋ１５とは接続されており、親ノードＰｉ１３は子ノードＣｉ４６を持ち、親ノードＰｋ１５は子ノードＣｋ４８とＣｌ４９とを持っている。子ノードＣｊ４７は親ノード候補を持っていない。ここで、子ノードＣｊ４７は、親ノード要求メッセージＰＲＥＱをブロードキャストする（図７（Ａ）で子ノードＣｊ４７が持っていない親ノードは点線で示し、この親ノードと子ノードＣｊ４７との関係も点線で示す）。図７（Ａ）に示されるように、親ノードＰｋ１５を持つ子ノードＣｋ４８が親ノード要求メッセージＰＲＥＱを受信した場合、以下のような処理を行う。まず、子ノードＣｋ４８は周囲のすべての親ノードＰｉ１３、Ｐｋ１５等に、自分が親ノードを開始することを示すメッセージＭＣｋを通知する。次に、子ノードＣｋ４８は周囲のすべての親ノードＰｉ１３、Ｐｋ１５等と、親ノードのネットワークに接続する資格があるかどうかの相互認証を行う。相互認証されると、ノードＣｋ４８は周囲のすべての親ノードＰｉ１３、Ｐｋ１５等からルーティングテーブルにより示されるルーティング情報を取得し、それらをマージさせて自分のルーティングテーブルを更新する。以上の結果、図７（Ｂ）に示されるように、ノードＣｋ４８は子ノードＣｊ４７の親ノードＣｋ４８へ移行する。図７（Ｂ）では親ノードＣｋ４８は親ノードＰｉ１３およびＰｋ１５と接続されているが、これは上記ルーティングテーブルの更新結果の一例であって、親ノードＰｉ１３またはＰｋ１５のいずれか一方とだけ接続されていてもよい。あとは図７（Ｂ）に示されるように、親ノードＣｋ４８は親ノードＣｋ４８に切り替わったことを示す通知ＭＲＥＳを子ノードＣｊ４７へ送信し、子ノードＣｊ４７は親ノードＣｋ４８に登録されたことを知ることになる。
【００３５】
以上より、実施例４によれば、ネットワークトポロジを動的に変更することにより、移動性の変化またはノードのネットワーク利用状態に応じて、その時々に最適なネットワークトポロジを構成することができる。
【００３６】
以上の実施例により、以下のような効果が得られる。例えば、大多数の車に通信装置が搭載された場合、国内全域をカバーする移動体通信網ができる。この通信網には、宅内の固定通信装置、歩行者の携帯端末も参加できる。ここで、構成端末の種別または配置は、場所と時間とにより大きく変化するという点が重要である。各々が固定的な役割を演じていると、通信網の接続性を確保することができず、あるいはまた不意のバッテリー消費が支障をきたす懸念もある。そこで、自端末の状態（移動／停止、バッテリー残量等）または周辺状況（相対配置、相対特性、緊急度等）に応じて、親ノード／子ノードを動的に切替えることにより、通信網全体の最適化を図ることができる。より具体的には、停止、高出力、バッテリー残量が大きい端末を親ノードにすることが好適であるが、周囲にこのような端末がない場合は、低速移動中の端末が親ノードになってもよい。緊急の呼に対しては、バッテリー残量が７割を切った端末が親ノードになることがあってもよい。
【実施例５】
【００３７】
上述した実施例１ないし４では、アドホックネットワークシステム１の構成に応じたルーティングテーブル３０の管理は、親ノードＰａ等間の情報交換により各親ノードＰａ１０等がルートを設定することにより行っていた。しかし、アドホックネットワークシステム１における通信手段とは別の通信手段により特定の端末（サーバ）にルーティング情報を集約し、このサーバ側でルートを決定して各親ノードＰａ１０等に配布してもよい。
【産業上の利用可能性】
【００３８】
本発明の活用例として、特に電力供給量、移動性等において異質性を有するノードが存在するようなアドホックネットワークシステムへの応用が挙げられる。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施例１におけるアドホックネットワークシステム１を示す図である。
【図２】親ノードＰａ１０のルーティングテーブル３０を示す図である。
【図３】子ノードＣａ４０のルーティングテーブル６０を示す図である。
【図４】本発明のアドホックネットワークシステム１のルーティング制御方法の流れを示すフローチャートである。
【図５】子ノードを持たない親ノードが親ノードから子ノードへ動的に変更する例を示す図である。
【図６】子ノードを持つ親ノードが親ノードから子ノードへ動的に変更する例を示す図である。
【図７】子ノードから親ノードへ動的に変更する例を示す図である。
【符号の説明】
【００４０】
１  アドホックネットワークシステム、  １０、１１、１２、１３、１４、１５  親ノード、  ２０、５０  機能ブロック、  ２１  ハローメッセージ送信部、  ２２  登録部、  ２３  パケット転送部、  ３０、６０  ルーティングテーブル、  ３１、６１  宛先ノード部、  ３２、６２  次ホップノード部、  ４０、４１、４２、４３、４４、４５、４６、４７、４８、４９  子ノード、  ５１  ルーティングノード選択部、  ５２  登録要求メッセージ送信部、  ５３  パケット送信部、  ５４  パケット受信部。
【図１】
2009094823.tif 000003
【図２】
2009094823.tif 000004
【図３】
2009094823.tif 000005
【図４】
2009094823.tif 000006
【図５】
2009094823.tif 000007
【図６】
2009094823.tif 000008
【図７】
2009094823.tif 000009