(57)【特許請求の範囲】
【請求項１】
複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークの通信経路制御方法において、
前記通信端末が、自通信端末の少なくとも移動速度を含む移動情報を検知するステップと、
前記通信端末が、検知された前記移動情報に応じて、前記マルチホップネットワーク上
の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整するステップと、
前記通信端末が、前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新するステップと、
前記通信端末が、前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換するステップと、
前記通信端末が、前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持するステップと、
前記通信端末が、前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告するステップとを有することを特徴とする無線マルチホップネットワークの通信経路制御方法。
【請求項２】
前記通信端末が、利用者からの指示情報を入力するステップと、
前記通信端末が、前記指示情報に応じて前記制御パケットの交換頻度を調節するステップとをさらに有することを特徴とする請求項１記載の無線マルチホップネットワークの通信経路制御方法。
【請求項３】
前記通信端末が、前記マルチホップネットワーク上のネットワーク管理装置からの指示情報を受信するステップと、
前記通信端末が、前記指示情報に応じて前記制御パケットの交換頻度を調節するステップとをさらに有することを特徴とする請求項１記載の無線マルチホップネットワークの通信経路制御方法。
【請求項４】
前記通信端末が、前記自通信端末のデータパケットの送信頻度を含む通信状況を検知するステップと、
前記通信端末が、前記通信状況に応じて、前記制御パケットの交換頻度を、前記データパケットの送信頻度が大きい程、小さくなるように調整するステップとをさらに有することを特徴とする請求項１記載の無線マルチホップネットワークの通信経路制御方法。
【請求項５】
前記通信端末が、前記他通信端末から前記リンク情報を含むネットワークトポロジーメッセージを受信したときに、該ネットワークトポロジーメッセージのリンク情報に含まれる前記隣接発見メッセージの識別属性情報と自通信端末が保持するリンク情報に含まれる前記隣接発見メッセージの識別属性情報とを前記隣接通信端末毎に比較するステップと、
前記通信端末が、前記自通信端末が保持するリンク情報に含まれる前記隣接発見メッセージの識別属性情報よりも前記トポロジーメッセージのリンク情報に含まれる前記隣接発見メッセージの識別属性情報のほうが新しい場合、前記自通信端末が保持しているリンク情報を更新するステップとをさらに有することを特徴とする請求項１に記載の無線マルチホップネットワークの通信経路制御方法。
【請求項６】
前記通信端末が、前記ネットワークトポロジーメッセージを広告するときに、前記トポロジー情報に含まれるリンク情報を変化させる原因となった前記隣接通信端末の状態に応じて、該ネットワークトポロジーメッセージの広告方式を選択するステップをさらに有することを特徴とする請求項１に記載の無線マルチホップネットワークの通信経路制御方法。
【請求項７】
前記通信端末が、自通信端末が保持するリンク情報よりも新しいリンク情報を持つトポロジーメッセージを受信したときに、該リンク情報に対応する隣接通信端末に対して隣接発見メッセージ送信要求を送信し、これに対する該隣接通信端末からの応答有無に応じて該隣接通信端末との接続を確認するステップをさらに有することを特徴とする請求項１に記載の無線マルチホップネットワークの通信経路制御方法。
【請求項８】
複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークで用いる通信端末において、
自通信端末の少なくとも移動速度を含む移動情報を検知する手段と、
検知された前記移動情報に応じて、前記マルチホップネットワーク上の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整する手段と、
前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新する手段と、
前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換する手段と、
前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持する手段と、
前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告する手段とを有することを特徴とする無線マルチホップネットワークで用いる通信端末。
【請求項９】
利用者からの指示情報を入力する手段と、
前記指示情報に応じて前記制御パケットの交換頻度を調節する手段とをさらに有することを特徴とする請求項８記載の無線マルチホップネットワークで用いる通信端末。
【請求項１０】
前記マルチホップネットワーク上のネットワーク管理装置からの指示情報を受信する手段と、
前記指示情報に応じて前記制御パケットの交換頻度を調節する手段とをさらに有することを特徴とする請求項８記載の無線マルチホップネットワークで用いる通信端末。
【請求項１１】
前記自通信端末のデータパケットの送信頻度を含む通信状況を検知する手段と、
前記通信状況に応じて、前記制御パケットの交換頻度を、前記データパケットの送信頻度が大きい程、小さくなるように調整する手段とをさらに有することを特徴とする請求項８記載の無線マルチホップネットワークで用いる通信端末。
【請求項１２】
前記他通信端末から前記リンク情報を含むネットワークトポロジーメッセージを受信したときに、該ネットワークトポロジーメッセージのリンク情報に含まれる前記隣接発見メッセージの識別属性情報と自通信端末が保持するリンク情報に含まれる前記隣接発見メッセージの識別属性情報とを前記隣接通信端末毎に比較する手段と、
前記自通信端末が保持するリンク情報に含まれる前記隣接発見メッセージの識別属性情報よりも前記トポロジーメッセージのリンク情報に含まれる前記隣接発見メッセージの識別属性情報のほうが新しい場合、前記自通信端末が保持しているリンク情報を更新する手段とをさらに有することを特徴とする請求項８に記載の無線マルチホップネットワークで用いる通信端末。
【請求項１３】
前記ネットワークトポロジーメッセージを広告するときに、前記トポロジー情報に含まれるリンク情報を変化させる原因となった前記隣接通信端末の状態に応じて、該ネットワークトポロジーメッセージの広告方式を選択する手段をさらに有することを特徴とする請求項８に記載の無線マルチホップネットワークで用いる通信端末。
【請求項１４】
自通信端末が保持するリンク情報よりも新しいリンク情報を持つトポロジーメッセージを受信したときに、該リンク情報に対応する隣接通信端末に対して隣接発見メッセージ送信要求を送信し、これに対する該隣接通信端末からの応答有無に応じて該隣接通信端末との接続を確認する手段をさらに有することを特徴とする請求項１２に記載の無線マルチホップネットワークで用いる通信端末。
【請求項１５】
複数の通信端末を備え、当該複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークにおいて、
前記複数の通信端末は、
自通信端末の少なくとも移動速度を含む移動情報を検知する手段と、
検知された前記移動情報に応じて、前記マルチホップネットワーク上の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整する手段と、
前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新する手段と、
前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換する手段と、
前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持する手段と、
前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告する手段とを有することを特徴とする無線マルチホップネットワーク。
【請求項１６】
複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークで用いる通信端末の動作プログラムにおいて、
コンピュータに、
自通信端末の少なくとも移動速度を含む移動情報を検知するステップと、
検知された前記移動情報に応じて、前記マルチホップネットワーク上の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整するステップと、
前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新するステップと、
前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換するステップと、
前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持するステップと、
前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告するステップとを実行させることを特徴とする無線マルチホップネットワークで用いる通信端末の動作プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線マルチホップネットワークの通信経路制御方法、及び通信端末に関し、特に無線マルチホップネットワーク上のノードとなる通信端末の移動特性などに適応した通信経路制御方法及び通信端末に関する。
【背景技術】
【０００２】
従来、無線マルチホップネットワーク（「モバイルアドホックネットワーク」等とも言う）と呼ばれる無線ネットワークが知られている。この無線ネットワークでは、通信端末同士が無線により直接通信するだけでなく、自らの無線信号が届く通信範囲を超えてより広い範囲に存在する他の通信端末との間でも通信することが可能となっている。この通信は、隣接する他の通信端末を無線ネットワークのデータ中継ノードとして経由しながら行われる。
【０００３】
このため、無線マルチホップネットワークは、複数の通信端末から自律的に構成され、これら各通信端末がルータの機能を持ちデータ中継も可能となっている。このデータ中継の通信経路を制御するルーティングプロトコルとしては、例えば、次のものが知られている。１つは、通信開始時に通信経路を検索して決定するReactive型プロトコルである。もう１つは、非通信時に近隣の通信端末と情報交換することで予め通信経路を決定しておくProactive型プロトコルである。以下、Proactive型プロトコルを用いたProactive型無線マルチホップネットワークについて説明する。
【０００４】
従来のProactive型無線マルチホップネットワークにおける通信経路制御では、まず、定期的な隣接発見メッセージ（「ＨＥＬＬＯメッセージ」と呼ぶ）の送受信により隣接通信端末の存在を把握する。続いて、隣接通信端末との間のリンク情報を含むトポロジーメッセージを定期的にネットワーク全体へ広告する。これにより、各通信端末がネットワークトポロジーグラフをそれぞれ構築してネットワーク全体のトポロジー（どの通信端末がどの通信端末とどのように繋がっているかの情報）を把握する。そして、そのトポロジーから最短経路を計算する。こうすることで、通信経路制御が実現されている。
【０００５】
こうした方式は、下記の非特許文献１で開示されている。しかしながら、この方式では頻繁なメッセージ送信が必要である。このため、帯域の少ない無線ネットワークにおいてはメッセージ負荷が高すぎて利用できないという欠点があった。また、頻繁なメッセージの送信は通信端末の電力消費が激しい。このため、端末の電源寿命を短くするという欠点もある。さらに、メッセージの送信頻度は、通信端末の移動速度などによって決定される。このため、移動速度が異なる通信端末で構成されたネットワークでは、最も速い通信端末に送信頻度を合わせる必要があり無駄な帯域を消費する。また、予測以上の速さで移動した場合には、ネットワークトポロジーの更新が追いつかず、正常な経路制御を行うことができない。
【０００６】
これに関し、メッセージ負荷を抑えるために変化の差分だけを送信する方式が、下記の非特許文献２で開示されている。しかしながら、この方式でも、送信頻度自体は改善されていないため、端末の電源消費を抑えることはできない。
【０００７】
また、メッセージ負荷を抑えるためには、メッセージ送信頻度を低くすることが考えられる。しかしながら、送信頻度を低くすると、隣接端末情報及びネットワークトポロジー情報の更新に時間がかかり、通信が不安定になるという欠点があった。この欠点を克服するため、通信端末からの距離（ホップ数）に応じて送信頻度を調整するＦＳＲ（Fisheye State Routing protocol）と呼ばれる方式が、下記の非特許文献３に開示されている。しかしながら、この方式では正確なトポロジー情報が得られず、移動の激しいネットワークではやはり安定した通信を行うことは困難である。
【非特許文献１】T. Clause，他１名，"Optimized Link State Routing Protocol (OLSR)"，IETF RFC3626，2003年10月
【非特許文献２】R. Ogier，他２名，"Topology Dissemination Based on Reverse-Path Forwarding (TBRPF)"，IETF RFC3684，2004年2月
【非特許文献３】A. Iwata，他４名，"Scalable Routing Strategies for Ad-hoc Wireless Networks", IEEE JSAC, 1999年8月, Vol.17, No.8, p.1369-1379
【非特許文献４】Zygmunt Haas他２名, "Gossip-based ad hoc routing", IEEE INFOCOM 2002, 2002年
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述した従来のProactive型無線マルチホップネットワークにおける経路制御方式では、メッセージ量が多いため帯域の少ないネットワークでは利用が困難である。また、移動速度の異なる通信端末で構成されるネットワークでは、最も速い通信端末にメッセージ頻度を合わせる必要があり、無駄なメッセージ負荷を増やすことになる。さらに、頻繁なメッセージの送信により端末の電力消費が大きい。さらに予想以上の移動速度に対しては、正常な経路制御ができず通信が途絶えてしまう。
【０００９】
本発明は、上記の問題点を解消し、少ないメッセージ送信頻度で移動特性に適応して安定した通信を実現する無線マルチホップネットワークシステムの経路制御方法及び通信端末を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明に係る無線マルチホップネットワークの通信経路制御方法は、複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークの通信経路制御方法において、前記通信端末が、自通信端末の少なくとも移動速度を含む移動情報を検知するステップと、前記通信端末が、検知された前記移動情報に応じて、前記マルチホップネットワーク上の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整するステップと、前記通信端末が、前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新するステップと、前記通信端末が、前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換するステップと、前記通信端末が、前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持するステップと、前記通信端末が、前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告するステップとを有することを特徴とする。
【００１１】
本発明において、前記通信端末が、利用者からの指示情報を入力するステップと、前記通信端末が、前記指示情報に応じて前記制御パケットの交換頻度を調節するステップとをさらに有してもよい。
【００１２】
本発明において、前記通信端末が、前記マルチホップネットワーク上のネットワーク管理装置からの指示情報を受信するステップと、前記通信端末が、前記指示情報に応じて前記制御パケットの交換頻度を調節するステップとをさらに有してもよい。
【００１３】
本発明において、前記通信端末が、前記自通信端末のデータパケットの送信頻度を含む通信状況を検知するステップと、前記通信端末が、前記通信状況に応じて、前記制御パケットの交換頻度を、前記データパケットの送信頻度が大きい程、小さくなるように調整するステップとをさらに有してもよい。
【００１４】
本発明において、前記通信端末が、前記他通信端末から前記リンク情報を含むネットワークトポロジーメッセージを受信したときに、該ネットワークトポロジーメッセージのリンク情報に含まれる前記隣接発見メッセージの識別属性情報と自通信端末が保持するリンク情報に含まれる前記隣接発見メッセージの識別属性情報とを前記隣接通信端末毎に比較するステップと、前記通信端末が、前記自通信端末が保持するリンク情報に含まれる前記隣接発見メッセージの識別属性情報よりも前記トポロジーメッセージのリンク情報に含まれる前記隣接発見メッセージの識別属性情報のほうが新しい場合、前記自通信端末が保持しているリンク情報を更新するステップとをさらに有してもよい。
【００１５】
本発明において、前記通信端末が、前記ネットワークトポロジーメッセージを広告するときに、前記トポロジー情報に含まれるリンク情報を変化させる原因となった前記隣接通信端末の状態に応じて、該ネットワークトポロジーメッセージの広告方式を選択するステップをさらに有してもよい。
【００１６】
本発明において、前記通信端末が、自通信端末が保持するリンク情報よりも新しいリンク情報を持つトポロジーメッセージを受信したときに、該リンク情報に対応する隣接通信端末に対して隣接発見メッセージ送信要求を送信し、これに対する該隣接通信端末からの応答有無に応じて該隣接通信端末との接続を確認するステップをさらに有してもよい。
【００１７】
また、本発明に係る通信端末は、複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークで用いる通信端末において、自通信端末の少なくとも移動速度を含む移動情報を検知する手段と、検知された前記移動情報に応じて、前記マルチホップネットワーク上の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整する手段と、前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新する手段と、前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換する手段と、前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持する手段と、前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告する手段とを有することを特徴とする。
【００１８】
さらに、本発明に係る無線マルチホップネットワークは、複数の通信端末を備え、当該複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークにおいて、前記複数の通信端末は、自通信端末の少なくとも移動速度を含む移動情報を検知する手段と、検知された前記移動情報に応じて、前記マルチホップネットワーク上の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整する手段と、前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新する手段と、前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換する手段と、前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持する手段と、前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告する手段とを有することを特徴とする。
【００１９】
本発明に係る通信端末の動作プログラムは、複数の通信端末間で無線により制御パケットを交換して該複数の通信端末をノードとするマルチホップネットワークを形成し、そのマルチホップネットワークのトポロジー情報を保持し、そのトポロジー情報に基づいて前記複数の通信端末間で送受信されるパケットの通信経路を制御する無線マルチホップネットワークで用いる通信端末の動作プログラムにおいて、コンピュータに、自通信端末の少なくとも移動速度を含む移動情報を検知するステップと、検知された前記移動情報に応じて、前記マルチホップネットワーク上の他通信端末との間の前記制御パケットの交換頻度を、前記自通信端末の移動状況に応じて制御負荷が少なくなるように調整するステップと、前記他通信端末からの前記制御パケットに基づいて前記自通信端末が保持する前記マルチホップネットワークのトポロジー情報を更新するステップと、前記マルチホップネットワーク上の隣接通信端末との間で前記制御パケットとして隣接発見メッセージを前記交換頻度で交換するステップと、前記隣接発見メッセージの交換により前記隣接通信端末との間でリンクが確立されたときに、該隣接通信端末の端末特定情報に加え、前記リンクが確立された時点で前記隣接通信端末から受けた前記隣接発見メッセージの識別属性情報を、前記トポロジー情報に含まれるリンク情報として保持するステップと、前記制御パケットとして、前記隣接通信端末の端末特定情報及び前記隣接発見メッセージの識別属性情報から成るリンク情報を含むネットワークトポロジーメッセージを前記マルチホップネットワーク上に広告するステップとを実行させることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、通信端末が移動していないときに、経路制御に必要なメッセージ（制御パケット）の送信頻度を抑え、経路制御にかかるメッセージ負荷を削減でき、通信端末の電力消費を抑えることができる。また、通信端末が移動しているときに、通信経路の収束を早くして、より安定した通信が実現できる。このようにして、少ないメッセージ送信頻度で移動特性に適応して安定した通信を実現することができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明に係る無線マルチホップネットワークの通信経路制御方法及び通信端末を実施するための最良の形態について、添付図面を参照して説明する。
【実施例１】
【００２２】
本実施例による無線マルチホップネットワーク（モバイルアドホックネットワーク）システムは、前述の非特許文献１のProactive型プロトコル（ＯＬＳＲプロトコル：Optimized Link State Routing Protocol）を用いた方式を適用したものである。
【００２３】
一般に、無線マルチホップネットワークでは、同一メッセージのパケットを１つのノード（通信端末）から全てのノードへ行き渡るよう伝達する「フラッディング（Flooding）」と呼ばれる技術が採用されている。このフラッディングに際し、全てのノードがメッセージを転送（再送信）すれば当然ネットワーク全体に行き渡るが、それでは再送信されるメッセージ数が多くなりすぎて効率が悪い。そこで、上記の非特許文献１の方式では、このフラッディングを効率よく行うため、次のような仕組みが規定されている。
【００２４】
まず、ノードは、隣接ノードの中から２ホップ先のノード全てをカバーすることができる隣接ノードのセットを計算する。そして、ノードは、計算された隣接ノードのセットを「ＭＰＲ（Multi-Point-Relay）」として選択する。このようにＭＰＲとして選択された隣接ノード（ＭＰＲノード）のみが、ノードからのメッセージを転送する。本実施例の無線マルチホップネットワークシステムは、こうしたＭＰＲノードを用いたフラッディング技術をベースに構築されたものである。
【００２５】
図１は、本実施例の無線マルチホップネットワークシステムにおけるネットワーク構成例を示す。
【００２６】
同図において、無線マルチホップネットワークシステムは、複数の通信端末１１〜１４を備えている。各通信端末１１〜１４は、それぞれ無線ネットワーク上のノードを構成し、これら各ノード間で無線により自律的に制御パケットを交換する。これにより、各ノードから成る無線ネットワークとして、無線マルチホップネットワーク１が形成されている。この無線マルチホップネットワーク１上のノードを構成する通信端末１１〜１４は、携帯電話機等の携帯情報端末や、車両、航空機、船等の移動体に搭載される無線装置等、いずれでも適用可能である。
【００２７】
上記の無線マルチホップネットワーク１において、ノードを成す通信端末１１〜１４がそれぞれ自分の無線信号が届く通信範囲内に存在する任意の通信端末と直接通信する（図中のＡ１〜Ａ４は、通信端末１１〜１４のそれぞれの無線信号が届く通信範囲を示す）。また、通信端末１１〜１４は、他の通信端末を経由してパケットの転送を行う。こうすることで、パケットの送信元ノードである送信元通信端末からパケットの宛先ノードである宛先通信端末までパケットを届ける。図１の例では、送信元通信端末１１から他の通信端末１２、１３を経由して宛先通信端末１４へパケットを転送する場合を示している（図中の矢印はパケットの転送方向を示す）。各通信端末１１〜１４は、このような無線マルチホップネットワーク１上でパケットを送受信及び転送（フラッディング）するための端末特定情報として、それぞれ固有のノードＩＤ（Identification Data）とＩＰ（Internet Protocol）アドレスを持っている。
【００２８】
図２は、通信端末１１の内部構成例を示している。なお、他の通信端末１２〜１４についても、通信端末１１と同様の構成であるため、その説明を省略する。
【００２９】
通信端末１１は、機能上、アンテナを有する無線通信装置２１と、この無線通信装置２１に接続される経路制御部２２と、この経路制御部２２に接続される隣接ノードテーブル２３、トポロジーテーブル２４、及び移動検知装置２５とを備える。無線通信装置２１は、アンテナを介して他の通信端末１２〜１４との間で無線により通信を行う。経路制御部２２は、本発明の各手段、および各ステップに対応する動作を実行するための制御中枢を担う。隣接ノードテーブル２３は、隣接通信端末（隣接ノード）の情報を管理するものである。トポロジーテーブル２４は、ネットワークトポロジー情報を管理するものである。移動検知装置２５は、自身の移動速度などの移動状態に関する情報を測定する。
【００３０】
この構成において、通信端末１１は、予め設定されたパケットフォーマット構成の隣接発見メッセージ（以下、「ＨＥＬＬＯメッセージ」）及びトポロジーメッセージなどの経路制御メッセージ（制御パケット）を無線通信装置２１を介して送受信する。そして、通信端末１１は、これらメッセージの情報に基づいて、隣接ノードテーブル２３及びトポロジーテーブル２４を更新する。
【００３１】
隣接ノードテーブル２３及びトポロジーテーブル２４には、隣接ノードのノードＩＤのほか、その隣接ノードから受信した最新のＨＥＬＬＯメッセージのシーケンス番号（ＨＥＬＬＯシーケンス番号）等の情報が更新可能に書き込まれる。
【００３２】
ＨＥＬＬＯメッセージの役割は、隣接ノードの発見とその隣接ノードとの間のリンク確立にある。また、トポロジーメッセージの役割は、ネットワーク全体のトポロジー（リンク情報）の把握にある。本実施例では、トポロジーメッセージは、ネットワーク上の各ノードにフラッディングされる。一方、ＨＥＬＬＯメッセージは、無線信号の届く１ホップ先の通信端末（隣接ノード）のみで受信され、そこから先のノードへは転送されない。
【００３３】
ここで、図３及び図４を参照して、ＨＥＬＬＯメッセージ及びトポロジーメッセージの構成例を説明する。
まず、図３を参照して、ＨＥＬＬＯメッセージの構成（パケットフォーマット）例を説明する。
【００３４】
図３に示すように、ＨＥＬＬＯメッセージには、「メッセージタイプ」、「有効期間」、「メッセージサイズ」、「送信ノードＩＤ」、「ＴＴＬ（Time To Live）」、「ホップカウント（Hop Count）」、「シーケンス番号」、「フラグ」、「広告間隔」、「WILLINGNESS」、「ＤＢ（データベース）シグナチャ」、及び「隣接ノード情報」の各フィールドが含まれる。
【００３５】
「メッセージタイプ」はメッセージの種類を表す。「有効期間」はメッセージを管理する時間を表す。「メッセージサイズ」はメッセージの長さを表す。「送信ノードＩＤ」は送信元通信端末のノードＩＤを表す。「ＴＴＬ」はメッセージを転送する最大ホップ数を表し、転送される毎に１つずつ減らされる。「ホップカウント」は、メッセージの送信元通信端末からのホップ数を表し、最初は０に設定され、転送される毎に１つずつ増やされる。「シーケンス番号」は、各メッセージを一意に識別するために割り当てられる識別番号（識別属性情報）を表し、メッセージが作成されるたびに１つずつ増やされる。「広告間隔」は、メッセージを広告する時間間隔を表す。「WILLINGNESS」は、隣接ノードの再送信への積極度を示し、０〜７の値を持ち、この値が高いほど、ＭＰＲとして選択されやすい。「隣接ノード情報」は、リンクが確立した隣接ノードに関する情報（ノードＩＤ等）を表す。
【００３６】
上記のＨＥＬＬＯメッセージを構成する各フィールドのうち、本実施例では、下記のように「フラグ」及び「ＤＢシグナチャ」の両フィールドが追加されている点が、上記の非特許文献１と相違している。
【００３７】
すなわち、「フラグ」フィールドには、自分が移動中であるかどうかを示すフラグ（以下、「移動フラグ」と呼ぶ）、及び自分が移動前に前述したＭＰＲに選択されていたかどうかを示すフラグ（以下、「ＭＰＲ選択フラグ」又は「ＭＰＲフラグ」と呼ぶ）が入る。
【００３８】
また、「ＤＢシグナチャ」フィールドには、自身のトポロジーテーブル２４の内容からハッシュ関数などの所定の計算式を用いて計算されたシグナチャ（数値）が入る。このため、ＤＢシグナチャの値は、トポロジーテーブル２４の内容と１対１で対応している。例えば、自他ノード間において、ＤＢシグナチャの値が同じであれば、両ノードが保持しているトポロジーテーブル２４の内容が同じであることが分かる。一方、自他ノード間において、ＤＢシグナチャの値が相違していれば、両ノードが保持しているトポロジーテーブル２４の内容が異なっていることが分かる。そこで、ＤＢシグナチャの値を互いに隣接するノード間で比較することにより、隣接ノードが持つトポロジーテーブル２４の内容と自身の持つトポロジーテーブル２４の内容とが互いに一致しているかどうかを判別することが可能となる。この判別の結果、一致していない場合は、ＤＢ同期要求を隣接ノードに送信してＤＢ同期処理を行う。
【００３９】
次に、図４を参照して、トポロジーメッセージの構成例を説明する。
【００４０】
図４に示すように、トポロジーメッセージには、ＨＥＬＬＯメッセージには、「メッセージタイプ」、「有効期間」、「メッセージサイズ」、「送信ノードＩＤ」、「ＴＴＬ」、「ホップカウント（Hop Count）」、「シーケンス番号」、「トポロジーシーケンス番号」、「フラグ」、及び「リンク情報」の各フィールドが含まれる。
【００４１】
「メッセージタイプ」はメッセージの種類を表す。「有効期間」はメッセージを管理する時間を表す。「メッセージサイズ」はメッセージの長さを表す。「送信ノードＩＤ」は送信元ノードのノードＩＤを表す。「ＴＴＬ」はメッセージを転送する最大ホップ数を表し、転送される毎に１つずつ減らされる。「ホップカウント」は、メッセージの送信元ノードからのホップ数を表し、最初は０に設定され、転送される毎に１つずつ増やされる。「シーケンス番号」は、各メッセージを一意に識別するために割り当てられる識別番号（識別属性）を表し、メッセージが作成されるたびに１つずつ増やされる。
【００４２】
上記のトポロジーメッセージを構成する各フィールドのうち、本実施例では下記のように、「フラグ」フィールドが追加されている点と、「リンク情報」フィールド中にＨＥＬＬＯシーケンス番号が追加されている点とが、上記の非特許文献１と相違している。
【００４３】
すなわち、「フラグ」フィールドには、トポロジーメッセージを無線マルチホップネットワーク１全体に広告するためのフラッディング方式を示すフラグが入る。このフラグには、代替フラッディングフラグが含まれる。この代替フラッディングフラグは、ＭＰＲに選択されている隣接ノードが移動することにより、ＭＰＲを使ったメッセージのフラッディングが正常に行われない場合にセットされる。これにより、代替フラッディングフラグがセットされていない場合は、通常どおりＭＰＲに従ったフラッディングを行う。一方、代替フラッディングフラグがセットされている場合は、ＭＰＲによるフラッディングが正常に行われないと判断し、代替方式によるフラッディングを行う。代替フラッディング方式には、例えば上記の非特許文献４に示される方式を用いる。
【００４４】
また、「リンク情報」フィールドには、リンク情報として、リンクが確立した隣接ノードのノードＩＤを示すリンクＩＤのほか、ＨＥＬＬＯシーケンス番号が追加されている。このＨＥＬＬＯシーケンス番号には、隣接ノードとの間でリンクを確立した時点でその隣接ノードから受信したＨＥＬＬＯメッセージのシーケンス番号が入る。
【００４５】
経路制御部２２は、ＨＥＬＬＯメッセージ及びトポロジーメッセージ等の経路制御メッセージを無線通信装置２１を介して無線により送受信し、受信したメッセージの情報を隣接ノードテーブル２３及びトポロジーテーブル２４に格納する。
【００４６】
この経路制御部２２は、次のような各動作を行う。
【００４７】
１）移動している他の通信端末１２〜１４からＨＥＬＬＯメッセージを受信すると、それに合わせて自身（通信端末１１）のＨＥＬＬＯメッセージの送信間隔を調整する。
【００４８】
２）他の隣接する通信端末１２〜１４との間で新たにリンクを確立すると、確立したリンク情報（ノードＩＤ）とその時点で他の通信端末１２〜１４から受信した最新のＨＥＬＬＯメッセージのシーケンス番号をトポロジーメッセージの「リンク情報」フィールド中のリンク情報（リンクＩＤ、ＨＥＬＬＯシーケンス番号）に入れて広告する。
【００４９】
３）他の通信端末１２〜１４から新しいトポロジーメッセージを受信すると、そのトポロジーメッセージの「リンク情報」フィールド中のリンク情報（リンクＩＤ、ＨＥＬＬＯシーケンス番号）に基づいて自身のもつトポロジーテーブル２４の情報（ノードＩＤ、ＨＥＬＬＯシーケンス番号）を更新する。
【００５０】
４）隣接ノードテーブル２３の情報（ノードＩＤ、ＨＥＬＬＯシーケンス番号）とトポロジーメッセージ中のリンク情報（リンクＩＤ、ＨＥＬＬＯシーケンス番号）とを比較する。その結果、同じノードＩＤで異なるＨＥＬＬＯシーケンス番号をもつ場合で自身の隣接ノードテーブル２３の情報がトポロジーメッセージ中のリンク情報よりも古い、即ちＨＥＬＬＯシーケンス番号が古いときは、自身の隣接ノードテーブル２３の情報を削除する。
【００５１】
５）移動検知装置２５から通知される自身（通信端末１１）の移動速度情報などの移動情報をもとに経路制御メッセージ（ＨＥＬＬＯメッセージ及びトポロジーメッセージ等）の送信間隔を調整する等の動作を行う。
【００５２】
移動検知装置２５は、通信端末の移動速度情報などの移動状態を常時計測し、経路制御部２２に伝える。移動検知装置２５は、例えば既知のＧＰＳ（Global Positioning System）受信機、加速度センサ、速度センサ等の計測器からなり、自身の移動速度などの移動状態を計測可能なものであれば、いずれのタイプでも適用可能である。通信端末１１が車両に搭載される車載器の場合、車両に装備されている車速センサからの車速信号を外部入力する構成のものであってもよい。
【００５３】
次に、本実施例の動作について説明する。
【００５４】
まず、通信端末１１〜１４は、起動すると、定期的にＨＥＬＬＯメッセージを送信する。これにより、通信端末１１〜１４から直接無線の届く範囲Ａ１１〜Ａ１４に存在する他の通信端末１１〜１４（以下、必要に応じて「隣接ノード」と呼ぶ）は、通信端末１１からのＨＥＬＬＯメッセージを受信することで通信端末１１の存在を知る。
【００５５】
次いで、ＨＥＬＬＯメッセージを受信した通信端末１１〜１４は、そのＨＥＬＬＯメッセージに基づき、隣接ノードテーブル２３に隣接ノード情報（ノードＩＤ等）を書き込む。こうした動作は、先に示した非特許文献１、２の方式と同様である。ただし、本実施例は、隣接ノードテーブル２３にＨＥＬＬＯメッセージのシーケンス番号（ＨＥＬＬＯシーケンス番号）も書き込む点が、上記の非特許文献１、２の方式と異なる。ここで書き込まれたＨＥＬＬＯシーケンス番号の情報は、新たなＨＥＬＬＯメッセージを受け取るたびに更新される。
【００５６】
次いで、隣接ノードが発見されると、各通信端末１１〜１４は、ＭＰＲノードの選択を行い、トポロジーメッセージを作成してネットワーク全体に広告する。この動作も上記の非特許文献１の方式と同様である。ただし、本実施例では、トポロジーメッセージ中の「リンク情報」フィールド内に、その隣接ノードのノードＩＤを示すリンクＩＤのほか、そのリンク情報を作成する基となったＨＥＬＬＯメッセージのシーケンス番号（ＨＥＬＬＯシーケンス番号）を入れる点が、上記の非特許文献１の方式と異なる。
【００５７】
次いで、トポロジーメッセージを受信した通信端末１１〜１４は、トポロジーメッセージ中の「リンク情報」フィールド内のリンクＩＤ及びＨＥＬＬＯシーケンス番号に基づき、トポロジーテーブル２４内にそれらのリンク情報（ノードＩＤ、ＨＥＬＬＯシーケンス番号）を書き込む。ここでも、トポロジーテーブル２４内にＨＥＬＬＯシーケンス番号を書き込む点が上記の非特許文献１と異なる。
【００５８】
ここで、通信端末１１〜１４は、起動してから一定時間が経ち、自身が移動していない場合は、ＨＥＬＬＯメッセージ及びトポロジーメッセージの送信間隔を設定された最大時間に達するまで少しずつ長くしていく。これにより、移動していない通信端末１１〜１４間ではメッセージの発生が抑制される。
【００５９】
一方、通信端末１１〜１４が移動を始めると、通信検知装置２５は、移動を検知し経路制御部２２に通知する。すると、経路制御部２２では、検知された移動速度に応じた適切なＨＥＬＬＯメッセージの送信間隔を選択してその送信間隔でＨＥＬＬＯメッセージを送信する。このとき、ＨＥＬＬＯメッセージ中の「フラグ」フィールドに移動フラグを立て、自分が移動中であることを隣接ノードに明示する。また、自身が移動前に他の隣接ノードからフラッディングのＭＰＲノードとして選択されていた場合は、ＨＥＬＬＯメッセージ中の「フラグ」フィールドにＭＰＲ選択フラグを立てる。
【００６０】
次いで、移動中の通信端末１１〜１４（以下、必要に応じて「移動ノード」と呼ぶ）からＨＥＬＬＯメッセージを受信した隣接ノードは、自身のＨＥＬＬＯメッセージ送信間隔を移動ノードの送信間隔と一致させ、ＨＥＬＬＯメッセージを送信する。隣接ノードが新たに移動ノードとのリンクを確立した場合、隣接ノードは、自身の隣接ノードテーブル２３及びトポロジーテーブル２４のリンク情報（ノードＩＤ、ＨＥＬＬＯシーケンス番号）を更新する。そして、これらリンク情報をトポロジーメッセージの「リンク情報」フィールドのリンク情報（リンクＩＤ、ＨＥＬＬＯシーケンス番号）に含め広告する。
【００６１】
この際、移動ノードとリンク確立のためにやりとりした最新のＨＥＬＬＯメッセージのシーケンス番号（ＨＥＬＬＯシーケンス番号）を含める。また、移動ノードのＨＥＬＬＯメッセージの「フラグ」フィールドにＭＰＲ選択フラグがセットされていた場合は、ＭＰＲを使ったメッセージのフラッディングが正常に行われない可能性がある。このため、トポロジーメッセージの「フラグ」フィールドに代替フラッディングフラグをセットして送信する。隣接ノードが広告したトポロジーメッセージは、フラッディングにより無線マルチホップネットワーク１全体に広告される。
【００６２】
次いで、トポロジーメッセージを受信した通信端末１１〜１４は、そのトポロジーメッセージの「フラグ」フィールドに代替フラッディングフラグがセットされているかどうかをチェックする。その結果、代替フラッディングフラグがセットされていなかった場合は、通常どおりＭＰＲに従ったフラッディングを行う。一方、代替フラッディングフラグがセットされていた場合は、ＭＰＲによるフラッディングが正常に行われないと判断し、代替方式によるフラッディングを行う。代替フラッディング方式には、例えば上記の非特許文献４に示される方式を用いる。
【００６３】
このようにして、隣接ノードが広告したトポロジーメッセージは、フラッディングにより無線マルチホップネットワーク１全体に広告される。
【００６４】
次いで、トポロジーメッセージを受信した通信端末１１〜１４は、そのトポロジーメッセージのリンク情報（リンクＩＤ、ＨＥＬＬＯシーケンス番号）と自身の持つトポロジーテーブル２４内のリンク情報（ノードＩＤ、ＨＥＬＬＯシーケンス番号）とを比較して、トポロジーメッセージのリンク情報が新しい場合はトポロジーテーブル２４の情報を更新する。
【００６５】
さらに、通信端末１１〜１４は、トポロジーメッセージのリンク情報と自身の隣接ノードテーブル２３内の情報とを比較し、自身の隣接ノードと同じノードＩＤを持つリンク情報に対して、ＨＥＬＬＯシーケンス番号を比較する。その結果、もし自身の隣接ノードテーブル２３に入っているＨＥＬＬＯシーケンス番号が、トポロジーメッセージのリンク情報に入っているシーケンス番号よりも古い場合は、その隣接ノードは次の処理を行う。すなわち、隣接ノードは、自分の通信範囲から移動していなくなったと判断し、隣接ノードテーブル２３から該隣接ノードの情報を削除する。さらに、トポロジーテーブル２４内のリンク情報を更新し、更新されたリンク情報をトポロジーメッセージの「リンク情報」フィールドに入れて無線マルチホップネットワーク１上に広告する。
【００６６】
次に、図５〜図１４を参照して、上記動作の具体例を説明する。
【００６７】
図５〜図１４は、５つのノード（通信端末）４１〜４５からなる無線マルチホップネットワークにおいて、ノード４１が移動する場合の動作を説明するものである。同図において、Ｈｅｌｌｏ（番号）はＨＥＬＬＯメッセージ及びそのシーケンス番号、トポロジーＭｓｇはトポロジーメッセージをそれぞれ示す。
【００６８】
図５において、まず、ノード４５は、ノード４１が移動する前に、ノード４１及びノード４４との間でＨＥＬＬＯメッセージを交換して互いに隣接関係を確立する（図６参照）。ここで、ノード４１とノード４５がリンクを確立した時点において、ノード４５がノード４１から受信したＨＥＬＬＯメッセージのシーケンス番号を８０、ノード４４から受信したＨＥＬＬＯメッセージのシーケンス番号を１５０とする。この場合、ノード４５の隣接ノードテーブル２３には、図８に示すように、２つの隣接ノード情報(ノードＩＤ、ＨＥＬＬＯシーケンス番号）、即ち（ノード４１、８０）及び（ノード４４、１５０）がそれぞれ書き込まれる。同様に、ノード４５のトポロジーテーブル２４には、図９に示すように２つのリンク情報(ノードＩＤ、ＨＥＬＬＯシーケンス番号）、即ち（ノード４１、８０）及び（ノード４４、１５０）がそれぞれ書き込まれる。
【００６９】
この場合、ノード４５は、図１２に示す２つのリンク情報(リンクＩＤ、ＨＥＬＬＯシーケンス番号）、即ち（ノード４１、８０）及び（ノード４４、１５０）を含めたトポロジーメッセージを無線マルチホップネットワーク上に広告する。このとき、トポロジーメッセージ中のリンク情報（リンクＩＤ、ＨＥＬＬＯシーケンス番号）に含めるＨＥＬＬＯシーケンス番号は、そのノードとの間にリンクが確立した時点のＨＥＬＬＯメッセージのシーケンス番号である。このトポロジーメッセージは、図６に示すように、フラッディングにより、ノード４４、ノード４３、及びノード４２と順次転送されていく。
【００７０】
次いで、ノード４５とノード４１との間でＨＥＬＬＯメッセージが交換され、その交換毎にＨＥＬＬＯメッセージのシーケンス番号が１つずつ増えていく。これに合わせて、隣接ノードテーブル２３の隣接ノード情報(ノードＩＤ、ＨＥＬＬＯシーケンス番号）及びトポロジーテーブル２４のリンク情報(ノードＩＤ、ＨＥＬＬＯシーケンス番号）も更新されていく。
【００７１】
このとき、ノード４１及びノード４５は移動していなかったため、互いのＨＥＬＬＯメッセージの送信間隔は長くなっている。即ち、ＨＥＬＬＯメッセージの送信間隔が設定された最大時間に達するまで少しずつ長く調整される。この様子を図７に示す。図７に示すように、ノード４５からノード４１へのＨＥＬＬＯメッセージの送信間隔は、最大時間Δｔｍａｘに達するまで、Δｔ１からΔｔ２へ、さらにΔｔｎへ順次長くなるように調整されていく。これは、ノード４１からノード４５へのＨＥＬＬＯメッセージの送信間隔についても同様である。これにより、移動していないノード４１とノード４５との間では、メッセージ数が抑制される。図示していないノード４５とノード４４との間のメッセージ交換もこれと同様である。
【００７２】
上記のようなノード４５とノード４１との間のＨＥＬＬＯメッセージの交換は、ノード４１が移動を開始してノード４５の通信範囲を超えるまで行われる。このとき、ノード４１からノード４５に届いた最新のＨＥＬＬＯメッセージのシーケンス番号が１００、またノード４４からノード４５に届いた最新のＨＥＬＬＯメッセージのシーケンス番号が２００とする。この場合、ノード４５の隣接ノードテーブル２３には、図１０に示す２つの隣接ノード情報(ノードＩＤ、ＨＥＬＬＯシーケンス番号）、即ち（ノード４１、１００）及び（ノード４４、２００）が書き込まれている。
【００７３】
次いで、図５に示すように、ノード４１が移動を始め、ノード４５の通信範囲を超えたとする（図５中の矢印参照）。このとき、移動ノードであるノード４１は、自身の移動検知装置２５で検出される移動速度に応じてＨＥＬＬＯメッセージの送信間隔を早くする。そして、ＨＥＬＬＯメッセージ内の「フラグ」フィールド中に移動フラグを立てて、そのＨＥＬＬＯメッセージを送信する。
【００７４】
ノード４１のＨＥＬＬＯメッセージがノード４２に届くと、ノード４２は、ＨＥＬＬＯメッセージ内の「フラグ」フィールド中の移動フラグを見て、自身のＨＥＬＬＯメッセージの送信間隔もノード４１の送信間隔に合わせる。
【００７５】
次いで、ノード４１とノード４２の間でリンク確立が行われる。リンク確立が完了した時点で、ノード４２がノード４１から受信した最新のＨＥＬＬＯメッセージのシーケンス番号を１０４とし、ノード４２がノード４３との間でリンクが確立した時点の最新のＨＥＬＬＯメッセージのシーケンス番号を３００とする（図６参照）。この場合、ノード４２は、図１３に示す２つのリンク情報(リンクＩＤ、ＨＥＬＬＯシーケンス番号）、即ち（ノード４１、１０４）及び（ノード４３、３００）を含めたトポロジーメッセージを作成して広告する。このようにノード４２を送信ノードとするトポロジーメッセージは、ノード４３、ノード４４と順次転送され、ノード４５にも広告される（図５及び図６参照）。
【００７６】
ノード４５は、送信ノードであるノード４２からノード４３、ノード４４を経由して転送されてきたトポロジーメッセージを受信すると、このトポロジーメッセージ中のリンク情報（ノード４１、１０４）と自身の隣接ノードテーブル２３中の隣接ノード情報（ノード４１、１００）（図１０）を比較する。比較した結果、自身の隣接ノード情報のほうがＨＥＬＬＯシーケンス番号が古いと判断すると、ノード４５は、隣接ノードテーブル２３の隣接ノード情報（ノード４１、１００）を削除する。
【００７７】
このとき、ノード４５は、選択的に、隣接ノードテーブル２３から該隣接ノード情報を削除する前に、ノード４１に向けてユニキャストでＨＥＬＬＯメッセージ送信要求を送信し、ノード４１の存在を確認することができる。ここで、ノードを成す通信端末は、自分宛のＨＥＬＬＯメッセージ送信要求を受信した場合、一定時間内にＨＥＬＬＯメッセージを送信しなければならない。このため、もしノード４５がノード４１から一定時間のうちにＨＥＬＬＯメッセージを受信しなかった場合、ノード４１は自分の通信範囲から居なくなったと判断し、隣接ノードテーブル２３の隣接ノード情報を削除する。その結果、ノード４５の隣接ノードテーブル２３には、図１１に示すように、ノード４１に関する隣接ノード情報（ノード４１、１００）が削除されて、ノード４４に関する隣接ノード情報（ノード４４、２００）のみとなる。
【００７８】
そして、ノード４５は、自身が広告していたリンク情報（ノード４１、８０）を取り消すため、図１４に示す１つのリンク情報(リンクＩＤ、ＨＥＬＬＯシーケンス番号）、即ち（ノード４４、２００）を含めた新たなトポロジーメッセージを無線マルチホップネットワーク上に広告する（図６参照）。このようにノード４５を送信ノードとして広告されたトポロジーメッセージにより、無線マルチホップネットワーク内の全ノードは、最新のリンク情報を取得して経路の再計算を行い、これにより通信経路を維持することができる。
【００７９】
次に、図１５〜図１８を参照して、上記ＨＥＬＬＯメッセージの送受信処理及びトポロジーメッセージの送受信処理の具体例について説明する。なお、図１５〜図１８の各フローチャートで示される制御プログラムは、本実施例では、例えば前述した通信端末１１〜１４の経路制御部２２内の図示しないメモリ（ＲＯＭ等）に予め保持され、経路制御部２２内の図示しないプロセッサ（ＣＰＵ）により読み出されて実行される。
【００８０】
最初に、図１５を参照して、通信端末１１〜１４によるＨＥＬＬＯメッセージの送信処理を説明する。
【００８１】
まず、通信端末１１〜１４は、予め設定された送信間隔が経過したか否かを判断する（ステップＳ１１）。その結果、ＹＥＳ（経過した）の場合は、ＨＥＬＬＯメッセージのシーケンス番号に１を加える処理を行い（ステップＳ１２）、ＮＯの場合は、ステップＳ１１の処理に戻る。
【００８２】
次いで、通信端末１１〜１４は、自身の移動検知装置２５にて検知された移動速度情報に基づいて、自身が移動しているかどうか判断する（ステップＳ１３）。その結果、ＹＥＳ（移動している）と判断されると、検知された移動速度に合わせてＨＥＬＬＯメッセージの送信間隔を選択する（ステップＳ１４）。この選択は、自身の移動速度に応じて制御負荷が小さくなるように行われる。具体的には、自身の移動速度が大きい程、ＨＥＬＬＯメッセージの送信間隔が短くなるように行われる。この場合、例えば移動速度とＨＥＬＬＯメッセージの送信間隔との対応関係を予め規定した移動速度−メッセージ送信間隔の対応テーブル等が用いられる。対応テーブルを用いる場合は、その対応テーブルが例えば経路制御部２２内のメモリに予め保持され、経路制御部２２内のプロセッサによる制御プログラム実行時に参照される。これにより、対応テーブルを参照して、上記の検知された移動速度に対応するＨＥＬＬＯメッセージの送信間隔が選択される。
【００８３】
次いで、通信端末１１〜１４は、ＨＥＬＬＯメッセージの「フラグ」フィールド中に移動フラグを立てる（ステップＳ１５）。次いで、通信端末１１〜１４は、自身が他の通信端末１１〜１４のＭＰＲノードに選択されていれば、ＨＥＬＬＯメッセージの「フラグ」フィールド中にＭＰＲ選択フラグ（ＭＰＲフラグ）を立てる（ステップＳ１６）。そして、通信端末１１〜１４は、このように「フラグ」フィールド中に該当するフラグを立てたＨＥＬＬＯメッセージを送信し（ステップＳ１７）、最初のステップＳ１１の処理に戻る。
【００８４】
また、ステップＳ１３にてＮＯ（移動していない）と判断されると、通信端末１１〜１４は、ＨＥＬＬＯメッセージの送信間隔が予め設定された最大値Δｔｍａｘが否かを判断する（ステップＳ１８）。その結果、ＹＥＳ（送信間隔が最大値である）の場合は、そのままステップＳ１７に移行して、その最大値の送信間隔でＨＥＬＬＯメッセージを送信する。一方、ＮＯ（送信間隔が最大値でない）の場合は、通信端末１１〜１４は、ＨＥＬＬＯメッセージの送信間隔が長くなるように調整する（ステップＳ１９）。この調整は、一例として予め設定された増分値毎にＨＥＬＬＯメッセージの送信間隔が長くなるように行う。その後でステップＳ１７に移行して、上記のように調整された送信間隔でＨＥＬＬＯメッセージを送信する。
【００８５】
次に、図１６を参照して、通信端末１１〜１４によるＨＥＬＬＯメッセージの受信処理を説明する。
【００８６】
まず、通信端末１１〜１４は、ＨＥＬＬＯメッセージを受信したか否かを判断する（ステップＳ２１）。その結果、ＹＥＳ（受信した）と判断されると、通信端末１１〜１４は、ＨＥＬＬＯメッセージの「フラグ」フィールド中に移動フラグが立っているか否かを判断する（ステップＳ２２）。
【００８７】
これによりＹＥＳ（移動フラグが立っている）と判断されると、通信端末１１〜１４は、ＨＥＬＬＯメッセージの送信間隔が自身のものより短いか否かを判断する（ステップＳ２３）。その結果、ＹＥＳ（送信間隔が短い）と判断されると、通信端末１１〜１４は、自らのＨＥＬＬＯメッセージの送信間隔を、受信したＨＥＬＬＯメッセージの送信間隔に合わせる（ステップＳ２４）。そして、通信端末１１〜１４は、相手のＨＥＬＬＯメッセージ中のＤＢシグナチャと自身のＤＢシグナチャが一致しているか否かを判断する（ステップＳ２５）。これにより、ＮＯ（ＤＢシグナチャが一致していない）と判断されると、通信端末１１〜１４は、相手とのトポロジーテーブル２４との同期処理を行い（ステップＳ２６）、最初のステップＳ２１の処理に戻る。また、上記ステップＳ２１〜Ｓ２３の各処理でＮＯの場合、又は上記ステップＳ２６でＹＥＳの場合は、最初のステップＳ２１の処理に戻る。
【００８８】
なお、ＤＢシグナチャは、前述したように、トポロジーテーブル２４からハッシュ関数などの所定の計算式で計算された数値のことを指す。この情報をＨＥＬＬＯメッセージに入れておく。そうすることで、隣接ノードが保持するトポロジーテーブル２４の情報と自分の持つ情報が一致しているかどうかを判別することができる。本実施例では、トポロジーメッセージは長い間隔で広告する。このため、新たに無線マルチホップネットワークに入ってきた無線ノードなどは、全体のリンク情報を取得する際に、隣接ノードから一気にトポロジー情報を受け取るほうが効率がよい。これを実現するため、本実施例では、上記のようなＤＢシグナチャを用いた仕組みを採用している。
【００８９】
次に、図１７を参照して、通信端末１１〜１４によるトポロジーメッセージの送信処理を説明する。
【００９０】
まず、通信端末１１〜１４は、自身のトポロジーテーブル２４を参照して、リンク情報の変化、即ち新たな隣接ノードの発見や隣接ノードの消滅があったか否かを判断する（ステップＳ３１）。
【００９１】
これでＹＥＳ（リンク情報の変化があり）と判断された場合は、通信端末１１〜１４は、そのリンク情報からトポロジーメッセージを作成する（ステップＳ３２）。そして、通信端末１１〜１４は、トポロジーメッセージのシーケンス番号に１を加える（ステップＳ３３）。
【００９２】
次いで、通信端末１１〜１４は、リンクを確立している隣接ノードの中でＨＥＬＬＯメッセージの「フラグ」フィールド中にＭＰＲ選択フラグを立てているノードが存在するか否かを判断する（ステップＳ３４）。その結果、ＹＥＳ（存在する）の場合は、通信端末１１〜１４は、トポロジーメッセージの「フラグ」フィールド中に代替フラッディングフラグを立てて（ステップＳ３５）、トポロジーメッセージを送信する（ステップＳ３６）。また、ＮＯ（存在しない）の場合は、そのままステップＳ３６の処理に移行する。
【００９３】
一方、上記ステップ３１の処理でＮＯ（リンク情報の変化なし）と判断された場合は、通信端末１１〜１４は、予め設定された送信時間が経過したか否かを判断する（ステップＳ３７）。その結果、ＹＥＳ（経過した）と判断されると、通信端末１１〜１４は、移動検知装置２５にて検出された移動速度情報に基づいて、自身が移動しているかどうか判断する（ステップＳ３８）。
【００９４】
これにより、ＹＥＳ（自身が移動している）の場合は、通信端末１１〜１４は、トポロジーメッセージの送信間隔を初期値に戻し（ステップＳ３９）、ステップＳ３２の処理に移行する。また、ＮＯ（移動していない）の場合は、通信端末１１〜１４は、トポロジーメッセージの送信間隔が予め設定された最大値か否かを判断する（ステップＳ４０）。その結果、ＹＥＳ（最大値である）の場合は、そのままステップＳ３２の処理に移行する。一方、ＮＯ（最大値でない）の場合は、通信端末１１〜１４は、トポロジーメッセージの送信間隔を長く調整し（ステップＳ４１）、ステップＳ３２の処理に移行する。
【００９５】
次に、図１８を参照して、通信端末１１〜１４によるトポロジーメッセージの受信処理を説明する。
【００９６】
まず、通信端末１１〜１４は、トポロジーメッセージを受信したか否かを判断する（ステップＳ５１）。その結果、ＹＥＳ（トポロジーメッセージを受信した）の場合は、通信端末１１〜１４は、トポロジーメッセージ中に新しいリンク情報が含まれているか否かを判断する（ステップＳ５２）。
【００９７】
上記ステップＳ５２による判断の結果、ＹＥＳ（新しいリンク情報が含まれている）の場合は、通信端末１１〜１４は、その新しいリンク情報に基づいて、トポロジーテーブル２４を更新する（ステップＳ５３）。そして、通信端末１１〜１４は、自隣接ノードと同じリンクＩＤを持つリンク情報があるか否かを判断する（ステップＳ５４）。
【００９８】
上記ステップＳ５４による判断の結果、ＹＥＳ（リンク情報がある）の場合は、そのリンク情報において同じリンクＩＤを持つ隣接ノードのＨＥＬＬＯシーケンス番号が、隣接ノードテーブル２３のＨＥＬＬＯシーケンス番号より新しいか否かを判断する（ステップＳ５５）。その結果、ＹＥＳ（ＨＥＬＬＯシーケンス番号が新しい）の場合は、通信端末１１〜１４は、隣接ノードにＨＥＬＬＯメッセージをユニキャストで送る（ステップＳ５６）。
【００９９】
その後、通信端末１１〜１４は、その隣接ノードからＨＥＬＬＯメッセージを受信したか否かを判断する（ステップＳ５７）。その結果、ＮＯ（ＨＥＬＬＯメッセージを受信していない）の場合は、通信端末１１〜１４は、一定時間が経過したか否かを判断する（ステップＳ５９）。これによりＹＥＳ（一定時間が経過した）の場合は、通信端末１１〜１４は、隣接ノードテーブル２３から該当する隣接ノードの情報を削除する（ステップＳ５９）。そして、通信端末１１〜１４は、トポロジーメッセージを送信し（ステップＳ６０）、上記ステップＳ５１の処理に戻る。
【０１００】
上記ステップＳ５１、Ｓ５２、Ｓ５４、Ｓ５５の各処理でＮＯの場合、又は上記ステップＳ５７の処理でＹＥＳの場合は、上記ステップＳ５１の処理に戻る。
【０１０１】
従って、本実施例によれば、通信端末の移動状態などに応じて制御メッセージの送信間隔を調整している。こうすることによって、移動の少ない通信端末は制御メッセージを長い間隔で送信することができるので、全体の制御メッセージ量を抑え、帯域の少ないネットワークでも利用することが可能になる。
【０１０２】
また、本実施例によれば、リンク情報が更新された場合、送信されるトポロジーメッセージ中にＨＥＬＬＯメッセージのシーケンス番号を含めている。こうすることにより、移動の際に生じる隣接ノードの不一致をすばやく解決し、正常な経路制御を継続することが可能になる。
【０１０３】
このようにして、制御負荷を抑えながら移動に適応した無線マルチホップネットワークにおける経路制御が可能となる。
【実施例２】
【０１０４】
上記実施例１では、通信端末（ノード）の移動速度に応じてメッセージ送信間隔の調整を行っている。これに対し、本実施例は、移動速度の検知機能が利用できない通信端末や状況（例えば、ＧＰＳ電波が届かない屋内等）において、ユーザからの指示（例えば、通信端末のボタン押下等）によってメッセージ送信間隔の調整を行うものである。それ以外の動作については、上記実施例１と同様である。以下、相違点のみ説明する。
【０１０５】
本実施例による無線マルチホップネットワークシステムは、以下のように動作する。
【０１０６】
まず、通信端末を持ったユーザは、自身の移動速度や通信継続要求度等の条件に関する情報を通信端末に入力する。この入力は、通信端末の入力器（図示しない）を用いたユーザ操作により行われる。ここで、自身の移動速度の条件（移動状況）に関する情報としては、一例として徒歩、電車、車（一般道、高速道路）等の条件がユーザ操作により入力又は選択可能に設定されている。また、通信継続要求度の条件に関する情報としては、一例として「切らずに通信を継続したい」、「たまに切れても良い」、「移動中は通信できなくても良い」等の条件に対応する情報がユーザ操作により入力又は選択可能に設定されている。
【０１０７】
次いで、通信端末は、入力されたそれらの条件から最適なＨＥＬＬＯメッセージの送信間隔を計算して調整する。例えば、自身の移動速度の条件が入力された場合を説明する。この場合は、一例として、徒歩、電車、車（一般道、高速道路）等の条件に対応するデータと、これらのデータに対応する移動速度（平均速度）の設定値（予想値）との対応関係を予め対応テーブルに設定しておく。そして、いずれかの条件が入力されると、その対応テーブルを参照して、その入力条件に対応するデータに応じた移動速度の設定値を求める。そして、この移動速度の設定値に応じたＨＥＬＬＯメッセージの送信間隔を上記と同様の対応テーブルを用いて選択すればよい。あるいは、その他の例として、上記の徒歩、電車、車（一般道、高速道路）等の条件に対応するデータと、これらのデータで最適とされるＨＥＬＬＯメッセージの送信間隔との対応関係とを予め対応テーブルに設定しておく。そして、いずれかの条件が入力されると、その対応テーブルを参照して、その入力条件に応じたデータに応じたＨＥＬＬＯメッセージの送信間隔を選択するようにしてもよい。ここで用いる対応テーブルは、例えば前述の経路制御部内のメモリに予め保持される。
【０１０８】
また、通信継続要求度の条件が入力された場合を説明する。この場合は、一例として、「切らずに通信を継続したい」、「たまに切れても良い」、「移動中は通信できなくても良い」等の条件と、これらの条件で最適とされるＨＥＬＬＯメッセージの送信間隔との対応関係を予め対応テーブルに設定しておき、いずれかの条件が入力されると、その対応テーブルを参照してその条件に応じたＨＥＬＬＯメッセージの送信間隔を選択すればよい。ここで用いる対応テーブルも、例えば前述の経路制御部内のメモリに予め保持される。
【０１０９】
従って、本実施例によれば、上記実施例１と同様の効果に加え、移動速度の検知機能が利用できない通信端末や状況であっても、メッセージ送信間隔を調整できるといった利点がある。
【実施例３】
【０１１０】
上記実施例１では、通信端末（ノード）の移動速度に応じてメッセージ送信間隔の調整を行ったが、本実施例は、メッセージ送信間隔の調整をネットワーク管理ノード（ネットワーク管理装置）からの指示によって調整を行うものである。それ以外の動作については、上記実施例１と同様である。以下、相違点のみ説明する。
【０１１１】
図１９を参照して、本実施例による無線マルチホップネットワークシステムのネットワーク構成を説明する。
【０１１２】
図１９に示す無線マルチホップネットワークシステムにおいて、ネットワーク管理ノード５１は、ネットワーク全体の端末数や利用可能帯域の情報を保持している（図中のＡ５１は、自分の無線信号が届く通信範囲を示す）。このネットワーク管理ノード５１は、通信端末７１〜７３のトポロジー情報などを収集し、通信経路の更新頻度などの情報を蓄積する。そして、このネットワーク管理ノード５１は、こうした情報をもとに、そのネットワークに最適なＨＥＬＬＯメッセージの送信間隔や、トポロジーメッセージの広告間隔、移動端末のＨＥＬＬＯメッセージの送信間隔等の制御パラメータを計算する。また、このネットワーク管理ノード５１は、計算した制御パラメータ情報を入れた制御パラメータ指示パケット６１をネットワーク全体にフラッディングする。このようなネットワーク管理ノード５１が有する機能の少なくとも一部は、一例としてコンピュータが予め設定されたプログラムの命令を実行することにより実現される。
【０１１３】
通信端末７１〜７３は、制御パラメータ指示パケット６１を転送し、ネットワーク管理ノード５１と直接無線で通信できないノード（通信端末７４）に対してもパケットを届ける（図中のＡ７１〜Ａ７４は、自分の無線信号が届く通信範囲を示す）。制御パラメータ指示パケットを受信した通信端末７１〜７４は、そこで指示されたパラメータに従いＨＥＬＬＯメッセージの送信間隔などを調整する。従って、本実施例でも、上記実施例１と同様の効果が得られる。
【０１１４】
（変形例）
上記実施例１では、上記の非特許文献１の方式をベースとしたが、これに限らず、上記の変形例として、上記の非特許文献２の方式、すなわちメッセージ負荷を抑えるために変化の差分だけを送信する方式をベースとして同様の拡張を行うことも可能である。
【０１１５】
また、上記実施例１では、通信端末（ノード）の移動速度に応じてメッセージ送信間隔の調整を行ったが、上記の他の変形例として、通信端末の通信状況によって調整を行うことも可能である。例えば、通信端末が頻繁にデータパケットを送信している場合、その通信端末の隣接ノードはＨＥＬＬＯメッセージを受信しなくてもその通信端末の存在が確認できる。そこで、データパケットを頻繁に送信している通信端末は、ＨＥＬＬＯメッセージの送信間隔を長くすることができる。言い換えると、通信端末は、データパケットの送信頻度が大きい程、ＨＥＬＬＯメッセージの送信頻度が小さくなるように調整する。それ以外の動作については、上記実施例１と同様である。この場合でも、上記実施例１と同様の効果が得られる。
【０１１６】
なお、上記の各実施例の通信端末の各部が有している機能の少なくとも一部をプログラムによりコンピュータに実現させるようにしてもよい。このプログラムは、記録媒体から読みとられてコンピュータに取り込まれてもよいし、通信ネットワークを介して伝送されてコンピュータに取り込まれてもよい。
【産業上の利用可能性】
【０１１７】
本発明は、無線マルチホップネットワーク、その通信経路制御方法及び通信端末の用途に適用できる。
【図面の簡単な説明】
【０１１８】
【図１】本発明の実施例１に係る無線マルチホップネットワークシステムの全体構成を示す図である。
【図２】図１に示す通信端末の内部構成を示す概略ブロック図である。
【図３】図１に示す通信端末のＨＥＬＬＯメッセージの一例を示す図である。
【図４】図１に示す通信端末のトポロジーメッセージの一例を示す図である。
【図５】図１に示す無線マルチホップネットワークの動作概要を５つのノード４１〜ノード４５を用いて模式的に示す図である。
【図６】図５に示す無線マルチホップネットワークの動作を説明するシーケンス図である。
【図７】図５及び図６中の移動前のノード４１とノード４５間のＨＥＬＬＯメッセージ交換の様子を説明する図である。
【図８】図５及び図６中のノード４１とリンクが確立した時点で更新されたノード４５の隣接ノードテーブルを説明する図である。
【図９】図５及び図６中のノード４１とリンクが確立した時点で更新されたノード４５のトポロジーテーブルを説明する図である。
【図１０】図５及び図６中のノード４１が移動してノード４５の通信範囲を超えた時点で更新されたノード４５の隣接ノードテーブルを説明する図である。
【図１１】図５及び図６中のノード４１が移動した後に更新されたノード４５の隣接ノードテーブルを説明する図である。
【図１２】図５及び図６中のノード４１が移動する前にノード４５が広告するトポロジーメッセージのリンク情報を説明する図である。
【図１３】図５及び図６中のノード４１が移動した後にノード４２が広告するトポロジーメッセージのリンク情報を説明する図である。
【図１４】図５及び図６中のノード４１が移動した後にノード４５が広告するトポロジーメッセージのリンク情報を説明する図である。
【図１５】図１に示す通信端末によるＨＥＬＬＯメッセージの送信処理を説明する概略フローチャートである。
【図１６】図１に示す通信端末によるＨＥＬＬＯメッセージの受信処理を説明する概略フローチャートである。
【図１７】図１に示す通信端末によるトポロジーメッセージの送信処理を説明する概略フローチャートである。
【図１８】図１に示す通信端末によるトポロジーメッセージの受信処理を説明する概略フローチャートである。
【図１９】本発明の実施例３に係る無線マルチホップネットワークの全体構成を示す図である。
【符号の説明】
【０１１９】
１  無線マルチホップネットワーク
１１〜１４  通信端末（ノード）
２１  無線通信装置
２２  経路制御部
２３  隣接ノードテーブル
２４  トポロジーテーブル
２５  移動検知装置
【図１】
0003893620.tif 000002
【図２】
0003893620.tif 000003
【図３】
0003893620.tif 000004
【図４】
0003893620.tif 000005
【図５】
0003893620.tif 000006
【図６】
0003893620.tif 000007
【図７】
0003893620.tif 000008
【図８】
0003893620.tif 000009
【図９】
0003893620.tif 000010
【図１０】
0003893620.tif 000011
【図１１】
0003893620.tif 000012
【図１２】
0003893620.tif 000013
【図１３】
0003893620.tif 000014
【図１４】
0003893620.tif 000015
【図１５】
0003893620.tif 000016
【図１６】
0003893620.tif 000017
【図１７】
0003893620.tif 000018
【図１８】
0003893620.tif 000019
【図１９】
0003893620.tif 000020