(58)【調査した分野】(Int.Cl.,DB名)
前記候補抽出部は、前記隣接装置のうち自己よりも前記階層が上位に位置し、かつ対応する前記通信品質情報が所定の基準を満たす装置を前記候補装置として抽出することを特徴とする請求項1記載の通信装置。
【背景技術】
【0002】
メッシュ構造をなすネットワークにおいては、ルート装置を頂点に、各装置が階層を構成する形態をとることがある。このような形態では、各装置は階層が1つ上位の親装置を有し、親子関係はそれぞれの該当する装置間での制御信号の交換により築かれる。ルート装置へ到達させるべき情報は、各装置からその親となる装置を順繰りに中継しながら(=マルチホップして)パケット伝送される。
【0003】
一方、メッシュ構造のネットワーク通信においては、所定の通信品質や通信コスト、接続品質、経路コスト(接続成功率、受信パワー、SNR)などに基づき、階層の上位および下位の通信相手を確定(経路を確定)させることでネットワークが完成する。通信相手が一旦確定すると、エラーが発生しない限り確定したルートを継続使用することで、安定した通信を可能としている。
【0004】
ところで、通信経路を経路コストなどにより決定した場合、通信経路が最適解に収束し、実質的にツリー構造となってしまう。ツリー構造のネットワークでは、自己よりも下位に接続される通信装置が多いほど、自己を通過して上位に流れる通信トラヒックが増加する。すなわち、自分宛でない通信トラヒックを中継する機会が増える。また、本来は通信可能な経路が複数あるにもかかわらず固定されてしまい、ネットワーク全体として、頻繁に通信トラヒックが発生する通信装置と、そうではない通信装置との間で電力消費に差が生じてしまう。これは、特に通信装置が電池などにより駆動する形態では、特定の通信装置の電源消費のみが増加することで、当該通信装置の電池残量減によるネットワーク切断等を引き起こし、ネットワーク全体の通信効率を下げる恐れがある。
【発明を実施するための形態】
【0010】
以下、図面を参照して実施形態に係る通信装置を詳細に説明する。
図1に示すように、実施形態の通信装置1は、メッシュ構造のネットワークNWを構成し、上位の親装置P、下位の子装置C、および自己と同階層の兄弟装置Sと直接的または間接的に接続されている。通信装置1は、アンテナ15が接続された送受信部10、ルーティング設定部20、階層設定部30、階層記憶部35、隣接装置登録部40、隣接装置記憶部45および条件判定部50を備えている。なお、親装置P、兄弟装置S、子装置Cは、それぞれ通信装置1と同様の構成を有している。
【0011】
送受信部10は、実施形態の通信装置において電波を送信し受信する無線インタフェースである。送受信部10は、以下に説明するルーティング機能だけでなく、具体的なデータの送受信をも行う機能を有している。
【0012】
ルーティング設定部20は、ネットワークNWにおけるルーティング処理を実行する演算ブロックである。階層設定部30は、ネットワークNWにおける通信装置1の階層を確定し更新する演算ブロックである。階層記憶部35は、自己の識別子および自己のネットワークNWにおける階層を記憶する。以下の説明において、「階層」は、階層構造のトップに位置する通信装置Rを「0」とし、下位に下るにしたがって1ずつ値が増加する数値として表している。この階層の値は、すべての隣接装置のうち経路コストが最低となる隣接装置の階層に1を加えた値として定義することができる。
【0013】
隣接装置登録部40は、ネットワークNWにおいて一つ上位にある親装置P、一つ下位にある子装置Cおよび同位にある兄弟装置Sを隣接装置情報として設定し更新する演算ブロックである。隣接装置記憶部45は、隣接装置登録部40が設定し更新した隣接装置情報を記憶する。
【0014】
図2は、隣接装置記憶部45が記憶する隣接装置情報の一例である。
図2に示すように、実施形態の通信装置では、隣接装置情報として、隣接装置それぞれのアドレス、隣接装置それぞれのネットワークNWにおける階層、隣接装置それぞれに対応する通信品質、および、隣接装置それぞれに設定したルーティングの回数を示すカウント値が対応付けられている。
【0015】
ここで、通信装置1の階層が「2」であるとすると、アドレスRの通信装置(装置Rと称する。以下同様。)は階層が「0」であり、自己より上位かつ最上位であるから、自己の親装置であるとともに、ネットワークNWにおける頂点たるルータ装置であることが分かる。同様に、装置B、装置Cおよび装置Gは、階層が「1」であり自己より上位であるから、自己の親装置ということになる。装置Mは、階層が自己と同位の「2」であるから、兄弟装置、装置Iおよび装置Jは、階層がいずれも「3」であるから、自己より下位の子装置である。
【0016】
隣接装置情報における通信品質は、対応する装置との通信における通信品質であり、LQT(Link Quality Threshold)とも呼ばれる。LQTは、リンク品質を示す数値であり、数値が小さいほど品質が良いことを表す。例えば、リンクを設定するLQTを4と設定すると、LQTが4以下の装置を通信相手としたルーティングを行う。
【0017】
隣接装置情報におけるカウント値は、対応する装置宛のルーティングを何回行ったかを示す数値情報である。
図2に示す例では、通信装置1は、カウント値として自然数を用いており、装置Rに対して101回、装置Bに対して100回、装置Cに対して99回のルーティング設定を行ったことを示している。
【0018】
条件判定部50は、通信装置1がルーティングすべき相手装置を決定する演算ブロックである。条件判定部50は、隣接装置情報の階層、通信品質およびカウント値を用いてルーティングの相手装置を決定する。
【0019】
続いて、
図1ないし4を参照して、実施形態の通信装置1のネットワーク構築動作を説明する。実施形態におけるネットワークNWは、階層の最上位たるルータ装置Rを頂点とした階層構造をなしている。そのため、ネットワーク構築は装置Rがハローパケットをブロードキャスト送信することにより開始される。以下、実施形態の通信装置1は、
図4における装置Dであるものとして説明する。
【0020】
図3に示すように、送受信部10は上位たる装置Cからブロードキャスト送信されたハローパケットを受信する(ステップ100。以下「S100」のように称する。)。
【0021】
ルーティング設定部20は、受信したパケットから相手の識別子と階層情報を取り出す。ここで、初期状態においては、通信装置1の階層は設定されていないから(S105のNo)、階層設定部30は、ルーティング設定部20が取り出した相手の階層情報に1を加算した値を自己の階層として設定し、階層記憶部35に記憶させる(S110)。
【0022】
また、受信したパケットを送信したのは少なくとも自己よりも上位の装置であるから、隣接装置登録部40は、ルーティング設定部20が取り出した識別子の相手装置を親装置として設定し、隣接装置記憶部45に記憶させる(S115)。これにより、当該受信したパケットを送信した装置Cは装置Dの親装置であることが確定する。
【0023】
すでに自己階層が設定してある場合(S105のYes)、ルーティング設定部20が取り出した階層情報と階層記憶部35に記憶された自己の階層と同じであれば(S120のYes)、隣接装置登録部40は、受信した識別子の相手装置を自己と同位の兄弟装置として設定し、隣接装置記憶部45に記憶させる(S125)。例えば、
図4に示す装置Mからのハローパケットを受信した場合を考えると、相手の階層は「2」であるから装置Dと同位である。したがって、装置Mは装置Dの兄弟装置ということになる。
【0024】
さらに、ルーティング設定部20が取り出した階層情報と階層記憶部35に記憶された自己の階層とを比較した場合に(S130)、自己の階層の値の方が大きければ(S130のYes)、隣接装置登録部40は、受信した識別子の相手装置を親装置として設定し、隣接装置記憶部45に記憶させる(S135)。例えば、
図4に示す装置Bからのハローパケットを受信した場合を考えると、相手の階層は「1」であるから通信装置1よりも上位である。したがって、装置Bは装置Dの親装置ということになる。
【0025】
ルーティング設定部20が取り出した階層情報と階層記憶部35に記憶された階層とを比較した場合に(S130)、自己の階層の方が小さければ(S130のNo)、隣接装置登録部40は、受信相手を子装置として設定し、隣接装置記憶部45に記憶させる(S140)。例えば、
図4に示す装置Jからのハローパケットを受信した場合を考えると、相手の階層は「3」であるから自己よりも下位である。したがって、装置Jは装置Dの子装置ということになる。
【0026】
自己および相手装置の階層が確定すると、ルーティング設定部20は、受信した相手装置との通信品質情報を取得し(S145)、隣接装置登録部40は、当該通信品質情報を相手装置のアドレス、階層、通信品質と対応付けて隣接装置記憶部に記憶させる(S150)。
【0027】
自己の階層が確定すると、送受信部10は、自己の識別子および階層を階層記憶部35から読みだしてハローパケットとして送信する(S155)。送信したハローパケットを受信した隣接する装置は、上記した手順により各々の階層を決定していく。
【0028】
これらのステップを、最上位のルータ装置Rから順次行っていくことで、それぞれの装置の通信圏内の装置との間で親子関係、兄弟関係を確定させることができ、ネットワークNWを構築することができる。
【0029】
なお、ネットワークNWの上位・下位関係は、
図3にて説明した自律動作だけで決める必要はない。通信品質や経路コストを基準として上位・下位関係を適宜設定しても構わない。
【0030】
次に、実施形態の通信装置1におけるルーティング動作を詳細に説明する。
【0031】
前述のように構築されたメッシュ構造のネットワークにおいて、どの親装置に対してルーティングを行うかについて、様々な方法が提案されているが、一般に、より高い効率で経済的に通信を実現するルーティングが採用されている。しかし、経路コストを追求すると、ルーティングの最適解は一つに収斂されるから、複数の選択肢があるにもかかわらず通信経路は一つに収束してしまう。
【0032】
図5は、メッシュ構造を持つネットワークの一例であり、「0」(ルータ装置R)から「4」(装置N)までの5つの階層を持っている。装置Dを例にとると、親装置B、CおよびG、兄弟装置M、子装置IおよびJと接続されており、互いに通信可能な状態にある。さらに、
図5に示す例では、装置Dから直接ルータ装置Rにも通信経路が設定された状態にある。かかる状態で、経路コストを優先して最低の階層数かつ所定の通信品質(例えばLQTが4以下)を満たすことを条件にルーティングすると、太線にて示すルートに収斂する。すなわち、装置Dからのパケットは親装置BやCを経由せず直接装置Rにルーティングされている。
【0033】
装置Dは、下位に装置IおよびJを擁しているから、自己を通過する通信トラヒックも上位の装置に送信しなければならない。一方、装置Bや装置Cは、自己の通信トラヒック以外に下位から送られてくる通信ルートが存在しない(太線で示されるルーティングが存在しない)から、装置Dと比較して電力消費量は少なくて済む状態である。そうすると、
図5に示すネットワーク全体としては、特定の装置(通信トラヒックの多い装置)の電池の消耗が早くなって切断される可能性が高くなってしまう。実施形態の通信装置1は、ルーティング先を、通信品質を満たす隣接する装置の中から順次変更して、ネットワークの装置それぞれの電力消費を同等にすることで、ネットワーク全体の稼働時間を長くすることを可能にしている。
【0034】
具体的には、実施形態の通信装置1は、隣接装置記憶部45に記憶させる隣接装置情報として、ルーティング先の装置と、対応する通信品質およびルーティング回数(カウント値)を対応付けて管理する(
図2)。そして、ルーティング設定部20が、ルーティング回数が均一となるようルーティング先を決定している。
【0035】
以下、
図6および7を参照して、実施形態の通信装置1のルーティング動作を説明する。以下の説明において、通信装置1は、
図7に示すネットワーク上の装置Dであるものとする。最初の段階において、装置Dは装置Rをルーティング先として設定している(
図7中太線)。
【0036】
通信装置1において通信トラヒックが発生する等、ルーティングイベントが発生すると(S300)、条件判定部50は、隣接装置記憶部45から隣接装置情報を読み出し、ルーティング先の候補となる装置を抽出する。すなわち、階層が自己よりも上で所定の通信品質が満たされる装置を抽出する。
図2および
図7に示す例では、装置R(アドレスR)、装置B(同B)、装置C(同C)および装置G(同G)が該当する。すなわち、階層が1または0であり、通信品質が4以下の値をとる装置が抽出される。
【0037】
次いで、条件判定部50は、選択した4つの装置のうち、カウント値が最も小さい装置を選択する(S305)。
図2に示す例では、装置Cが該当する。
【0038】
ルーティング候補として装置Cが選択されると、ルーティング設定部20は、ルーティング先として装置Cを設定する(S310)。これにより、通信トラヒックのルーティング先は装置Rから装置Cに変更されることになる。
【0039】
ルーティング先が装置Cに決定すると、隣接装置登録部40は、隣接装置記憶部45に記憶された隣接装置情報のうち装置Cのカウント値に「1」を加算する(S315)。すなわち、
図2中「99」に「1」を加算する。
【0040】
カウント値の加算処理が終わると、隣接装置登録部40は、更新した隣接装置情報を隣接装置記憶部45に記憶させる(S320)。なお、カウント値が上限に達した場合(例えば0からカウントして255)、カウント値をリセットして再び「0」からカウントすれば、引き続き同様の動作を継続することができる。
【0041】
このような動作により、
図7における装置Dは、ルーティング先として装置Rだけでなく装置B、装置Cおよび装置Gも選択するようになる(
図7中破線)。ネットワークを構成する装置すべてにおいてこの動作を行うことで、ルーティング先が満遍なく分散され、個々の装置それぞれの電力消費を均一化することができる。
【0042】
以上説明した通り、実施形態の通信装置1は、隣接装置のアドレス、階層、通信品質、ルーティング回数を示す情報を対応付けて管理するので、ルーティング先の装置を固定させることなく、階層と通信品質などのルーティング先の要件を満たす装置すべてについて、満遍なくルーティング先として設定することができる。