(57)【特許請求の範囲】
【請求項１】
間欠動作するノード装置により形成されるツリー構造のアドホックネットワークを他のネットワークに接続するゲートウエイ装置であって、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、ルートとした前記いずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理と、
前記ゲートウエイ装置が、前記第１、第２および第３ツリーの各代表ノードに対する伝送時間算出用パケットの送信受信の結果に基づいて、間欠動作周期内の相互に異なる動作期間を決定する処理と、
第２ツリーと第３ツリーに対して前記決定された間欠動作周期内の相互に異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置へ通知する処理と、
を実行するプロセッサを備えることを特徴とするゲートウエイ装置。
【請求項２】
前記プロセッサは、
第１ツリーの子ノードのノード装置の全てからそれぞれ発信された所定数のパケットを第１ノード装置へ到達させるのにかかる第１伝送時間の測定値を取得する処理と、
第２ツリーのルートの第２ノード装置より下位のノード装置の全てからそれぞれ発信された所定数のパケットを第２ノード装置へ到達させるために、第２ツリーの子ノードのノード装置によるパケットの送信にかかる第２伝送時間が目標時間以内であるか否かを、第１伝送時間に応じて判断する処理と、
第２伝送時間が前記目標時間以内であるか否かに応じて、第１ツリーを第２ツリーと第３ツリーとに分割するか否かを判断する処理と、
を実行することを特徴とする請求項１に記載のゲートウエイ装置。
【請求項３】
前記プロセッサは、
第１ツリーの子ノードのノード装置の全てからそれぞれ発信される所定数のパケットを第１ノード装置に到達させるために、第１ツリーの子ノードのノード装置がパケットを送信する送信回数の合計である第１送信回数を見積もる処理と、
第２ノード装置より下位のノード装置の全てからそれぞれ発信される所定数のパケットを第２ノード装置に到達させるために、第２ツリーの子ノードのノード装置がパケットを送信する送信回数の合計である第２送信回数を見積もる処理と、
第１伝送時間、第１送信回数及び第２送信回数に応じて、第２伝送時間が前記目標時間以内であるか否かを判断する処理と、
を実行することを特徴とする請求項２に記載のゲートウエイ装置。
【請求項４】
ゲートウェイ装置をツリー構造の最上位に有するアドホックネットワークを形成するノード装置であって、
ある間欠動作周期で前記ノード装置を休止状態と動作状態とに切り替える制御回路と、
前記ノード装置をルートとする第１ツリーと、前記ノード装置の上位ノード装置を含む第２ツリーと、に対して、前記ゲートウエイ装置が前記第１および第２ツリーの各代表ノードに対する伝送時間算出用パケットの送信受信の結果に基づいて決定された間欠動作周期内の相互に異なる期間として割り当てられた動作期間を記憶する記憶装置と、
プロセッサと、を備え、
前記プロセッサは、第１ツリーに対して割り当てられた第１動作期間において受信したパケットを、第２ツリーに対して割り当てられた第２動作期間において送信する処理を実行することを特徴とするノード装置。
【請求項５】
前記制御回路は、前記ノード装置が第２動作期間にパケットを送信した場合に、パケット送信後の第２動作期間のいずれかの時期に、前記ノード装置を休止状態に遷移させる処理を実行することを特徴とする請求項４に記載のノード装置。
【請求項６】
間欠動作するノード装置と、該ノード装置により形成されるツリー構造のアドホックネットワークを他のネットワークに接続するゲートウエイ装置と、を含む通信システムであって、
前記ゲートウエイ装置は、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれる第１ノード装置を最上位ノードとする第２ツリーと、第１ノード装置の上位ノード装置を含む第３ツリーとに分割する処理と、
前記第１、第２および第３ツリーの各代表ノードに対する伝送時間算出用パケットの送信受信の結果に基づいて、間欠動作周期内の相互に異なる動作期間を決定する処理と、
第２ツリーと第３ツリーに対して前記決定された間欠動作周期内の相互に異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置へ通知する処理と、
を実行するプロセッサを備え、
前記ノード装置は、前記ゲートウエイ装置から通知される動作期間に従って前記ノード装置を休止状態と動作状態とに切り替える制御回路を備えることを特徴とする通信システム。
【請求項７】
ゲートウェイ装置をツリー構造の最上位に有するアドホックネットワークを形成するノード装置の間欠動作の動作期間の制御方法であって、
前記アドホックネットワークを他のネットワークに接続するゲートウエイ装置が備えるプロセッサに、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、ルートとした前記いずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理と、
前記ゲートウエイ装置が、前記第１、第２および第３ツリーの各代表ノードに対する伝送時間算出用パケットの送信受信の結果に基づいて、間欠動作周期内の相互に異なる動作期間を決定する処理と、
第２ツリーと第３ツリーに対して前記決定された間欠動作周期内の相互に異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置へ通知する処理と、
を実行させることを特徴とする動作期間の制御方法。
【請求項８】
間欠動作するノード装置により形成されるツリー構造のアドホックネットワークを他のネットワークに接続するゲートウエイ装置が備えるプロセッサに、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、ルートとした前記いずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理と、
前記第１、第２および第３ツリーの各代表ノードに対する伝送時間算出用パケットの送信受信の結果に基づいて、間欠動作周期内の相互に異なる動作期間を決定する処理と、
第２ツリーと第３ツリーに対して前記決定された間欠動作周期内の相互に異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置へ通知する処理と、
を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で論じられる実施態様は、アドホックネットワークを形成するノード装置の動作時間の間欠動作に関する。
【背景技術】
【０００２】
間欠動作を行うノード装置が形成するアドホックネットワークのプロトコルには、ノード装置同士の間で休止期間いわゆるスリープ期間を同期させるものがある。このようなプロトコルとしてSensor-MAC(S-MAC)が知られている。
【０００３】
なお関連する技術として、第１のビットマップ情報と、第２のビットマップ情報を含むトラフィック表示メッセージをブロードキャスティングする基地局を含む無線通信システムが知られている。第１のビットマップ情報は、複数のスリープモードＩＤをグループ化して得られたスリープモードＩＤグループに対してトラフィックが存在するか否かを示す。第２のビットマップ情報は、スリープモードＩＤグループに属する各スリープモードＩＤに対応するトラフィックが発生するか否かを示す。端末は、複数のスリープモードＩＤのうちいずれか一つが割り当てられ、トラフィック表示メッセージを受信すると第１のビットマップ情報を用いて自分が属するスリープモードＩＤグループにトラフィックが存在するか否かを判定する。端末は、自分が属するスリープモードＩＤグループにトラフィックが存在すると、第２のビットマップ情報を用いて自分に対するトラフィックが存在するか否かを判定する。
【０００４】
他の関連する技術として、無線通信網からタイミングを取得し、通信網からのタイミングに基づいて決定された指定の時間間隔内にピアツーピア通信のために他の無線装置からのフレームを監視するプロセッサを具備する無線装置が知られている。プロセッサは、指定の時間間隔間にスリープ状態を維持し、他の無線装置からのフレームを監視するため、各指定の時間間隔に先立ってウェイクアップする。
【０００５】
他の関連する技術として、経路構築手段と、データ収集手段と、経路再構築手段を備える基地局ノードが設けられた無線センサーネットワークが知られている。経路構築手段は、無線センサーノードの位置情報と、お互いの電波強度を基に安定した経路をツリー状に構築し、それをグループ分割する。データ収集手段は、グループ分割された無線センサーノード単位にデータ収集を行い、グループ親無線センサーノードからセンサーデータを取得する。無線センサーノード間の電波状態が悪くデ−タ収集に失敗した場合は、直ぐに経路再構築手段は経路再構築は行わず、Ｍ回を超えて失敗した場合は、経路再構築手段の処理に移る。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２００８−５０２２７５号公報
【特許文献２】特開２０１１−１５５６５３号公報
【特許文献３】特開２００７−２４３７９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ノード装置間で休止期間を同期させるネットワークでは、休止期間と次の休止期間の間の動作期間内にパケットの中継が完了することによって伝送遅れが低減される。しかし、ネットワークが大きくなるとパケットの伝送時間が増加するためにネットワーク規模の増大に従い休止期間が減少する。
【０００８】
開示の装置及び方法は、ノード装置間で休止期間を同期させるネットワークにおいて、ネットワーク規模の増大に従う休止期間の減少を低減することを目的とする。
【課題を解決するための手段】
【０００９】
装置の一観点によれば、間欠動作するノード装置により形成されるツリー構造のアドホックネットワークを他のネットワークに接続するゲートウエイ装置が与えられる。ゲートウエイ装置はプロセッサを備える。プロセッサは、ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、このいずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理を実行する。プロセッサは、第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、割り当てた動作期間を第１ツリーのノード装置へ通知する処理を実行する。
【００１０】
装置の他の一観点によれば、ツリー構造のアドホックネットワークを形成するノード装置が与えられる。ノード装置は、ある間欠動作周期でノード装置を休止状態と動作状態とに切り替える制御回路と、記憶装置と、プロセッサを備える。記憶装置には、このノード装置をルートとする第１ツリーと、ノード装置の上位ノード装置を含む第２ツリーと、に対して動作期間として割り当てられた間欠動作周期内の異なる期間が記憶される。プロセッサは、第１ツリーに対して割り当てられた第１動作期間において受信したパケットを、第２ツリーに対して割り当てられた第２動作期間において送信する処理を実行する。
【００１１】
装置の他の一観点によれば、間欠動作するノード装置と、このノード装置により形成されるツリー構造のアドホックネットワークを他のネットワークに接続するゲートウエイ装置を含む通信システムが与えられる。ゲートウエイ装置はプロセッサを備える。プロセッサは、ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、このいずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理を実行する。プロセッサは、第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、割り当てた動作期間を第１ツリーのノード装置へ通知する処理を実行する。ノード装置は、ゲートウエイ装置から通知される動作期間に従ってノード装置を休止状態と動作状態とに切り替える制御回路を備える。
【００１２】
方法の一観点によれば、ツリー構造のアドホックネットワークを形成するノード装置の間欠動作の動作期間の制御方法が与えられる。アドホックネットワークはプロセッサを備えるゲートウエイ装置により他のネットワークに接続される。制御方法は、プロセッサに、ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、このいずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理を実行させる。制御方法は、プロセッサに、第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、割り当てた動作期間を第１ツリーのノード装置へ通知する処理を実行させる。
【００１３】
コンピュータの一観点によれば、間欠動作するノード装置により形成されるツリー構造のアドホックネットワークを他のネットワークに接続するゲートウエイ装置が備えるプロセッサで動作するコンピュータプログラムが与えられる。コンピュータプログラムは、ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、このいずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理をプロセッサに実行させる。コンピュータプログラムは、第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、割り当てた動作期間を第１ツリーのノード装置へ通知する処理をプロセッサに実行させる。
【発明の効果】
【００１４】
本件開示の装置又は方法によれば、ノード装置間で休止期間を同期させるネットワークにおいて、ネットワーク規模の増大に従う休止期間の減少が低減する。
【図面の簡単な説明】
【００１５】
【図１】通信システムの構成例を示す図である。
【図２】無線アドホックネットワークの分割例の説明図である。
【図３】図２に示すグループＡ〜Ｃに対して指定された動作時間及び休止時間の説明図である。
【図４】ゲートウエイノード装置のハードウエア構成の一例を示す図である。
【図５】ゲートウエイノード装置の機能ブロック図の一例を示す図である。
【図６】無線アドホックネットワークの一例の図である。
【図７】トポロジ情報テーブルの一例の図である。
【図８】グループ分けの状態の第１の模式図である。
【図９】伝送時間の説明図である。
【図１０】測定制御パケットの一例の図である。
【図１１】（Ａ）及び（Ｂ）は、分割位置の説明図である。
【図１２】１回目の分割時のトポロジ情報テーブルの説明図である。
【図１３】グループ分けの状態の第２の模式図である。
【図１４】２回目の分割時のトポロジ情報テーブルの説明図である。
【図１５】グループ分けの状態の第３の模式図である。
【図１６】無線アドホックネットワークの分割結果の一例の説明図である。
【図１７】（Ａ）及び（Ｂ）はスケジュール情報テーブルの一例の図である。
【図１８】動作期間の制御動作の説明図である。
【図１９】ネットワーク分割動作の説明図である。
【図２０】伝送時間の測定動作の説明図である。
【図２１】分割位置決定動作の説明図である。
【図２２】センサーノード装置のハードウエア構成の一例を示す図である。
【図２３】センサーノード装置の機能ブロック図の一例を示す図である。
【発明を実施するための形態】
【００１６】
＜１．通信システムの全体構成の例＞
図１は、通信システムの構成例を示す図である。通信システム１は、無線アドホックネットワーク２と、通信ネットワーク３と、サーバ装置４とを備える。無線アドホックネットワーク２は、ゲートウエイノード装置５と、センサーノード装置６ａ〜６ｈ…とを含むノードによって形成されている。通信システム１は、例えば、センサーノード装置６ａ〜６ｈにて採取された電力、ガス及び水道などの検針データを、ゲートウエイノード装置５を経由して、サーバ装置４が収集するデータ収集システムであってよい。
【００１７】
なお、以下の説明及び添付する図面において、無線アドホックネットワークを単に「アドホックネットワーク」と表記することがある。また、以下の説明においてゲートウエイノード装置を「ゲートウエイ」と表記し、センサーノード装置を「ノード装置」と表記することがある。また添付する図面において、ゲートウエイノード装置を「ＧＷ」と表記し、センサーノード装置を「ＮＤ」と表記することがある。また、以下の説明において、ノード装置６ａ〜６ｈ…を総称して「ノード装置６」と表記することがある。
【００１８】
ゲートウエイ５及びノード装置６のそれぞれのパケット送信先が経路制御プロトコルによって決定されることにより、アドホックネットワーク２はツリー構造を有する。経路制御プロトコルは、例えばDSR(Dynamic Source Routing)、AODV(Ad Hoc On Demand Distance Vector Routing)等であってよい。また経路制御プロトコルは、OLSR(Optimized Link State Routing)やTBRPF(Topology Broadcast Based on Reverse-Path Forwarding)等であってもよい。
【００１９】
ノード装置６は、動作期間と休止期間とを一定の間欠動作周期Ｔで繰り返す間欠動作を行うことにより消費電力を節約する。以下、動作期間と休止期間の決定方法の概要を説明する。
【００２０】
＜２．動作期間の決定方法＞
動作期間と休止期間を決定する際に、ゲートウエイ５は、アドホックネットワーク２が所定の規模よりも大きいか否かを判断する。アドホックネットワーク２が所定の規模よりも大きい場合に、ゲートウエイ５はアドホックネットワーク２を複数の部分ツリーに分割する。以下の説明において、アドホックネットワーク２を分割して生成された部分ツリーをそれぞれ形成するノード装置６の集合を「グループ」と表記し、部分ツリーのルート、すなわち最上位のノードを「代表ノード」と表記することがある。グループのノード装置６のうち代表ノード以外のノード装置を「子ノード」と表記することがある。また、アドホックネットワーク２の分割以前は、アドホックネットワーク２の全体ツリーを形成するノード装置６ａ〜６ｈの集合も「グループ」と表記することがある。
【００２１】
図２は、アドホックネットワークの分割例を示す。アドホックネットワーク２は、グループＡ、Ｂ及びＣに分割される。グループＡは、ゲートウエイ５及びノード装置６ａ〜６ｃにより形成される。代表ノードはゲートウエイ５であり、ノード装置６ａ及び６ｂはゲートウエイ５に直接接続するゲートウエイ５の下位ノードであり、ノード装置６ｃはノード装置６ａに直接接続するノード装置６ａの下位ノードである。
【００２２】
グループＢは、ノード装置６ｃ及びノード装置６ｆ〜６ｈにより形成される。代表ノードはノード装置６ｃであり、ノード装置６ｆはノード装置６ｃに直接接続するノード装置６ｃの下位ノードであり、ノード装置６ｇ及び６ｈはノード装置６ｆに直接接続するノード装置６ｆの下位ノードである。グループＣは、ノード装置６ｂ、ノード装置６ｄ及びノード装置６ｅにより形成される。代表ノードはノード装置６ｂであり、ノード装置６ｄ及び６ｅはノード装置６ｂに直接接続するノード装置６ｂの下位ノードである。
【００２３】
次に、ゲートウエイ５は、各グループＡ、Ｂ及びＣに、間欠動作周期Ｔ内の異なる期間Ｔｍａ、Ｔｍｂ及びＴｍｃをそれぞれ動作期間として割り当てることにより、各グループＡ〜Ｃを形成するノードを交代に動作させる。図３は、図２に示すグループＡ〜Ｃに対して指定された動作時間Ｔｍａ〜Ｔｍｃの説明図である。時刻ｔ１からｔ５までに亘る間欠動作周期Ｔのうち、時刻ｔ１〜ｔ２、ｔ２〜ｔ３及びｔ３〜ｔ４の期間が、それぞれ動作時間Ｔｍｂ、Ｔｍｃ及びＴｍａに割り当てられている。グループＡの休止期間はｔ１〜ｔ３及びｔ４〜ｔ５であり、グループＢの休止期間はｔ２〜ｔ５であり、グループＣの休止期間はｔ１〜ｔ２及びｔ３〜ｔ５である。
【００２４】
このようにアドホックネットワーク２をグループＡ〜Ｃに分割することにより、各グループＡ〜Ｃのネットワーク規模はアドホックネットワーク２よりも小さくなる。そしてグループＡ〜Ｃのノードが交代で動作することにより、個々のグループで動作するノードの動作期間を減らすことができる。
【００２５】
ここで、１回の間欠動作周期Ｔにおいて、アドホックネットワーク２のルートのゲートウエイ５からより遠いグループから順により早い動作期間を割当ててよい。ゲートウエイ５と各グループとの距離は、ゲートウエイ５と各グループの代表ノードとの間のホップ数に応じて定めてよい。この場合、ゲートウエイ５からのホップ数が多い代表ノードのグループほど、ゲートウエイ５との距離が長くなる。
【００２６】
図２に示すグループでは、グループＡの代表ノードはゲートウエイ５自身でありゲートウエイ５からのホップ数は「０」である。一方、ゲートウエイ５からグループＢ及びＣの代表ノード６ｃ及び６ｂへのホップ数はそれぞれ「２」及び「１」である。このためゲートウエイ５は、図３に示すように、各グループＢ、Ｃ及びＡの順により早い動作期間Ｔｍｂ、Ｔｍｃ及びＴｍａを割り当てる。ゲートウエイ５からより遠いグループから順に動作すると、各グループの動作期間内にグループ内のノードからパケットを受信した代表ノードは、同じ間欠動作周期Ｔ内に上位グループの代表ノードに送信できる。このため、一回の間欠動作周期Ｔ内で、アドホックネットワーク２の末端ノードからゲートウエイ５までパケットを伝送することが可能となる。
【００２７】
＜３．ゲートウエイノード装置の実施例＞
＜３．１．ハードウエア構成例＞
続いて、アドホックネットワーク２の各ノードの実施例について説明する。図４は、ゲートウエイ５のハードウエア構成の一例を示す。ゲートウエイ５は、プロセッサ１０と、メモリ１１と、補助記憶装置１２と、無線通信回路１３と、ネットワークインタフェース回路１４を備える。以下の説明及び添付する図面において、ネットワークインタフェースを「ＮＩＦ」と表記することがある。なお、図２に示すハードウエア構成は、ゲートウエイ５を実現するハードウエア構成の例示の１つである。後述の「４．動作期間の制御動作」で説明される動作を実行するものであれば他のどのようなハードウエア構成が採用されてもよい。
【００２８】
プロセッサ１０は、補助記憶装置１２に記憶される制御プログラムを実行することにより、ゲートウエイ５を制御するための各動作や後述の動作期間の制御動作を実行する。補助記憶装置１２には、プロセッサ１０に動作を実行させる制御プログラムが記憶される。補助記憶装置１２は、不揮発性メモリや、読み出し専用メモリ（ROM: Read Only Memory）やハードディスクなどを記憶素子として含んでいてもよい。
【００２９】
メモリ１１には、プロセッサ１０が実行中のプログラムや、このプログラムによって一時的に使用されるデータが記憶される。メモリ１１は、ランダムアクセスメモリ（RAM: Random Access Memory）を含んでいてよい。無線通信回路１３は、ノード装置６との間の無線通信処理を行う。ＮＩＦ回路１４は、通信ネットワーク３との通信処理を行い、サーバ装置４との信号の送受を可能にする。
【００３０】
＜３．２．機能構成例＞
続いて上記のハードウエアにより実現されるゲートウエイ５の機能について説明する。図５は、ゲートウエイ５の機能ブロック図の一例を示す。ゲートウエイ５は、パケット送信部２０と、パケット受信部２１と、トポロジ情報生成部２２と、グループ通知部２３と、伝送時間取得部２４と、分割処理部２５と、スケジュール決定部２６と、スケジュール通知部２７を備える。また、ゲートウエイ５は、トポロジ情報テーブル２８と、スケジュール情報テーブル２９を備える。なお、図５は、以下の説明に関係する機能を中心として示している。ゲートウエイ５は、図示の構成要素以外の他の構成要素を含んでいてよい。
【００３１】
パケット送信部２０及びパケット受信部２１は、無線通信回路１３により実現される無線通信チャネルを経由して、ノード装置６へのパケットの送信処理とノード装置６から送信されたパケットの受信処理を行う。トポロジ情報生成部２２は、アドホックネットワーク２のネットワークトポロジを表すトポロジ情報を生成する。トポロジ情報生成部２２は、例えばTBRPFなどの経路制御プロトコルに従ってアドホックネットワーク２のトポロジ情報を生成してよい。他の経路制御プロトコルが使用される実施例では、トポロジ情報生成部２２は、例えば、各ノード装置６が生成した経路表を収集することによってアドホックネットワーク２のトポロジ情報を生成する。
【００３２】
トポロジ情報生成部２２は、アドホックネットワーク２のネットワークトポロジを表すトポロジ情報テーブル２８を生成する。図６は、以下の実施例の動作説明のために使用されるアドホックネットワーク２の一例の図である。アドホックネットワーク２は、ゲートウエイ５と、ノード装置６ａ〜６ｎによって形成される。ノード装置６ａ及び６ｂはゲートウエイ５に直接接続するゲートウエイ５の下位ノードである。ノード装置６ｃ及び６ｄはノード装置６ａに直接接続するノード装置６ａの下位ノードである。ノード装置６ｅ及び６ｆはノード装置６ｂに直接接続するノード装置６ｂの下位ノードである。
【００３３】
ノード装置６ｇ及び６ｈはノード装置６ｃに直接接続するノード装置６ｃの下位ノードである。ノード装置６ｉ及び６ｊはノード装置６ｄに直接接続するノード装置６ｄの下位ノードである。ノード装置６ｋはノード装置６ｅに直接接続するノード装置６ｅの下位ノードである。ノード装置６ｌ及び６ｍはノード装置６ｆに直接接続するノード装置６ｆの下位ノードである。ノード装置６ｎはノード装置６ｍに直接接続するノード装置６ｍの下位ノードである。
【００３４】
アドホックネットワーク２はツリー構造を有しているため、ゲートウエイ５から各ノード装置６ａ〜６ｎまでのそれぞれのホップ数は一意に定まる。以下の説明において、ゲートウエイ５から各ノード６装置ａ〜６ｎまでのホップ数を「レベル」と表記する。レベルは、ゲートウエイ５から各ノード装置６ａ〜６ｎまでの距離を表す指標となる。図６のツリー構造の例では、ゲートウエイ５のレベルは「０」であり、ノード装置６ａ及び６ｂのレベルは「１」であり、ノード装置６ｃ〜６ｆのレベルは「２」であり、ノード装置６ｇ〜６ｍのレベルは「３」であり、ノード装置６ｎのレベルは「４」である。
【００３５】
図７は、図６のアドホックネットワークに関するトポロジ情報テーブル２８の一例を示す。トポロジ情報テーブル２８は、情報要素「ノード」、「上位ノード」、「下位ノード」、「レベル」、「発信数」、「受信数」、「送信数」及び「グループ」を有する。情報要素「ノード」は、トポロジ情報テーブル２８の各行の対象ノードを示す。情報要素「上位ノード」は、対象ノードの上位ノードとなるゲートウエイ５又はノード装置６を示す。情報要素「下位ノード」は、対象ノードの下位ノードとなるノード装置６を示す。情報要素「レベル」は、対象ノードのレベルを示す。情報要素「レベル」は、対象ノードのレベルを示す。情報要素「グループ」は、対象ノードが属するグループを示す。情報要素「発信数」、「受信数」及び「送信数」の内容については後述する。
【００３６】
図７に示す例では、対象のノード装置６ａに関する第２行目は、ノード装置６ａの上位ノードがゲートウエイ５であり、下位ノードがノード装置６ｃ、６ｄであり、ノード装置６ａのレベルが「１」であり、ノード装置６ａが「グループＡ」に属することを示す。
【００３７】
グループ通知部２３は、ゲートウエイ５によって決定された各ノード装置６ａ〜６ｎの帰属グループを各ノード装置６ａ〜６ｎに通知する。アドホックネットワーク２の分割以前は、アドホックネットワーク２を形成する全てのノード装置６ａ〜６ｎが同じグループに属している。図７に示すトポロジ情報テーブル２８の例では、全ての対象ノードの情報要素「グループ」がグループＡを示し、全てのノード装置６ａ〜６ｎがグループＡに帰属することを示す。図８は、アドホックネットワーク２の全てのノード装置６ａ〜６ｎがグループＡに帰属している状態の模式図である。
【００３８】
図５を参照する。伝送時間取得部２４は、各グループ中の子ノードのノード装置６による発信パケットがそれぞれ所定数発生した場合に、全ての子ノードのノード装置６からの発信パケットが代表ノードに到達するまでにかかる伝送時間の測定値Ｔｍを取得する。
【００３９】
本明細書において用語「発信する」及び「発信」は、対象のノード装置６を発信源とするパケットを送信する動作を表す意図で使用され、他のノード装置６から受信したパケットを転送する動作を除く。本明細書において用語「送信する」は、対象のノード装置６による発信と、他のノード装置６から受信したパケットを対象のノード装置６が転送する動作を含む。
【００４０】
図９は伝送時間取得部２４が測定する伝送時間の説明図である。ノード装置６ａ、６ｃ、６ｄ及び６ｇ〜６ｊによって形成されるグループの伝送時間を測定する場合を想定する。このグループのツリー構造の代表ノードはノード装置６ａであり、子ノードのノード装置は、ノード装置６ｃ、６ｄ及び６ｇ〜６ｊである。いま、一回の間欠動作周期Ｔ内に発生するノード装置６ｃ、６ｄ、６ｇ〜６ｊの発信パケット数としてＰｃ、Ｐｄ、Ｐｇ〜Ｐｊが見込まれているとする。
【００４１】
これらのパケットをノード装置６ａまで伝送する際に、ノード装置６ｇ及び６ｈは、自機が発信するＰｇ及びＰｈのパケットを送信する。ノード装置６ｃは、Ｐｃ個の自機の発信パケットに加えて、ノード装置６ｇ及び６ｈの発信パケットを転送する。したがってノード装置６ｃのパケット発信数は、Ｐｃ＋Ｐｇ＋Ｐｈ個となる。同様に、ノード装置６ｄ、６ｉ及び６ｊのパケット発信数は、それぞれＰｄ＋Ｐｉ＋Ｐｊ個、Ｐｉ個及びＰｊ個となる。
【００４２】
ノード装置６ｃ、６ｄ、６ｇ〜６ｊは、複数のノード装置の送信信号が干渉し合わないようにパケットの送信スケジュールを相互に調整する。送信スケジュールを調整する通信手順として、例えばCSMA/CA（Carrier Sense Multiple Access/Collision Avoidance）が使用される。ノード装置６ｃ、６ｄ、６ｇ〜６ｊは、送信スケジュールを調整しながら、それぞれ、Ｐｃ＋Ｐｇ＋Ｐｈ個、Ｐｄ＋Ｐｉ＋Ｐｊ個、Ｐｇ個、Ｐｈ個、Ｐｉ個及びＰｊ個のパケットを送信する。測定される伝送時間は、これらノード装置６ｃ、６ｄ、６ｇ〜６ｊによる送信処理にかかる時間である。
【００４３】
ゲートウエイ５が代表ノードである場合には、伝送時間取得部２４は、伝送時間測定用の測定制御パケットをブロードキャスト送信することによって、ゲートウエイ５の帰属グループについて伝送時間を測定する。アドホックネットワーク２がまだ分割されていない状態では、伝送時間取得部２４は、ゲートウエイ５の下位の全てのノード装置６ａ〜６ｎから発信されるパケットがゲートウエイ５に到達するまでにかかる伝送時間を測定する。
【００４４】
図１０は、測定制御パケットの一例の図である。測定制御パケットは、情報要素「パケット種別」と「グループ」と「指定時刻」を示す。情報要素「パケット種別」は、測定制御パケットが伝送時間測定用の制御パケットであることを示す。情報要素「グループ」は、伝送時間の測定対象のグループを示す。情報要素「指定時刻」は、測定制御パケットを受信したノード装置６に、伝送時間測定用のテスト用パケットの送信処理の開始時期を指定する。
【００４５】
測定制御パケットを受信したノード装置６は、受信した測定制御パケットの情報要素「グループ」の値が、グループ通知部２３から通知されたグループと一致するか否かを判断する。測定制御パケットで通知されるグループが、グループ通知部２３から通知されたグループと同じ場合には、指定時刻が到来した時にテスト用パケットの送信処理を開始する。伝送時間取得部２４は、ノード装置６から到来する最後のテスト用パケットが到着したか否かを判断し、最後のパケットの到着時刻と指定時刻との差を伝送時間として決定する。
【００４６】
アドホックネットワーク２の分割後には、ゲートウエイ５の伝送時間取得部２４は、各グループの代表ノードに、測定制御パケットの送信、テスト用パケットの受信及び伝送時間の算出を実施させることにより帰属グループの伝送時間の測定値Ｔｍを取得してよい。各グループの代表ノードは、それぞれのグループの伝送時間を自主的に測定し、ゲートウエイ５の伝送時間取得部２４へ送信してよい。また、ゲートウエイ５の伝送時間取得部２４は、各グループの代表ノードに伝送時間の測定依頼パケットを送信し、各グループにおける伝送時間を代表ノードから送信させてもよい。
【００４７】
分割処理部２５は、あるグループにおける伝送時間の測定値Ｔｍが、間欠動作周期Ｔにおけるノード装置６の動作期間に応じて定めた所定の目標時間Ｔｔ以下でない場合にこのグループの分割処理を行う。以下、分割処理の対象となるグループを「対象グループ」と表記する。また、伝送時間取得部２４が取得した対象グループの伝送時間の測定値を第１伝送時間と表記することがある。
【００４８】
以下、分割処理における対象グループの分割位置の決定動作の一例を説明する。図１１の（Ａ）は、対象グループの一例を示す。対象グループは、ノード装置６ｂ、６ｅ、６ｆ、６ｋ〜６ｍを含む。対象グループの代表ノードはノード装置６ｂである。
【００４９】
いま、対象グループ内のいずれかのノードであるノード装置６ｆを「対象ノード」と表記する。対象ノードのノード装置６ｆよりも下位の対象グループ内の全てのノード装置６ｌ及び６ｍとノード装置６ｆで形成されるツリーを「部分ツリー」と表記する。ノード装置６ｌ及び６ｍは、ノード装置６ｆをルートとする部分ツリーの子ノードである。一回の間欠動作周期Ｔ内においてノード装置６ｌ〜６ｍに発生する発信パケット数としてＰｌ〜Ｐｍが見込まれていると想定する。
【００５０】
分割処理部２５は、ノード装置６ｆの下位のノード装置６ｌ〜６ｍのＰｌ〜Ｐｍ個の発信パケットがノード６ｆ装置に到達するために、部分ツリーの子ノードのノード装置６ｌ及び６ｍのパケット送信にかかる第２伝送時間が目標時間Ｔｔ以下となるかを判断する。例えばノード装置Ｐｌは、自機が発信するＰｌ個のパケットを送信する。ノード装置６ｍは、Ｐｍ個の自機の発信パケットを転送する。第２伝送時間は、これらノード装置６ｌ及び６ｍによる、Ｐｌ＋Ｐｍ個の送信にかかると見込まれる処理時間である。
【００５１】
第２伝送時間が目標時間Ｔｔ以下である場合に、分割処理部２５は、対象ノード６ｆを分割位置とすることができる。図１１の（Ｂ）は、対象ノードで分割された場合の対象グループの分割例を示す。対象ノード６ｆにおいて分割されると、対象グループは、対象ノード６ｆと部分ツリーの子ノード６ｌ及び６ｍで形成される第１グループと、対象グループのうち子ノード６ｌ及び６ｍ以外のノード装置６ｂ、６ｅ、６ｆ、６ｋを含む第２グループに分割される。
【００５２】
このような分割処理で生成される第１グループは、グループ内でパケットを伝送する時間が目標時間Ｔｔ以下となる規模となることが見込まれる。したがって、全グループ内で第２伝送時間が所与の目標時間Ｔｔ以下となるようにアドホックネットワーク２を分割することにより、各グループ内のパケット伝送が所望の目標時間Ｔｔ以下で完了することが期待できる。このため、間欠動作周期Ｔ毎のノード装置６の動作期間を所与の目標時間Ｔｔ以下とする条件を満たしつつ、各グループでパケット伝送が完了する前にノード装置６が休止することで伝送遅延が生じる事態を低減できる。
【００５３】
分割処理部２５は、伝送時間取得部２４により取得された第１伝送時間に基づいて、第２伝送時間が目標時間Ｔｔ以下となるか否かを判断する。分割処理部２５は、対象グループの子ノードの発信パケットを代表ノードに到達させるために、子ノードがパケットを送信する送信回数の合計である第１送信回数Ｓａを見積もる。
【００５４】
図１１の（Ａ）に示す対象グループの例では、第１送信回数Ｓａは、対象グループの子ノード６ｅ、６ｆ及び６ｋ〜６ｍの発信パケットを代表ノード６ｂに到達させるために、子ノード６ｅ、６ｆ及び６ｋ〜６ｍがパケットを送信する送信回数の合計である。
【００５５】
分割処理部２５は、第１伝送時間Ｔｍと目標時間Ｔｔの比（Ｔｔ／Ｔｍ）である伝送時間比Ｒｔｍを、第１送信回数Ｓａに乗じることにより、目標時間Ｔｔ内に送信可能なパケットの目標数Ｓｔを定める。
【００５６】
分割処理部２５は、対象グループに含まれるノード毎に第２送信回数Ｓｇを見積もる。第２送信回数Ｓｇは、対象のノードの下位ノード装置の全てから発信される所定数のパケットを対象のノードに到達させるために、対象グループに含まれる対象のノードの下位ノードがパケットを送信する回数の合計である。
【００５７】
図１１の（Ａ）に示す対象グループの例において対象のノードをノード装置６ｆとする。第２送信回数Ｓｇは、ノード装置６ｆの下位のノード装置６ｌ〜６ｍの発信パケットをノード装置６ｆへ到達させるために、対象グループに含まれるノード装置６ｆの下位ノード６ｌ及び６ｍがパケットを送信する回数である。
【００５８】
分割処理部２５は、第２送信回数Ｓｇが目標数Ｓｔ以下であるか否かを判断することにより、第２伝送時間が目標時間以下であるか否かを判断する。
【００５９】
以下、分割処理部２５による図６に示すネットワークの分割動作の例を説明する。図８に示す分割前のアドホックネットワーク２全体であるグループＡについて測定された第１伝送時間Ｔｍが「２８ミリ秒」であり、目標時間Ｔｔが「１２ミリ秒」であると想定する。第１送信回数Ｓａ及び第２送信回数Ｓｇの見積もり数は、図７に示すトポロジ情報テーブル２８に格納される。
【００６０】
情報要素「発信数」は、トポロジ情報テーブル２８のそれぞれの対象の行のノード装置６ａ〜６ｎにおいて一回の間欠動作周期Ｔ内に発生する発信パケット数の予定数が格納される。図７は全てのノード装置６ａ〜６ｎの発信パケット数が「１」である例を示すが、各ノード装置６ａ〜６ｎの発信パケット数として、実施形態に応じてノード装置６毎に異なる値が設定されてもよい。以下の情報要素「受信数」及び「送信数」が示すパケット数は、情報要素「発信数」に定めたパケット発信数をノード装置６ａ〜６ｎが発信する場合について見積もられる。
【００６１】
情報要素「受信数」は、対象行のノードが受信するパケット数を示す。受信数は、対象行のノードの下位ノードの発信パケット数の合計により計算される。例えば、ゲートウエイ５の受信数は、１４個の下位のノードの装置６ａ〜６ｎの発信パケット数の合計「１個」×１４＝「６個」となる。ノード装置６ａの受信数は、６個の下位のノード装置６ｃ、６ｄ及び６ｇ〜６ｊの発信パケット数の合計「１個」×６＝「６個」となる。
【００６２】
情報要素「送信数」は、対象行のノードよりも下位のノード装置の発信パケットを対象行のノードまで到達させるために、対象行のノードと同じグループで対象行のノードより下位のノード装置が送信するパケット数を示す。送信数は第２送信回数Ｓｇとなる。また、グループの代表ノードについて計算された送信数は第１送信回数Ｓａとして使用される。情報要素「送信数」は、対象行のノードの受信数と、対象行のノードと同じグループで下位のノード装置の受信数の合計によって計算される。
【００６３】
例えばゲートウエイ５の受信数は「１４」である。ゲートウエイ５と同じグループＡでゲートウエイ５より下位のノード装置６ａ〜６ｎの受信数は、それぞれ「１０」、「１１」、「２」、「２」、「１」、「４」、「０」、「０」、「０」、「０」、「０」、「１」及び「０」である。ゲートウエイ５の送信数はこれらの合計「３５」となる。ゲートウエイ５はグループＡの代表ノードであるため、第１送信回数Ｓａの値は「３５」になる。
【００６４】
また、ノード装置６ａの受信数は「６」であり、ノード装置６と同じグループＡでノード装置６よりも下位のノード装置６ｃ、６ｄ、６ｇ〜６ｊの受信数はそれぞれ「２」、「２」、「０」、「０」、「０」及び「０」である。このため、ノード装置６ａの送信数はこれらの合計「１０」である。子ノード６ａの第２送信回数Ｓｇは「１０」となる。
【００６５】
分割処理部２５は、伝送時間比Ｒｔｍ＝目標時間Ｔｔ（１２ミリ秒）／第１伝送時間Ｔｍ（２８ミリ秒）に第１送信回数Ｓａ（３５回）を乗じて目標数Ｓｔ＝１５回を得る。グループＡの代表ノードの情報要素「発信数」が示す第１送信回数Ｓａが「３５回」であり目標数Ｓｔ以下でない。このため、グループＡの第１伝送時間が目標時間Ｔｔ以下にならないと予想される。この場合に分割処理部２５は、グループＡの分割処理を行う。
【００６６】
分割処理部２５は、分割対象のグループＡの子ノードのうち、情報要素「送信数」すなわち第２送信回数Ｓｇが目標数Ｓｔよりも小さく最も大きいノード装置を、分割位置として選択する。図７のトポロジ情報テーブル２８の例では、送信数＝「１１」を有するノード装置６ｂが分割位置として選択される。分割処理部２５は、ノード装置６ｂと、グループＡに属する下位のノード装置６ｅ、６ｆ、６ｋ〜６ｎでグループＢを形成する。また、分割処理部２５は、グループＡからグループＢの子ノードのノード装置６ｅ、６ｆ、６ｋ〜６ｎを除いた、ゲートウエイ５並びにノード装置６ａ〜６ｄ及び６ｇ〜６ｊでグループＡ’を形成する。分割処理部２５は、トポロジ情報テーブル２８の情報要素「グループ」に分割結果を反映する。分割結果反映後のトポロジ情報テーブル２８を図１２に示す。また、分割後のアドホックネットワーク２を図１３に示す。
【００６７】
グループＢがグループＡ’から分離すると、グループＢの子ノードのノード装置６ｅ、６ｆ、６ｋ〜６ｎの発信パケットをグループＡ’の代表ノードに伝送するためのパケット伝送のうちグループＢ内での伝送はグループＢの動作期間中に行う。したがって、グループＡ’内のグループＢの上位ノードの第２送信回数Ｓｇは、グループＢの代表ノードの情報要素「送信数」の値だけ低減する。グループＢの代表ノードのノード装置６ｂの送信数は「１１回」であり、上位ノードであるゲートウエイ５の第２送信回数Ｓｇは、すなわち情報要素「送信数」の値は「３５回」から「１１回」を引いた「２４回」に更新される。分割処理部２５は、第２送信回数Ｓｇの更新結果をトポロジ情報テーブル２８に反映する。
【００６８】
この時点で、グループＡ’の代表ノードの発信数である第１送信回数Ｓａが「２４回」であり目標数Ｓｔ以下でない。これは、分割後のグループＡ’の第１伝送時間が目標時間Ｔｔ以下とならないことを意味する。この場合に分割処理部２５は、再度グループＡ’を分割する。
【００６９】
分割処理部２５は、図１３に示すグループＡ’の子ノードのうち、情報要素「送信数」が目標数Ｓｔよりも小さく最も大きいノード装置は、送信数＝「１０」を有するノード装置６ａである。分割処理部２５は、ノード装置６ａと、グループＡ’に属する下位のノード装置６ｃ、６ｄ、６ｇ〜６ｊでグループＣを形成する。また、分割処理部２５は、グループＡ’からグループＢの子ノードのノード装置６ｃ、６ｄ、６ｇ〜６ｊを除いた、ゲートウエイ５並びにノード装置６ａ及び６ｂでグループＡ’’を形成する。分割処理部２５は、トポロジ情報テーブル２８の情報要素「グループ」に分割結果を反映する。分割結果反映後のトポロジ情報テーブル２８を図１４に示す。また、分割後のアドホックネットワーク２を図１５に示す。
【００７０】
グループＣの分離により、ゲートウエイ５の第２送信回数Ｓｇは、グループＣの代表ノードのノード装置６ａの情報要素「送信数」の値「１０回」だけ低減する。したがって、ゲートウエイ５の情報要素「送信数」の値は「２４回」から「１０回」を引いた「１４回」に更新される。分割処理部２５は、第２送信回数Ｓｇの更新結果をトポロジ情報テーブル２８に反映する。
【００７１】
この時点で、グループＡ’’の代表ノードの第１送信回数Ｓａ「１４回」が目標数Ｓｔ以下となる。これは、分割後のグループＡ’’の第１伝送時間が目標時間Ｔｔ以下となると予想できることを意味する。また、グループＢについても、第２送信回数Ｓｇが目標数Ｓｔ以下となるように定められる。すなわち代表ノード６ｇの下位のノード装置の発信パケットを対象ノード６ｆに到達させるグループＢ内の伝送時間が目標時間Ｔｔ以下となることが期待できる。グループＣについても同様である。このため、全グループＡ’’〜Ｃにおいてグループ内の伝送時間が目標時間Ｔｔ以下であり、これらのグループにおいて間欠動作周期Ｔ毎のノード装置の動作期間を目標時間Ｔｔとしても、ノード装置の休止によるパケットの伝送遅延を生じないことが期待される。
【００７２】
グループ通知部２３は、分割処理部２５によりグループ分けされた各ノード装置６にそれぞれの帰属グループを通知する。伝送時間取得部２４は、分割処理後の各グループにおける伝送時間の測定値を取得する。分割処理部２５は、全てのグループにおける伝送時間の測定値が目標時間Ｔｔ以下であるか否かを判断し、伝送時間が目標時間Ｔｔ以下でないグループについて、上述の分割処理を繰り返す。
【００７３】
全グループにおける伝送時間の測定値が目標時間Ｔｔ以下となった場合に、スケジュール決定部２６は、各グループの動作期間と停止期間を決定する。スケジュール決定部２６は、各グループの動作期間と停止期間を示すスケジュール情報を格納するためのスケジュール情報テーブル２９を生成する。以下、図１６に示すアドホックネットワーク２の分割結果の例を参照して、スケジュール情報テーブル２９について説明する。
【００７４】
図１６に示す例において、アドホックネットワーク２は、グループＡ、Ｂ、Ｃ及びＤに分割される。グループＡは、ノード装置６ｃ、６ｇ及び６ｈにより形成される。代表ノードはノード装置６ｃであり、ノード装置６ｇ及び６ｇはノード装置６ｃに直接接続するノード装置６ｃの下位ノードである。グループＢは、ノード装置６ａ、６ｃ及び６ｄにより形成される。代表ノードはノード装置６ａであり、ノード装置６ｃ及び６ｄはノード装置６ａに直接接続するノード装置６ａの下位ノードである。
【００７５】
グループＣは、ノード装置６ｂ、６ｅ及び６ｆにより形成される。代表ノードはノード装置６ｂであり、ノード装置６ｅ及び６ｆはノード装置６ｂに直接接続するノード装置６ｂの下位ノードである。グループＤは、ゲートウエイ５、ノード装置６ａ及び６ｂにより形成される。代表ノードはゲートウエイ５であり、ノード装置６ａ及び６ｂはゲートウエイ５に直接接続するゲートウエイ５の下位ノードである。ゲートウエイ５のレベルは「０」であり、ノード装置６ａ及び６ｂのレベルは「１」であり、ノード装置６ｃ〜６ｆのレベルは「２」であり、ノード装置６ｇ及び６ｈのレベルは「３」である。
【００７６】
図１７の（Ａ）はスケジュール情報テーブル２９の一例を示す。スケジュール情報テーブル２９は、情報要素「順位」、「グループ」、「代表ノード」、「伝送時間」、「起動時刻」及び「休止時刻」を含む。情報要素「グループ」は、スケジュール情報テーブル２９の各行の対象グループを示す。情報要素「順位」は、１回の間欠動作周期Ｔにおいて対象グループに動作期間が割り当てられる順位を示す。情報要素「代表ノード」は、対象グループの代表ノードを示す。
【００７７】
情報要素「伝送時間」は、伝送時間取得部２４により取得された対象グループの伝送時間の測定値を示す。情報要素「起動時刻」及び「休止時刻」は、それぞれ各間欠動作周期Ｔの開始時刻に対する、動作期間と休止期間の相対的な開始時刻を示す。
【００７８】
スケジュール決定部２６は、ゲートウエイ５より遠いグループから順により早い動作期間を割当てる。図１６に示す例において、グループＡがゲートウエイ５から最も遠く、グループＢ及びＣが同順で２番目に遠く、グループＤがゲートウエイ５から最も近い。したがって、スケジュール決定部２６は、ゲートウエイ５から最も遠いグループＡの順位を最も早い第１位にし、グループＤの順位を最も遅い第４位にする。同順のグループＢ及びＣは、どちらを早い順位にしてもよい。
【００７９】
また、スケジュール決定部２６は、伝送時間取得部２４により取得された各グループの伝送時間の測定値をスケジュール情報テーブル２９に格納する。スケジュール決定部２６は、各グループの伝送時間の測定値に応じて各グループの動作期間長を定める。例えば、スケジュール決定部２６は、各グループの伝送時間の測定値をそれぞれの動作期間長としてよく、動作期間長を測定値に比例した長さとしてよい。
【００８０】
スケジュール決定部２６は、グループの順位と動作期間長に応じて、各グループの動作期間が異なるように起動時刻と休止時刻を決定する。スケジュール決定部２６は、決定した起動時刻と休止時刻をスケジュール情報テーブル２９に格納する。図１７の（Ｂ）は起動時刻と休止時刻の例を示す。
【００８１】
本例では、各グループの伝送時間の測定値をそれぞれの動作期間長とする。グループＡ、Ｃ、Ｂ及びＤの伝送時間の測定値は、それぞれ「１２ミリ秒」、「１２ミリ秒」、「８ミリ秒」及び「１４ミリ秒」である。グループＡのノード装置の動作期間は、間欠動作周期Ｔの開始時刻後の１２ミリ秒間に指定される。グループＣのノード装置の動作期間は、間欠動作周期Ｔの開始時刻後の１２ミリ秒後の１２ミリ秒間に指定される。グループＢのノード装置の動作期間は、間欠動作周期Ｔの開始時刻後の２４ミリ秒後の８ミリ秒間に指定される。グループＤのノード装置の動作期間は、間欠動作周期Ｔの開始時刻後の３２ミリ秒後の１４ミリ秒間に指定される。
【００８２】
スケジュール通知部２７は、スケジュール情報テーブル２９に格納されたスケジュール情報を各グループの代表ノードに通知する。スケジュール情報を受信した代表ノードは、帰属グループ内のノード装置６に、スケジュール情報を通知する。
【００８３】
＜４．動作期間の制御動作＞
続いて、アドホックネットワーク２におけるノード装置６の動作期間の制御動作について説明する。図１８は、アドホックネットワーク２における動作期間の制御の全体動作を示す。なお、図１８を参照して説明する一連の動作は複数の手順を含む方法と解釈してよい。この場合に「オペレーション」を「ステップ」と読み替えてもよい。図１９〜図２１を参照して説明する動作の場合も同様である。
【００８４】
オペレーションＡＡにおいてゲートウエイ５は、アドホックネットワーク２を複数のグループに分割する。オペレーションＡＢにおいてゲートウエイ５は、オペレーションＡＡで決定した各グループの動作期間を決定する。オペレーションＡＣにおいてゲートウエイ５は、各グループの動作期間を指定するスケジュール情報をノード装置６に通知する。オペレーションＡＤにおいてアドホックネットワーク２の運用が始まると、各ノード装置６は、ゲートウエイ５から通知されたスケジュール情報に従って、各間欠動作周期Ｔにおいて起動と休止を行う。
【００８５】
次に、図１９を参照して図１８のオペレーションＡＡのネットワーク分割動作を説明する。オペレーションＢＡにおいて伝送時間取得部２４は、アドホックネットワーク２全体の伝送時間の測定値Ｔｍを取得する。オペレーションＢＢにおいて分割処理部２５は、測定値Ｔｍが所定の目標時間Ｔｔ以下であるか否かを判断する。測定値Ｔｍが所定の目標時間Ｔｔ以下である場合（オペレーションＢＢ：Ｙ）に処理は終了する。測定値Ｔｍが所定の目標時間Ｔｔ以下でない場合（オペレーションＢＢ：Ｎ）に処理はオペレーションＢＣへ進む。
【００８６】
オペレーションＢＣにおいて分割処理部２５は、アドホックネットワーク２の分割位置を決定する。オペレーションＢＤにおいてグループ通知部２３は、分割位置でアドホックネットワーク２を分割した場合のノード装置６の帰属グループをノード装置６にブロードキャスト送信する。
【００８７】
オペレーションＢＥにおいて伝送時間取得部２４は、各グループにおける伝送時間の測定値Ｔｍを取得する。オペレーションＢＦにおいて分割処理部２５は、全てのグループにおいて測定値Ｔｍが目標時間Ｔｔ以下であるか否かを判断する。いずれかのグループにおいて測定値Ｔｍが目標時間Ｔｔ以下でない場合（オペレーションＢＦ：Ｎ）には、処理はオペレーションＢＣへ戻る。分割処理部２５は、測定値Ｔｍが目標時間Ｔｔ以下でないグループについて、再度オペレーションＢＣ〜ＢＦを繰り返す。全てのグループにおいて測定値Ｔｍが目標時間Ｔｔ以下である場合（オペレーションＢＦ：Ｙ）に処理は終了する。
【００８８】
次に、図２０を参照して図１９のオペレーションＢＡの伝送時間の測定動作を説明する。なお、オペレーションＢＥにおいてアドホックネットワーク分割後に各グループの伝送時間を測定する際には、以下に説明する動作は、各グループの代表ノードが実行してもよい。
【００８９】
オペレーションＣＡにおいて伝送時間取得部２４は、図１０に示す測定制御パケットをブロードキャスト送信する。オペレーションＣＢにおいて伝送時間取得部２４は、測定制御パケットの情報要素「グループ」で指定されたノード装置６から送信されるテスト用パケットを受信する。オペレーションＣＣにおいて伝送時間取得部２４は、最後のパケットを受信したか否かを判断する。最後のパケットを受信しない場合（オペレーションＣＣ：Ｎ）に処理はオペレーションＣＢへ戻る。最後のパケットを受信した場合（オペレーションＣＣ：Ｙ）に処理はオペレーションＣＤへ進む。オペレーションＣＤにおいて伝送時間取得部２４は、測定制御パケットの情報要素「指定時刻」の時刻から最後のパケット受信までの経過時刻を伝送時間として決定する。
【００９０】
次に、図２１を参照して図１９のオペレーションＢＣの分割位置決定動作を説明する。オペレーションＤＡにおいて分割処理部２５は、分割処理の対象グループの伝送時間の測定値Ｔｍと目標時間Ｔｔの伝送時間比Ｒｔｍ＝Ｔｔ／Ｔｍを決定する。オペレーションＤＢにおいて分割処理部２５は、対象グループに含まれる子ノード毎に第２送信回数Ｓｇを見積もる。オペレーションＤＣにおいて分割処理部２５は、対象グループについて第１送信回数Ｓａを見積もる。分割処理部２５は、第１送信回数Ｓａに伝送時間比Ｒｔｍを乗じて、目標時間Ｔｔ内に送信可能なパケットの目標数Ｓｔを定める。
【００９１】
オペレーションＤＤにおいて分割処理部２５は、目標数Ｓｔ以下で最大の第２送信回数Ｓｇが見積もられたノード装置Ｎｖを対象グループの分割位置として選択する。オペレーションＤＥにおいて分割処理部２５は、ノード装置Ｎｖについて見積もられた第２送信回数Ｓｇを、ノード装置Ｎｖの上位のノード装置について見積もられた第２送信回数Ｓｇから減算する。
【００９２】
オペレーションＤＦにおいて分割処理部２５は、対象ノードからノード装置Ｎｖの子ノードの除いた対象グループの残り部分のノード装置６の第２送信回数Ｓｇが全て目標値Ｓｔ以下であるか否かを判断する。第２送信回数Ｓｇが目標値Ｓｔ以下である場合（オペレーションＤＦ：Ｙ）に処理は終了する。第２送信回数Ｓｇが目標値Ｓｔ以下でない場合（オペレーションＤＦ：Ｎ）に処理はオペレーションＤＤへ戻る。
【００９３】
なお、パケット送信部２０、パケット受信部２１、トポロジ情報生成部２２、グループ通知部２３、伝送時間取得部２４、分割処理部２５、スケジュール決定部２６及びスケジュール通知部２７の動作は、図４に示すプロセッサ１０が行う。また、所定の目標時間Ｔｔの指定値、トポロジ情報テーブル２８及びスケジュール情報テーブル２９は、図４に示すメモリ１１又は補助記憶装置１２に格納される。
【００９４】
＜５．センサーノード装置の実施例＞
＜５．１．ハードウエア構成例＞
続いてノード装置６の実施例について説明する。図２２は、ノード装置６のハードウエア構成の一例を示す図である。ノード装置６は、プロセッサ４０と、メモリ４１と、無線通信回路４２と、センサ４３と、バッテリ４４、電源制御部４５と、タイマ４６を備える。なお、図２２に示すハードウエア構成は、ノード装置６を実現するハードウエア構成の例示の１つである。後述のノード装置６の動作を実行するものであれば他のどのようなハードウエア構成が採用されてもよい。
【００９５】
プロセッサ４０は、メモリ４１に記憶される制御プログラムを実行することにより、ノード装置６を制御するための各動作や後述の動作期間の制御動作を実行する。メモリ４１には、プロセッサ４０に動作を実行させる制御プログラムや、実行中のプログラムや、このプログラムによって一時的に使用されるデータが記憶される。メモリ１１は、不揮発性メモリや、読み出し専用メモリや、ランダムアクセスメモリを記憶素子として含んでいてよい。
【００９６】
無線通信回路４２は、ゲートウエイ５やノード装置６との間の無線通信処理を行う。センサ４３は、ノード装置６のセンシングの対象の物理量を検出する。バッテリ４４はノード装置６の駆動電力を供給する。図２２において破線は、バッテリ４４からノード装置６内の各部分に電源を供給する電源ラインを示す。電源制御部４５は、プロセッサ４０の指示に従って、バッテリ４４からノード装置６内の各部分への電源供給を制御する。プロセッサ４０が休止期間を指定して休止命令を電源制御部４５に与えると、電源制御部４５は、指定された休止期間の計時をタイマ４６にさせて、バッテリ４４からノード装置６内の各部分への電源供給を切断する。電源供給の切断によりノード装置６は休止状態となる。タイマ４６が計時を終了すると電源制御部４５は、ノード装置６内の各部分への電源供給を開始する。電源の供給によりノード装置６は動作状態となる。
【００９７】
＜５．２．機能構成例＞
図２３は、ノード装置６の機能ブロック図の一例を示す図である。ノード装置６は、パケット送信部５０と、パケット受信部５１と、パケット転送部５２と、スケジュール情報取得部５３と、グループ情報取得部５４と、スケジュール設定部５５と、伝送時間測定部５６と、スケジュール情報転送部５７を備える。
【００９８】
パケット送信部５０及びパケット受信部５１は、無線通信回路４２により実現される無線通信チャネルを経由して、ゲートウエイ５や他のノード装置６等の他のノードへのパケットの送信処理と他のノードから送信されたパケットの受信処理を行う。パケット転送部５２は、他のノードから受信したパケットの転送処理を行う。
【００９９】
スケジュール情報取得部５３は、ゲートウエイ５から送信されたスケジュール情報５８を取得し図２３のメモリ４１に格納する。グループ情報取得部５４は、ゲートウエイ５からブロードキャスト送信された情報５９を取得しメモリ４１に格納する。
【０１００】
スケジュール設定部５５は、スケジュール情報５８に応じて休止期間を定めて休止命令を電源制御部４５に与える。このとき、スケジュール設定部５５は、グループ情報５９に基づいてノード装置６が代表ノードであるか否かを判断する。スケジュール設定部５５は、ノード装置６が２つのグループに属している場合には、ノード装置６が代表ノードであると判断する。
【０１０１】
ノード装置６が代表ノードである場合には、スケジュール設定部５５は、これら２つのグループの動作期間において動作するように休止命令を生成する。また、スケジュール設定部５５は、これら２つのグループの上位のグループの休止期間にノード装置６がパケットを転送及び発信しないように、下位のグループの動作期間に送信禁止命令をパケット送信部５０に与える。これにより、パケット送信部５０は、下位のグループのノード装置６から受信したパケットを上位のグループの動作期間に送信する。
【０１０２】
ノード装置６が代表ノードである場合には、スケジュール設定部５５は、各間欠動作周期Ｔにおいてノード装置６からのパケット送信が完了したか否かを判断する。ノード装置６からのパケット送信が完了した場合には、上位グループの動作期間中に自機が送信するデータが無いため、上位のグループの休止期間の到来前に休止命令を電源制御部４５に与える。このように休止期間を延長することによりノード装置６の電力消費が更に低減される。
【０１０３】
伝送時間測定部５６は、ノード装置６が代表ノードである場合に、ノード装置６を代表ノードとするグループの子ノードの発信パケットがそれぞれ所定数発生した場合に、全子ノードの発信パケットがノード装置６に到達するのにかかる伝送時間Ｔｍを測定する。伝送時間Ｔｍの測定方法は、図２０を参照して説明した伝送時間取得部２４の測定方法と同様である。伝送時間測定部５６は、測定制御パケットを受信した場合、測定制御パケットの情報要素「指定時刻」で指定された時刻に伝送時間測定用のテスト用パケットを送信する。
【０１０４】
スケジュール情報転送部５７は、グループ情報５９に基づいてノード装置６が代表ノードであるか否かを判断する。ノード装置６が代表ノードである場合には、スケジュール情報転送部５７は、グループ情報取得部５４が取得したスケジュール情報を、同じグループの子ノードのノード装置６へ転送する。
【０１０５】
なお、パケット送信部５０、パケット受信部５１、パケット転送部５２、スケジュール情報取得部５３、グループ情報取得部５４と、スケジュール設定部５５、伝送時間測定部５６及びスケジュール情報転送部５７の動作は、図２３のプロセッサ４０が実行する。スケジュール情報５８及びグループ情報５９は、図２３のメモリ４１に格納される。
【０１０６】
＜６．実施例の効果＞
本実施例によれば、アドホックネットワークを複数のグループに分割し、同時に動作するノード装置６の数を低減することにより、１回の間欠動作周期Ｔにおける各ノード装置６の動作期間を短縮することができる。これによって、ノード装置６の消費電力を低減することができる。
【０１０７】
また本実施例によれば、各グループ内のパケットの伝送にかかる時間が見積もられ、この伝送時間が所定の目標時間内となるようにネットワークが分割される。また各グループは、ゲートウエイ５からより遠い順から交代で動作する。このため、ノード装置６の動作期間を所与の目標時間Ｔｔ以下とする条件を満たしつつ、各グループ内のパケット伝送完了前にノード装置６が休止することで伝送遅延が生じる事態を低減できる。
【０１０８】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
間欠動作するノード装置（６）により形成されるツリー構造のアドホックネットワーク（２）を他のネットワーク（３）に接続するゲートウエイ装置（５）であって、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置（６）をルートとする第２ツリーと、前記いずれかのノード装置（６）の上位ノード装置を含む第３ツリーとに分割する処理と、
第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置（６）へ通知する処理と、
を実行するプロセッサ（１０）を備えることを特徴とするゲートウエイ装置。（１、図４）
（付記２）
前記プロセッサ（１０）は、
第１ツリーの子ノードのノード装置の全てからそれぞれ発信された所定数のパケットを第１ノード装置へ到達させるのにかかる第１伝送時間の測定値を取得する処理と、
第２ツリーのルートの第２ノード装置より下位のノード装置の全てからそれぞれ発信された所定数のパケットを第２ノード装置へ到達させるために、第２ツリーの子ノードのノード装置によるパケットの送信にかかる第２伝送時間が目標時間以内であるか否かを、第１伝送時間に応じて判断する処理と、
第２伝送時間が前記目標時間以内であるか否かに応じて、第１ツリーを第２ツリーと第３ツリーとに分割するか否かを判断する処理と、
を実行することを特徴とする付記１に記載のゲートウエイ装置。（２）
（付記３）
前記プロセッサ（１０）は、
第１ツリーの子ノードのノード装置の全てからそれぞれ発信される所定数のパケットを第１ノード装置に到達させるために、第１ツリーの子ノードのノード装置がパケットを送信する送信回数の合計である第１送信回数を見積もる処理と、
第２ノード装置より下位のノード装置の全てからそれぞれ発信される所定数のパケットを第２ノード装置に到達させるために、第２ツリーの子ノードのノード装置がパケットを送信する送信回数の合計である第２送信回数を見積もる処理と、
第１伝送時間、第１送信回数及び第２送信回数に応じて、第２伝送時間が前記目標時間以内であるか否かを判断する処理と、
を実行することを特徴とする付記２に記載のゲートウエイ装置。（３）
（付記４）
前記プロセッサ（１０）は、第２ツリーに対して第３ツリーよりも早い動作期間を割り当てる付記１〜３のいずれか一項に記載のゲートウエイ装置。
（付記５）
前記プロセッサ（１０）は、第２伝送時間に応じて第２ツリーに割り当てる動作期間の長さを決定することを特徴とする付記１〜４のいずれか一項に記載のゲートウエイ装置。
（付記６）
ツリー構造のアドホックネットワーク（２）を形成するノード装置（６）であって、
ある間欠動作周期で前記ノード装置を休止状態と動作状態とに切り替える制御回路（４５）と、
前記ノード装置をルートとする第１ツリーと、前記ノード装置の上位ノード装置を含む第２ツリーと、に対して動作期間として割り当てられた前記間欠動作周期内の異なる期間を記憶する記憶装置（４１）と、
プロセッサ（４０）と、を備え、
前記プロセッサ（４０）は、第１ツリーに対して割り当てられた第１動作期間において受信したパケットを、第２ツリーに対して割り当てられた第２動作期間において送信する処理を実行することを特徴とするノード装置。（４、図２２）
（付記７）
前記制御回路（４５）は、前記ノード装置が第２動作期間にパケットを送信した場合に、パケット送信後の第２動作期間のいずれかの時期に、前記ノード装置を休止状態に遷移させる処理を実行することを特徴とする付記６に記載のノード装置。（５）
（付記８）
間欠動作するノード装置（６）と、該ノード装置（６）により形成されるツリー構造のアドホックネットワーク（２）を他のネットワーク（３）に接続するゲートウエイ装置（５）と、を含む通信システム（１）であって、
前記ゲートウエイ装置（５）は、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれる第１ノード装置を最上位ノードとする第２ツリーと、第１ノード装置の上位ノード装置を含む第３ツリーとに分割する処理と、
第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置へ通知する処理と、
を実行するプロセッサ（１０）を備え、
前記ノード装置は、前記ゲートウエイ装置（５）から通知される動作期間に従って前記ノード装置を休止状態と動作状態とに切り替える制御回路（４５）を備えることを特徴とする通信システム。（６、図１）
（付記９）
ツリー構造のアドホックネットワーク（２）を形成するノード装置の間欠動作の動作期間の制御方法であって、
前記アドホックネットワーク（２）を他のネットワーク（３）に接続するゲートウエイ装置（５）が備えるプロセッサ（１０）に、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、前記いずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理と、
第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置へ通知する処理と、
を実行させることを特徴とする動作期間の制御方法。（７）
（付記１０）
間欠動作するノード装置により形成されるツリー構造のアドホックネットワーク（２）を他のネットワーク（３）に接続するゲートウエイ装置（５）が備えるプロセッサ（１０）に、
前記ツリー構造に含まれる第１ツリーを、第１ツリーに含まれるいずれかのノード装置をルートとする第２ツリーと、前記いずれかのノード装置の上位ノード装置を含む第３ツリーとに分割する処理と、
第２ツリーと第３ツリーに対して間欠動作周期内の異なる期間を動作期間として割り当てる処理と、
割り当てた前記動作期間を第１ツリーのノード装置へ通知する処理と、
を実行させることを特徴とするコンピュータプログラム。（８）
【符号の説明】
【０１０９】
１    通信システム
２    アドホックネットワーク
５    ゲートウエイノード装置
６、６ａ〜６ｎ    センサーノード装置
【図１】
0005825131.tif 000002
【図２】
0005825131.tif 000003
【図３】
0005825131.tif 000004
【図４】
0005825131.tif 000005
【図５】
0005825131.tif 000006
【図６】
0005825131.tif 000007
【図７】
0005825131.tif 000008
【図８】
0005825131.tif 000009
【図９】
0005825131.tif 000010
【図１０】
0005825131.tif 000011
【図１１】
0005825131.tif 000012
【図１２】
0005825131.tif 000013
【図１３】
0005825131.tif 000014
【図１４】
0005825131.tif 000015
【図１５】
0005825131.tif 000016
【図１６】
0005825131.tif 000017
【図１７】
0005825131.tif 000018
【図１８】
0005825131.tif 000019
【図１９】
0005825131.tif 000020
【図２０】
0005825131.tif 000021
【図２１】
0005825131.tif 000022
【図２２】
0005825131.tif 000023
【図２３】
0005825131.tif 000024