(57)【特許請求の範囲】
【請求項１】
無線アドホックネットワークを形成するノード装置であって、
前記無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置を認識できるか否かを判断する認識可否判断部と、
受信パケットの送信元の他のノード装置を隣接ノードとして検出する隣接ノード検出部と、
前記ゲートウエイ装置を認識できないと前記認識可否判断部が判断した場合に、前記無線アドホックネットワークで送信されるパケットの受信に使用するチャネルを、複数のチャネルの各々に順次切り換えるチャネル変更部と、
前記複数のチャネルの各々において前記隣接ノード検出部が検出した隣接ノード数に基づいて、前記無線アドホックネットワークでの通信に使用するチャネルを前記複数のチャネルの中から選択するチャネル選択部と、
を備えることを特徴とするノード装置。
【請求項２】
前記チャネル選択部は、前記受信に使用するチャネルを変更した後の第１期間内に隣接ノードが検出されない場合には、該第１期間経過後に前記受信に使用するチャネルを次のチャネルへ切り換え、該第１期間内に隣接ノードが検出される場合には、該第１期間よりも長い第２期間経過後に前記受信に使用するチャネルを次のチャネルへ切り換えることを特徴とする請求項１に記載のノード装置。
【請求項３】
前記チャネル変更部は、隣接ノードが検出される場合に、ある待機期間が経過した後にチャネルの切り換えを開始することを特徴とする請求項１又は２に記載のノード装置。
【請求項４】
前記ゲートウエイ装置が認識できると前記認識可否判断部が判断した履歴を記憶する認識履歴記憶部を備え、
前記履歴がない場合に、前記待機期間が経過する前に前記チャネルの切り換えを開始することを特徴とする請求項３に記載のノード装置。
【請求項５】
前記認識可否判断部は、前記チャネル変更部がチャネルを変更する間に前記複数のチャネルの各々において前記ゲートウエイ装置を認識できるか否かを判断し、
前記チャネル選択部は、前記ゲートウエイ装置を認識可能なチャネルの中から前記使用チャネルを選択することを特徴とする請求項１〜４のいずれか一項に記載のノード装置。
【請求項６】
無線アドホックネットワークを形成する複数のノード装置と、該無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置とを備える通信システムであって、
前記ノード装置は、
前記ゲートウエイ装置を認識できるか否かを判断する認識可否判断部と、
受信パケットの送信元の他のノード装置を隣接ノードとして検出する隣接ノード検出部と、
前記ゲートウエイ装置を認識できないと前記認識可否判断部が判断した場合に、前記無線アドホックネットワークで送信されるパケットの受信に使用するチャネルを、複数のチャネルの各々に順次切り換えるチャネル変更部と、
前記複数のチャネルの各々において前記隣接ノード検出部が検出した隣接ノード数に基づいて、前記無線アドホックネットワークでの通信に使用するチャネルを前記複数のチャネルの中から選択するチャネル選択部と、
を備えることを特徴とする通信システム。
【請求項７】
無線アドホックネットワークにおいてノード装置により使用されるチャネルを選択するチャネル選択方法であって、
前記無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置を前記ノード装置が認識できるか否かを判断し、
前記ゲートウエイ装置を認識できない場合に、前記無線アドホックネットワークで送信されるパケットの受信に前記ノード装置が使用するチャネルを、複数のチャネルの各々に順次切り換え、
前記複数のチャネルの各々において、前記ノード装置にパケットを送信する隣接ノードを検出し、
前記複数のチャネルの各々において検出された隣接ノード数に基づいて、前記無線アドホックネットワークでの通信に使用するチャネルを前記複数のチャネルの中から選択する、ことを特徴とするチャネル選択方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で論じられる実施態様は、無線アドホックネットワークに関する。
【背景技術】
【０００２】
無線アドホックネットワークと他のネットワークとの間をゲートウエイ装置で中継する通信システムが知られている。このような通信システムに関連する技術として、例えば、ネットワークに接続される無線端末群と、無線端末との間で所定の無線帯域により通信し、センターとの中継手段として機能する第１コレクタと、無線端末との間で前記無線帯域と異なる無線帯域により通信し、センターとの中継手段として機能する第２コレクタを備える無線システムが知られている。このシステムでは、第１コレクタと通信する無線端末と、第２コレクタと通信する無線端末は、第１あるいは第２コレクタの障害に備え、互いに他方の無線帯域で通信されるネットワークへの参入を事前に実行する。
【０００３】
なお、他の関連する技術として、予め定められた通信チャネル上で通信相手装置を検索する第一の検索工程と、通信可能な全ての通信チャネル上で通信相手装置を検索する第二の検索工程と、第一の検索工程と第二の検索工程を使用して通信相手装置を検索する検索制御工程とを有する通信方法が知られている。
【０００４】
また、無線通信によりデータを送受する無線インタフェースと、無線インタフェースにより周辺の無線インタフェースの情報をチャネル情報として取得するチャネル情報取得部と、該取得したチャネル情報の中から無線インタフェースとの間でネットワークを構成することが可能な同一システムの無線インタフェースを検出した場合に、無線インタフェースの設定を変更して、無線インタフェースと同一システムの無線インタフェースとを接続する通信接続制御部を有するノードが知られている。ノードは、無線インタフェースの受信信号強度を考慮して接続可否の判断を行う。
【０００５】
また、複数のセンサノードと、このセンサノードが中継器を介在ないし非介在でつながる基地局と、センサノード、中継器、および基地局が作る通信網内で交わす通信に用いる無線通信手段を有する無線通信ネットワークシステムが知られている。無線通信手段は選択できる複数の搬送周波数チャンネルを有し、センサノードと基地局との接続経路情報より通信網内での通信に適する搬送周波数チャンネルを判別するチャンネル判別手段を有する。
【０００６】
また、複数の基地局や無線端末から構成される無線ネットワークシステムが知られている。基地局や、親局となる無線端末は子局の通信方法を制御するための通信制御情報を送信する。各無線端末の通信制御部は、親局から受信した通信制御情報に従った通信方法で、さらに自分の親局や子局との通信を行うと同時に、通信品質測定部により、通信経路の通信品質を測定する。基地局は各無線端末の通信品質集計部からあつめた通信品質をもとに、各通信経路の通信品質を評価し、各無線端末が使用する最適な通信経路を選択する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１０−１８７３１６号公報
【特許文献２】特開２０１０−９３４４８号公報
【特許文献３】特開２００９−２０６９９９号公報
【特許文献４】特開２００９−２００５８３号公報
【特許文献５】特開２０１０−３５０６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
無線アドホックネットワークと他のネットワークとの中継に複数のゲートウエイ装置が使用され、複数のゲートウエイ装置が互いに異なる周波数チャネルを用いて無線アドホックネットワークと通信を行う場合を想定する。以下、周波数チャネルを単に「チャネル」と表記する場合がある。
【０００９】
この場合、無線アドホックネットワークを形成する複数のノード装置は、使用チャネルがそれぞれ異なる各ゲートウエイ装置に接続される複数のグループに分割される。各ノード装置は、ゲートウエイまでの経路が存在するいずれかのグループに所属し、各グループで使用される周波数チャネルを使用してパケットを送受信する。
【００１０】
上記の通信システムにおいて、例えば、ゲートウエイ装置の故障、使用チャネルの変更やノード装置の移動などの状態の変化が生じることがある。無線アドホックネットワークの状態の変化によって、ゲートウエイ装置との間でパケットを伝送する経路が無くなることにより、ゲートウエイ装置を認識できなくなるノード装置が発生する。
【００１１】
この場合、ノード装置は、使用チャネルを変更して所属グループを変更することによりゲートウエイを再認識できるようになる。チャネル変更の際には、より安定的にゲートウエイ装置への経路が確立できる可能性が高いチャネルを選択することが望ましい。
【００１２】
開示の装置及び方法は、使用チャネルが異なる複数のゲートウエイ装置により他ネットワークに接続される無線アドホックネットワークにて、より安定的にゲートウエイ装置への経路が確立されるチャネルをノード装置に選択させることを目的とする。
【課題を解決するための手段】
【００１３】
装置の一観点によれば、無線アドホックネットワークを形成するノード装置が与えられる。このノード装置は、無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置を認識できるか否かを判断する認識可否判断部と、受信パケットの送信元の他のノード装置を隣接ノードとして検出する隣接ノード検出部と、ゲートウエイ装置を認識できないと認識可否判断部が判断した場合に、無線アドホックネットワークで送信されるパケットの受信に使用するチャネルを、複数のチャネルの各々に順次切り換えるチャネル変更部と、複数のチャネルの各々において隣接ノード検出部が検出した隣接ノード数に基づいて、無線アドホックネットワークでの通信に使用するチャネルを複数のチャネルの中から選択するチャネル選択部と、を備える。
【００１４】
方法の一観点によれば、無線アドホックネットワークにおいてノード装置により使用されるチャネルを選択するチャネル選択方法が与えられる。この方法では、無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置をノード装置が認識できるか否かを判断し、ゲートウエイ装置を認識できない場合に、無線アドホックネットワークで送信されるパケットの受信にノード装置が使用するチャネルを、複数のチャネルの各々に順次切り換え、複数のチャネルの各々において、ノード装置にパケットを送信する隣接ノードを検出し、複数のチャネルの各々において検出された隣接ノード数に基づいて、無線アドホックネットワークでの通信に使用するチャネルを複数のチャネルの中から選択する。
【発明の効果】
【００１５】
開示の装置又は方法によれば、使用チャネルが異なる複数のゲートウエイ装置により他ネットワークに接続される無線アドホックネットワークにて、ノード装置は、より安定的にゲートウエイ装置への経路が確立されるチャネルを選択することが可能になる。
【００１６】
本発明の目的及び利点は、特許請求の範囲に示した要素及びその組合せを用いて具現化され達成される。前述の一般的な記述及び以下の詳細な記述の両方は、単なる例示及び説明であり、特許請求の範囲のように本発明を限定するものでないと解するべきである。
【図面の簡単な説明】
【００１７】
【図１】通信システムの全体構成例を示す図である。
【図２】（Ａ）〜（Ｃ）は、チャネル検索を実施する状況の一例の説明図である。
【図３】ノード装置のハードウエア構成の一例を示す図である。
【図４】ノード装置の第１構成例を示す図である。
【図５】経路制御パケットの第１例の構成の説明図である。
【図６】隣接ノード情報の第１例を示す図である。
【図７】アドホックネットワークで伝送されるフラッディングパケットの構成の一例の説明図である。
【図８】経路制御パケットの第２例の構成の説明図である。
【図９】ホップ数情報の例を示す図である。
【図１０】ノード装置の処理の第１例の説明図である。
【図１１】図１０の処理におけるチャネル切換の説明図である。
【図１２】チャネル選択処理の第１例の説明図である。
【図１３】図１１のサブルーチンにおける処理の説明図である。
【図１４】チャネル選択処理の第３例の説明図である。
【図１５】図１４のサブルーチンにおける処理の説明図である。
【図１６】ノード装置の第２構成例を示す図である。
【図１７】ノード装置の処理の第２例の説明図である。
【図１８】図１７の処理におけるチャネル切換の説明図である。
【図１９】（Ａ）及び（Ｂ）は、集団孤立と単独孤立の説明図である。
【図２０】ノード装置の第３構成例を示す図である。
【図２１】ノード装置の処理の第３例の説明図である。
【図２２】隣接ノード情報の第２例を示す図である。
【発明を実施するための形態】
【００１８】
＜１．通信システムの構成＞
以下、添付される図面を参照して、好ましい実施例について説明する。図１は、通信システムの全体構成例を示す図である。通信システム１は、サーバ装置２と、無線アドホックネットワーク４と、ゲートウエイ装置６ａ〜６ｃを備える。無線アドホックネットワーク４は、複数のノード装置５ａ〜５ｉによって形成されている。
【００１９】
なお、添付する図面において、ゲートウエイ装置を「ＧＷ」と表記し、ノード装置を「ＮＤ」と表記することがある。また、以下の説明において、ゲートウエイ装置６ａ〜６ｃを総称して「ゲートウエイ装置６」と表記することがある。また、ノード装置５ａ〜５ｉを総称して「ノード装置５」と表記することがある。
【００２０】
通信システム１は、例えば、ノード装置５にて採取された電力、ガス及び水道などの検針データを、ゲートウエイ装置６を経由して、サーバ装置２にて収集されるデータ収集システムであってよい。
【００２１】
サーバ装置２及びゲートウエイ装置６は、通信ネットワーク３に接続されており、ゲートウエイ装置６は、通信ネットワーク３と無線アドホックネットワーク４との間を中継する。通信ネットワーク３は、サーバ装置２とゲートウエイ装置６との間の通信機能を提供するネットワークであり、様々なプロトコルや通信媒体を使用するネットワークを利用することができる。
【００２２】
通信システム１は、複数のゲートウエイ装置６ａ〜６ｃを備える。ゲートウエイ装置６ａ〜６ｃは、無線アドホックネットワーク４との間の通信にそれぞれ異なるチャネルを使用する。図１の例では、ゲートウエイ装置６ａ、６ｂ及び６ｃは、それぞれチャネルＣＨ１、ＣＨ２及びＣＨ３を使用する。
【００２３】
これら異なるチャネルを使用する複数のゲートウエイ装置６ａ〜６ｃが無線アドホックネットワーク４にて通信を行うことにより、無線アドホックネットワーク４を形成するノード装置５ａ〜５ｉは複数のグループ１１〜１３に分割される。グループ１１、１２及び１３は、それぞれゲートウエイ装置６ａ、６ｂ及び６ｃを経由して通信ネットワーク３に接続されるノード装置５のグループである。図１の例では、ノード装置５ａ〜５ｃがグループ１１を形成し、ノード装置５ｄ〜５ｇがグループ１２を形成し、ノード装置５ｈ〜５ｉがグループ１３を形成する。
【００２４】
グループ１１のノード装置５ａ〜５ｃは、チャネルＣＨ１を使用してパケットを伝送する。各ノード装置５ａ〜５ｃがグループ１１の他のノード装置やゲートウエイ装置６ａが送受信するパケットを中継することで、ノード装置５ａ〜５ｃとゲートウエイ装置６ａとを含むアドホックネットワークが形成される。他のグループ１２及び１３についても同様である。
【００２５】
上述の通り、無線アドホックネットワーク４の状態の変化によって、ゲートウエイ装置６を認識できなくなるノード装置５が発生する。同様に、隣接のノード装置を１つも認識できないノード装置５が発生する。なお、本明細書の説明において、ノード装置５がゲートウエイ装置６を認識できるとは、ノード装置５がゲートウエイ装置６までパケットを伝送する経路を確立できる状態をいう。また、ノード装置５が隣接のノード装置を認識できるとは、ノード装置５が隣接のノード装置までパケットを伝送する経路を確立できる状態をいう。
【００２６】
また、以下の説明において、ノード装置５が、ゲートウエイ装置６を認識出来ない状態や隣接のノード装置を１つも認識できない状態を「孤立」と表記することがある。また、ノード装置５が「孤立」状態になることを「孤立する」と表記することがある。
【００２７】
孤立したノード装置５は、周囲で使用されているチャネルを検索し、通信に使用するチャネルを変更することによって所属するグループを変更する。本明細書の説明において、孤立したノード装置５が、通信に使用可能なチャネルを検索する処理を「チャネル検索」と表記することがある。図２の（Ａ）〜図２の（Ｃ）は、ノード装置５が、チャネル検索を実施する状況の一例の説明図である。
【００２８】
本例では、図１の通信システム１において、ゲートウエイ装置６ｂが故障した場合を想定する。図２の（Ａ）は、ゲートウエイ装置６ｂの故障前の状態を示す。各ゲートウエイ装置６及びノード装置５の使用チャネル、並びに各グループ１１〜１３に所属するノード装置５は、図１と同様である。
【００２９】
図２の（Ｂ）は、ゲートウエイ装置６ｂが故障した直後の状態を示す。チャネルＣＨ２を使用するノード装置５ｄ〜５ｇは、他のグループ１１及び１３のノード装置５ａ〜５ｃ並びに５ｈ及び５ｉや、ゲートウエイ装置６ａ及び６ｃと通信することができない。したがって、ノード装置５ｄ〜５ｇはゲートウエイ装置６ａ及び６ｃを認識できない孤立状態となる。
【００３０】
孤立したノード装置５ｄ〜５ｇは、その周囲で使用中の通信状態が良好なチャネルを検索する。ノード装置５ｄ〜５ｇは、検出したチャネルに使用チャネルを変更することによって所属するグループを変更する。
【００３１】
図２の（Ｃ）は、使用チャネル変更後の状態を示す。ノード装置５ｄ及び５ｅはチャネルＣＨ１を選択することによって、グループ１１のネットワークに所属する。ノード装置５ｇ及び５ｆはチャネルＣＨ３を選択することによって、グループ１３のネットワークに所属する。
【００３２】
＜２．第１の実施の形態＞
続いて、各実施の形態におけるノード装置５の構成及び機能について説明する。図３は、ノード装置５のハードウエア構成の一例を示す図である。ノード装置５は、プロセッサ２１、補助記憶装置２２、メモリ２３、入力部２４、無線通信部２５及びデータバス２６を備える。
【００３３】
プロセッサ２１は、補助記憶装置２２に記憶される制御プログラムを実行することにより、ノード装置５の動作を制御するための各処理や、ノード装置５によるチャネル検索のための下記の処理を実行する。補助記憶装置２２には、プロセッサ２１に上記処理を実行させる制御プログラムが記憶される。補助記憶装置２２は、不揮発性メモリや、読み出し専用メモリ（ROM: Read Only Memory）やハードディスクなどを記憶素子として含んでいてもよい。
【００３４】
メモリ２３には、プロセッサ２１により実行中のプログラムや、このプログラムによって一時的に使用されるデータが記憶される。メモリ２３は、ランダムアクセスメモリ（RAM: Random Access Memory）を含んでいてよい。入力部２４は、ノード装置５が取得する情報の入力を受け付ける構成要素である。例えば、通信システム１が上述のデータ収集システムである場合、入力部２４は、電力、ガス及び水道などのメータにアクセスして検針データを取得する機能を有する。また、入力部２４は、オペレータによる入力操作を受け付けるユーザインタフェースを備えていてもよい。
【００３５】
無線通信部２５は、他のノード装置５やゲートウエイ装置６との間の無線通信処理を行う。無線通信部２５は、プロセッサ２１がチャネル検索処理を経て選択したチャネルを、無線通信に使用するチャネルとして設定する。上記の構成要素２１〜２５は、データバス２６によって電気的に接続されている。
【００３６】
図４は、ノード装置５の第１構成例を示す図である。図３のプロセッサ２１は、補助記憶装置２２に記憶されるプログラムに従い、必要に応じてノード装置５の他のハードウエア要素との協調動作を行うことにより、図４に示すノード装置５の構成要素による情報処理を行う。なお、図４は、以下の説明に関係する機能を中心として示している。したがって、ノード装置５は図示の構成要素以外の他の構成要素を含んでいてよい。他の実施の携帯についても同様である。
【００３７】
ノード装置５は、通信部３０と、パケット解析部３１と、通信状態測定部３２と、隣接ノード検出部３３と、認識可否判断部３４と、チャネル変更部３５と、記憶部３６と、チャネル選択部３７を備える。
【００３８】
通信部３０は、他のノード装置５又はゲートウエイ装置６へ、ユニキャスト形式又はブロードキャスト形式により無線パケットを送信する。また通信部３０は、他のノード装置５又はゲートウエイ装置６から送信された無線パケットを受信する。通信部３０によるパケットの送受信に使用されるチャネルは、無線通信部２５により設定される。パケット解析部３１は、受信したパケットの解析を行い、パケットのヘッダ部及びメッセージ部に格納されている情報の抽出を行う。
【００３９】
通信状態測定部３２は、ノード装置５へパケットを送信するノード装置との通信状態を測定する。以下の説明において、ノード装置５へパケットを送信するノード装置、すなわちノード装置５により受信されるパケットの送信元のノード装置を「隣接ノード」と表記することがある。
【００４０】
例えば通信状態測定部３２は、隣接ノードからの無線パケットを受信した場合に、通信状態を示す指標として受信品質を測定してよい。受信品質は、例えば受信信号強度（ＲＳＳＩ: Received Signal Strength Indicator）であってよい。
【００４１】
通信状態測定部３２は、隣接ノードから周期的に送信される定期パケットの受信率を通信状態を示す指標として測定してよい。このような定期パケットは、例えば、無線アドホックネットワーク４にて利用される特定の経路制御プロトコルが使用する経路制御パケットであってよい。経路制御パケットは、例えばＯＬＳＲ（Optimized Link State Routing）等で使用されるハローパケットであってよい。
【００４２】
図５は、経路制御パケットの第１例の構成の説明図である。経路制御パケットは、ヘッダ部５０及びメッセージ部６０を含む。ヘッダ部５０は、パケットの送信元アドレス５１、送信先アドレス５２、タイプ５３、ＴＬＬ（Time To Live）部５４、ホップ数５５を含む。メッセージ部６０には、経路制御プロトコルにおいて各ノード装置５が経路テーブルを作成するために使用する経路情報を含んでいる。
【００４３】
通信状態測定部３２は、例えば次式（１）に従って定期パケットの受信率を算出してよい。
受信率＝定期パケット受信数÷（受信期間÷定期パケットの送信周期）    （１）
【００４４】
図４を参照する。隣接ノード検出部３３は、他のノード装置５からのパケットが受信された場合に、送信元の他のノード装置５を隣接ノードとして検出する。隣接ノード検出部３３は、隣接ノードを検出した場合に、検出された隣接ノードに関する隣接ノード情報４０を記憶部３６に格納する。ある実施例では、隣接ノード検出部３３は、上述の経路制御パケットを受信することによって隣接ノードを検出してよい。
【００４５】
図６は、隣接ノード情報４０の第１例を示す図である。隣接ノード情報４０は、情報要素として「チャネル」及び「ノード識別子」を含んでいてよい。ある実施例では、隣接ノード情報４０は、隣接ノードについて通信状態測定部３２により測定された通信状態を示す情報要素を含んでいてよい。これらの情報要素は、例えば「受信品質」及び「定期パケット受信率」であってよい。後述するように他の実施例では、通信状態を示す情報要素を省略してもよい。
【００４６】
情報要素「チャネル」は、隣接ノードがパケットを送受信するチャネルの識別子である。情報要素「ノード識別子」は、隣接ノードの識別子である。識別子は、例えばＭＡＣアドレスであってよい。情報要素「受信品質」及び「定期パケット受信率」は、隣接ノードについて通信状態測定部３２が測定した受信品質及び定期パケットの受信率である。
【００４７】
図６に示す例では、ノード識別子「１」の隣接ノードは、チャネル「ＣＨ１」を使用してパケットを送受信する。この隣接ノードは、通信部３０がチャネルＣＨ１を使用してパケットの送受信を行っている期間に隣接ノード検出部３３が検出した隣接ノードである。また、ノード識別子「４６」の隣接ノードは、チャネル「ＣＨ２」を使用してパケットを送受信する。この隣接ノードは、チャネルＣＨ２を使用してパケットの送受信が行われている期間に検出された隣接ノードである。また、ノード識別子「１」の隣接ノードの受信品質及び定期パケットの受信率はそれぞれ「−６５ｄＢｍ」及び「１００％」であり、ノード識別子「４６」の隣接ノードの受信品質及び定期パケットの受信率はそれぞれ「−６９ｄＢｍ」及び「９８％」である。
【００４８】
図４を参照する。認識可否判断部３４は、ノード装置５が、いずれかのゲートウエイ装置６を認識できるか否かを判断する。他の言い方をすれば、認識可否判断部３４は、ノード装置５とゲートウエイ装置６との間にパケットを経路が確立できるか否か、すなわちノード装置５が孤立しているか否かを判断する。
【００４９】
ある実施例では、認識可否判断部３４は、ゲートウエイ装置６から無線アドホックネットワーク４へ送信されるフラッディングパケットを受信した場合に、ゲートウエイ装置６を認識できると判断する。このフラッディングパケットは、ゲートウエイ装置６から定期的に送信されるパケットであってよい。ある実施例においてこのフラッディングパケットは、例えば、ＩＰｖ６（Internet Protocol Version 6）にて使用されるルータ広告（Router Advertisement）パケットであってよい。他の実施例においてフラッディングパケットは、例えば、特定の経路制御プロトコルにおいてゲートウエイ装置６の死活を通知する制御パケットであってもよい。
【００５０】
図７は、アドホックネットワークで伝送されるフラッディングパケットの構成の一例の説明図である。フラッディングパケットのヘッダ部５０は、図５を参照して説明した経路制御パケットのヘッダ部５０と同様である。タイプ５３はパケットの種別を示す。タイプ５３の値によりパケットがフラッディングパケットであることが示される。また、ホップ数５５は、パケットの送信元であるゲートウエイ装置６からのホップ数が格納される。メッセージ部６０には、ゲートウエイ装置６からノード装置５へブロードキャスト形式で配信される情報が格納される。
【００５１】
ある実施例では、認識可否判断部３４は、隣接ノードから受信する経路制御パケットを参照してゲートウエイ装置６の認識可否を判断してよい。図８は、経路制御パケットの第２例の構成の説明図である。この実施例におけるノード装置５は、記憶部３６に、ノード装置５とゲートウエイ装置６との間のホップ数をそれぞれ記憶する。ノード装置５は、経路制御パケットを送信する際に、メッセージ部６０の付加情報６２としてゲートウエイ装置６までのホップ数を格納する。認識可否判断部３４は、経路制御パケットを受信したとき、メッセージ部６０に付加情報６２が格納されているか否かに応じて、ゲートウエイ装置６の認識可否を判断する。
【００５２】
図４を参照する。チャネル変更部３５は、認識可否判断部３４がいずれのゲートウエイ装置も認識できないと判断した場合、すなわちゲートウエイ装置６との間の経路が全て失われノード装置５が孤立した場合に、通信部３０がパケットの受信に使用するチャネルを順次切り替える。このときチャネル変更部３５は、無線アドホックネットワーク４における通信のために用意されたＮ個のチャネルＣＨ１〜ＣＨＮの全てに亘って、ノード装置５がパケットの受信に使用するチャネルを切り換える。
【００５３】
認識可否判断部３４は、チャネル変更部３５によるチャネル切換処理中に、各チャネルにおいて認識可能なゲートウエイ装置６までのホップ数をそれぞれ検出する。本実施の形態では、認識可否判断部３４は、チャネル切換処理中にゲートウエイ装置６から送信されるフラッディングパケットのホップ数５５から、ゲートウエイ装置６までのホップ数を取得する。
【００５４】
図９は、ホップ数情報４１の例を示す図である。ホップ数情報４１は、情報要素として「チャネル」及び「ホップ数」を含んでいてよい。情報要素「チャネル」は、ゲートウエイ装置６が認識されたチャネルの識別子である。情報要素「ホップ数」は、認識されたゲートウエイ装置６までのホップ数である。図８に示す例では、チャネル「ＣＨ１」で認識されたゲートウエイ装置６までのホップ数は「３」であり、チャネル「ＣＨ２」で認識されたゲートウエイ装置６までのホップ数は「２」である。
【００５５】
ホップ数情報４１にホップ数が格納されているゲートウエイ装置６については、ノード装置５からのホップ数を特定することができる。すなわち、ホップ数情報４１は、各チャネルにおいてノード装置５が認識可能なゲートウエイ装置６を示す。
【００５６】
また隣接ノード検出部３３は、チャネル変更部３５によるチャネル切換処理中に、各チャネルにおいて隣接ノードを検出する。チャネル変更部３５によるチャネル切換処理が終了すると、チャネル選択部３７は、各チャネルにて検出された隣接ノード数に基づいて、無線アドホックネットワーク４での通信に使用するチャネルを複数のチャネルＣＨ１〜ＣＨＮの中から選択する。
【００５７】
以下、チャネル選択部３７によるチャネルの選択処理の例について説明する。
＜２−１．チャネル選択処理の第１例＞
（処理１−１）  チャネル選択部３７は、隣接ノード情報４０を参照して、各チャネルで検出された隣接ノードのうち所定の通信状態を満たす隣接ノード数を特定する。例えば、チャネル選択部３７は、受信信号強度および定期パケット受信率が所定の閾値以上である隣接ノードの数を、所定の通信状態を満たす隣接ノード数として特定する。他の実施例では、チャネル選択部３７は、各チャネルで検出された全ての隣接ノードの数を隣接ノード数として特定してもよい。この場合、隣接ノード情報４０から通信状態を示す情報要素を省略してもよい。
【００５８】
（処理１−２）  チャネル選択部３７は、ホップ情報４１を参照して、各チャネルにおいてゲートウエイ装置６が認識可能であるか否かを判断する。チャネル選択部３７は、ノード装置５がゲートウエイ装置６を認識できるチャネルを特定する。ある実施例においてチャネル選択部３７は、ゲートウエイ装置６までのホップ数が所定のホップ数より短いチャネルのみを特定してもよい。ある実施例において所定のホップ数は、経路制御プロトコルによって定まる制限ホップ数であってよい。
【００５９】
（処理１−３）  チャネル選択部３７は、ホップ情報４１を参照して、（処理１−２）で特定されたチャネルにおけるゲートウエイ装置６までのホップ数を判断する。ゲートウエイ装置６までのホップ数が最少のチャネルが１つしか存在しない場合、チャネル選択部３７は、このチャネルを通信に使用するチャネルとして選択する。
【００６０】
（処理１−４）  ゲートウエイ装置６までのホップ数が最少のチャネルが複数存在する場合、チャネル選択部３７は、これらのチャネルのうちから、（処理１−１）で特定した隣接ノード数に基づいて通信に使用するチャネルを選択する。隣接ノード数に基づくチャネルの選択方法の例については後述する。
【００６１】
（処理１−５）  処理（１−２）において特定されるチャネルが存在しない場合、チャネル選択部３７は、全チャネルのうちから（処理１−１）で特定した隣接ノード数に基づいて通信に使用するチャネルを選択する。
【００６２】
＜２−２．チャネルの選択処理の第２例＞
（処理２−１）  チャネル選択部３７は、（処理１−１）と同様に隣接ノード数を特定する。
【００６３】
（処理２−２）  チャネル選択部３７は（処理１−２）と同様にチャネルを特定する。
【００６４】
（処理２−３）  チャネル選択部３７は、（処理２−２）で特定される全チャネルにおいて（処理２−１）で特定された隣接ノード数が所定の閾値Ｍを超えるか否かを判断する。隣接ノード数が所定の閾値Ｍを超える場合、ゲートウエイ装置６までホップ数が最少のチャネルを通信に使用するチャネルとして選択する。
【００６５】
（処理２−４）  （処理２−２）で特定される全チャネルにおいて（処理２−１）で特定された隣接ノード数が所定の閾値Ｍを超えない場合、チャネル選択部３７は、以下に従って通信に使用するチャネルとして選択する。
【００６６】
まず（処理２−２）で特定されたチャネルのうち（処理２−１）で特定した隣接ノード数が最多のチャネルが１つしかない場合には、このチャネルを、通信に使用するチャネルとして選択する。
【００６７】
（処理２−５）  （処理２−２）で特定されたチャネルのうち（処理２−１）で特定した隣接ノード数が最多のチャネルが複数ある場合には、これらのチャネルのうちゲートウエイ装置６までのホップ数が最少のチャネルを、通信に使用するチャネルとして選択する。
【００６８】
（処理２−６）  一方で、処理（２−２）で特定されるチャネルが存在しない場合、チャネル選択部３７は、全チャネルのうちから（処理２−１）で特定した隣接ノード数に基づいて通信に使用するチャネルを選択する。
【００６９】
以下、本実施の形態のノード装置５のチャネル検索処理について説明する。図１０は、ノード装置５の処理の第１例の説明図である。なお、他の実施態様においては、下記のオペレーションＡＡ〜ＡＨはステップであってよい。
【００７０】
オペレーションＡＡにおいて認識可否判断部３４は、現在、ノード装置５が通信に使用しているチャネルにおいてゲートウエイ装置６を認識できるか否かを判断する。すなわち、ノード装置５が孤立しているか否かを判断する。認識できる場合（オペレーションＡＡ：Ｙ）、認識可否判断部３４は、オペレーションＡＡを繰り返す。認識できない場合（オペレーションＡＡ：Ｎ）、処理はオペレーションＡＢへ進む。
【００７１】
オペレーションＡＢにおいて各チャネルＣＨ１〜ＣＨＮを順次選択する変数ｉの値が、「１」に初期化される。オペレーションＡＣにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをチャネルＣＨｉへ切り替える。
【００７２】
オペレーションＡＤにおいて通信部３０は、隣接ノード又はゲートウエイ装置６から送信されるパケットを受信する。隣接ノードからパケットが受信された場合、隣接ノード検出部３３は、パケットの送信元の隣接ノードに関する隣接ノード情報を記憶部３６へ格納する。ゲートウエイ装置６からフラッディングパケットが受信された場合、認識可否判断部３４は、フラッディングパケットの送信元のゲートウエイ装置６に関するホップ数情報４１を記憶部３６へ格納する。
【００７３】
オペレーションＡＥにおいてチャネル変更部３５は、所定のチャネル切換期間Ｔ１が経過したか否かを判断する。チャネル切換期間Ｔ１が経過しない場合（オペレーションＡＥ：Ｎ）には、処理はオペレーションＡＤへ戻る。チャネル切換期間Ｔ１が経過した場合（オペレーションＡＥ：Ｙ）には、処理はオペレーションＡＦへ進む。
【００７４】
オペレーションＡＦにおいて、変数ｉの値が１つ増加される。オペレーションＡＧにおいて、変数ｉの値が、パケットの送受信のために用意されたチャネルＣＮ１〜ＣＮＮのチャネル数Ｎを超えるか否かが判定される。変数ｉの値がチャネル数を超えない場合（オペレーションＡＧ：Ｎ）には、処理はオペレ−ションＡＣへ戻る。変数ｉの値がチャネル数を超える場合（オペレーションＡＧ：Ｙ）には、処理はオペレ−ションＡＨへ進む。
【００７５】
オペレーションＡＨにおいてチャネル選択部３７は、上記の処理（１−１）〜（１−５）又は処理（２−１）〜（２−６）等の選択処理に従って、無線アドホックネットワーク４における通信に使用するチャネルを選択する。チャネル選択部３７における選択処理については、さらに後述する。
【００７６】
次に、図１０に示す処理においてチャネル変更部３５により行われるチャネル切換について説明する。図１１は、チャネル変更部３５によるチャネル切替の説明図である。なお、他の実施態様においては、下記のオペレーションＢＡ〜ＢＩはステップであってよい。
【００７７】
なお、図１１においてノード装置５ｘは、図１０の処理を実行するノード装置５を示す。またノード装置５ｋ〜５ｎは、それぞれチャネルＣＨ１〜ＣＨ３を使用する隣接ノードを示す。またゲートウエイ装置は、チャネルＣＨ１を使用している。なお、図１１は、チャネル数Ｎ＝３の場合の例を示すが、他の実施例ではチャネル数Ｎは３以外の整数であってよい。
【００７８】
オペレーションＢＡにおいてノード装置５ｘの認識可否判断部３４は、ノード装置５ｘの孤立を検出する。オペレーションＢＢにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをＣＨ１へ切り換える。
【００７９】
オペレーションＢＢに続くチャネル切換期間Ｔ１の間、ノード装置５ｘは、チャネルＣＨ１を使用して送信されるパケットを受信できる。オペレーションＢＣにおいてノード装置５ｘは、チャネルＣＨ１を使用する隣接ノード５ｋからパケットを受信する。オペレーションＢＤにおいてノード装置５ｘは、ゲートウエイ装置６からフラッディングパケットを受信する。
【００８０】
チャネル切換期間Ｔ１が経過した後、オペレーションＢＥにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをＣＨ２へ切り換える。オペレーションＢＥに続くチャネル切換期間Ｔ１の間、ノード装置５ｘは、チャネルＣＨ２を使用して送信されるパケットを受信できる。オペレーションＢＦにおいてノード装置５ｘは、チャネルＣＨ２を使用する隣接ノード５ｍからパケットを受信する。
【００８１】
チャネル切換期間Ｔ１が経過した後、オペレーションＢＧにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをＣＨ３へ切り換える。オペレーションＢＧに続くチャネル切換期間Ｔ１の間、ノード装置５ｘは、チャネルＣＨ３を使用して送信されるパケットを受信できる。オペレーションＢＨにおいてノード装置５ｘは、チャネルＣＨ３を使用する隣接ノード５ｎからパケットを受信する。
【００８２】
以上のオペレーションＢＢ〜ＢＨにおいてノード装置５ｘは、使用可能な全てのチャネルＣＨ１〜ＣＨ３において、隣接ノードからのパケット及びゲートウエイ装置６からフラッディングパケットを受信する。オペレーションＢＩにおいて、チャネル選択部３７は、無線アドホックネットワーク４における通信に使用するチャネルを選択する。オペレーションＢＩの処理は、図１０のオペレーションＡＨにて行われるチャネル選択処理と同様である。
【００８３】
続いて、図１０のオペレーションＡＨにて行われるチャネル選択処理について説明する。図１２及び図１３は、チャネル選択処理の第１例の説明図である。図１２及び図１３に示すチャネル選択処理は、上述の＜２−１．チャネルの選択処理の第１例＞に対応する。なお、他の実施態様においては、下記のオペレーションＣＡ〜ＣＧ及びオペレーションＤＡ〜ＤＧはステップであってよい。
【００８４】
オペレーションＣＡにおいてチャネル選択部３７は、隣接ノード情報４０を参照して、各チャネルで検出された隣接ノードのうち所定の通信状態を満たす隣接ノード数を特定する。オペレーションＣＢにおいてチャネル選択部３７は、ノード装置５がゲートウエイ装置６を認識できるチャネルを特定する。ある実施例においてチャネル選択部３７は、ゲートウエイ装置６までのホップ数が所定のホップ数より短いチャネルのみを特定してもよい。
【００８５】
オペレーションＣＣにおいてチャネル選択部３７は、オペレーションＣＢで特定されるチャネルが少なくとも１つあるか否かを判定する。特定されるチャネルが１つもない場合（オペレーションＣＣ：Ｙ）には、処理はオペレーションＣＧへ進む。特定されるチャネルが少なくとも１つある場合（オペレーションＣＣ：Ｎ）には、処理はオペレーションＣＤへ進む。
【００８６】
オペレーションＣＤにおいてチャネル選択部３７は、オペレーションＣＢで特定されるチャネルのうちゲートウエイ装置６までのホップ数が最少かつ同数のチャネルが複数あるか否かを判定する。複数のチャネルが存在する場合（オペレーションＣＤ：Ｙ）には、処理はオペレーションＣＦへ進む。複数のチャネルが存在しない場合（オペレーションＣＤ：Ｎ）には、処理はオペレーションＣＥへ進む。
【００８７】
オペレーションＣＥにおいてチャネル選択部３７は、ゲートウエイ装置６までのホップ数が最少のチャネルを、通信に使用するチャネルとして選択する。
【００８８】
オペレーションＣＦにおいてチャネル選択部３７は、図１３に示す第１選択サブルーチンによって、ゲートウエイ装置６までのホップ数が最少かつ同数のチャネルの中から、通信に使用するチャネルを選択する。
【００８９】
図１３の説明において、第１選択サブルーチンによって通信に使用するチャネルが選択される母集団のチャネルの集合を「対象のチャネル」と表記する。例えば、オペレーションＣＦにおいて第１選択サブルーチンが実行される場合には、オペレーションＣＢによって特定されたチャネルのうちゲートウエイ装置６までのホップ数が最少かつ同数のチャネルが対象のチャネルである。
【００９０】
オペレーションＤＡにおいてチャネル選択部３７は、対象のチャネルの全てにおいて、オペレーションＣＡで特定された隣接ノード数が、所定の閾値Ｍを超えるか否かを判定する。隣接ノード数が閾値Ｍを超えない場合（オペレーションＤＡ：Ｎ）には、処理はオペレーションＤＢへ進む。隣接ノード数が閾値Ｍを超える場合（オペレーションＤＡ：Ｙ）には、処理はオペレーションＤＥへ進む。
【００９１】
オペレーションＤＢにおいてチャネル選択部３７は、対象のチャネルであって隣接ノード数が閾値Ｍ以下であるチャネルのうちオペレーションＣＡで特定された隣接ノード数が最多かつ同数のチャネルが複数あるか否かを判断する。隣接ノード数が最多かつ同数のチャネルが複数ある場合（オペレーションＤＢ：Ｙ）には、処理はオペレーションＤＣへ進む。隣接ノード数が最多のチャネルが１つしかない場合（オペレーションＤＢ：Ｎ）には、処理はオペレーションＤＤへ進む。
【００９２】
オペレーションＤＣにおいてチャネル選択部３７は、対象のチャネルのうちオペレーションＣＡで特定された隣接ノード数が最多かつ同数のチャネルの中のいずれかのチャネルを、通信に使用するチャネルとして選択する。例えば、チャネル選択部３７は、チャネルの識別番号が最も若いチャネルを選んでよい。オペレーションＤＤにおいてチャネル選択部３７は、隣接ノード数が最多のチャネルを通信に使用するチャネルとして選択する。
【００９３】
一方で、オペレーションＤＥにおいてチャネル選択部３７は、対象のチャネルのうちオペレーションＣＡで特定された隣接ノード数が最少かつ同数のチャネルが複数あるか否かを判断する。隣接ノード数が最少かつ同数のチャネルが複数ある場合（オペレーションＤＥ：Ｙ）には、処理はオペレーションＤＦへ進む。隣接ノード数が最少のチャネルが１つしかない場合（オペレーションＤＥ：Ｎ）には、処理はオペレーションＤＧへ進む。
【００９４】
オペレーションＤＦにおいてチャネル選択部３７は、オペレーションＣＡで特定された隣接ノード数が最少かつ同数のチャネルの中から、いずれかのチャネルを通信に使用するチャネルとして選択する。例えば、チャネル選択部３７は、チャネルの識別番号が最も若いチャネルを選んでよい。オペレーションＤＧにおいてチャネル選択部３７は、隣接ノード数が最少のチャネルを通信に使用するチャネルとして選択する。
【００９５】
図１３に示す第１選択サブルーチンによれば、オペレーションＣＡで特定された隣接ノード数が出来るだけ閾値Ｍに近いチャネルが選択される。これにより、隣接ノード数が過小であることによりゲートウエイ装置６までの経路が不安定なチャネルを選択する可能性が低減される。また、隣接ノード数が過大であるような、混雑したチャネルを選択する可能性が低減される。
【００９６】
図１２を参照する。オペレーションＣＧにおいてチャネル選択部３７は、図１３に示す第１選択サブルーチンによって、全チャネルＣＨ１〜ＣＨＮの中から通信に使用するチャネルを選択する。オペレーションＣＧにおいて第１選択サブルーチンが実行される場合には、全チャネルが第１選択サブルーチンの対象のチャネルとなる。
【００９７】
オペレーションＣＧでは、ノード装置５がゲートウエイ装置６を認識できるチャネルが１つもない場合であっても、隣接ノード数が出来るだけ閾値Ｍに近いチャネルが選択される。このため、ネットワークの状態の変化によってゲートウエイ装置６が認識可能になった場合には、その後、ゲートウエイ装置６までの経路が安定することが期待される。
【００９８】
続いて、図１０のオペレーションＡＨにて行われる他のチャネル選択処理について説明する。図１４及び図１５は、チャネル選択処理の第２例の説明図である。図１４及び図１５に示すチャネル選択処理は、上述の＜２−２．チャネルの選択処理の第２例＞に対応する。なお、他の実施態様においては、下記のオペレーションＥＡ〜ＥＩ及びオペレーションＦＡ〜ＦＣはステップであってよい。
【００９９】
オペレーションＥＡ及びＥＢの処理は、図１２のオペレーションＣＡ及びＣＢと同様である。オペレーションＥＣにおいてチャネル選択部３７は、オペレーションＥＢで特定されるチャネルが少なくとも１つあるか否かを判定する。特定されるチャネルが１つもない場合（オペレーションＥＣ：Ｙ）には、処理はオペレーションＥＤへ進む。特定されるチャネルが少なくとも１つある場合（オペレーションＥＣ：Ｎ）には、処理はオペレーションＥＥへ進む。
【０１００】
オペレーションＥＤの処理は、図１２に示すオペレーションＣＧの処理と同様である。オペレーションＥＥにおいてチャネル選択部３７は、オペレーションＥＢで特定されたチャネルの全てにおいて、オペレーションＥＡで特定された隣接ノード数が、所定の閾値Ｍを超えるか否かを判定する。隣接ノード数が閾値Ｍを超えない場合（オペレーションＥＥ：Ｎ）には、処理はオペレーションＥＦへ進む。隣接ノード数が閾値Ｍを超える場合（オペレーションＥＥ：Ｙ）には、処理はオペレーションＥＩへ進む。
【０１０１】
オペレーションＥＦにおいてチャネル選択部３７は、オペレーションＥＢで特定されたチャネルであって隣接ノード数が閾値Ｍ以下であるチャネルのうちオペレーションＥＡで特定された隣接ノード数が最多かつ同数のチャネルが複数あるか否かを判断する。隣接ノード数が最多のチャネルが一つしかない場合（オペレーションＥＦ：Ｎ）には、処理はオペレーションＥＧへ進む。隣接ノード数が最多かつ同数のチャネルが複数ある場合（オペレーションＥＦ：Ｙ）には、処理はオペレーションＥＨへ進む。
【０１０２】
オペレーションＥＧにおいてチャネル選択部３７は、隣接ノード数が最多のチャネルを通信に使用するチャネルとして選択する。オペレーションＥＨにおいてチャネル選択部３７は、図１５に示す第２選択サブルーチンによって、隣接ノード数が最多かつ同数のチャネルの中から、通信に使用するチャネルを選択する。
【０１０３】
図１５の説明において、第２選択サブルーチンによって通信に使用するチャネルが選択される母集団のチャネルの集合を「対象のチャネル」と表記する。例えば、オペレーションＥＨにて第２選択サブルーチンが実行される場合には、オペレーションＥＢによって特定されたチャネルのうち、オペレーションＥＡで特定された隣接ノード数が最多かつ同数のチャネルが対象のチャネルである。
【０１０４】
オペレーションＦＡにおいてチャネル選択部３７は、対象のチャネルのうちゲートウエイ装置６までのホップ数が最少かつ同数のチャネルが複数あるか否かを判断する。ゲートウエイ装置６までのホップ数が最少かつ同数のチャネルが複数ある場合（オペレーションＦＡ：Ｙ）には、処理はオペレーションＦＢへ進む。ゲートウエイ装置６までのホップ数が最少のチャネルが１つしかない場合（オペレーションＦＡ：Ｎ）には、処理はオペレーションＦＣへ進む。
【０１０５】
オペレーションＦＢにおいてチャネル選択部３７は、対象のチャネルのうちゲートウエイ装置６までのホップ数が最少かつ同数のチャネルの中のいずれかのチャネルを、通信に使用するチャネルとして選択する。例えば、チャネル選択部３７は、チャネルの識別番号が最も若いチャネルを選んでよい。オペレーションＦＣにおいてチャネル選択部３７は、ホップ数が最少のチャネルを通信に使用するチャネルとして選択する。
【０１０６】
図１４を参照する。オペレーションＥＩにおいてチャネル選択部３７は、第２選択サブルーチンによって、オペレーションＥＢで特定されたチャネルの全ての中から、通信に使用するチャネルを選択する。オペレーションＥＩにて第２選択サブルーチンが実行される場合には、オペレーションＥＢによって特定されたチャネルの全てが第２選択サブルーチンの対象のチャネルとなる。
【０１０７】
本実施の形態によれば、ノード装置５は、無線アドホックネットワーク４へ制御パケットを送信することなくチャネル検索を行うことができる。このため、チャネル検索処理は、無線アドホックネットワーク４の無線リソースを消費しない。
【０１０８】
本実施の形態によれば、ノード装置５は、できるだけ閾値Ｍに近い数の隣接ノードが検出されるチャネルを選択することができる。閾値Ｍを適切に設定することにより、ノード装置５は、より安定的にゲートウエイ装置への経路が確立されるチャネルを選択することができる。また、隣接ノード数の算出にあたり、所定の通信状態の隣接ノードのみを対象とすることにより、より安定したチャネルを選択することが可能となる。
【０１０９】
また、本実施の形態によれば、ノード装置５は、ゲートウエイ装置６までのホップ数がより少ないチャネルを選択することができる。このため、ノード装置５は、より安定的にゲートウエイ装置への経路が確立されるチャネルを選択することができ、また伝送遅延を少なくすることが可能となる。
【０１１０】
＜３．第２の実施の形態＞
続いて他の実施の形態について説明する。第２の実施の形態では、チャネル変更部３５がチャネルを変更する際に、隣接ノードからのパケットの受信を待つための期間と、ゲートウエイ装置６からフラッディングパケットの受信を待つための期間に、異なる長さの待機時間を使用する。
【０１１１】
チャネル変更部３５のチャネル切換処理では、隣接ノードからのパケットの送信周期及びゲートウエイ装置６からのフラッディングパケットの送信周期の経過までチャネル切換を行わないことでこれらのパケットをより確実に受信することができる。無線アドホックネットワーク４では、ノード装置５がパケットを送信する周期に比べて、ゲートウエイ装置６がフラッディングパケットを送信する周期の方が長い場合がある。
【０１１２】
しかし、ゲートウエイ装置６により使用されていないチャネルを使用するアドホックネットワークが形成されている可能性は少ない。したがって、あるチャネルの選択中に隣接ノードからの受信パケットがなければ、そのチャネルを使用するゲートウエイ装置６が存在しない可能性が高い。
【０１１３】
そこで、本実施の形態では、チャネル変更部３５は、ノード装置５による定期パケットの送信周期が満了するまで、隣接ノードからのパケット受信を待つ。ノード装置５の送信周期が満了するまでの間に隣接ノードからパケット受信がなかった場合、チャネル変更部３５は、受信に使用するチャネルを次のチャネルに切り換える。ノード装置５の送信周期が満了するまでの間に隣接ノードからパケット受信があった場合、チャネル変更部３５は、フラッディングパケットの送信周期の満了までチャネル切換時期を延長する。
【０１１４】
図１６は、ノード装置５の第２構成例を示す図である。図４に示す構成要素と同一の構成要素については同一の参照符号を付する。同一の参照符号が付された構成要素の動作は特に説明しない限り同じである。また、図１６に示す構成要素やその機能を他の実施例が備えていてもよい。
【０１１５】
チャネル変更部３５は、切換期間設定部３８を備える。切換期間設定部３８は、チャネル変更部３５がチャネルを切り換えるチャネル切換期間を以下の通りに設定する。
【０１１６】
まず、チャネル変更部３５がチャネルを切り換えた直後には、切換期間設定部３８は、チャネル切換期間を期間Ｔ２に設定する。チャネル切換期間Ｔ２は、ノード装置５が定期パケットを送信する周期以上の長さであってよい。例えば、定期パケットは、ハローパケットのような経路制御パケットであってよい。ある実施例では、チャネル切換期間Ｔ２は１２０秒に設定される。
【０１１７】
チャネル切換期間Ｔ２を満了する前に隣接ノードからのパケット受信があった場合には、切換期間設定部３８は、チャネル切換期間Ｔ２満了後にチャネル切換期間Ｔ３を設定する。チャネル切換期間Ｔ３は、ゲートウエイ装置６がフラッディングパケットを送信する周期以上の長さであってよい。ある実施例では、チャネル切り換え期間Ｔ３は、例えば１２分に設定される。したがって、隣接ノードからのパケット受信があった場合のチャネル切換期間の合計は１４分間となる。
【０１１８】
一方で、チャネル切換期間Ｔ２を満了する前に隣接ノードからのパケット受信がなかった場合には、チャネル変更部３５は、チャネル切換期間Ｔ２満了後にチャネルを切り換える。したがって、隣接ノードからのパケット受信がない場合のチャネル切換期間は２分間となる。
【０１１９】
以下、本実施の形態のノード装置５のチャネル検索処理について説明する。図１７は、ノード装置５の処理の第２例の説明図である。なお、他の実施態様においては、下記のオペレーションＧＡ〜ＧＫはステップであってよい。
【０１２０】
オペレーションＧＡ及びＧＢの処理は、図１０のオペレーションＡＡ及びＡＢの処理と同様である。オペレーションＧＣにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをチャネルＣＨｉへ切り替える。この際に、切換期間設定部３８は、チャネル切換期間を期間Ｔ２に設定する。
【０１２１】
オペレーションＧＤの処理は、図１０のオペレーションＡＤと同様である。オペレーションＧＥにおいてチャネル変更部３５は、チャネル切換期間Ｔ２が経過したか否かを判断する。チャネル切換期間Ｔ２が経過しない場合（オペレーションＧＥ：Ｎ）には、処理はオペレーションＧＤへ戻る。チャネル切換期間Ｔ２が経過した場合（オペレーションＧＥ：Ｙ）には、処理はオペレーションＧＦへ進む。
【０１２２】
オペレーションＧＦにおいて切換期間設定部３８は、チャネル切換期間Ｔ２の間に隣接ノードが検出されたか否かを判断する。隣接ノードが検出された場合（オペレーションＧＦ：Ｙ）には、切換期間設定部３８は、チャネル切換期間を期間Ｔ３に設定する。その後処理は、オペレーションＧＧへ進む。隣接ノードが検出された場合（オペレーションＧＦ：Ｙ）には、オペレーションＧＧ及びＧＨは実行されず、処理はオペレーションＧＩへ進む。
【０１２３】
オペレーションＧＧの処理は、オペレーションＧＤの処理と同様である。オペレーションＧＨにおいてチャネル変更部３５は、チャネル切換期間Ｔ３が経過したか否かを判断する。チャネル切換期間Ｔ３が経過しない場合（オペレーションＧＨ：Ｎ）には、処理はオペレーションＧＧへ戻る。チャネル切換期間Ｔ３が経過した場合（オペレーションＧＨ：Ｙ）には、処理はオペレーションＧＩへ進む。オペレーションＧＩ〜ＧＫの処理は、図１０のオペレーションＡＦからＡＨと同様である。
【０１２４】
次に、図１７に示す処理においてチャネル変更部３５により行われるチャネル切換について説明する。図１８は、図１７の処理におけるチャネル切換の説明図である。なお、他の実施態様においては、下記のオペレーションＨＡ〜ＨＨはステップであってよい。ノード装置５ｘ及びノード装置５ｋ及び５ｎの用語の用法及びノード装置５ｋ及び５ｎ及びゲートウエイ装置６が使用するチャネルは図１１を参照して行った上記説明の場合と同様である。
【０１２５】
オペレーションＨＡにおいてノード装置５ｘの認識可否判断部３４は、ノード装置５ｘの孤立を検出する。オペレーションＨＢにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをＣＨ１へ切り換える。
【０１２６】
チャネル切換期間Ｔ２の満了前に、オペレーションＨＣにおいてノード装置５ｘは、隣接ノード５ｋからパケットを受信する。このためノード装置５ｘは、チャネル切換期間を期間Ｔ３だけ延長する。その後、オペレーションＨＤにおいてノード装置５ｘは、ゲートウエイ装置６からフラッディングパケットを受信する。
【０１２７】
チャネル切換期間Ｔ３が満了した後、オペレーションＨＥにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをＣＨ２へ切り換える。オペレーションＨＥに続くチャネル切換期間Ｔ２の間には、隣接ノードからのパケットの受信はない。この結果、チャネル切換期間Ｔ２が満了した後、オペレーションＨＦにおいてチャネル変更部３５は、通信部３０がパケットの受信に使用するチャネルをＣＨ３へ切り換える。
【０１２８】
チャネル切換期間Ｔ２の満了前に、オペレーションＨＧにおいてノード装置５ｘは、隣接ノード５ｎからパケットを受信する。このためノード装置５ｘは、チャネル切換期間を期間Ｔ３だけ延長する。チャネル切換期間Ｔ３が満了した後、オペレーションＢＩにおいて、チャネル選択部３７は、無線アドホックネットワーク４における通信に使用するチャネルを選択する。
【０１２９】
本実施の形態によれば、受信チャネルを切り換えながら、各チャネルにおける隣接ノードからのパケットとゲートウエイ装置６からのフラッディングパケットを受信する際に、チャネル切換周期の平均長を短縮することができる。このため、ノード装置５がチャネル検索処理を行う時間を短縮することができる。
【０１３０】
＜４．第３の実施の形態＞
続いて他の実施の形態について説明する。ノード装置５の孤立には２つの態様が考えられる。いま、この２つの態様をそれぞれ「単独孤立」及び「集団孤立」と表記する。単独孤立は、ノード装置５は隣接ノードを１つも認識できない結果、ゲートウエイ装置６も認識できない状態である。集団孤立は、ノード装置５は隣接ノードを認識しているが、ノード装置５及び隣接ノードのいずれもゲートウエイ装置６を認識できない状態である。
【０１３１】
図１９の（Ａ）は、集団孤立の状態の説明図である。無線アドホックネットワーク４において、ノード装置５ａ〜５ｃはチャネルＣＨ１を使用するグループ１１を形成し、ノード装置５ｄ〜５ｇはチャネルＣＨ２を使用するグループ１２を形成する。また、ノード装置５ｈ及び５ｉはチャネルＣＨ３を使用するグループ１３を形成する。
【０１３２】
図１９の（Ａ）の例では、各グループ１１〜１３のノード装置がそれぞれゲートウエイ装置６ａ〜６ｃを認識していたが、ゲートウエイ装置６ｂの故障によってグループ１２のノード装置５ｄ〜５ｇがゲートウエイ装置を認識できなくなった場合を想定する。ゲートウエイ装置６ｂの故障の直後では、ノード装置５ｄ〜５ｇが同じチャネルを使用しているために、ノード装置５ｄ〜５ｇ同士は互いを認識することができる。このため、ノード装置５ｄ〜５ｇ同士は互いを認識できるが、ゲートウエイ装置を認識できない集団孤立の状態が発生する。
【０１３３】
図１９の（Ｂ）は、単独孤立の状態の説明図である。無線アドホックネットワーク４において、ノード装置５ａ〜５ｅはチャネルＣＨ１を使用するグループ１１を形成し、ノード装置５ｇ〜５ｉはチャネルＣＨ３を使用するグループ１３を形成する。チャネルＣＨ２を使用するノード装置５ｆは、グループ１１及びグループ１３のいずれのノード装置５も認識できず、また認識可能なゲートウエイ装置６も存在しない。
【０１３４】
集団孤立状態にある場合、互いに認識可能であるノード装置５のグループのうちいずれかがゲートウエイ装置６を認識することで、グループ全体のノード装置５がゲートウエイ装置６を認識できるようになる。したがって集団孤立状態にある場合には、ノード装置５は、現在使用中のチャネルを継続して使用しグループを維持した方が、より早くゲートウエイ装置６との通信を復旧できる可能性がある。そこで、本実施の形態では、集団孤立状態になった場合には、ノード装置５はチャネル検索をすぐに始めずに所定の待機時間が経過した後に開始する。
【０１３５】
図２０は、ノード装置５の第３構成例を示す図である。図４に示す構成要素と同一の構成要素については同一の参照符号を付する。同一の参照符号が付された構成要素の動作は特に説明しない限り同じである。また、図２０に示す構成要素やその機能を他の実施例が備えていてもよい。
【０１３６】
チャネル変更部３５は、抑止部３９を備える。抑止部３９は、隣接ノード検出部３３が隣接ノードを検出しているか否かを判断する。認識可否判断部３４が現在のチャネルでいずれかのゲートウエイ装置６も認識できないと判断しても、隣接ノード検出部３３が隣接ノードを検出している場合には、抑止部３９は、チャネル変更部３５によるチャネルの切換処理を待機時間Ｔ４の間だけ抑止する。
【０１３７】
ある実施例において抑止部３９は、現在のチャネルでいずれかのゲートウエイ装置６が認識可能であった場合に、ゲートウエイ装置６を認識した旨の履歴を記憶部３６に記憶してよい。抑止部３９は、現在のチャネルでいずれかのゲートウエイ装置６も認識できない場合に、過去にゲートウエイ装置６を認識した旨の履歴があるか否かを判断する。過去にゲートウエイ装置６を認識した旨の履歴がない場合には、抑止部３９は、隣接ノードが検出されてもチャネル変更部３５によるチャネルの切換処理を抑止しない。過去にゲートウエイ装置６を認識したことがなければ、現在使用中のチャネルでゲートウエイ装置との通信が復旧する可能性が低いためである。
【０１３８】
以下、本実施の形態のノード装置５のチャネル検索処理について説明する。図２１は、ノード装置５の処理の第３例の説明図である。なお、他の実施態様においては、下記のオペレーションＩＡ〜ＩＬはステップであってよい。
【０１３９】
オペレーションＩＡの処理は図１０のオペレーションＡＡの処理と同様である。オペレーションＩＢにおいて抑止部３９は、隣接ノードが検出されるか否かを判断する。隣接ノードが検出される場合（オペレーションＩＢ：Ｙ）には、処理はオペレーションＩＣへ進む。隣接ノードが検出されない場合（オペレーションＩＢ：Ｙ）には、処理はオペレーションＩＦへ進む。
【０１４０】
オペレーションＩＣにおいて抑止部３９は、現在のチャネルでいずれかのゲートウエイ装置６を認識した履歴があるか否かを判断する。ゲートウエイ装置６を認識した履歴がある場合（オペレーションＩＣ：Ｙ）には、処理はオペレーションＩＤへ進む。ゲートウエイ装置６を認識した履歴がない場合（オペレーションＩＣ：Ｎ）には、処理はオペレーションＩＦへ進む。
【０１４１】
オペレーションＩＤにおいて抑止部３９は、待機時間Ｔ４が経過したか否かを判断する。抑止部３９は、待機時間Ｔ４が経過するまで（オペレーションＩＤ：Ｎ）、オペレーションＩＤを繰り返す。待機時間Ｔ４が経過した場合（オペレーションＩＤ：Ｙ）には、処理はオペレーションＩＥに進む。
【０１４２】
オペレーションＩＥにおいて認識可否判断部３４は、現在のチャネルでいずれかのゲートウエイ装置６を認識可能か否かを判断する。ゲートウエイ装置６が認識可能である場合（オペレーションＩＥ：Ｙ）には、処理は終了する。ゲートウエイ装置６が認識可能でない場合（オペレーションＩＥ：Ｎ）には、処理はオペレーションＩＦへ進む。オペレーションＩＦ〜ＩＬの処理は、図１０のオペレーションＡＢ〜ＡＨの処理と同様である。
【０１４３】
本実施の形態によれば、集団孤立状態になった場合に、そのまま現在のチャネルを使用し続けることによってゲートウエイ装置６を認識できるようになれば、チャネル検索を省略することができる。このため、本実施の形態によれば、ノード装置５が無駄なチャネル検索処理を行うことを回避することができる。
【０１４４】
＜５．第４の実施の形態＞
続いて他の実施の形態について説明する。上述の第１の実施の形態は、各チャネルにおけるゲートウエイ装置６までのホップ数を、ゲートウエイ装置６から送信されるフラッディングパケットのホップ数５５から検出した。これに代えて、本実施の形態は、隣接ノードから受信する経路制御パケットから、ゲートウエイ装置６までのホップ数を検出する。
【０１４５】
経路制御パケットからゲートウエイ装置６までのホップ数を検出するために、各ノード装置は、図８を参照して説明した経路制御パケットを送信する。ある実施例では、各ノード装置５は、メッセージ部６０の付加情報６２として本ノード装置５からゲートウエイ装置６までのホップ数を指定する。隣接ノードから経路制御パケットを受信したノード装置５の隣接ノード検出部３３は、図２２に示す隣接ノード情報を記憶部３６に格納する。
【０１４６】
図２２は、隣接ノード情報４０の第２例を示す図である。本実施の形態における隣接ノード情報４０は、情報要素「ホップ数」を含む。なお、図６に示す隣接ノード情報４０の例と同様に、隣接ノード情報４０は、情報要素として「チャネル」及び「ノード識別子」を含んでいてよい。ある実施例において隣接ノード情報４０は、通信状態を示す情報要素を含んでいてよい。
【０１４７】
図２２の例では、ノード識別子「１」の隣接ノードを経由するホップ数は「４」であり、ノード識別子「１０９」の隣接ノードを経由するホップ数は「５」である。隣接ノード検出部３３は、メッセージ部６０の付加情報６２に格納されたホップ数に１を加えた値を情報要素「ホップ数」の値に設定する。
【０１４８】
他の実施例では、各ノード装置５は、メッセージ部６０の付加情報６２として本ノード装置５からゲートウエイ装置６までのホップ数に１を加えた値を指定してよい。この場合に経路制御パケットを受信したノード装置５の隣接ノード検出部３３は、メッセージ部６０の付加情報６２に格納されたホップ数の値をそのまま、情報要素「ホップ数」の値に設定する。
【０１４９】
１つのチャネルで複数の隣接ノードが検出される場合には、それぞれの隣接ノードを経由した場合のホップ数は互いに異なる。チャネル選択部３７は、各チャネルにおけるゲートウエイ装置６までのホップ数を特定する際に、所定の通信状態を満たす隣接ノードを経由するホップ数のうち、最短のホップ数を使用してよい。
【０１５０】
本実施例によれば、ゲートウエイ装置６から送信されるフラッディングパケットに代えて、隣接ノードからの経路制御パケットからゲートウエイ装置６までのホップ数を決定することが可能となる。
【０１５１】
ここに記載されている全ての例及び条件的な用語は、読者が、本発明と技術の進展のために発明者により与えられる概念とを理解する際の助けとなるように、教育的な目的を意図したものであり、具体的に記載されている上記の例及び条件、並びに本発明の優位性及び劣等性を示すことに関する本明細書における例の構成に限定されることなく解釈されるべきものである。本発明の実施例は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であると解すべきである。
【０１５２】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
無線アドホックネットワークを形成するノード装置であって、
前記無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置を認識できるか否かを判断する認識可否判断部と、
受信パケットの送信元の他のノード装置を隣接ノードとして検出する隣接ノード検出部と、
前記ゲートウエイ装置を認識できないと前記認識可否判断部が判断した場合に、前記無線アドホックネットワークで送信されるパケットの受信に使用するチャネルを、複数のチャネルの各々に順次切り換えるチャネル変更部と、
前記複数のチャネルの各々において前記隣接ノード検出部が検出した隣接ノード数に基づいて、前記無線アドホックネットワークでの通信に使用するチャネルを前記複数のチャネルの中から選択するチャネル選択部と、
を備えることを特徴とするノード装置。
【０１５３】
（付記２）
前記チャネル選択部は、前記受信に使用するチャネルを変更した後の第１期間内に隣接ノードが検出されない場合には、該第１期間経過後に前記受信に使用するチャネルを次のチャネルへ切り換え、該第１期間内に隣接ノードが検出される場合には、該第１期間よりも長い第２期間経過後に前記受信に使用するチャネルを次のチャネルへ切り換えることを特徴とする付記１に記載のノード装置。
【０１５４】
（付記３）
前記チャネル変更部は、隣接ノードが検出される場合に、ある待機期間が経過した後にチャネルの切り換えを開始することを特徴とする付記１又は２に記載のノード装置。
【０１５５】
（付記４）
前記ゲートウエイ装置が認識できると前記認識可否判断部が判断した履歴を記憶する認識履歴記憶部を備え、
前記履歴がない場合に、前記待機期間が経過する前に前記チャネルの切り換えを開始することを特徴とする付記３に記載のノード装置。
【０１５６】
（付記５）
前記認識可否判断部は、前記チャネル変更部がチャネルを変更する間に前記複数のチャネルの各々において前記ゲートウエイ装置を認識できるか否かを判断し、
前記チャネル選択部は、前記ゲートウエイ装置を認識可能なチャネルの中から前記使用チャネルを選択することを特徴とする付記１〜４のいずれか一項に記載のノード装置。
【０１５７】
（付記６）
前記認識可否判断部は、各前記チャネルにおいて認識可能なゲートウエイ装置までのホップ数と各前記チャネルにおいて検出された隣接ノード数に基づいて前記使用チャネルを選択することを特徴とする付記５に記載のノード装置。
【０１５８】
（付記７）
前記チャネル選択部は、各前記チャネルにおいて検出された隣接ノードのうち、該隣接ノードから送信されるパケットの受信状態が所定条件を満たすものの数に基づいて、前記使用チャネルを選択することを特徴とする付記１〜６に記載のノード装置。
【０１５９】
（付記８）
無線アドホックネットワークを形成する複数のノード装置と、該無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置とを備える通信システムであって、
前記ノード装置は、
前記ゲートウエイ装置を認識できるか否かを判断する認識可否判断部と、
受信パケットの送信元の他のノード装置を隣接ノードとして検出する隣接ノード検出部と、
前記ゲートウエイ装置を認識できないと前記認識可否判断部が判断した場合に、前記無線アドホックネットワークで送信されるパケットの受信に使用するチャネルを、複数のチャネルの各々に順次切り換えるチャネル変更部と、
前記複数のチャネルの各々において前記隣接ノード検出部が検出した隣接ノード数に基づいて、前記無線アドホックネットワークでの通信に使用するチャネルを前記複数のチャネルの中から選択するチャネル選択部と、
を備えることを特徴とする通信システム。
【０１６０】
（付記９）
無線アドホックネットワークにおいてノード装置により使用されるチャネルを選択するチャネル選択方法であって、
前記無線アドホックネットワークを他のネットワークへ接続するゲートウエイ装置を前記ノード装置が認識できるか否かを判断し、
前記ゲートウエイ装置を認識できない場合に、前記無線アドホックネットワークで送信されるパケットの受信に前記ノード装置が使用するチャネルを、複数のチャネルの各々に順次切り換え、
前記複数のチャネルの各々において、前記ノード装置にパケットを送信する隣接ノードを検出し、
前記複数のチャネルの各々において検出された隣接ノード数に基づいて、前記無線アドホックネットワークでの通信に使用するチャネルを前記複数のチャネルの中から選択する、ことを特徴とするチャネル選択方法。
【符号の説明】
【０１６１】
１    通信システム
２    サーバ装置
３    通信ネットワーク
４    無線アドホックネットワーク
５、５ａ〜５ｉ    ノード装置
６、６ａ〜６ｃ    ゲートウエイ装置
３３    隣接ノード検出部
３４    認識可否判断部
３５    チャネル変更部
３７    チャネル選択部
【図１】
0005687567.tif 000002
【図２】
0005687567.tif 000003
【図３】
0005687567.tif 000004
【図４】
0005687567.tif 000005
【図５】
0005687567.tif 000006
【図６】
0005687567.tif 000007
【図７】
0005687567.tif 000008
【図８】
0005687567.tif 000009
【図９】
0005687567.tif 000010
【図１０】
0005687567.tif 000011
【図１１】
0005687567.tif 000012
【図１２】
0005687567.tif 000013
【図１３】
0005687567.tif 000014
【図１４】
0005687567.tif 000015
【図１５】
0005687567.tif 000016
【図１６】
0005687567.tif 000017
【図１７】
0005687567.tif 000018
【図１８】
0005687567.tif 000019
【図１９】
0005687567.tif 000020
【図２０】
0005687567.tif 000021
【図２１】
0005687567.tif 000022
【図２２】
0005687567.tif 000023