通信装置、通信プログラム、ノード装置及びネットワーク
【課題】時刻同期を前提としないという条件のままオーバヘッドを削減し、複数チャネルを利用した通信を効率的に行なう。
【解決手段】本発明は、複数のチャネルで送受信する通信手段と、各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、上通信手段が使用するチャネルを切り替えるチャネル切り替え手段と、他ノードとの間で、チャネル切り替え情報を交換し、他ノードのチャネル切り替え情報を管理するチャネル切り替え情報管理手段と、送信信号を送信する際に、他ノードチャネル切り替え情報を参照して、検索したチャネルを用いて、所定の送信制御で上記送信信号を連続送信させる送信制御手段とを備える。
【解決手段】本発明は、複数のチャネルで送受信する通信手段と、各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、上通信手段が使用するチャネルを切り替えるチャネル切り替え手段と、他ノードとの間で、チャネル切り替え情報を交換し、他ノードのチャネル切り替え情報を管理するチャネル切り替え情報管理手段と、送信信号を送信する際に、他ノードチャネル切り替え情報を参照して、検索したチャネルを用いて、所定の送信制御で上記送信信号を連続送信させる送信制御手段とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信装置、通信プログラム、ノード装置及びネットワークに関するものである。本発明は、例えばセンサネットワーク等のように、空間に分散配置された多数のノード装置が、無線を利用して相互にデータ通信を行なう通信装置、通信プログラム、ノード装置及び複数のノード装置から構成されるネットワークに適用し得るものである。
【背景技術】
【0002】
近年、無線ネットワークにおいて、無線端末が複数チャネル(マルチチャネル)を利用して、異なるチャネルを用いた複数の通信を同時に実現できるようにすることが求められている。
【0003】
しかし、従来の無線ネットワークのチャネルアクセス方式として広く適用されているIEEE802.11 DCFに標準化技術は、1つの無線チャネルが近隣端末間で共有され、各無線端末がランダムにチャネルアクセスをして通信を行なうというものである。つまり、無線端末は、同時に1チャネル上でしかフレーム伝送等を行なうことができない。
【0004】
従来、無線端末が複数チャネルを利用して通信を行なう方式として、非特許文献1に記載される技術がある。
【0005】
非特許文献1に記載の方法は、1つの制御チャネルと、複数のデータチャネルとを備えることを前提とし、通常の受信待機状態では制御チャネルで受信待機を行なう。
【0006】
送信元ノードは、データ発生時に、どのチャネルでデータ通信を行なうかを含む制御パケットを制御チャネルで送信する。この制御パケットを受信した送信先ノードは、制御パケットを正常に受信した旨を送信元ノードに応答した後、指定されたデータチャネルへの切り替えを行なう。そして、応答を受信した送信元ノードは、データチャネルでデータ通信を行なう。
【0007】
また、通信が完了すると、送信元ノード及び送信先ノードは共に、再び制御チャネルに切り替え、制御チャネルでの受信待機を行なう。
【0008】
以上の手続きを行なうことにより、各ノードは複数チャネルを使用して通信を行なうことが可能となり、電波干渉が低減し、スループットの向上が期待できる。また、非特許文献1に記載の方法は、ノード間の時刻同期が必要ないという利点もある。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】谷川陽祐,戸出英樹,村上孝三,「空き資源の積極利用を指向したマルチチャネルMACプロトコル」,社団法人電子情報通信学会、2009,電子情報通信学会論文誌 B,Vol.J92−B,No.1,pp.196−206
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、非特許文献1の記載技術は、データ通信前に、通信に利用するデータチャネルを送信先ノードに通知する予約シーケンスが必要となる。また、この予約シーケンスは、パケット毎に発生するものである。
【0011】
そのため、予約シーケンスなしに直接データのみを通信する場合に比べて、増加するオーバヘッドが小さくないという問題がある。
【0012】
そこで、本発明は、時刻同期を前提としないという条件のまま、電波干渉の低減及びスループットの向上を図り、チャネル予約により生じ得るオーバヘッドを削減し、複数チャネルを利用した通信を、より効率的に行なえるようにする通信装置、通信プログラム、ノード装置及びネットワークを提供するものである。
【課題を解決するための手段】
【0013】
かかる課題を解決するために、第1の本発明は、(1)複数のチャネルを切り替えて信号の送受信を行なう通信手段と、(2)各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、通信手段が使用するチャネルを切り替えるチャネル切り替え手段と、(3)自ノードのチャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段と、(4)通信手段を通じて他ノードから取得した、他ノードのチャネル切り替え情報を管理するチャネル切り替え情報管理手段と、(5)送信信号を送信する際に、他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で送信信号を連続送信させる送信制御手段とを備えることを特徴とする通信装置である。
【0014】
第2の本発明は、コンピュータを、(1)複数のチャネルを切り替えて信号の送受信を行なう通信手段、(2)各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、通信手段が使用するチャネルを切り替えるチャネル切り替え手段、(3)自ノードのチャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段、(4)通信手段を通じて他ノードから取得した、他ノードのチャネル切り替え情報を管理するチャネル切り替え情報管理手段、(5)送信信号を送信する際に、他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で上送信信号を連続送信させる送信制御手段として機能させるものであることを特徴とする通信プログラムである。
【0015】
第3の本発明は、複数のノード装置を有して構成されるネットワークにおいて、各ノード装置が、第1の本発明の通信装置を有することを特徴とするノード装置である。
【0016】
第4の本発明は、第3の本発明のノードを複数有して構成されるネットワークである。
【発明の効果】
【0017】
本発明によれば、時刻同期を前提としないという条件のまま、電波干渉の低減及びスループットの向上を図り、チャネル予約により生じ得るオーバヘッドを削減し、複数チャネルを利用した通信を、より効率的にすることがでくきる。
【図面の簡単な説明】
【0018】
【図1】第1の実施形態の通信制御部の機能構成を示すブロック図である。
【図2】実施形態のノード装置の内部構成を示す内部構成図である。
【図3】第1の実施形態のノードの送信動作及び受信動作を説明する説明図である。
【図4】第1の実施形態の受信待機チャネルテーブルの構成例を示す構成図である。
【図5】第1の実施形態の通信処理の動作を説明する説明図である。
【図6】第1の実施形態の各ノードのパケット送信処理の動作を示すフローチャートである。
【図7】第1の実施形態のチャネルスケジュールの変更処理の動作を示すフローチャートである。
【図8】第2の実施形態のノードの通信制御部の機能構成を示すブロック図である。
【図9】第2の実施形態の通信処理の動作を説明する説明図である。
【図10】第2の実施形態のチャネルスケジュールの変更処理の動作を示すフローチャートである。
【図11】第3の実施形態のノードの通信制御部の機能構成を示すブロック図である。
【図12】第3の実施形態のRF状態切り替え管理部による受信動作を説明する説明図である。
【図13】第3の実施形態の各ノードのパケット送信処理の動作を示すフローチャートである。
【図14】第3の実施形態の通信処理を説明する説明図である。
【図15】第3の実施形態のチャネルスケジュールの決定方法を説明する説明図である。
【図16】第3の実施形態のチャネルスケジュールの決定処理を示すフローチャートである。
【発明を実施するための形態】
【0019】
(A)第1の実施形態
以下では、本発明の通信装置、通信プログラム、ノード装置及びネットワークの第1の実施形態について、図面を参照しながら詳細に説明する。
【0020】
第1の実施形態は、例えば、空間に分散配置された複数のノード装置から構成され、各ノード装置がアドホックモードによりデータ通信を行なうマルチホップネットワークに、本発明を適用する実施形態を例示する。
【0021】
(A−1)第1の実施形態の構成
図2は、第1の実施形態のノード装置(以下、単にノードともいう)の内部構成を示す内部構成図である。第1の実施形態において、マルチホップネットワークを構成する複数のノード装置は、いずれも同じ内部構成を備えるものとする。
【0022】
図2において、第1の実施形態のノード装置10は、制御部13、通信制御部11、無線インタフェイス部12を有する。
【0023】
制御部13は、ノード10全体の機能動作を司る処理部又は装置である。例えば、制御部13は、CPU、ROM、RAM、EEPROM、入出力インタフェイス部等を有して構成されるものである。
【0024】
通信制御部11は、ノード10の通信処理を制御する処理部又は装置である。通信制御部11は、例えば、CPU、ROM、RAM、EEPROM、入出力インタフェイス部等を有して構成されるものである。通信制御部11の機能は、例えば、CPUが、ROMに格納される処理プログラムを実行することにより実現される。
【0025】
通信制御部11によりなされる機能の詳細な説明は、後述するが、例えば、データパケットの送受信制御、チャネル制御、ルーティング制御等を行なうものである。
【0026】
無線インタフェイス部12は、アンテナ部と無線通信処理部とを有する無線通信手段である。無線インタフェイス部12は、例えば無線機を適用することができる。第1の実施形態では、ノード10は、1個の無線インタフェイス部12を備えるものとする。
【0027】
図1は、第1の実施形態の通信制御部11の機能構成を示すブロック図である。図1において、通信制御部11は、その機能として、チャネル切り替え管理部1、チャネル状態監視部2、送信制御手段3、近傍ノードチャネル管理部4、RF部5を有する。
【0028】
チャネル切り替え管理部1は、RF部5の受信待機チャネルを制御するものである。チャネル切り替え管理部1は、チャネルスケジュールを有しており、そのチャネルスケジュールに従って、RF部5のチャネルを切り替える。
【0029】
なお、受信チャネルスケジュールは、ブロードキャストにより隣接ノードに対して通知される。これにより、各ノード10は、自身のチャネルスケジュールを通知すると共に、近傍のノードのチャネルスケジュールを認識することができる。
【0030】
図3は、ノード10の送信動作及び受信動作を説明する説明図である。図3(B)が、チャネル切り替え管理部1による受信動作を示す説明図である。
【0031】
図3(B)において、チャネルスケジュールは、全体の周期をT(秒)として設定されており、この期間が繰り返し行なわれる。また、全体周期Tは、全てのノードにおいて同じ期間が設定されている。
【0032】
また、チャネルスケジュールは、全体周期Tのうち、ネットワークにおいて共通のチャネル値での共通チャネル受信待機期間(以下、チャネルAとも呼ぶ)と、各ノードが自由に設定したチャネル値での非共通チャネル受信待機期間(以下、チャネルBとも呼ぶ)とを有して構成される。
【0033】
例えば、図3(B)では、チャネルAの期間がT1(秒)と設定されており、チャネルBの期間がT2(秒)と設定されている場合を示す。なお、チャネルAの期間T1は、全てのノードにおいて同じ期間が設定されている。
【0034】
チャネルAは、ネットワークにおいて共通としているため、例えば、ルーティングに係る制御パケット等、全てのノードに送信する必要があるパケットを送信する場合に利用される。
【0035】
一方、チャネルBは、ノード間で使用するチャネル値が認識され整合していればよいため、例えば、ノード間でユニキャストによりパケットを送信する場合に利用される。
【0036】
このように、チャネルスケジュールには、チャネルAの期間長及び使用するチャネル値と、チャネルBの期間長及び使用するチャネル値とが設定されており、チャネル切り替え管理部1は、このチャネルスケジュールに従ってRF部5の使用するチャネル値を切り替える。
【0037】
また、チャネル切り替え管理部1は、チャネル状態監視部2からチャネル状態の通知を受け取り、このチャネル状態の通知に含まれるチャネルBで使用する変更後のチャネル値を用いて、チャネルスケジュールを変更するものである。
【0038】
チャネルスケジュールの変更があった場合、チャネル切り替え管理部1は、変更後のチャネルスケジュールをRF部5に与え、ブロードキャストにより隣接するノードに通知する。これにより、最新のチャネルスケジュールを各ノード10が認識することができる。
【0039】
なお、変更後のチャネルスケジュールをブロードキャスト送信する際、チャネルAを含むチャネルスケジュール全体を送信するようにしてもよいし、チャネルBで使用する変更後のチャネル値のみを送信するようにしてもよい。チャネルBの変更後のチャネル値のみを送信する場合、データサイズを小さくすることができるので帯域の低減を図ることができる。
【0040】
ここで、例えば、周波数ホッピング方式を利用した方式の場合で、スケジュールに従ったチャネル切り替えを行なうが、第1の実施形態のチャネル切り替え方式は、次の点で、周波数ホッピング方式と異なる。周波数ホッピング方式は、通信の際に、送信側と受信側との間で、そのスケジュールの同期を行なう必要がある。これに対して、第1の実施形態のチャネル切り替え方式は、チャネルスケジュールの同期を必要としない。すなわち、各ノードが、独自のタイミングで、チャネル値を切り替えることができる。
【0041】
チャネル状態監視部2は、チャネルBで使用したチャネルのチャネル状態情報をRF部5から受け取り、そのチャネル状態情報に基づいて当該チャネルのチャネル状態を監視するものである。
【0042】
ここで、チャネル状態監視部2によるチャネル状態監視方法は、使用しているチャネルの使用状態を確認することができれば、種々の方法を広く適用することができる。例えば、チャネル状態監視部2は、RF部5においてチャネルBで送信したパケットが送信失敗した頻度、パケット送信前にRF部5が行なうキャリアセンスによりキャリア有りの判定がなされ送信できなかった頻度等に基づいて、当該チャネルの混み具合を推定する。
【0043】
また、チャネル状態監視部2は、当該チャネルの使用状態の良否を判断し、必要がある場合には、チャネル値の変更をし、その変更後のチャネル値を含むチャネル状態の通知として、チャネル切り替え管理部1に通知するものである。
【0044】
例えば、チャネル状態監視部2は、チャネルBでの送信失敗頻度や、キャリアセンスキャリア有りとなって送信できなかった頻度等が閾値を超えた場合には、チャネルBで使用するチャネル値を変更する。このとき、チャネル状態監視部2は、使用可能なチャネルからランダムに1つ選択する方法や、変更先候補のチャネルをスキャンして使用状態をチェックし、空いているチャネルを変更後チャネルとして設定する。
【0045】
送信制御手段3は、上位装置から送信パケットが与えられると、近傍ノードチャネル管理部4が管理する近傍ノードのチャネルスケジュールを参照し、送信先ノードに設定されている受信待機チャネルのチャネル値で、当該パケットを送信するように制御するものである。
【0046】
また、送信制御手段3は、送信パケットの種別に応じて送信制御を行なうものである。例えば、送信制御手段3は、送信パケットがチャネルAで送信すべきものか又はチャネルBで送信すべきものか、更に、ブロードキャスト又はユニキャストで送信すべきものかを判断し、その判断結果に応じて送信動作を制御する。
【0047】
ここで、送信制御手段3による送信処理について図3を用いて説明する。図3(A)は、送信制御部3による送信動作を説明する説明図である。
【0048】
なお、図3(A)では、制御パケット(例えば、ルーティング制御パケットや、チャネルスケジュールを含む制御パケット等)をチャネルAで送信し、ユーザデータを含むデータパケットをチャネルBで送信する場合を例示する。
【0049】
また、制御パケットについては、ブロードキャスト又はユニキャストで送信することができ、データパケットについては、ユニキャストで送信する場合を例示する。
【0050】
このような送信制御の取り決めは、予めパケット種別に対応した設定情報を送信制御手段3が有するようにすることで実現できる。
【0051】
図3において、(A−1)は、送信パケットが、例えば制御パケット等のように、チャネルAで送信すべきものであって、宛先アドレスがブロードキャストアドレスである場合を示す。この場合、送信制御手段3は、自ノードがパケットを送信する送信スロットを有している。そして、送信制御手段3は、「T−T1+α(秒)」の期間、連続してパケットを送信するように制御する。
【0052】
ここで、「α」は、実験的に決定することができる固定値とする。また、「T−T1+α」という期間としたのは、送信ノードの連続送信が、受信ノードのチャネルAでの受信待機期間に必ず1回は重なるようにするためである。
【0053】
図3において、(A−2)は、送信パケットが、チャネルAで送信すべきものであって、宛先アドレスがユニキャストアドレスである場合を示す。この場合、送信制御手段3は、連続してパケットを送信し、受信ノードから応答パケットを受信すると連続送信をやめるようにする。このとき、送信制御手段3は、受信ノードから応答パケットを受信しない場合には、連続送信開始後、「T−T1+α(秒)」時にタイムアウトして、送信をやめる。すなわち、この場合は送信失敗となる。
【0054】
図3において、(A−3)は、送信パケットが、例えばユーザデータ等のようにチャネルBで送信すべきものである場合を示す。この場合も、送信制御手段3は、パケットを連続送信する。ただし、この場合、送信制御手段3は、連送信開始後、「T−T2+α(秒)」時にタイムアウトして、送信をやめる。
【0055】
図3に示すように、チャネルAの期間長とチャネルBの期間長とを比べると、チャネルAとチャネルBとの間に大きな差があるため、「T−T2+α」が、非常に小さい値となる場合がある。この場合に、送信制御手段3がチャネルBでパケットを送信する連続送信時間が1パケット送信する時間より短くなったとしても、送信制御手段3は1回ないし2回は必ずパケット送信するようにする。
【0056】
近傍ノードチャネル管理部4は、近傍ノードのチャネルスケジュールを管理するものである。
【0057】
近傍ノードチャネル管理部4は、受信待機チャネルテーブル41を有しており、近傍ノードからチャネルスケジュールを受信すると、受信待機チャネルテーブル41の内容を設定・更新する。
【0058】
図4は、受信待機チャネルテーブル41の構成例を示す構成図である。図4において、例えば、受信待機チャネルテーブル41は、近傍ノードを識別する識別情報(例えば、MACアドレス等のアドレス情報等)を格納する「ノード」、対応する近傍ノードがチャネルBで受信待機チャネルとして設定されているチャネル値を格納する「チャネルB」を項目として有する。例えば、図4において、「ノード:1」という識別情報のノードは、チャネルBで受信待機をするチャネル値が「チャネルB:ch1」であることを示している。
【0059】
なお、図4の例は、チャネルAが共通のチャネル値を用いるため、チャネルBのみのチャネル値を格納する場合を例示したが、もちろんチャネルAのチャネル値も格納するようにしてもよい。
【0060】
RF部5は、送信又は受信するチャネル値を切り替えて、送受信処理を行なうものである。RF部5は、送信制御手段3の制御に従って、パケットを送信する。
【0061】
また、RF部5は、チャネル切り替え管理部1の制御により、受信待機に使用するチャネル値を切り替えて、パケットを受信するものである。RF部5は、パケットを受信すると、その受信パケットを上位装置に与えるものである。また、RF部5は、例えば、CSMA/CA方式によるキャリアセンス機能、通信評価機能(例えば、送信失敗頻度等を求める機能など)を有しており、受信待機チャネルのチャネル状態情報をチャネル状態監視部2に与えるものである。
【0062】
(A−2)第1の実施形態の動作
次に、第1の実施形態の通信処理の動作について図面を参照しながら説明する。
【0063】
図5は、第1の実施形態の通信処理の動作を説明する説明図である。図5(A)において、丸はノード10を表しており、矢印は無線リンクを表している。
【0064】
初期状態のとき、全てのノード10のチャネルスケジュールは、説明便宜上、同じ内容が設定されているものとする。なお、各ノード10がそれぞれ異なるチャネルスケジュールを設定していてもよい。
【0065】
例えば、図5(A)に例示するように、チャネルスケジュールは、チャネルAにはチャネル「ch1」が設定されており、チャネルBにはチャネル「ch2」が設定されているものとする。
【0066】
また例えば、チャネルAの期間長T1はT1=2msが設定されており、チャネルBの期間長T2はT2=198msが設定されているものとする。チャネルA及びチャネルBの期間長の比率も全ノード10で共通とする。
【0067】
図6は、各ノードのパケット送信処理の動作を示すフローチャートである。
【0068】
まず、初期化時には、各ノード10は、他ノードのチャネルスケジュールが設定されていない。そのため、各ノード10は、自ノードのチャネルスケジュールをブロードキャストで送信する。
【0069】
図6において、自ノードのチャネルスケジュールを含む制御パケットは、チャネルAで送信すべきパケットである(S101)。また、当該制御パケットの宛先アドレスは、ブロードキャストアドレスであるから、送信制御手段3は、チャネルAのチャネル値「ch1」で、ブロードキャストにより最近接ノードに送信を行なう(S104)。
【0070】
このとき、送信制御手段3は、「T−T1+α」=198+α(ms)の期間だけ、当該制御パケットを連続送信する。これにより、受信ノードは、2msのチャネルAの受信待機タイミングで受信することができる。
【0071】
また、受信ノードでは、受信パケットに含まれる送信元ノードのチャネルスケジュールが、近傍ノードチャネル管理部4に与えられる。近傍ノードチャネル管理部4は、受信した送信元ノードのチャネルスケジュールに基づいて、受信待機チャネルテーブル41を作成する。
【0072】
次に、ネットワークを形成するために、各ノード10は、ルーティング制御パケットを送信する。
【0073】
なお、ルーティングのアルゴリズムは、特に限定されるものではなく種々のアルゴリズムを適用することができる。例えば、AODV(Ad hoc On-Demand Distance Vector)方式、OLSR(Optimized Link State Routing)方式、DSR(Dynamic Source Routing)方式等を適用することができる。
【0074】
図6において、ルーティング制御パケットがチャネルAを使用すべきものであるから(S101)、送信制御手段3は、チャネルAのチャネル値「ch1」で、ブロードキャスト又はユニキャストにより、最近接ノードに送信を行なう(S104)。
【0075】
ルーティングが完了すると、各ノード10は、ユーザデータを含むデータパケットを送信することができる。ここでは、データパケットをユニキャストで送信するものとする。
【0076】
図6において、ノード10がユーザデータのパケットを送信する際、送信制御手段3は、ユーザデータを含むデータパケットがチャネルBを使用すべきものであるから(S101)、S102に移行する。
【0077】
S102において、送信制御手段3は、データパケットの送信先ノードのアドレス情報を取得する。そして、送信制御手段3は、近傍ノードチャネル管理部4の受信待機チャネルテーブル41から、送信先ノードのアドレス情報に対応するチャネルBのチャネル値「ch2」を検索する(S102)。
【0078】
ここでは、全ノード10のチャネルBのチャネル値「ch2」である。従って、送信制御手段3は、チャネル「ch2」を使用して、データパケットを送信先ノードに向けて送信するようにする(S103)。このとき、送信制御手段3は、「T−T2+α(ms)」の期間、データパケットを連続送信するようにする。
【0079】
ここで、図5(A)に示すように、ネットワークにおいて干渉源31が発生したとする。図5(A)において、丸の中に斜線が記載されているものが、干渉源31の影響を受けているものとする。
【0080】
干渉源31に存在しているノードは、干渉源31の影響により、例えば、RF5によるデータパケットの送信失敗が発生したり、送信前のキャリアセンスでチャネル使用中と判定されたりする機会が増え、送信に失敗する可能性が高くなる。
【0081】
図7は、チャネルスケジュールの変更処理の動作を示すフローチャートである。
【0082】
干渉源31に存在するノードにおいて、チャネル状態監視部2は、RF部5からチャネル状態情報を取得し(S201)、取得したチャネル状態情報に基づいて、当該チャネルの使用状態の良否を判断する(S202)。
【0083】
そして、チャネル変更が必要であると判断すると、チャネル状態監視部2は、変更後のチャネル値を含むチャネル状態の通知を、チャネル切り替え管理部1に与える(S203)。
【0084】
チャネル切り替え管理部1は、チャネル状態監視部2から変更後のチャネル値を取得すると、そのチャネル値をチャネルBのチャネル値に設定して、チャネルスケジュールの変更を行なう(S204)。
【0085】
そして、チャネルスケジュールの変更がなされると、チャネル切り替え管理部1は、変更後のチャネルスケジュールを、チャネルAで、最近接ノードにブロードキャスト送信させる(S205)。
【0086】
この変更後のチャネルスケジュールのブロードキャスト送信の方法は、初期化時のチャネルスケジュールのブロードキャスト送信の方法と同じ処理でなされる。
【0087】
例えば、図5(A)に示す干渉源31に存在するノードは、図5(C)に示すように、チャネルBのチャネル値をチャネル「ch2」からチャネル「ch3」に変更したものとする。
【0088】
そして、変更後のチャネルスケジュールを受信したノードは、近傍ノードチャネル管理部4が、当該送信元ノードのチャネルBのチャネル値をチャネル「ch2」からチャネル「ch3」に更新する。以後、干渉源31に存在しているノード間のチャネルBのデータ通信は、チャネル「ch3」を使用して行なう。
【0089】
以上のように、干渉源31に存在するノードは、チャネルBのチャネル変更を行なう。その結果、図5(B)及び図5(C)に示すように、チャネルAは全ノードチャネル「ch1」を使用する。干渉源31に存在しないノードはチャネルBでチャネル「ch2」を使用し、干渉源31に存在するノードは、チャネルBでチャネル「ch3」を使用する。こにより、干渉の影響によって送信失敗となっていたものが解消される。
【0090】
上記の例では、チャネル状態監視部2が、適切なチャネルを選択する動作を説明した。しかし、チャネル状態監視部2がチャネル選択の動作をせず、ランダムにチャネルBのチャネル値を定期的に変更するようにしてもよい。すなわち、ノードが、チャネルBで同じチャネル値を使い続けないようにすることができれば、確率的に干渉を回避する効果が期待できる。
【0091】
(A−3)第1の実施形態の効果
以上のように、第1の実施形態によれば、受信チャネルを切り替えながら受信待機を行なうこと、送信先ノードの受信待機チャネルに応じて期間の異なる連続送信を行なうこと、そのチャネル切り替えのスケジュールを近傍ノード間で交換することで、従来マルチホップネットワークではネットワーク全体で1つのチャネルを用いて運用されているものを、複数のチャネルを用いた運用が可能になる。
【0092】
さらには、第1の実施形態によれば、非特許文献1に記載の方法のように、パケット送信毎にチャネル予約のシーケンスが必要になることもなくなるため、オーバヘッドが小さくなる。その結果、干渉源が発生した場合にも、干渉エリアのみのチャネル変更が可能になる。
【0093】
また、第1の実施形態によれば、ネットワーク内で大量のデータパケットが発生し、混雑によってパケットの送信失敗が発生したときにも、上述した干渉源の回避と同様の動作でチャネル変更が可能であるから、複数のチャネルにトラフィックを分散することができ、ネットワークのキャパシティを増加させることが可能になる。
【0094】
(B)第2の実施形態
次に、本発明の通信装置、通信プログラム、ノード装置及びネットワークの第2の実施形態について、図面を参照しながら説明する。
【0095】
第2の実施形態も、第1の実施形態と同様に、マルチホップネットワークに本発明を適用した場合の実施形態を例示する。
【0096】
(B−1)第2の実施形態の構成
第2の実施形態のノードの基本構成は、第1の実施形態のノード構成と同様であるから、第2の実施形態においても図2を用いる。
【0097】
第2の実施形態が第1の実施形態と異なる点は、ネットワークを形成するルーティング方式がツリールーティングプロトコルに従って行なうことと、ノード10の通信制御部11の機能構成である。
【0098】
また、第2の実施形態では、ツリー型ネットワークにおける、基準となるノード(以下、rootとも呼ぶ)が、複数の無線インタフェイスを有する点が、第1の実施形態と異なる。rootは、基準となるノードであればよく、例えば、ツリー型ネットワークの最上位ノードとしてもよいし、階層構造とするためにツリー型ネットワークの最上位から下流にあるノードとしてもよい。
【0099】
図8は、第2の実施形態のノード10の通信制御部12の機能構成を示すブロック図である。
【0100】
図8において、第2の実施形態の通信制御部12は、チャネル切り替え管理部1、送信制御部3、近傍ノードチャネル管理部4、RF部5、チャネル決定部6を有する。
【0101】
第2の実施形態の通信制御部12は、第1の実施形態のチャネル状態監視部2に代えてチャネル決定部6を有する。
【0102】
チャネル決定部6は、近傍ノードチャネル管理部4の受信待機チャネルテーブル41を参照して、親ノードがチャネルBで使用するチャネル値を、自ノードのチャネルBで使用するチャネル値として決定するものである。
【0103】
また、チャネル決定部6は、自ノードのチャネルBのチャネル値を決定すると、そのチャネル値をチャネル切り替え管理部1に通知するものである。
【0104】
ここで、「親ノード」とは、ツリー型ネットワークにおいて、自ノードよりも1ホップだけ、root側に近いノードをいう。すなわち、rootを最上位ノードとすると、親ノードは自ノードよりも1ホップだけ上位に位置するノードである。
【0105】
ツリールーティングプロトコルにより、ツリー型経路のネットワークを形成する際、親ノードからチャネルスケジュールが受信されると、近傍ノードチャネル管理部4は、その受信した親ノードのチャネルスケジュールに基づいて、受信待機チャネルテーブル41を作成する。
【0106】
チャネル決定部6は、作成された受信待機チャネルテーブル41を参照して、親ノードがチャネルBに設定したチャネル値を、自ノードのチャネルBのチャネル値として決定する。
【0107】
なお、rootと直接通信を行なうノードは、親ノードであるrootから直接チャネルスケジュールが指定されるようにして、チャネルスケジュールを決定するようにしてもよい。
【0108】
(B−2)第2の実施形態の動作
図9は、第2の実施形態の通信処理の動作を説明する説明図である。図10は、チャネルスケジュールの変更処理の動作を示すフローチャートである。
【0109】
図9(A)において、丸はノード10を表し、矢印は無線リンクを表す。初期状態のとき、全てのノード10のチャネルスケジュールは、説明便宜上、同じ内容が設定されているものとする。なお、各ノード10がそれぞれ異なるチャネルスケジュールを設定していてもよい。
【0110】
例えば、図9(A)に例示するように、チャネルスケジュールは、第1の実施形態と同様に、チャネルAにはチャネル「ch1」が設定されており、チャネルBにはチャネル「ch2」が設定されているものとする。
【0111】
また例えば、第1の実施形態と同様に、チャネルAの期間長T1はT1=2msが設定されており、チャネルBの期間長T2はT2=198msが設定されているものとする。チャネルA及びチャネルBの期間長の比率も全ノード10で共通とする。
【0112】
さらに、初期化したチャネルスケジュールの送信方法は、第1の実施形態と同様にしてブロードキャストにより最近接ノードに送信する。
【0113】
ネットワークを形成する際、ツリールーティングプロトコルに従って、ツリー型経路のネットワークを形成する。すなわち、ツリールーティングアルゴリズムの場合、ツリーの最上位に位置するrootに最も近いノードから経路が決定される。
【0114】
ここで、ツリールーティングプロトコルは、特に限定されるものではなく、ツリー型経路を形成するものであれば、例えば、AODV方式、DSR方式等を適用することができる。
【0115】
rootは、例えば2個の無線インタフェイスを有している。rootは、それぞれの無線インタフェイスについてのチャネルスケジュールを有している。
【0116】
ツリー型ネットワークを形成する際、rootは、ルーティング制御パケット(経路情報)を送信する。
【0117】
rootから1ホップ先のノードは、rootとの経路を形成する。このとき、当該1ホップ先のノードは、rootからチャネルスケジュールを受信する。
【0118】
当該1ホップ先のノードにおいて、rootからチャネルスケジュールが受信されると、近傍ノードチャネル管理部4が、受信したrootのチャネルスケジュールに基づいて、受信待機チャネルテーブル41を作成する。
【0119】
図10において、チャネル決定部6は、受信待機チャネルテーブル41を参照し(S301)、rootのチャネルBに設定されているチャネル値を、自ノードのチャネルBのチャネル値として決定する(S302)。
【0120】
チャネル決定部6が自ノードのチャネルBのチャネル値を決定すると、その決定したチャネル値を、チャネル切り替え管理部1に通知する(S303)。これにより、チャネル切り替え管理部1は、自ノードのチャネルBのチャネル値が親ノードのチャネル値となるように、自ノードのチャネルスケジュールを変更することができる(S304)。
【0121】
このとき、rootは、複数のノードに対して、複数のチャネルがそれぞれ異なるように割り当てる。また、rootは、複数のノードに対して割り当てた無線インタフェイスのチャネルを、それぞれの無線インタフェイスのチャネルBのチャネル値として設定する。
【0122】
例えば、図10(A)において、rootから1ホップ先のノードとして「ノード21」と「ノード22」があるとする。この場合、rootは、「ノード21」のチャネルBにチャネル「ch2」を割り当て、「ノード22」のチャネルBにチャネル「ch3」を割り当てる。そして、rootは、自身の複数の無線インタフェイスのそれぞれが使用するチャネルとして、チャネル「ch2」、チャネル「ch3」に設定する。
【0123】
次に、ノード21及びノード22は、経路情報と共に、自ノードのチャネルスケジュールを送信する(S305)。
【0124】
ノード21及びノード22から経路情報を受信した1ホップ下流に位置するノードは、受信した経路を作成する。このとき、当該1ホップ下流のノードでは、経路情報と共に送信されてきたチャネルスケジュールに基づいて、近傍ノードチャネル管理部4が、受信待機チャネルテーブル41を作成する。
【0125】
そして、図10に従って、チャネル決定部6が、親ノードのチャネルBのチャネル値を、自ノードのチャネルBのチャネル値として設定し、チャネル切り替え管理部1が、自ノードのチャネルスケジュールを変更する。
【0126】
以上の動作を繰り返すことにより、図9(A)に示すように、チャネルBをチャネル「ch2」とするツリー型ネットワーク(白丸のノードで構成されるネットワーク)と、チャネルBをチャネル「ch3」とするツリー型ネットワーク(丸の中に斜線が記載されているノードで構成されるネットワーク)とが形成される。つまり、ツリー型ネットワーク毎に、チャネルスケジュールが異なるネットワークが形成される。
【0127】
「ノード21」を上位ノードとするネットワークにおいて、ノードがチャネルBでパケット送信するとき、各ノードは、チャネル「ch2」を使用して送信する。一方、「ノード22」を上位ノードとするネットワークにおいて、ノードがチャネルBでパケット送信するとき、各ノードは、チャネル「ch3」を使用して送信する。その結果、2つのツリー型ネットワークの間で、電波干渉は生じないようにすることができる。
【0128】
また、rootは、複数の無線インタフェイスのそれぞれのチャネルBのチャネル値を、チャネル「ch2」、チャネル「ch3」に設定しているため、ノード21からのデータとノード22からのデータとを同時に受信することができる。
【0129】
以上の例では、rootが1個の場合を例示したが、複数のrootを備えるようにしてもよい。
【0130】
また、以上の例では、rootが最上位ノードである場合を例示したが、最上位の位置よりも下流の位置にあるノードをrootと同じ構成のノードとしてもよい。すなわち、階層的なツリー型ネットワークを構成できるようにしてもよい。これにより、サブツリーネットワーク毎にチャネルを変えるように動作させることも可能になる。
【0131】
また、ノード10の通信制御部が、第2の実施形態のチャネル決定部6と、第1の実施形態のチャネル状態監視部2とを備えるようにしてもよい。この場合、チャネル決定部6とチャネル状態監視部2のいずれかに優先順位を決定しておくことで、同時に運用することができる。
【0132】
(B−3)第2の実施形態の効果
以上のように、第2の実施形態によれば、第1の実施形態の効果に加えて、ネットワークのツリー毎に異なったチャネルを割り当てることが可能なる。その結果、複数のチャネルを使用することで干渉を低減させる効果が期待でき、特にツリー型のネットワークでは最もトラフィックが混雑しやすいroot周辺では、複数のチャネルで同時にrootと通信できるようになるため、ネットワークのキャパシティを増加させることが可能になる。
【0133】
(C)第3の実施形態
次に、本発明の通信装置、通信方法、ノード装置及びネットワークの第3の実施形態について、図面を参照しながら説明する。
【0134】
第3の実施形態も、第1の実施形態と同様に、マルチホップネットワークに本発明を適用した場合の実施形態を例示する。
【0135】
(C−1)第3の実施形態の構成
第3の実施形態のノードの基本構成は、第1の実施形態のノード構成と同様であるから、第3の実施形態においても図2を用いる。
【0136】
図11は、第3の実施形態のノード10の通信制御部11の機能構成を示すブロック図である。図11において、第3の実施形態の通信制御部11は、RF状態切り替え管理部7、RF状態スケジュール決定部8、送信制御手段3、パケット種別判定部9、RF部5を有する。
【0137】
第3の実施形態は、第1の実施形態のチャネル切り替え管理部1に代えてRF状態切り替え管理部7を有すること、チャネル状態監視部2に代えてRF状態スケジュール決定部8を有すること、近傍ノードチャネル管理部4に代えてパケット種別判定部9を有することが異なる。
【0138】
RF状態切り替え管理部7は、RF状態スケジュール決定部8により決定された受信待機のチャネルスケジュールに従って、RF部5のチャネルを切り替えるものである。また、RF状態切り替え管理部7は、RF状態スケジュール決定部8からのチャネルスケジュールに従って、RF5に対してスリープ制御を行なうものである。
【0139】
図12は、RF状態切り替え管理部7による受信動作を説明する説明図である。図12において、全体周期T(秒)のうち、期間長をT1(秒)とする上り通信用のチャネル値での受信待機期間(以下、チャネルAと呼ぶ)、期間長T2(秒)とする下り通信用のチャネル値での受信待機期間(以下、チャネルBと呼ぶ)とを有する。また、チャネルAとチャネルBとの間、並びに、チャネルBと次のチャネルAとの間に、RF状態切り替え管理部7は、スリープ期間S1、S2を設ける。
【0140】
RF状態スケジュール決定部8は、自ノードの親ノードの送受信タイミングに基づいて、自ノードのチャネルスケジュールを決定するものである。つまり、RF状態スケジュール決定部8は、チャネルAの受信待機時間、チャネルBの受信待機時間、チャネルAとチャネルBとの間、並びに、チャネルBと次のチャネルAとの間のスリープ時間を決定するものである。
【0141】
RF状態スケジュール決定部8は、ルーティング制御により経路情報を保持し、rootからの自ノードのホップ数や、親ノードの識別情報を認識しており、これらの情報と親ノードの送受信タイミングを用いて、チャネルスケジュールを決定する。
【0142】
RF状態スケジュール決定部8によるチャネルスケジュールの決定方法の詳細な説明は動作の項で詳細に行なうが、RF状態スケジュール決定部8は、ネットワークトポロジに応じてマルチホップでの遅延を改善するように、自ノードのチャネルスケジュールを決定する。
【0143】
例えば、RF状態スケジュール決定部8は、親ノードの受信待機のタイミングを基準にして、自ノードのチャネルAのタイミングを決定し、更にネットワークトポロジに合わせて、チャネルAとチャネルBとの間のスリープ時間を決定する方法を適用することができる。
【0144】
パケット種別判定部9は、送信するパケットが上りフレームか又は下りフレームかを判定して、その判定結果に基づく送信チャネルを送信制御手段3に通知するものである。
【0145】
上りフレームとは、ネットワークにおいてrootに近づく方向に転送されるものであり、下りフレームとは、rootから遠ざかる方向に転送されるものである。
【0146】
ここで、パケット種別判定部9による上り又は下りの判定方法は、特に限定されることなく広く適用される。例えば、フレームに上りフレーム又は下りフレームを識別する識別子を設け、パケット種別判定部9が、この識別子に基づいて判定する方法を適用できる。また別の方法としては、例えば、パケット種別判定部9が、ルーティング制御による経路情報を保持し、送信フレームの送信先アドレスに基づいて上りフレーム又は下りフレームを判定する方法を適用できる。例えば、パケット種別判定部9が、rootからのホップ数を近傍ノード毎に管理し、自ノードのrootからのホップ数と比較して、ホップ数が小さくなる方向の中継は上りフレーム、ホップ数が大きくなる方向の中継は下りと判断する方法がある。
【0147】
送信制御手段3は、パケット種別判定部9の判定結果に基づいて、送信パケットの送信動作を制御するものである。つまり、送信制御手段3は、上りパケットについてはチャネルAのチャネル値で送信し、下りパケットについてはチャネルBのチャネル値で送信する。
【0148】
なお、第3の実施形態では、ノード10が、第1の実施形態の近傍ノードチャネル管理部4を有していないが、近傍ノードのチャネルスケジュールを保持すために、近傍ノードチャネル管理部4を保持するようにしてもよい。
【0149】
(C−2)第3の実施形態の動作
次に、第3の実施形態の通信処理の動作について図面を参照しながら説明する。
【0150】
以下では、各ノード10の初期状態は、チャネルAにはチャネル「ch1」が全ノード共通で設定され、チャネルBにはチャネル「ch2」が全ノード共通で設定されているものとする。
【0151】
ネットワークを形成するために、各ノード10は、ルーティング制御パケットを送信する。なお、ルーティングのアルゴリズムは、特に限定されるものではなく種々のアルゴリズムを適用することができ、AODV方式、OLSR方式、DSR方式等を適用することができる。ルーティングが完了してネットワークが形成されると、各ノード10は、データパケットの通信を行なうことができる。
【0152】
図13は、各ノードのパケット送信処理の動作を示すフローチャートである。
【0153】
送信パケットが送信制御手段3に与えられると、パケット種別判定部9は、その送信パケットが、上りフレームか又は下りフレームかを判定する(S401)。パケット種別判定部9が、上りパケットと判定した場合にはチャネルAのチャネル「ch1」を送信制御手段3に通知し(S402)、下りパケットと判定した場合にはチャネルBのチャネル「ch2」を通知する(S403)。そして、送信制御手段3は、パケット種別判定部9から通知されたチャネル値を使用して、当該送信パケットを送信する(S404)。
【0154】
図14は、第3の実施形態の通信処理を説明する説明図である。図14では、ノード25からノード0(root)への上り通信が発生し、直後ノード0からノード24への下り通信が発生した例を示す。上り通信は点線矢印とし、下り通信は実線矢印とする。
【0155】
また、ノード25からの送信パケット(上りフレーム)は、ノード23→ノード21→ノード0と中継され、ノード0からの送信パケット(下りフレーム)は、ノード22→ノード24と中継されるものとする。
【0156】
図14において、ノード3からの送信パケット(上りフレーム)と、ノード0からの送信パケット(下りフレーム)とは、ほぼ同時に発生している。しかし、上りはチャネル「ch1」を使用し、下りはチャネル「ch2」を使用しており、上りと下りで異なったチャネルを使用しているため、上りと下りの送信が電波干渉を生じすることはない。そのため、ノード21は、ノード23からの上りパケットを受信でき、ノード22はノード0からの下りパケットを受信できる。
【0157】
図15は、第3の実施形態のチャネルスケジュールの決定方法を説明する説明図である。
【0158】
図15では、ノード22からの送信パケット(上りフレーム)は、ノード22→ノード21→ノード0と中継され、ノード0からの送信パケット(下りフレーム)は、ノード0→ノード21→ノード22と中継されるものとする。上り通信は点線矢印とし、下り通信は実線矢印とする。
【0159】
図16は、第3の実施形態のチャネルスケジュールの決定処理を示すフローチャートである。
【0160】
まず、図15に示すように、ノード22において上りフレームの送信パケットが発生すると、送信制御部3は、チャネルAのチャネル「ch1」を使用して、当該送信パケットを親ノードのノード21に送信する。
【0161】
ノード21においてチャネルAの受信待機になると、ノード21は、チャネル「ch1」を使用して送信されてきたパケットを受信する。そして、ノード21は、チャネル「ch1」を使用して応答パケットをノード22に返信する。
【0162】
ノード22は、チャネルAのチャネル「ch1」で、ノード21からの応答パケットを受信する(S501)。
【0163】
親ノードのノード21から応答パケットを受信すると、RF状態スケジュール決定部8は、正しくノード21に送信できた時刻を正常送信時刻t1とする(S502)。
【0164】
ここで、応答パケットを受信したタイミングは、親ノードのチャネルAの受信タイミングである。従って、RF状態スケジュール決定部8は、応答パケットの受信により、親ノードのチャネルAのタイミングを認識することができる。
【0165】
なお、図15では、正常送信時刻t1が、ノード22の最後に送信パケットを送信した時刻とする場合を例示しているが、応答パケットを受信した時刻を正常送信時刻t1とするようにしてもよい。
【0166】
RF状態スケジュール決定部8は、正常送信時刻t1を基準として、おおよそ周期T(秒)から所定時間だけ短い期間経過後に、自ノードのチャネルAを設定する(S503)。
【0167】
このとき、自ノードのチャネルAの受信待機のタイミングが、親ノードのチャネルAの受信待機のタイミングの直前となるように、RF状態スケジュール決定部8が、自ノードのチャネルAの受信待機のタイミングを設定する。
【0168】
つまり、自ノードのチャネルAのタイミングを、親ノードのチャネルAの直前となるから、自ノードが親ノードに上りパケットを送信するとき、自ノードは、短い連続送信で応答パケットを受信することが期待できる。その結果、送信時間を減らすことで帯域の負荷を下げることができる。
【0169】
従って、送信パケットの連続送信期間を短くすることができ、また、チャネルAの受信待機期間も短くする設定することができる。
【0170】
例えば、図15に示すように、RF状態スケジュール決定部8は、正常送信時刻t1を基準として、「T-β」時間経過後に、自ノードのチャネルAが開始するように設定する。なお、βは、実験的に設定することができる。
【0171】
次に、RF状態スケジュール決定部8は、正常送信時刻t1を基準としたまま、root(ノード0)からのホップ数に応じた時間をスリープ時間S1として求める(S504)。これにより、下りの連続送信時間及びチャネルBの受信待機期間も短くすることができる。
【0172】
図15において、ノード0のスリープ時間S1がX(秒)であるとする。また、ノード22のroot(ノード0)からのホップ数は2ホップであり、ノード21のroot(ノード0)からのホップ数は1ホップである。
【0173】
この場合、ノード22のRF状態スケジュール決定部8は、自ノードのスリープ時間S1が、「X+2Y(秒)」となるように設定する。また、例えば、ノード21のRF状態スケジュール決定部8は、自ノードのスリープ時間S1が、「X+Y(秒)」となるように設定する。すなわち、RF状態スケジュール決定部8は、「(固定値)+(ホップ数に比例した値)」をスリープ時間S1とする。
【0174】
そして、RF状態スケジュール決定部8は、スリープ時間S1経過後に、自ノードのチャネルBを設定する(S505)。
【0175】
さらに、RF状態スケジュール決定部8は、チャネルBの受信待機期間が経過後、周期Tの終了までの時間をスリープ時間T2とする(S506)。
【0176】
このようにすることで、図15に示すように、例えば、ノード22のスリープ時間S2が「Z(秒)」である場合、ノード21のスリープ時間S2は「Z+W(秒)」、ノード0のスリープ時間S2は「Z+2W」等のような関係が得られる。
【0177】
上記のようにすることで、下りパケットのチャネルBの受信待機のタイミングは、親ノードのチャネルBの直後になり、逆に上りパケットのチャネルAの受信待機のタイミングは、親ノードのチャネルAの直前となるように設定できる。
【0178】
こうしておくと、ノード0からノード22に下りパケットを送信し、そのエンドエンドの応答パケットをノード0に送信する場合に、各ノードが連続送信して送信先ノードの受信待機のタイミングを探す動作時間が短くできる。
【0179】
(C−3)第3の実施形態の効果
以上のように、第3の実施形態によれば、上り、下りで異なったチャネルで通信できるため、上りトラフィックと下りトラフィックでの衝突が発生しなくなるため、パケットロスを削減する効果が期待できる。
【0180】
また、第3の実施形態によれば、チャネルの切り替えに加えてノードのスリープも行なうために、省電力化が期待できる。
【0181】
さらに、第3の実施形態によれば、このRF状態スケジュールのスリープ時間S1をノードのrootからのホップ数にあわせて設定することでパケット中継の低遅延化、連続送信に係る電力の削減による省電力効果が期待できる。
【0182】
(D)他の実施形態
上述した第1〜第3の実施形態では、それぞれ異なるチャネル値を使用して受信待機期間として、2個のチャネルAとチャネルBを設定する場合を例示したが、3個以上の受信待機期間を設定するようにしてもよい。
【0183】
上述した第1〜第3の実施形態において、チャネルAの期間長及びチャネルBの期間長は、固定としてもよいし、変更できるようにしてもよい。
【0184】
上述した第1〜第3の実施形態において、チャネルA及びチャネルBで使用するチャネル値を、定期的に変更するようにしてもよい。
【符号の説明】
【0185】
1…チャネル切り替え管理部、2…チャネル状態監視部、3…送信制御部、
4…近傍ノードチャネル管理部、5…RF部、6…チャネル決定部、
7…RF状態切り替え管理部、8…RF状態スケジュール決定部、
9…パケット種別判定部、10…ノード、11…通信制御部、
12…無線インタフェイス部、13…制御部。
【技術分野】
【0001】
本発明は、通信装置、通信プログラム、ノード装置及びネットワークに関するものである。本発明は、例えばセンサネットワーク等のように、空間に分散配置された多数のノード装置が、無線を利用して相互にデータ通信を行なう通信装置、通信プログラム、ノード装置及び複数のノード装置から構成されるネットワークに適用し得るものである。
【背景技術】
【0002】
近年、無線ネットワークにおいて、無線端末が複数チャネル(マルチチャネル)を利用して、異なるチャネルを用いた複数の通信を同時に実現できるようにすることが求められている。
【0003】
しかし、従来の無線ネットワークのチャネルアクセス方式として広く適用されているIEEE802.11 DCFに標準化技術は、1つの無線チャネルが近隣端末間で共有され、各無線端末がランダムにチャネルアクセスをして通信を行なうというものである。つまり、無線端末は、同時に1チャネル上でしかフレーム伝送等を行なうことができない。
【0004】
従来、無線端末が複数チャネルを利用して通信を行なう方式として、非特許文献1に記載される技術がある。
【0005】
非特許文献1に記載の方法は、1つの制御チャネルと、複数のデータチャネルとを備えることを前提とし、通常の受信待機状態では制御チャネルで受信待機を行なう。
【0006】
送信元ノードは、データ発生時に、どのチャネルでデータ通信を行なうかを含む制御パケットを制御チャネルで送信する。この制御パケットを受信した送信先ノードは、制御パケットを正常に受信した旨を送信元ノードに応答した後、指定されたデータチャネルへの切り替えを行なう。そして、応答を受信した送信元ノードは、データチャネルでデータ通信を行なう。
【0007】
また、通信が完了すると、送信元ノード及び送信先ノードは共に、再び制御チャネルに切り替え、制御チャネルでの受信待機を行なう。
【0008】
以上の手続きを行なうことにより、各ノードは複数チャネルを使用して通信を行なうことが可能となり、電波干渉が低減し、スループットの向上が期待できる。また、非特許文献1に記載の方法は、ノード間の時刻同期が必要ないという利点もある。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】谷川陽祐,戸出英樹,村上孝三,「空き資源の積極利用を指向したマルチチャネルMACプロトコル」,社団法人電子情報通信学会、2009,電子情報通信学会論文誌 B,Vol.J92−B,No.1,pp.196−206
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、非特許文献1の記載技術は、データ通信前に、通信に利用するデータチャネルを送信先ノードに通知する予約シーケンスが必要となる。また、この予約シーケンスは、パケット毎に発生するものである。
【0011】
そのため、予約シーケンスなしに直接データのみを通信する場合に比べて、増加するオーバヘッドが小さくないという問題がある。
【0012】
そこで、本発明は、時刻同期を前提としないという条件のまま、電波干渉の低減及びスループットの向上を図り、チャネル予約により生じ得るオーバヘッドを削減し、複数チャネルを利用した通信を、より効率的に行なえるようにする通信装置、通信プログラム、ノード装置及びネットワークを提供するものである。
【課題を解決するための手段】
【0013】
かかる課題を解決するために、第1の本発明は、(1)複数のチャネルを切り替えて信号の送受信を行なう通信手段と、(2)各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、通信手段が使用するチャネルを切り替えるチャネル切り替え手段と、(3)自ノードのチャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段と、(4)通信手段を通じて他ノードから取得した、他ノードのチャネル切り替え情報を管理するチャネル切り替え情報管理手段と、(5)送信信号を送信する際に、他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で送信信号を連続送信させる送信制御手段とを備えることを特徴とする通信装置である。
【0014】
第2の本発明は、コンピュータを、(1)複数のチャネルを切り替えて信号の送受信を行なう通信手段、(2)各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、通信手段が使用するチャネルを切り替えるチャネル切り替え手段、(3)自ノードのチャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段、(4)通信手段を通じて他ノードから取得した、他ノードのチャネル切り替え情報を管理するチャネル切り替え情報管理手段、(5)送信信号を送信する際に、他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で上送信信号を連続送信させる送信制御手段として機能させるものであることを特徴とする通信プログラムである。
【0015】
第3の本発明は、複数のノード装置を有して構成されるネットワークにおいて、各ノード装置が、第1の本発明の通信装置を有することを特徴とするノード装置である。
【0016】
第4の本発明は、第3の本発明のノードを複数有して構成されるネットワークである。
【発明の効果】
【0017】
本発明によれば、時刻同期を前提としないという条件のまま、電波干渉の低減及びスループットの向上を図り、チャネル予約により生じ得るオーバヘッドを削減し、複数チャネルを利用した通信を、より効率的にすることがでくきる。
【図面の簡単な説明】
【0018】
【図1】第1の実施形態の通信制御部の機能構成を示すブロック図である。
【図2】実施形態のノード装置の内部構成を示す内部構成図である。
【図3】第1の実施形態のノードの送信動作及び受信動作を説明する説明図である。
【図4】第1の実施形態の受信待機チャネルテーブルの構成例を示す構成図である。
【図5】第1の実施形態の通信処理の動作を説明する説明図である。
【図6】第1の実施形態の各ノードのパケット送信処理の動作を示すフローチャートである。
【図7】第1の実施形態のチャネルスケジュールの変更処理の動作を示すフローチャートである。
【図8】第2の実施形態のノードの通信制御部の機能構成を示すブロック図である。
【図9】第2の実施形態の通信処理の動作を説明する説明図である。
【図10】第2の実施形態のチャネルスケジュールの変更処理の動作を示すフローチャートである。
【図11】第3の実施形態のノードの通信制御部の機能構成を示すブロック図である。
【図12】第3の実施形態のRF状態切り替え管理部による受信動作を説明する説明図である。
【図13】第3の実施形態の各ノードのパケット送信処理の動作を示すフローチャートである。
【図14】第3の実施形態の通信処理を説明する説明図である。
【図15】第3の実施形態のチャネルスケジュールの決定方法を説明する説明図である。
【図16】第3の実施形態のチャネルスケジュールの決定処理を示すフローチャートである。
【発明を実施するための形態】
【0019】
(A)第1の実施形態
以下では、本発明の通信装置、通信プログラム、ノード装置及びネットワークの第1の実施形態について、図面を参照しながら詳細に説明する。
【0020】
第1の実施形態は、例えば、空間に分散配置された複数のノード装置から構成され、各ノード装置がアドホックモードによりデータ通信を行なうマルチホップネットワークに、本発明を適用する実施形態を例示する。
【0021】
(A−1)第1の実施形態の構成
図2は、第1の実施形態のノード装置(以下、単にノードともいう)の内部構成を示す内部構成図である。第1の実施形態において、マルチホップネットワークを構成する複数のノード装置は、いずれも同じ内部構成を備えるものとする。
【0022】
図2において、第1の実施形態のノード装置10は、制御部13、通信制御部11、無線インタフェイス部12を有する。
【0023】
制御部13は、ノード10全体の機能動作を司る処理部又は装置である。例えば、制御部13は、CPU、ROM、RAM、EEPROM、入出力インタフェイス部等を有して構成されるものである。
【0024】
通信制御部11は、ノード10の通信処理を制御する処理部又は装置である。通信制御部11は、例えば、CPU、ROM、RAM、EEPROM、入出力インタフェイス部等を有して構成されるものである。通信制御部11の機能は、例えば、CPUが、ROMに格納される処理プログラムを実行することにより実現される。
【0025】
通信制御部11によりなされる機能の詳細な説明は、後述するが、例えば、データパケットの送受信制御、チャネル制御、ルーティング制御等を行なうものである。
【0026】
無線インタフェイス部12は、アンテナ部と無線通信処理部とを有する無線通信手段である。無線インタフェイス部12は、例えば無線機を適用することができる。第1の実施形態では、ノード10は、1個の無線インタフェイス部12を備えるものとする。
【0027】
図1は、第1の実施形態の通信制御部11の機能構成を示すブロック図である。図1において、通信制御部11は、その機能として、チャネル切り替え管理部1、チャネル状態監視部2、送信制御手段3、近傍ノードチャネル管理部4、RF部5を有する。
【0028】
チャネル切り替え管理部1は、RF部5の受信待機チャネルを制御するものである。チャネル切り替え管理部1は、チャネルスケジュールを有しており、そのチャネルスケジュールに従って、RF部5のチャネルを切り替える。
【0029】
なお、受信チャネルスケジュールは、ブロードキャストにより隣接ノードに対して通知される。これにより、各ノード10は、自身のチャネルスケジュールを通知すると共に、近傍のノードのチャネルスケジュールを認識することができる。
【0030】
図3は、ノード10の送信動作及び受信動作を説明する説明図である。図3(B)が、チャネル切り替え管理部1による受信動作を示す説明図である。
【0031】
図3(B)において、チャネルスケジュールは、全体の周期をT(秒)として設定されており、この期間が繰り返し行なわれる。また、全体周期Tは、全てのノードにおいて同じ期間が設定されている。
【0032】
また、チャネルスケジュールは、全体周期Tのうち、ネットワークにおいて共通のチャネル値での共通チャネル受信待機期間(以下、チャネルAとも呼ぶ)と、各ノードが自由に設定したチャネル値での非共通チャネル受信待機期間(以下、チャネルBとも呼ぶ)とを有して構成される。
【0033】
例えば、図3(B)では、チャネルAの期間がT1(秒)と設定されており、チャネルBの期間がT2(秒)と設定されている場合を示す。なお、チャネルAの期間T1は、全てのノードにおいて同じ期間が設定されている。
【0034】
チャネルAは、ネットワークにおいて共通としているため、例えば、ルーティングに係る制御パケット等、全てのノードに送信する必要があるパケットを送信する場合に利用される。
【0035】
一方、チャネルBは、ノード間で使用するチャネル値が認識され整合していればよいため、例えば、ノード間でユニキャストによりパケットを送信する場合に利用される。
【0036】
このように、チャネルスケジュールには、チャネルAの期間長及び使用するチャネル値と、チャネルBの期間長及び使用するチャネル値とが設定されており、チャネル切り替え管理部1は、このチャネルスケジュールに従ってRF部5の使用するチャネル値を切り替える。
【0037】
また、チャネル切り替え管理部1は、チャネル状態監視部2からチャネル状態の通知を受け取り、このチャネル状態の通知に含まれるチャネルBで使用する変更後のチャネル値を用いて、チャネルスケジュールを変更するものである。
【0038】
チャネルスケジュールの変更があった場合、チャネル切り替え管理部1は、変更後のチャネルスケジュールをRF部5に与え、ブロードキャストにより隣接するノードに通知する。これにより、最新のチャネルスケジュールを各ノード10が認識することができる。
【0039】
なお、変更後のチャネルスケジュールをブロードキャスト送信する際、チャネルAを含むチャネルスケジュール全体を送信するようにしてもよいし、チャネルBで使用する変更後のチャネル値のみを送信するようにしてもよい。チャネルBの変更後のチャネル値のみを送信する場合、データサイズを小さくすることができるので帯域の低減を図ることができる。
【0040】
ここで、例えば、周波数ホッピング方式を利用した方式の場合で、スケジュールに従ったチャネル切り替えを行なうが、第1の実施形態のチャネル切り替え方式は、次の点で、周波数ホッピング方式と異なる。周波数ホッピング方式は、通信の際に、送信側と受信側との間で、そのスケジュールの同期を行なう必要がある。これに対して、第1の実施形態のチャネル切り替え方式は、チャネルスケジュールの同期を必要としない。すなわち、各ノードが、独自のタイミングで、チャネル値を切り替えることができる。
【0041】
チャネル状態監視部2は、チャネルBで使用したチャネルのチャネル状態情報をRF部5から受け取り、そのチャネル状態情報に基づいて当該チャネルのチャネル状態を監視するものである。
【0042】
ここで、チャネル状態監視部2によるチャネル状態監視方法は、使用しているチャネルの使用状態を確認することができれば、種々の方法を広く適用することができる。例えば、チャネル状態監視部2は、RF部5においてチャネルBで送信したパケットが送信失敗した頻度、パケット送信前にRF部5が行なうキャリアセンスによりキャリア有りの判定がなされ送信できなかった頻度等に基づいて、当該チャネルの混み具合を推定する。
【0043】
また、チャネル状態監視部2は、当該チャネルの使用状態の良否を判断し、必要がある場合には、チャネル値の変更をし、その変更後のチャネル値を含むチャネル状態の通知として、チャネル切り替え管理部1に通知するものである。
【0044】
例えば、チャネル状態監視部2は、チャネルBでの送信失敗頻度や、キャリアセンスキャリア有りとなって送信できなかった頻度等が閾値を超えた場合には、チャネルBで使用するチャネル値を変更する。このとき、チャネル状態監視部2は、使用可能なチャネルからランダムに1つ選択する方法や、変更先候補のチャネルをスキャンして使用状態をチェックし、空いているチャネルを変更後チャネルとして設定する。
【0045】
送信制御手段3は、上位装置から送信パケットが与えられると、近傍ノードチャネル管理部4が管理する近傍ノードのチャネルスケジュールを参照し、送信先ノードに設定されている受信待機チャネルのチャネル値で、当該パケットを送信するように制御するものである。
【0046】
また、送信制御手段3は、送信パケットの種別に応じて送信制御を行なうものである。例えば、送信制御手段3は、送信パケットがチャネルAで送信すべきものか又はチャネルBで送信すべきものか、更に、ブロードキャスト又はユニキャストで送信すべきものかを判断し、その判断結果に応じて送信動作を制御する。
【0047】
ここで、送信制御手段3による送信処理について図3を用いて説明する。図3(A)は、送信制御部3による送信動作を説明する説明図である。
【0048】
なお、図3(A)では、制御パケット(例えば、ルーティング制御パケットや、チャネルスケジュールを含む制御パケット等)をチャネルAで送信し、ユーザデータを含むデータパケットをチャネルBで送信する場合を例示する。
【0049】
また、制御パケットについては、ブロードキャスト又はユニキャストで送信することができ、データパケットについては、ユニキャストで送信する場合を例示する。
【0050】
このような送信制御の取り決めは、予めパケット種別に対応した設定情報を送信制御手段3が有するようにすることで実現できる。
【0051】
図3において、(A−1)は、送信パケットが、例えば制御パケット等のように、チャネルAで送信すべきものであって、宛先アドレスがブロードキャストアドレスである場合を示す。この場合、送信制御手段3は、自ノードがパケットを送信する送信スロットを有している。そして、送信制御手段3は、「T−T1+α(秒)」の期間、連続してパケットを送信するように制御する。
【0052】
ここで、「α」は、実験的に決定することができる固定値とする。また、「T−T1+α」という期間としたのは、送信ノードの連続送信が、受信ノードのチャネルAでの受信待機期間に必ず1回は重なるようにするためである。
【0053】
図3において、(A−2)は、送信パケットが、チャネルAで送信すべきものであって、宛先アドレスがユニキャストアドレスである場合を示す。この場合、送信制御手段3は、連続してパケットを送信し、受信ノードから応答パケットを受信すると連続送信をやめるようにする。このとき、送信制御手段3は、受信ノードから応答パケットを受信しない場合には、連続送信開始後、「T−T1+α(秒)」時にタイムアウトして、送信をやめる。すなわち、この場合は送信失敗となる。
【0054】
図3において、(A−3)は、送信パケットが、例えばユーザデータ等のようにチャネルBで送信すべきものである場合を示す。この場合も、送信制御手段3は、パケットを連続送信する。ただし、この場合、送信制御手段3は、連送信開始後、「T−T2+α(秒)」時にタイムアウトして、送信をやめる。
【0055】
図3に示すように、チャネルAの期間長とチャネルBの期間長とを比べると、チャネルAとチャネルBとの間に大きな差があるため、「T−T2+α」が、非常に小さい値となる場合がある。この場合に、送信制御手段3がチャネルBでパケットを送信する連続送信時間が1パケット送信する時間より短くなったとしても、送信制御手段3は1回ないし2回は必ずパケット送信するようにする。
【0056】
近傍ノードチャネル管理部4は、近傍ノードのチャネルスケジュールを管理するものである。
【0057】
近傍ノードチャネル管理部4は、受信待機チャネルテーブル41を有しており、近傍ノードからチャネルスケジュールを受信すると、受信待機チャネルテーブル41の内容を設定・更新する。
【0058】
図4は、受信待機チャネルテーブル41の構成例を示す構成図である。図4において、例えば、受信待機チャネルテーブル41は、近傍ノードを識別する識別情報(例えば、MACアドレス等のアドレス情報等)を格納する「ノード」、対応する近傍ノードがチャネルBで受信待機チャネルとして設定されているチャネル値を格納する「チャネルB」を項目として有する。例えば、図4において、「ノード:1」という識別情報のノードは、チャネルBで受信待機をするチャネル値が「チャネルB:ch1」であることを示している。
【0059】
なお、図4の例は、チャネルAが共通のチャネル値を用いるため、チャネルBのみのチャネル値を格納する場合を例示したが、もちろんチャネルAのチャネル値も格納するようにしてもよい。
【0060】
RF部5は、送信又は受信するチャネル値を切り替えて、送受信処理を行なうものである。RF部5は、送信制御手段3の制御に従って、パケットを送信する。
【0061】
また、RF部5は、チャネル切り替え管理部1の制御により、受信待機に使用するチャネル値を切り替えて、パケットを受信するものである。RF部5は、パケットを受信すると、その受信パケットを上位装置に与えるものである。また、RF部5は、例えば、CSMA/CA方式によるキャリアセンス機能、通信評価機能(例えば、送信失敗頻度等を求める機能など)を有しており、受信待機チャネルのチャネル状態情報をチャネル状態監視部2に与えるものである。
【0062】
(A−2)第1の実施形態の動作
次に、第1の実施形態の通信処理の動作について図面を参照しながら説明する。
【0063】
図5は、第1の実施形態の通信処理の動作を説明する説明図である。図5(A)において、丸はノード10を表しており、矢印は無線リンクを表している。
【0064】
初期状態のとき、全てのノード10のチャネルスケジュールは、説明便宜上、同じ内容が設定されているものとする。なお、各ノード10がそれぞれ異なるチャネルスケジュールを設定していてもよい。
【0065】
例えば、図5(A)に例示するように、チャネルスケジュールは、チャネルAにはチャネル「ch1」が設定されており、チャネルBにはチャネル「ch2」が設定されているものとする。
【0066】
また例えば、チャネルAの期間長T1はT1=2msが設定されており、チャネルBの期間長T2はT2=198msが設定されているものとする。チャネルA及びチャネルBの期間長の比率も全ノード10で共通とする。
【0067】
図6は、各ノードのパケット送信処理の動作を示すフローチャートである。
【0068】
まず、初期化時には、各ノード10は、他ノードのチャネルスケジュールが設定されていない。そのため、各ノード10は、自ノードのチャネルスケジュールをブロードキャストで送信する。
【0069】
図6において、自ノードのチャネルスケジュールを含む制御パケットは、チャネルAで送信すべきパケットである(S101)。また、当該制御パケットの宛先アドレスは、ブロードキャストアドレスであるから、送信制御手段3は、チャネルAのチャネル値「ch1」で、ブロードキャストにより最近接ノードに送信を行なう(S104)。
【0070】
このとき、送信制御手段3は、「T−T1+α」=198+α(ms)の期間だけ、当該制御パケットを連続送信する。これにより、受信ノードは、2msのチャネルAの受信待機タイミングで受信することができる。
【0071】
また、受信ノードでは、受信パケットに含まれる送信元ノードのチャネルスケジュールが、近傍ノードチャネル管理部4に与えられる。近傍ノードチャネル管理部4は、受信した送信元ノードのチャネルスケジュールに基づいて、受信待機チャネルテーブル41を作成する。
【0072】
次に、ネットワークを形成するために、各ノード10は、ルーティング制御パケットを送信する。
【0073】
なお、ルーティングのアルゴリズムは、特に限定されるものではなく種々のアルゴリズムを適用することができる。例えば、AODV(Ad hoc On-Demand Distance Vector)方式、OLSR(Optimized Link State Routing)方式、DSR(Dynamic Source Routing)方式等を適用することができる。
【0074】
図6において、ルーティング制御パケットがチャネルAを使用すべきものであるから(S101)、送信制御手段3は、チャネルAのチャネル値「ch1」で、ブロードキャスト又はユニキャストにより、最近接ノードに送信を行なう(S104)。
【0075】
ルーティングが完了すると、各ノード10は、ユーザデータを含むデータパケットを送信することができる。ここでは、データパケットをユニキャストで送信するものとする。
【0076】
図6において、ノード10がユーザデータのパケットを送信する際、送信制御手段3は、ユーザデータを含むデータパケットがチャネルBを使用すべきものであるから(S101)、S102に移行する。
【0077】
S102において、送信制御手段3は、データパケットの送信先ノードのアドレス情報を取得する。そして、送信制御手段3は、近傍ノードチャネル管理部4の受信待機チャネルテーブル41から、送信先ノードのアドレス情報に対応するチャネルBのチャネル値「ch2」を検索する(S102)。
【0078】
ここでは、全ノード10のチャネルBのチャネル値「ch2」である。従って、送信制御手段3は、チャネル「ch2」を使用して、データパケットを送信先ノードに向けて送信するようにする(S103)。このとき、送信制御手段3は、「T−T2+α(ms)」の期間、データパケットを連続送信するようにする。
【0079】
ここで、図5(A)に示すように、ネットワークにおいて干渉源31が発生したとする。図5(A)において、丸の中に斜線が記載されているものが、干渉源31の影響を受けているものとする。
【0080】
干渉源31に存在しているノードは、干渉源31の影響により、例えば、RF5によるデータパケットの送信失敗が発生したり、送信前のキャリアセンスでチャネル使用中と判定されたりする機会が増え、送信に失敗する可能性が高くなる。
【0081】
図7は、チャネルスケジュールの変更処理の動作を示すフローチャートである。
【0082】
干渉源31に存在するノードにおいて、チャネル状態監視部2は、RF部5からチャネル状態情報を取得し(S201)、取得したチャネル状態情報に基づいて、当該チャネルの使用状態の良否を判断する(S202)。
【0083】
そして、チャネル変更が必要であると判断すると、チャネル状態監視部2は、変更後のチャネル値を含むチャネル状態の通知を、チャネル切り替え管理部1に与える(S203)。
【0084】
チャネル切り替え管理部1は、チャネル状態監視部2から変更後のチャネル値を取得すると、そのチャネル値をチャネルBのチャネル値に設定して、チャネルスケジュールの変更を行なう(S204)。
【0085】
そして、チャネルスケジュールの変更がなされると、チャネル切り替え管理部1は、変更後のチャネルスケジュールを、チャネルAで、最近接ノードにブロードキャスト送信させる(S205)。
【0086】
この変更後のチャネルスケジュールのブロードキャスト送信の方法は、初期化時のチャネルスケジュールのブロードキャスト送信の方法と同じ処理でなされる。
【0087】
例えば、図5(A)に示す干渉源31に存在するノードは、図5(C)に示すように、チャネルBのチャネル値をチャネル「ch2」からチャネル「ch3」に変更したものとする。
【0088】
そして、変更後のチャネルスケジュールを受信したノードは、近傍ノードチャネル管理部4が、当該送信元ノードのチャネルBのチャネル値をチャネル「ch2」からチャネル「ch3」に更新する。以後、干渉源31に存在しているノード間のチャネルBのデータ通信は、チャネル「ch3」を使用して行なう。
【0089】
以上のように、干渉源31に存在するノードは、チャネルBのチャネル変更を行なう。その結果、図5(B)及び図5(C)に示すように、チャネルAは全ノードチャネル「ch1」を使用する。干渉源31に存在しないノードはチャネルBでチャネル「ch2」を使用し、干渉源31に存在するノードは、チャネルBでチャネル「ch3」を使用する。こにより、干渉の影響によって送信失敗となっていたものが解消される。
【0090】
上記の例では、チャネル状態監視部2が、適切なチャネルを選択する動作を説明した。しかし、チャネル状態監視部2がチャネル選択の動作をせず、ランダムにチャネルBのチャネル値を定期的に変更するようにしてもよい。すなわち、ノードが、チャネルBで同じチャネル値を使い続けないようにすることができれば、確率的に干渉を回避する効果が期待できる。
【0091】
(A−3)第1の実施形態の効果
以上のように、第1の実施形態によれば、受信チャネルを切り替えながら受信待機を行なうこと、送信先ノードの受信待機チャネルに応じて期間の異なる連続送信を行なうこと、そのチャネル切り替えのスケジュールを近傍ノード間で交換することで、従来マルチホップネットワークではネットワーク全体で1つのチャネルを用いて運用されているものを、複数のチャネルを用いた運用が可能になる。
【0092】
さらには、第1の実施形態によれば、非特許文献1に記載の方法のように、パケット送信毎にチャネル予約のシーケンスが必要になることもなくなるため、オーバヘッドが小さくなる。その結果、干渉源が発生した場合にも、干渉エリアのみのチャネル変更が可能になる。
【0093】
また、第1の実施形態によれば、ネットワーク内で大量のデータパケットが発生し、混雑によってパケットの送信失敗が発生したときにも、上述した干渉源の回避と同様の動作でチャネル変更が可能であるから、複数のチャネルにトラフィックを分散することができ、ネットワークのキャパシティを増加させることが可能になる。
【0094】
(B)第2の実施形態
次に、本発明の通信装置、通信プログラム、ノード装置及びネットワークの第2の実施形態について、図面を参照しながら説明する。
【0095】
第2の実施形態も、第1の実施形態と同様に、マルチホップネットワークに本発明を適用した場合の実施形態を例示する。
【0096】
(B−1)第2の実施形態の構成
第2の実施形態のノードの基本構成は、第1の実施形態のノード構成と同様であるから、第2の実施形態においても図2を用いる。
【0097】
第2の実施形態が第1の実施形態と異なる点は、ネットワークを形成するルーティング方式がツリールーティングプロトコルに従って行なうことと、ノード10の通信制御部11の機能構成である。
【0098】
また、第2の実施形態では、ツリー型ネットワークにおける、基準となるノード(以下、rootとも呼ぶ)が、複数の無線インタフェイスを有する点が、第1の実施形態と異なる。rootは、基準となるノードであればよく、例えば、ツリー型ネットワークの最上位ノードとしてもよいし、階層構造とするためにツリー型ネットワークの最上位から下流にあるノードとしてもよい。
【0099】
図8は、第2の実施形態のノード10の通信制御部12の機能構成を示すブロック図である。
【0100】
図8において、第2の実施形態の通信制御部12は、チャネル切り替え管理部1、送信制御部3、近傍ノードチャネル管理部4、RF部5、チャネル決定部6を有する。
【0101】
第2の実施形態の通信制御部12は、第1の実施形態のチャネル状態監視部2に代えてチャネル決定部6を有する。
【0102】
チャネル決定部6は、近傍ノードチャネル管理部4の受信待機チャネルテーブル41を参照して、親ノードがチャネルBで使用するチャネル値を、自ノードのチャネルBで使用するチャネル値として決定するものである。
【0103】
また、チャネル決定部6は、自ノードのチャネルBのチャネル値を決定すると、そのチャネル値をチャネル切り替え管理部1に通知するものである。
【0104】
ここで、「親ノード」とは、ツリー型ネットワークにおいて、自ノードよりも1ホップだけ、root側に近いノードをいう。すなわち、rootを最上位ノードとすると、親ノードは自ノードよりも1ホップだけ上位に位置するノードである。
【0105】
ツリールーティングプロトコルにより、ツリー型経路のネットワークを形成する際、親ノードからチャネルスケジュールが受信されると、近傍ノードチャネル管理部4は、その受信した親ノードのチャネルスケジュールに基づいて、受信待機チャネルテーブル41を作成する。
【0106】
チャネル決定部6は、作成された受信待機チャネルテーブル41を参照して、親ノードがチャネルBに設定したチャネル値を、自ノードのチャネルBのチャネル値として決定する。
【0107】
なお、rootと直接通信を行なうノードは、親ノードであるrootから直接チャネルスケジュールが指定されるようにして、チャネルスケジュールを決定するようにしてもよい。
【0108】
(B−2)第2の実施形態の動作
図9は、第2の実施形態の通信処理の動作を説明する説明図である。図10は、チャネルスケジュールの変更処理の動作を示すフローチャートである。
【0109】
図9(A)において、丸はノード10を表し、矢印は無線リンクを表す。初期状態のとき、全てのノード10のチャネルスケジュールは、説明便宜上、同じ内容が設定されているものとする。なお、各ノード10がそれぞれ異なるチャネルスケジュールを設定していてもよい。
【0110】
例えば、図9(A)に例示するように、チャネルスケジュールは、第1の実施形態と同様に、チャネルAにはチャネル「ch1」が設定されており、チャネルBにはチャネル「ch2」が設定されているものとする。
【0111】
また例えば、第1の実施形態と同様に、チャネルAの期間長T1はT1=2msが設定されており、チャネルBの期間長T2はT2=198msが設定されているものとする。チャネルA及びチャネルBの期間長の比率も全ノード10で共通とする。
【0112】
さらに、初期化したチャネルスケジュールの送信方法は、第1の実施形態と同様にしてブロードキャストにより最近接ノードに送信する。
【0113】
ネットワークを形成する際、ツリールーティングプロトコルに従って、ツリー型経路のネットワークを形成する。すなわち、ツリールーティングアルゴリズムの場合、ツリーの最上位に位置するrootに最も近いノードから経路が決定される。
【0114】
ここで、ツリールーティングプロトコルは、特に限定されるものではなく、ツリー型経路を形成するものであれば、例えば、AODV方式、DSR方式等を適用することができる。
【0115】
rootは、例えば2個の無線インタフェイスを有している。rootは、それぞれの無線インタフェイスについてのチャネルスケジュールを有している。
【0116】
ツリー型ネットワークを形成する際、rootは、ルーティング制御パケット(経路情報)を送信する。
【0117】
rootから1ホップ先のノードは、rootとの経路を形成する。このとき、当該1ホップ先のノードは、rootからチャネルスケジュールを受信する。
【0118】
当該1ホップ先のノードにおいて、rootからチャネルスケジュールが受信されると、近傍ノードチャネル管理部4が、受信したrootのチャネルスケジュールに基づいて、受信待機チャネルテーブル41を作成する。
【0119】
図10において、チャネル決定部6は、受信待機チャネルテーブル41を参照し(S301)、rootのチャネルBに設定されているチャネル値を、自ノードのチャネルBのチャネル値として決定する(S302)。
【0120】
チャネル決定部6が自ノードのチャネルBのチャネル値を決定すると、その決定したチャネル値を、チャネル切り替え管理部1に通知する(S303)。これにより、チャネル切り替え管理部1は、自ノードのチャネルBのチャネル値が親ノードのチャネル値となるように、自ノードのチャネルスケジュールを変更することができる(S304)。
【0121】
このとき、rootは、複数のノードに対して、複数のチャネルがそれぞれ異なるように割り当てる。また、rootは、複数のノードに対して割り当てた無線インタフェイスのチャネルを、それぞれの無線インタフェイスのチャネルBのチャネル値として設定する。
【0122】
例えば、図10(A)において、rootから1ホップ先のノードとして「ノード21」と「ノード22」があるとする。この場合、rootは、「ノード21」のチャネルBにチャネル「ch2」を割り当て、「ノード22」のチャネルBにチャネル「ch3」を割り当てる。そして、rootは、自身の複数の無線インタフェイスのそれぞれが使用するチャネルとして、チャネル「ch2」、チャネル「ch3」に設定する。
【0123】
次に、ノード21及びノード22は、経路情報と共に、自ノードのチャネルスケジュールを送信する(S305)。
【0124】
ノード21及びノード22から経路情報を受信した1ホップ下流に位置するノードは、受信した経路を作成する。このとき、当該1ホップ下流のノードでは、経路情報と共に送信されてきたチャネルスケジュールに基づいて、近傍ノードチャネル管理部4が、受信待機チャネルテーブル41を作成する。
【0125】
そして、図10に従って、チャネル決定部6が、親ノードのチャネルBのチャネル値を、自ノードのチャネルBのチャネル値として設定し、チャネル切り替え管理部1が、自ノードのチャネルスケジュールを変更する。
【0126】
以上の動作を繰り返すことにより、図9(A)に示すように、チャネルBをチャネル「ch2」とするツリー型ネットワーク(白丸のノードで構成されるネットワーク)と、チャネルBをチャネル「ch3」とするツリー型ネットワーク(丸の中に斜線が記載されているノードで構成されるネットワーク)とが形成される。つまり、ツリー型ネットワーク毎に、チャネルスケジュールが異なるネットワークが形成される。
【0127】
「ノード21」を上位ノードとするネットワークにおいて、ノードがチャネルBでパケット送信するとき、各ノードは、チャネル「ch2」を使用して送信する。一方、「ノード22」を上位ノードとするネットワークにおいて、ノードがチャネルBでパケット送信するとき、各ノードは、チャネル「ch3」を使用して送信する。その結果、2つのツリー型ネットワークの間で、電波干渉は生じないようにすることができる。
【0128】
また、rootは、複数の無線インタフェイスのそれぞれのチャネルBのチャネル値を、チャネル「ch2」、チャネル「ch3」に設定しているため、ノード21からのデータとノード22からのデータとを同時に受信することができる。
【0129】
以上の例では、rootが1個の場合を例示したが、複数のrootを備えるようにしてもよい。
【0130】
また、以上の例では、rootが最上位ノードである場合を例示したが、最上位の位置よりも下流の位置にあるノードをrootと同じ構成のノードとしてもよい。すなわち、階層的なツリー型ネットワークを構成できるようにしてもよい。これにより、サブツリーネットワーク毎にチャネルを変えるように動作させることも可能になる。
【0131】
また、ノード10の通信制御部が、第2の実施形態のチャネル決定部6と、第1の実施形態のチャネル状態監視部2とを備えるようにしてもよい。この場合、チャネル決定部6とチャネル状態監視部2のいずれかに優先順位を決定しておくことで、同時に運用することができる。
【0132】
(B−3)第2の実施形態の効果
以上のように、第2の実施形態によれば、第1の実施形態の効果に加えて、ネットワークのツリー毎に異なったチャネルを割り当てることが可能なる。その結果、複数のチャネルを使用することで干渉を低減させる効果が期待でき、特にツリー型のネットワークでは最もトラフィックが混雑しやすいroot周辺では、複数のチャネルで同時にrootと通信できるようになるため、ネットワークのキャパシティを増加させることが可能になる。
【0133】
(C)第3の実施形態
次に、本発明の通信装置、通信方法、ノード装置及びネットワークの第3の実施形態について、図面を参照しながら説明する。
【0134】
第3の実施形態も、第1の実施形態と同様に、マルチホップネットワークに本発明を適用した場合の実施形態を例示する。
【0135】
(C−1)第3の実施形態の構成
第3の実施形態のノードの基本構成は、第1の実施形態のノード構成と同様であるから、第3の実施形態においても図2を用いる。
【0136】
図11は、第3の実施形態のノード10の通信制御部11の機能構成を示すブロック図である。図11において、第3の実施形態の通信制御部11は、RF状態切り替え管理部7、RF状態スケジュール決定部8、送信制御手段3、パケット種別判定部9、RF部5を有する。
【0137】
第3の実施形態は、第1の実施形態のチャネル切り替え管理部1に代えてRF状態切り替え管理部7を有すること、チャネル状態監視部2に代えてRF状態スケジュール決定部8を有すること、近傍ノードチャネル管理部4に代えてパケット種別判定部9を有することが異なる。
【0138】
RF状態切り替え管理部7は、RF状態スケジュール決定部8により決定された受信待機のチャネルスケジュールに従って、RF部5のチャネルを切り替えるものである。また、RF状態切り替え管理部7は、RF状態スケジュール決定部8からのチャネルスケジュールに従って、RF5に対してスリープ制御を行なうものである。
【0139】
図12は、RF状態切り替え管理部7による受信動作を説明する説明図である。図12において、全体周期T(秒)のうち、期間長をT1(秒)とする上り通信用のチャネル値での受信待機期間(以下、チャネルAと呼ぶ)、期間長T2(秒)とする下り通信用のチャネル値での受信待機期間(以下、チャネルBと呼ぶ)とを有する。また、チャネルAとチャネルBとの間、並びに、チャネルBと次のチャネルAとの間に、RF状態切り替え管理部7は、スリープ期間S1、S2を設ける。
【0140】
RF状態スケジュール決定部8は、自ノードの親ノードの送受信タイミングに基づいて、自ノードのチャネルスケジュールを決定するものである。つまり、RF状態スケジュール決定部8は、チャネルAの受信待機時間、チャネルBの受信待機時間、チャネルAとチャネルBとの間、並びに、チャネルBと次のチャネルAとの間のスリープ時間を決定するものである。
【0141】
RF状態スケジュール決定部8は、ルーティング制御により経路情報を保持し、rootからの自ノードのホップ数や、親ノードの識別情報を認識しており、これらの情報と親ノードの送受信タイミングを用いて、チャネルスケジュールを決定する。
【0142】
RF状態スケジュール決定部8によるチャネルスケジュールの決定方法の詳細な説明は動作の項で詳細に行なうが、RF状態スケジュール決定部8は、ネットワークトポロジに応じてマルチホップでの遅延を改善するように、自ノードのチャネルスケジュールを決定する。
【0143】
例えば、RF状態スケジュール決定部8は、親ノードの受信待機のタイミングを基準にして、自ノードのチャネルAのタイミングを決定し、更にネットワークトポロジに合わせて、チャネルAとチャネルBとの間のスリープ時間を決定する方法を適用することができる。
【0144】
パケット種別判定部9は、送信するパケットが上りフレームか又は下りフレームかを判定して、その判定結果に基づく送信チャネルを送信制御手段3に通知するものである。
【0145】
上りフレームとは、ネットワークにおいてrootに近づく方向に転送されるものであり、下りフレームとは、rootから遠ざかる方向に転送されるものである。
【0146】
ここで、パケット種別判定部9による上り又は下りの判定方法は、特に限定されることなく広く適用される。例えば、フレームに上りフレーム又は下りフレームを識別する識別子を設け、パケット種別判定部9が、この識別子に基づいて判定する方法を適用できる。また別の方法としては、例えば、パケット種別判定部9が、ルーティング制御による経路情報を保持し、送信フレームの送信先アドレスに基づいて上りフレーム又は下りフレームを判定する方法を適用できる。例えば、パケット種別判定部9が、rootからのホップ数を近傍ノード毎に管理し、自ノードのrootからのホップ数と比較して、ホップ数が小さくなる方向の中継は上りフレーム、ホップ数が大きくなる方向の中継は下りと判断する方法がある。
【0147】
送信制御手段3は、パケット種別判定部9の判定結果に基づいて、送信パケットの送信動作を制御するものである。つまり、送信制御手段3は、上りパケットについてはチャネルAのチャネル値で送信し、下りパケットについてはチャネルBのチャネル値で送信する。
【0148】
なお、第3の実施形態では、ノード10が、第1の実施形態の近傍ノードチャネル管理部4を有していないが、近傍ノードのチャネルスケジュールを保持すために、近傍ノードチャネル管理部4を保持するようにしてもよい。
【0149】
(C−2)第3の実施形態の動作
次に、第3の実施形態の通信処理の動作について図面を参照しながら説明する。
【0150】
以下では、各ノード10の初期状態は、チャネルAにはチャネル「ch1」が全ノード共通で設定され、チャネルBにはチャネル「ch2」が全ノード共通で設定されているものとする。
【0151】
ネットワークを形成するために、各ノード10は、ルーティング制御パケットを送信する。なお、ルーティングのアルゴリズムは、特に限定されるものではなく種々のアルゴリズムを適用することができ、AODV方式、OLSR方式、DSR方式等を適用することができる。ルーティングが完了してネットワークが形成されると、各ノード10は、データパケットの通信を行なうことができる。
【0152】
図13は、各ノードのパケット送信処理の動作を示すフローチャートである。
【0153】
送信パケットが送信制御手段3に与えられると、パケット種別判定部9は、その送信パケットが、上りフレームか又は下りフレームかを判定する(S401)。パケット種別判定部9が、上りパケットと判定した場合にはチャネルAのチャネル「ch1」を送信制御手段3に通知し(S402)、下りパケットと判定した場合にはチャネルBのチャネル「ch2」を通知する(S403)。そして、送信制御手段3は、パケット種別判定部9から通知されたチャネル値を使用して、当該送信パケットを送信する(S404)。
【0154】
図14は、第3の実施形態の通信処理を説明する説明図である。図14では、ノード25からノード0(root)への上り通信が発生し、直後ノード0からノード24への下り通信が発生した例を示す。上り通信は点線矢印とし、下り通信は実線矢印とする。
【0155】
また、ノード25からの送信パケット(上りフレーム)は、ノード23→ノード21→ノード0と中継され、ノード0からの送信パケット(下りフレーム)は、ノード22→ノード24と中継されるものとする。
【0156】
図14において、ノード3からの送信パケット(上りフレーム)と、ノード0からの送信パケット(下りフレーム)とは、ほぼ同時に発生している。しかし、上りはチャネル「ch1」を使用し、下りはチャネル「ch2」を使用しており、上りと下りで異なったチャネルを使用しているため、上りと下りの送信が電波干渉を生じすることはない。そのため、ノード21は、ノード23からの上りパケットを受信でき、ノード22はノード0からの下りパケットを受信できる。
【0157】
図15は、第3の実施形態のチャネルスケジュールの決定方法を説明する説明図である。
【0158】
図15では、ノード22からの送信パケット(上りフレーム)は、ノード22→ノード21→ノード0と中継され、ノード0からの送信パケット(下りフレーム)は、ノード0→ノード21→ノード22と中継されるものとする。上り通信は点線矢印とし、下り通信は実線矢印とする。
【0159】
図16は、第3の実施形態のチャネルスケジュールの決定処理を示すフローチャートである。
【0160】
まず、図15に示すように、ノード22において上りフレームの送信パケットが発生すると、送信制御部3は、チャネルAのチャネル「ch1」を使用して、当該送信パケットを親ノードのノード21に送信する。
【0161】
ノード21においてチャネルAの受信待機になると、ノード21は、チャネル「ch1」を使用して送信されてきたパケットを受信する。そして、ノード21は、チャネル「ch1」を使用して応答パケットをノード22に返信する。
【0162】
ノード22は、チャネルAのチャネル「ch1」で、ノード21からの応答パケットを受信する(S501)。
【0163】
親ノードのノード21から応答パケットを受信すると、RF状態スケジュール決定部8は、正しくノード21に送信できた時刻を正常送信時刻t1とする(S502)。
【0164】
ここで、応答パケットを受信したタイミングは、親ノードのチャネルAの受信タイミングである。従って、RF状態スケジュール決定部8は、応答パケットの受信により、親ノードのチャネルAのタイミングを認識することができる。
【0165】
なお、図15では、正常送信時刻t1が、ノード22の最後に送信パケットを送信した時刻とする場合を例示しているが、応答パケットを受信した時刻を正常送信時刻t1とするようにしてもよい。
【0166】
RF状態スケジュール決定部8は、正常送信時刻t1を基準として、おおよそ周期T(秒)から所定時間だけ短い期間経過後に、自ノードのチャネルAを設定する(S503)。
【0167】
このとき、自ノードのチャネルAの受信待機のタイミングが、親ノードのチャネルAの受信待機のタイミングの直前となるように、RF状態スケジュール決定部8が、自ノードのチャネルAの受信待機のタイミングを設定する。
【0168】
つまり、自ノードのチャネルAのタイミングを、親ノードのチャネルAの直前となるから、自ノードが親ノードに上りパケットを送信するとき、自ノードは、短い連続送信で応答パケットを受信することが期待できる。その結果、送信時間を減らすことで帯域の負荷を下げることができる。
【0169】
従って、送信パケットの連続送信期間を短くすることができ、また、チャネルAの受信待機期間も短くする設定することができる。
【0170】
例えば、図15に示すように、RF状態スケジュール決定部8は、正常送信時刻t1を基準として、「T-β」時間経過後に、自ノードのチャネルAが開始するように設定する。なお、βは、実験的に設定することができる。
【0171】
次に、RF状態スケジュール決定部8は、正常送信時刻t1を基準としたまま、root(ノード0)からのホップ数に応じた時間をスリープ時間S1として求める(S504)。これにより、下りの連続送信時間及びチャネルBの受信待機期間も短くすることができる。
【0172】
図15において、ノード0のスリープ時間S1がX(秒)であるとする。また、ノード22のroot(ノード0)からのホップ数は2ホップであり、ノード21のroot(ノード0)からのホップ数は1ホップである。
【0173】
この場合、ノード22のRF状態スケジュール決定部8は、自ノードのスリープ時間S1が、「X+2Y(秒)」となるように設定する。また、例えば、ノード21のRF状態スケジュール決定部8は、自ノードのスリープ時間S1が、「X+Y(秒)」となるように設定する。すなわち、RF状態スケジュール決定部8は、「(固定値)+(ホップ数に比例した値)」をスリープ時間S1とする。
【0174】
そして、RF状態スケジュール決定部8は、スリープ時間S1経過後に、自ノードのチャネルBを設定する(S505)。
【0175】
さらに、RF状態スケジュール決定部8は、チャネルBの受信待機期間が経過後、周期Tの終了までの時間をスリープ時間T2とする(S506)。
【0176】
このようにすることで、図15に示すように、例えば、ノード22のスリープ時間S2が「Z(秒)」である場合、ノード21のスリープ時間S2は「Z+W(秒)」、ノード0のスリープ時間S2は「Z+2W」等のような関係が得られる。
【0177】
上記のようにすることで、下りパケットのチャネルBの受信待機のタイミングは、親ノードのチャネルBの直後になり、逆に上りパケットのチャネルAの受信待機のタイミングは、親ノードのチャネルAの直前となるように設定できる。
【0178】
こうしておくと、ノード0からノード22に下りパケットを送信し、そのエンドエンドの応答パケットをノード0に送信する場合に、各ノードが連続送信して送信先ノードの受信待機のタイミングを探す動作時間が短くできる。
【0179】
(C−3)第3の実施形態の効果
以上のように、第3の実施形態によれば、上り、下りで異なったチャネルで通信できるため、上りトラフィックと下りトラフィックでの衝突が発生しなくなるため、パケットロスを削減する効果が期待できる。
【0180】
また、第3の実施形態によれば、チャネルの切り替えに加えてノードのスリープも行なうために、省電力化が期待できる。
【0181】
さらに、第3の実施形態によれば、このRF状態スケジュールのスリープ時間S1をノードのrootからのホップ数にあわせて設定することでパケット中継の低遅延化、連続送信に係る電力の削減による省電力効果が期待できる。
【0182】
(D)他の実施形態
上述した第1〜第3の実施形態では、それぞれ異なるチャネル値を使用して受信待機期間として、2個のチャネルAとチャネルBを設定する場合を例示したが、3個以上の受信待機期間を設定するようにしてもよい。
【0183】
上述した第1〜第3の実施形態において、チャネルAの期間長及びチャネルBの期間長は、固定としてもよいし、変更できるようにしてもよい。
【0184】
上述した第1〜第3の実施形態において、チャネルA及びチャネルBで使用するチャネル値を、定期的に変更するようにしてもよい。
【符号の説明】
【0185】
1…チャネル切り替え管理部、2…チャネル状態監視部、3…送信制御部、
4…近傍ノードチャネル管理部、5…RF部、6…チャネル決定部、
7…RF状態切り替え管理部、8…RF状態スケジュール決定部、
9…パケット種別判定部、10…ノード、11…通信制御部、
12…無線インタフェイス部、13…制御部。
【特許請求の範囲】
【請求項1】
複数のチャネルを切り替えて信号の送受信を行なう通信手段と、
上記各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、上記通信手段が使用するチャネルを切り替えるチャネル切り替え手段と、
自ノードの上記チャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段と、
上記通信手段を通じて上記他ノードから取得した、上記他ノードの上記チャネル切り替え情報を管理するチャネル切り替え情報管理手段と、
送信信号を送信する際に、上記他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で上記送信信号を連続送信させる送信制御手段と
を備えることを特徴とする通信装置。
【請求項2】
上記チャネル切り替え情報が、制御信号の通信で使用するチャネルが設定された受信待機期間と、データ信号の通信で使用するチャネルが設定された受信待機期間とを有するものであることを特徴とする請求項1に記載の通信装置。
【請求項3】
ネットワークトポロジ―がツリー型である場合に、
上記チャネル切り替え情報が、上り通信で使用するチャネルが設定された受信待機期間と、下り通信で使用するチャネルが設定された受信待機期間とを有するものであることを特徴とする請求項2に記載の通信装置。
【請求項4】
上記チャネル切り替え手段が、自ノードのチャネル切り替え情報に設定されている上記各受信待機期間で使用するチャネルを変更するチャネル変更部を有し、
上記チャネル変更部が、上記複数の受信待機期間のうち1個を上記他ノードと共通の固定チャネルとし、それ以外を自律的なチャネルに変更するものであることを特徴とする請求項1〜3のいずれかに記載の通信装置。
【請求項5】
上記チャネル変更部が、固定チャネルを使用する上記受信待機期間以外の受信待機期間について、ランダムにチャネルを変更するものであることを特徴とする請求項4に記載の通信装置。
【請求項6】
上記チャネル変更部が、上記通信手段の通信状況に応じて、固定チャネルを使用する上記受信待機期間以外の受信待機期間のチャネルを変更するものであることを特徴とする請求項4又は5に記載の通信装置。
【請求項7】
上記チャネル変更部が、固定チャネルを使用する上記受信待機期間以外の受信待機期間のチャネルを、転送先ノードが使用するチャネルに変更するものであることを特徴とする請求項4又は5に記載の通信装置。
【請求項8】
上記チャネル切り替え手段が、上記通信手段に対して受信待機の休止制御を行なうものであることを特徴とする請求項1〜7のいずれかに記載の通信装置。
【請求項9】
上記チャネル切り替え手段が、上記他ノードとの間の通信時刻を基準として、上記複数の受信待機期間を決定するものであることを特徴とする請求項8に記載の通信装置。
【請求項10】
上記チャネル切り替え手段が、ネットワークトポロジ―に基づいて、上記受信待機の休止制御期間を決定するものであることを特徴とする請求項8又は9に記載の通信装置。
【請求項11】
コンピュータを、
複数のチャネルを切り替えて信号の送受信を行なう通信手段、
上記各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、上記通信手段が使用するチャネルを切り替えるチャネル切り替え手段、
自ノードの上記チャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段、
上記通信手段を通じて上記他ノードから取得した、上記他ノードの上記チャネル切り替え情報を管理するチャネル切り替え情報管理手段、
送信信号を送信する際に、上記他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で上記送信信号を連続送信させる送信制御手段
として機能させるものであることを特徴とする通信プログラム。
【請求項12】
複数のノード装置を有して構成されるネットワークにおいて、上記各ノード装置が、請求項1〜10のいずれかに記載の通信装置を有することを特徴とするノード装置。
【請求項13】
請求項12に記載のノードを複数有して構成されるネットワーク。
【請求項1】
複数のチャネルを切り替えて信号の送受信を行なう通信手段と、
上記各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、上記通信手段が使用するチャネルを切り替えるチャネル切り替え手段と、
自ノードの上記チャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段と、
上記通信手段を通じて上記他ノードから取得した、上記他ノードの上記チャネル切り替え情報を管理するチャネル切り替え情報管理手段と、
送信信号を送信する際に、上記他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で上記送信信号を連続送信させる送信制御手段と
を備えることを特徴とする通信装置。
【請求項2】
上記チャネル切り替え情報が、制御信号の通信で使用するチャネルが設定された受信待機期間と、データ信号の通信で使用するチャネルが設定された受信待機期間とを有するものであることを特徴とする請求項1に記載の通信装置。
【請求項3】
ネットワークトポロジ―がツリー型である場合に、
上記チャネル切り替え情報が、上り通信で使用するチャネルが設定された受信待機期間と、下り通信で使用するチャネルが設定された受信待機期間とを有するものであることを特徴とする請求項2に記載の通信装置。
【請求項4】
上記チャネル切り替え手段が、自ノードのチャネル切り替え情報に設定されている上記各受信待機期間で使用するチャネルを変更するチャネル変更部を有し、
上記チャネル変更部が、上記複数の受信待機期間のうち1個を上記他ノードと共通の固定チャネルとし、それ以外を自律的なチャネルに変更するものであることを特徴とする請求項1〜3のいずれかに記載の通信装置。
【請求項5】
上記チャネル変更部が、固定チャネルを使用する上記受信待機期間以外の受信待機期間について、ランダムにチャネルを変更するものであることを特徴とする請求項4に記載の通信装置。
【請求項6】
上記チャネル変更部が、上記通信手段の通信状況に応じて、固定チャネルを使用する上記受信待機期間以外の受信待機期間のチャネルを変更するものであることを特徴とする請求項4又は5に記載の通信装置。
【請求項7】
上記チャネル変更部が、固定チャネルを使用する上記受信待機期間以外の受信待機期間のチャネルを、転送先ノードが使用するチャネルに変更するものであることを特徴とする請求項4又は5に記載の通信装置。
【請求項8】
上記チャネル切り替え手段が、上記通信手段に対して受信待機の休止制御を行なうものであることを特徴とする請求項1〜7のいずれかに記載の通信装置。
【請求項9】
上記チャネル切り替え手段が、上記他ノードとの間の通信時刻を基準として、上記複数の受信待機期間を決定するものであることを特徴とする請求項8に記載の通信装置。
【請求項10】
上記チャネル切り替え手段が、ネットワークトポロジ―に基づいて、上記受信待機の休止制御期間を決定するものであることを特徴とする請求項8又は9に記載の通信装置。
【請求項11】
コンピュータを、
複数のチャネルを切り替えて信号の送受信を行なう通信手段、
上記各チャネルを使用する複数の受信待機期間を設定したチャネル切り替え情報に基づいて、上記通信手段が使用するチャネルを切り替えるチャネル切り替え手段、
自ノードの上記チャネル切り替え情報を他ノードに送信させるチャネル切り替え情報提供手段、
上記通信手段を通じて上記他ノードから取得した、上記他ノードの上記チャネル切り替え情報を管理するチャネル切り替え情報管理手段、
送信信号を送信する際に、上記他ノードチャネル切り替え情報を参照して、転送先ノードが使用するチャネルを検索し、検索したチャネルを用いて、所定の送信制御で上記送信信号を連続送信させる送信制御手段
として機能させるものであることを特徴とする通信プログラム。
【請求項12】
複数のノード装置を有して構成されるネットワークにおいて、上記各ノード装置が、請求項1〜10のいずれかに記載の通信装置を有することを特徴とするノード装置。
【請求項13】
請求項12に記載のノードを複数有して構成されるネットワーク。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2013−70176(P2013−70176A)
【公開日】平成25年4月18日(2013.4.18)
【国際特許分類】
【出願番号】特願2011−206303(P2011−206303)
【出願日】平成23年9月21日(2011.9.21)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【Fターム(参考)】
【公開日】平成25年4月18日(2013.4.18)
【国際特許分類】
【出願日】平成23年9月21日(2011.9.21)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【Fターム(参考)】
[ Back to top ]