説明

無線通信装置及びプログラム、並びに、無線通信システム

【課題】 複数の無線通信装置間の無線通信において、通信効率を向上させる。
【解決手段】 本発明は、複数の無線通信装置を配置して有する無線通信システムに関する。そして、無線通信装置は、当該無線通信装置の周辺に位置する周辺無線通信装置から通信制御に係る制御データを受信する手段と、制御データを受信した履歴から、周辺無線通信装置ごとに当該無線通信装置との通信状態に係る通信状態パラメータを算出する手段と、算出した周辺無線通信装置ごとの通信状態パラメータを格納する手段と、格納された情報の変動を検出する手段と、検出した変動内容に応じた内容の制御データを生成する手段と、生成した制御データの無線信号を当該無線通信装置の周辺に放出する手段とを有することを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、無線通信装置及びプログラム、並びに、無線通信システムに関し、例えば、複数の無線通信装置間でマルチホップ通信を行う無線通信システムに適用し得る。
【背景技術】
【0002】
複数の無線通信端末が配置間でマルチホップ通信を行う無線通信システムにおいて、各無線通信端末による通信要求が行われる前にあらかじめ経路を作成するプロアクティブ型のルーティングプロトコルが採用される場合、定期的に1ホップブロードキャストで制御データを有するパケット(Helloパケットと呼ばれる)を送信することで、隣接端末を検知して隣接端末のリストを作成しルーティングを行う。
【0003】
従来のアドホックネットワークのルーティングプロトコルとしては、特許文献1に記載されているOLSR(Optimized Link State Routing)がある。OLSRでは、隣接端末と相互に通信できるかどうかや、2ホップ先の端末を知るために、Helloパケットに隣接端末のリストが含まれる。また、OLSRの実装の1つであるolsrd(非特許文献2)では、図11に示すように、隣接端末が送信したHelloパケットの受信率LQ(Link Quality)を計算し、受信率をHelloパケットの隣接端末リストに付加し隣接に通知する。各端末は隣接端末が送信したHelloパケットの受信率と、自身が送信したHelloパケットの隣接端末での受信率を知ることができる。このようにolsrdでは双方向の到達率を測定することで、品質のよい無線リンクを優先してルーティングで用いるようにしている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】IETF RFC3626
【非特許文献2】Andreas Tonnesen、Thomas Lopatic、Hannes Gredler、Bernd Petrovitsch、Aaron Kaplan、Sven−Ola Tucke他著、「olsrd Link Quality Extensions」、[Online]、INTERNET、[2009年8月27日検索],<URL: http://www.olsr.org/docs/README-Link-Quality.html>
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、非特許文献1、2に記載の技術では、複数の無線通信端末が密に配置され隣接しあう無線通信端末が多い場合や、各無線通信端末が利用可能な通信帯域が狭い場合、Helloパケットの送信によって消費される通信帯域の割合が大きくなり、通信効率が低減する。
【0006】
そのため、複数の無線通信装置間の無線通信において、通信効率を向上させることができる無線通信装置及びプログラム、並びに、無線通信システムが望まれている。
【課題を解決するための手段】
【0007】
第1の本発明は、無線通信端末において、(1)当該無線通信装置の周辺に位置する周辺無線通信装置から通信制御に係る制御データを受信する制御データ受信手段と、(2)上記制御データ受信手段受信した制御データを用いて、周辺無線通信装置ごとに当該無線通信装置との通信状態に係る通信状態パラメータを求める通信状態パラメータ算出手段と、(3)上記通信状態パラメータ算出手段が算出した、周辺無線通信装置ごとの通信状態パラメータの情報を格納する通信状態情報格納手段と、(4)上記通信状態情報格納手段に格納された情報の変動を検出する変動検出手段と、(5)上記変動検出手段が検出した変動内容に応じた内容の制御データを生成する制御データ生成手段と、(6)記制御データ生成手段が生成した制御データの無線信号を、当該無線通信装置の周辺に放出する制御データ送信手段とを有することを特徴とする。
【0008】
第2の本発明の無線通信プログラムは、(1)無線通信端末に搭載されたコンピュータを、(2)当該無線通信装置の周辺に位置する周辺無線通信装置から通信制御に係る制御データを受信する制御データ受信手段と、(3)上記制御データ受信手段受信した制御データを用いて、周辺無線通信装置ごとに当該無線通信装置との通信状態に係る通信状態パラメータを求める通信状態パラメータ算出手段と、(4)上記通信状態パラメータ算出手段が算出した、周辺無線通信装置ごとの通信状態パラメータの情報を格納する通信状態情報格納手段と、(5)上記通信状態情報格納手段に格納された情報の変動を検出する変動検出手段と、上記変動検出手段が検出した変動内容に応じた内容の制御データを生成する制御データ生成手段と、(6)記制御データ生成手段が生成した制御データの無線信号を、当該無線通信装置の周辺に放出する制御データ送信手段として機能させることを特徴とする。
【0009】
第3の本発明の無線通信システムは、複数の無線通信端末を配置して有する無線通信システムにおいて、それぞれの上記無線通信端末として第1の本発明の無線通信端末を適用したことを特徴とする。
【発明の効果】
【0010】
本発明によれば、複数の無線通信装置間の無線通信において、通信効率を向上させることができる。
【図面の簡単な説明】
【0011】
【図1】第1の実施形態に係る無線通信端末の機能的構成について示した説明図である。
【図2】第1の実施形態に係る無線通信システムの全体構成について示した説明図である。
【図3】第1の実施形態に係る、隣接端末テーブルに記憶される情報の例について示した説明図である。
【図4】第1の実施形態に係るHelloパケット処理部の動作について示したフローチャートである。
【図5】第1の実施形態に係るテーブルチェック部の動作について示したフローチャートである。
【図6】第1の実施形態に係るHelloパケット生成部の動作について示したフローチャートである。
【図7】第2の実施形態に係る、隣接端末テーブルに記憶される情報の例について示した説明図である。
【図8】第2の実施形態に係るHelloパケット処理部の動作について示したフローチャートである。
【図9】第2の実施形態に係るテーブルチェック部の動作について示したフローチャートである。
【図10】第2の実施形態に係るHelloパケット生成部の動作について示したフローチャートである。
【図11】従来の無線通信端末におけるHelloパケットの内容例について示した説明図である。
【発明を実施するための形態】
【0012】
(A)第1の実施形態
以下、本発明による無線通信装置及びプログラム、並びに、無線通信システムの第1の実施形態を、図面を参照しながら詳述する。なお、第1の実施形態においては、本発明の無線通信装置を無線通信端末に適用した例について説明している。
【0013】
(A−1)第1の実施形態の構成
図2は、この実施形態の無線通信システム10の全体構成例を示した説明図である。なお、図2において、括弧内の符号は、後述する第2の実施形態においてのみ用いられるものである。
【0014】
図2に示すように、無線通信システム10には、少なくとも4つの無線通信端末100(100−1〜100−4)が配置されているものとして説明するが、配置する無線通信端末100の数は限定されないものである。また、無線通信システム10を構成する無線通信端末100間では、既存のルーティング処理を用いたマルチホップ通信が行われ、そのルーティング処理に用いるHelloパケットが、無線通信端末100間で送受信されるものとする。なお、各無線通信端末100が生成するHelloパケットの形式自体は、既存の無線通信装置におけるHelloパケットと同様の形式を適用するようにしても良く、この実施形態においては、例として、図11に示すHelloパケットの形式を適用するものとする。
【0015】
また、図2においては、無線通信端末100−1と直接無線通信可能な位置に、無線通信端末100−2〜100−4が配置されているものとする。すなわち、無線通信端末100−2〜100−4は、無線通信端末100−1に隣接する位置(周辺の位置)に配置されている。
【0016】
図1は、それぞれの無線通信端末100−1〜100−4の内部の機能的構成について示したブロック図である。なお、図1において、括弧内の符号は、後述する第2の実施形態においてのみ用いられるものである。
【0017】
無線通信端末100は、無線端末は無線送受信部101、パケットタイプ判定部102、Helloパケット処理部103、隣接端末テーブル104、テーブルチェック部105、Helloパケット生成部106を有している。
【0018】
無線通信端末100は、CPU、ROM、RAM、EEPROM、ハードディスクなどのプログラムの実行構成、及び、他の通信装置と通信をするためのインターフェースを有する装置(1台に限定されず、複数台を分散処理し得るようにしたものであっても良い。)に、実施形態の無線通信プログラム等をインストールすることにより構築するようにしても良く、その場合でも機能的には上述の図1のように示すことができる。
【0019】
無線送受信部101は、当該無線通信端末100において、他の無線通信端末100と無線通信するための機能を担っている。無線送受信部101は、他の無線通信端末100から送信されたパケットを受信すると、少なくともパケットタイプ判定部102にそのパケットを与える。また、無線送受信部101は、Helloパケット生成部106により生成されたHelloパケットの無線信号を、当該無線通信端末100の周辺に放出し、周辺の無線通信端末100に送信する。
【0020】
パケットタイプ判定部102は、無線送受信部101から与えられたパケットを分析してその種別を判定し、Helloパケットのみを選別して、Helloパケット処理部103に与える。パケットタイプ判定部102が、パケットの種別を判定する方法としては、例えば、パケットのヘッダ部の内容に応じて判定するようにしても良い。
【0021】
Helloパケット処理部103は、パケットタイプ判定部102から与えられたHelloパケットの履歴及び、そのHelloパケットの内容に応じて、隣接端末テーブル104の内容を更新する。Helloパケット処理部103の処理内容の詳細については後述する。
【0022】
隣接端末テーブル104は、当該無線通信端末100が、隣接する無線通信端末100から与えられたHelloパケットの履歴及び内容に基づく情報を格納する機能を担っており、当該無線通信端末100のHelloパケット生成部106が生成するHelloパケットの内容の基礎となる。隣接端末テーブル104に格納される情報は、隣接端末テーブル104、テーブルチェック部105、Helloパケット生成部106Helloにより更新される。
【0023】
次に、隣接端末テーブル104に格納される情報の内容の詳細について説明する。
【0024】
図3は、隣接端末テーブル104の内容例について示した説明図である。
【0025】
図3の例では、隣接端末テーブル104に格納される情報は、階層化されており、図3(a)は、最上位層から見た情報のラベルを示している。図3(b)は、図3(a)における、それぞれの「隣接テーブルエントリ」の内容を示しており、図3(c)は、図3(b)における「2ホップ隣接端末リスト」のそれぞれの「2ホップ隣接エントリ」の内容を示している。
【0026】
図3(a)に示すように、隣接端末テーブル104には、少なくとも、「更新フラグ」と、1又は複数の「隣接テーブルエントリ」の情報が格納されている。
【0027】
隣接端末テーブル104には、当該無線通信端末100がHelloパケットを受取った他の無線通信端末100の数、すなわち当該無線通信端末100に隣接する無線通信端末100の数だけ「隣接テーブルエントリ」が格納される。例えば、この実施形態においては、無線通信端末100−1に隣接する無線通信端末100としては、3つの無線通信端末100−2〜100−4があるので、無線通信端末100−1において、隣接端末テーブル104には、3つの隣接テーブルエントリが格納されることになる。
【0028】
Helloパケット処理部103は、ある無線通信端末100について、始めてHelloパケットを受取った場合には、その無線通信端末100に係る隣接テーブルエントリを新たに生成して、隣接端末テーブル104に格納する。また、Helloパケット処理部103は、既に隣接端末テーブル104に隣接テーブルエントリが登録されている無線通信端末100からのHelloパケットを受取った場合には、最新に受取ったHelloパケットも利用して、当該隣接テーブルエントリの内容を更新する(変更が必要な場合)。
【0029】
また、Helloパケット処理部103は、いずれかの隣接テーブルエントリの内容を変更する更新を行った際には、「更新フラグ」を更新済を示す情報にセットする。なお、この実施形態においては、例として、「更新フラグ」の初期値は「0」とし、Helloパケット処理部103は、隣接テーブルエントリの内容を更新した際には、更新フラグの内容を、更新済を示す「1」に変更するものとして説明する。
【0030】
次に、それぞれの「隣接テーブルエントリ」の内容について説明する。それぞれの「隣接テーブルエントリ」には、それぞれ、図3(b)に示すように、「隣接端末アドレス」、「LQ」、「NLQ(Neighbor Link Quality)」、「Hello受信時刻」、「有効時間」、「2ホップ隣接端末リスト」の情報が格納されている。
【0031】
「隣接端末アドレス」には、当該隣接テーブルエントリに対応する無線通信端末100の識別情報(例えば、IPアドレスやMACアドレス等)が登録される。
【0032】
「LQ」には、当該隣接テーブルエントリに対応する無線通信端末100から受信したHelloパケットの履歴における受信率に応じて算出されたLQの値が格納される。LQは、既存の算出方法(例えば、特許文献1、2に記載の方法)により算出するようにしても良い。
【0033】
「NLQ」には、当該無線通信端末100から、当該隣接テーブルエントリに対応する無線通信端末100へ送信したHelloパケットの受信率の値が格納される。なお、NLQは、既存の方法(例えば、特許文献1、2に記載の方法)により求めるようにしても良く、例えば、当該隣接テーブルエントリに対応する無線通信端末100において、当該無線通信端末100につけられたLQの値としても良い。
【0034】
「Hello受信時刻」は、当該隣接テーブルエントリに対応する無線通信端末100から最新に受信したHelloパケットの受信時刻を表しており、「有効時間」は、その最新に受信したHelloパケットの有効時間を表している。「有効時間」の長さは限定されないものであるが、第1の実施形態においては、それぞれの無線通信端末100−2〜100−4において、所定の固定時間が適用されるものとして説明する。
【0035】
「2ホップ隣接端末リスト」は、当該隣接テーブルエントリに対応する無線通信端末100に隣接する無線通信端末100であって、当該無線通信端末100(自端末)から見て2ホップ先の無線通信端末100(以下、「2ホップ隣接端末」という)のリストであり、1又は複数の「2ホップ隣接エントリ」を有している。2ホップ隣接端末リストには、それぞれの2ホップ隣接端末ごとに、対応する2ホップ隣接エントリが格納される。
【0036】
「2ホップ隣接エントリ」の情報には、当該隣接テーブルエントリに対応する無線通信端末100から、当該無線通信端末100(自端末)に与えられたHelloパケットの隣接端末リスト(「端末アドレス」及び「LQ」)から抽出された情報が格納される。
【0037】
テーブルチェック部105は、任意のタイミングで、隣接端末テーブル104の内容をチェックする。そして、テーブルチェック部105は、隣接端末テーブル104のそれぞれの隣接テーブルエントリについて、Hello受信時刻及び有効時間をチェックし、現在時刻が、Hello受信時刻に有効時間を加算した時刻を経過している場合、当該隣接テーブルエントリが有効期限を経過したことを示す更新を行う。第1の実施形態においては、テーブルチェック部105は、隣接テーブルエントリが有効期限を経過したことを示すために、LQの値を「0」にする更新を行うものとする。
【0038】
Helloパケット生成部106は、隣接端末テーブル104の内容に基づいてHelloパケットを生成し、作成されたHelloパケットは無線送受信部101を通して隣接する無線通信端末100に送信する。
【0039】
Helloパケット生成部106は、隣接端末テーブル104において、更新フラグが更新済であることを示す「1」であった場合には、各隣接テーブルエントリの隣接端末アドレス及びLQの情報を隣接端末リストに含むHelloパケットを生成する。一方、Helloパケット生成部106は、隣接端末テーブル104において、更新フラグが更新されていないことを示す「0」であった場合には、隣接端末リストが空のHelloパケットを生成して無線送受信部101に与える。
【0040】
(A−2)第1の実施形態の動作
次に、以上のような構成を有する第1の実施形態の無線通信システム10の動作を説明する。
【0041】
ここでは、無線通信端末100−1に、無線通信端末100−2〜100−4が隣接して配置されているものとして、無線通信端末100−1に搭載されたHelloパケット処理部103、テーブルチェック部105、Helloパケット生成部106のそれぞれの動作について説明する。
【0042】
(A−2−1)Helloパケット処理部の動作について
図4は、Helloパケット受信処理部103の動作について説明したフローチャートである。
【0043】
以下の説明では、無線通信端末100−2から、無線通信端末100−1にHelloパケットが送信された場合の無線通信端末100−1の動作を例として説明する。
【0044】
まず、無線通信端末100−2から、無線通信端末100−1へ与えられた、Helloパケットが、無線通信端末100−1において受信され、パケットタイプ判定部102により選別されて、Helloパケット処理部103に与えられたものとする。
【0045】
そして、Helloパケット処理部103では、最新に受信したHelloパケットと、過去に受信したHelloパケットの履歴からHelloパケットの受信率LQが算出される(S101)。
【0046】
次に、受信したHelloパケットに隣接端末リストが含まれているか否かが判定され(S102)、隣接端末リストが含まれている場合には、後述するステップS103の処理から動作し、含まれていない場合には、後述するステップS104の処理から動作する。
【0047】
上述のステップS102において、受信したHelloパケットに隣接端末リストのエントリが含まれていると判定された場合には、その隣接端末リストについて、無線通信端末100−1(自端末)に係るエントリが検索される。そして、その隣接端末リストに、自装置に係るエントリがあった場合には、無線通信端末100−1(自端末)に係るエントリのLQの値を、無線通信端末100−2に係るNLQの値として保持する。一方、その隣接端末リストに、無線通信端末100−1(自端末)に係るエントリがなかった場合には、無線通信端末100−2に係るNLQは0であるものとして保持する(S103)。
【0048】
一方、上述のステップS102において、最新に与えられたHelloパケットに隣接端末リストにエントリが存在しない(すなわち、空の状態)と判定され場合、又は、上述のステップS103の処理が行われると、無線通信端末100−2に係る隣接テーブルエントリが、隣接端末テーブル104に存在するか否かが判定される(S104)。
【0049】
そして、上述のステップS104において、無線通信端末100−2に係る隣接テーブルエントリが、隣接端末テーブル104に存在する場合には、後述するステップS106の処理から動作し、存在しない場合には、無線通信端末100−2に係る隣接テーブルエントリが、隣接端末テーブル104に追加され(S105)、後述するステップS107から動作する。
【0050】
一方、上述のステップS104において、無線通信端末100−2に係る隣接テーブルエントリが、隣接端末テーブル104に存在する場合には、該当する隣接テーブルエントリにおけるLQ及びNLQの値と、上述のステップS101、S103において算出したLQ、NLQの値(算出が行われていれば)とが比較され、いずれかの値が異なるか、両方の値が同一であるかが判定される(なお、値が異なっていても、差分が閾値以下の場合には同一と判定するようにしても良い)(S106)。
【0051】
上述のステップS106において、「値が異なる」と判定された場合には、後述するステップS107の処理から動作し、「値が同一」と判定された場合には、後述するステップS108の処理から動作する。
【0052】
上述のステップS106において、「値が異なる」と判定された場合、又は、上述のステップS105の処理が行われた場合には、Helloパケット処理部103は、隣接端末テーブル104の「更新フラグ」について更新済を表す「1」に更新する(S107)
そして、上述のステップS106において、「値が同一」と判定された場合、または、上述のステップS107の処理が行われた場合には、Helloパケット処理部103により、無線通信端末100−2に係る隣接テーブルエントリについて更新が行われる(S108)。
【0053】
具体的には、Helloパケット処理部103は、無線通信端末100−2に係る隣接テーブルエントリの各情報について、以下のような更新を行う。「Hello受信時刻」を現在の時刻に登録する。また、上述のステップS101で求めた「LQ」を登録し、上述のステップS103で「NLQ」の値の算出が行われていた場合、その「NLQ」も登録する。さらに、最新に与えられたHelloパケットに、隣接端末リストのエントリが含まれている場合(空でない場合)は、隣接端末リストの内容に基づいて「2ホップ隣接端末リスト」も更新する。
【0054】
(A−2−2)テーブルチェック部の動作について
図5は、テーブルチェック部105の動作について示したフローチャートである。
【0055】
テーブルチェック部105は、隣接端末テーブル104の内容のチェックを行うタイミングとなると、隣接端末テーブル104の全隣接テーブルエントリに対して、ループ処理により、後述するステップS201〜S203の処理を行う。
【0056】
なお、テーブルチェック部105において、隣接端末テーブル104の内容のチェックを行うタイミングについては、限定されないものであるが、例えば、定期的なタイミングや、Helloパケットを受信したタイミングとすること等が挙げられる。
【0057】
まず、当該隣接テーブルエントリについて、現在時刻が「Hello受信時刻」から「有効時間」を経過しているか否かが判定され(S201)、経過していると判定された場合には、後述するステップS202の処理から動作し、経過していないと判定された場合には、当該隣接テーブルエントリに係る処理を終了して、次の隣接テーブルエントリの処理に移行する。
【0058】
上述のステップS201において、現在時刻が「Hello受信時刻」から「有効時間」を経過していると判定された場合には、当該隣接テーブルエントリのLQの値を「0」に設定して(S202)更新フラグに更新済を示す「1」にセットし(S203)、当該隣接テーブルエントリに係る処理を終了して、次の隣接テーブルエントリの処理に移行する。
【0059】
(A−2−3)Helloパケット生成部の動作について
図6は、Helloパケット生成部106の動作について示したフローチャートである。
【0060】
Helloパケット生成部106において、Helloの送信タイミングとなると、まず、隣接端末リストが空のHelloパケットが生成される(S301)。
【0061】
なお、Helloパケット生成部106において、Helloの送信タイミングについては、限定されないものであるが、例えば、定期的なタイミングとすること等が挙げられる。
【0062】
そして、隣接端末テーブル104の「更新フラグ」の内容がチェックされ(S302)、更新フラグが「1」にセットされていた場合には、後述するステップS303の処理から動作し、更新フラグが「0」のままだった場合には、後述するステップS305の処理から動作する。
【0063】
上述のステップS302において、更新フラグが「1」にセットされていた場合には、Helloパケット生成部106により、隣接端末テーブル104に含まれる全ての隣接テーブルエントリに係る、「隣接端末アドレス」と「LQ」を含めたHelloパケットが生成され(S303)、「更新フラグ」がクリア(「0」に設定)される(S304)。
【0064】
そして、上述のステップS302において、更新フラグが「0」のままだったと判定された場合、又は、上述のステップS304の処理が行われると、Helloパケット生成部106により、上述のステップS303において生成されたHelloパケットの隣接端末リストにおいて、LQ=0となっている無線通信端末100に係る隣接テーブルエントリが、隣接端末テーブル104から削除される(S305)。
【0065】
そして、上述のステップS301〜S303の処理により生成されたHelloパケットが、Helloパケット生成部106から無線送受信部101へ与えられる(S306)。
【0066】
(A−3)第1の実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
【0067】
各無線通信端末100が算出するLQ、NLQに変化がないときは、隣接端末リストが空のHelloパケットが相互に送受信されるので、Helloパケットの送受信によるリンク品質の測定を行いつつ、Helloパケットが占める帯域を小さくすることができ、通信効率を向上させることができる。一方、各無線通信端末100が算出するLQ、NLQに変化がある場合には、隣接端末リストに隣接端末アドレス及びLQの情報を含んだHelloパケットが相互に送受信されるので、無線通信端末100間のリンク品質に変動があった場合でも、各無線通信端末100では、リンク品質の変動に応じた動作(例えば、通信経路の変更等)を行い、通信品質も保つことができる。
【0068】
(B)第2の実施形態
以下、本発明による無線通信装置及びプログラム、並びに、無線通信システムの第2の実施形態を、図面を参照しながら詳述する。なお、第2の実施形態においては、本発明の無線通信装置を無線通信端末に適用した例について説明している。
【0069】
(B−1)第2の実施形態の構成
第1の実施形態においては、それぞれの無線通信端末100は、隣接端末テーブル104における全ての隣接テーブルエントリについて、隣接端末リストに含めたHelloパケットを生成するか、隣接端末リストを空にしたHelloパケットを生成するかであった。一方、第2の実施形態においては、隣接テーブルエントリごとに更新フラグが設定して、更新のあった隣接テーブルエントリに係る情報だけを、隣接端末リスト含めたHelloパケットを生成する点で異なっている。
【0070】
以下、第2の実施形態について第1の実施形態との差異を説明する。
【0071】
この実施形態の無線通信システム10Aの全体構成例も、図2により示すことができる。なお、図2において、括弧内の符号は、第2の実施形態においてのみ用いられるものである。
【0072】
図2に示すように、無線通信システム10Aには、少なくとも4つの無線通信端末100A(100A−1〜100A−4)が配置されているものとして説明するが、配置する無線通信端末100Aの数は限定されないものとする。
【0073】
また、それぞれの無線通信端末100A−1〜100A−4の内部の機能的構成についても、上述の図1を用いて示すことができる。なお、図1において、括弧内の符号は、第2の実施形態においてのみ用いられるものである。
【0074】
それぞれの、無線通信端末100Aは、無線送受信部101、パケットタイプ判定部102、Helloパケット処理部103A、隣接端末テーブル104A、テーブルチェック部105A、Helloパケット生成部106Aを有している。
【0075】
無線送受信部101、パケットタイプ判定部102については、第1の実施形態と同様のものであるので詳しい説明を省略する。また、Helloパケット処理部103A、隣接端末テーブル104A、Helloパケット生成部106Aの詳細については、後述する動作説明において詳述する。
【0076】
図7は、隣接端末テーブル104Aに格納される情報について示した説明図である。
【0077】
図7(a)は、隣接端末テーブル104Aに格納される情報の最上位層から見たラベルを示している。図7(b)は、図7(a)におけるそれぞれの隣接テーブルエントリの内容を示している。
【0078】
図7に示す通り、隣接端末テーブル104Aにおいて、隣接テーブルエントリから2ホップ隣接端末リストの情報が省略され、隣接端末テーブル104A全体ではなく、隣接テーブルエントリごとに更新フラグが設定される点で、第1の実施形態の隣接端末テーブル104と異なっている。また、接端末テーブル104Aにおいて、各隣接テーブルエントリに、「チェック時刻」、「Hello周期時間」の情報が追加されている点で、第1の実施形態と異なっている。その他の項目の情報については、第1の実施形態と同様であるので、詳しい説明を省略する。
【0079】
「チェック時刻」は、当該隣接テーブルエントリについて、テーブルチェック部105Aにより、所定の処理が行われた時刻を示している。テーブルチェック部105Aによる「チェック時刻」に対する処理については、後述する動作説明において詳述する。
【0080】
「Hello周期時間」は、当該無線通信端末100A(自端末)において、Helloパケットを送出する周期の時間を示すものである。「Hello周期時間」の長さは限定されないものであるが、第2の実施形態においては、それぞれの無線通信端末100A−2〜100A−4において、所定の固定時間が適用されるものとして説明する。
【0081】
(B−2)第2の実施形態の動作
次に、以上のような構成を有する第2の実施形態の無線通信システム10Aの動作を説明する。
【0082】
ここでは、図2に示すように、無線通信端末100A−1に、無線通信端末100A−2〜100A−4が隣接して配置されているものとして、無線通信端末100A−1のHelloパケット処理部103A、テーブルチェック部105A、Helloパケット生成部106Aのそれぞれの動作を中心に説明する。
【0083】
(B−2−1)Helloパケット処理部の動作について
図8は、Helloパケット受信処理部103Aの動作について説明したフローチャートである。
【0084】
また、以下の説明では、上述の図4に示す第1の実施形態におけるHelloパケット処理部103の動作との差異についてのみ説明する。
【0085】
ステップS401〜S406、S408の処理は、それぞれ、上述の図4に示すステップS101〜S106、S108と同様の処理(ただし、2ホップ隣接端末リストに係る処理は省略)であるので詳しい説明を省略する。
【0086】
ステップS407は、当該隣接テーブルエントリが新たに追加されたものであった場合、又は、最新に算出したLQ又はNLQの値が、当該隣接テーブルエントリに登録されている値と異なる場合に、当該隣接テーブルエントリに係る更新フラグだけを「1」にセットする点で、上述の図4のステップS107と異なっている。
【0087】
(B−2−2)テーブルチェック部の動作について
図9は、テーブルチェック部105Aの動作について示したフローチャートである。
【0088】
テーブルチェック部105Aは、隣接端末テーブル104Aの内容のチェックを行うタイミングとなると、隣接端末テーブル104Aの全隣接テーブルエントリに対して、ループ処理により、後述するステップS501〜S507の処理を行う。
【0089】
まず、当該隣接テーブルエントリについて、現在時刻が「Hello受信時刻」から「有効時間」を経過しているか否かが判定され(S501)、経過していると判定された場合には、後述するステップS502の処理から動作し、経過していないと判定された場合には、後述するステップS504の処理から動作する。
【0090】
上述のステップS501において、現在時刻が当該隣接テーブルエントリに係る「Hello受信時刻」から「有効時間」を経過していると判定された場合には、当該隣接テーブルエントリのLQの値が「0」に設定され(S502)、さらに、更新フラグに更新済を示す「1」がセットされ(S503)、当該隣接テーブルエントリに係る処理を終了して、次の隣接テーブルエントリの処理に移行する。
【0091】
一方、上述のステップS501において、現在時刻が当該隣接テーブルエントリに係る「Hello受信時刻」から「有効時間」を経過していないと判定された場合には、さらに、現在時刻が、当該隣接テーブルエントリの「チェック時刻」から「Hello周期時間」が経過しているか否かが判定される(S504)。
【0092】
上述のステップS504において現在時刻が当該隣接テーブルエントリに係る「Hello受信時刻」から「有効時間」を経過していると判定された場合には、隣接端末テーブル104Aにより、現時点における、当該隣接テーブルエントリに対応する無線通信端末100Aに係るLQが算出されて、当該隣接テーブルエントリのLQ値が更新される(S505)。そして、テーブルチェック部105Aにより、当該隣接テーブルエントリに係るチェック時刻に現在時刻がセットされ(S506)、さらに、更新フラグに更新済を示す「1」がセットされ(S507)、当該隣接テーブルエントリに係る処理を終了して、次の隣接テーブルエントリの処理に移行する。
【0093】
一方、上述のステップS504において現在時刻が当該隣接テーブルエントリに係る「Hello受信時刻」から「有効時間」を経過していないと判定された場合には、テーブルチェック部105Aは、当該隣接テーブルエントリに係る処理を終了して、次の隣接テーブルエントリの処理に移行する。
【0094】
(B−2−3)Helloパケット生成部の動作について
図10は、Helloパケット生成部106Aの動作について示したフローチャートである。
【0095】
Helloパケット生成部106Aにおいて、Helloの送信タイミングとなると、まず、隣接端末リストが空のHelloパケットが生成される(S601)。
【0096】
なお、Helloパケット生成部106Aにおいて、Helloの送信タイミングについては、限定されないものであるが、例えば、定期的なタイミングとすること等が挙げられる。
【0097】
次に、Helloパケット生成部106Aは、隣接端末テーブル104Aの全隣接テーブルエントリの内容に基づいて、上述のステップS601で生成した空のHelloパケットの隣接端末リストの内容を設定する処理を行う。具体的には、Helloパケット生成部106Aは、隣接端末テーブル104Aの全隣接テーブルエントリについて、後述するステップS602〜S604のループ処理を行う。
【0098】
まず、Helloパケット処理部103Aにより、当該隣接テーブルエントリの更新フラグの内容がチェックされる(S602)。
【0099】
上述のステップS602のチェックにおいて、当該隣接テーブルエントリの更新フラグの内容が「1」であった場合には、Helloパケット生成部106Aは、後述するステップS603の処理から動作し、更新フラグが「0」の場合には、Helloパケット生成部106Aは、当該隣接テーブルエントリの処理を終了して、次の隣接テーブルエントリの処理に移行する。
【0100】
上述のステップS602のチェックにおいて、当該隣接テーブルエントリの更新フラグの内容が「1」であった場合には、Helloパケット生成部106Aは、当該隣接テーブルエントリの隣接端末アドレス及びLQの情報を、上述のステップS601で生成したHelloパケットの隣接端末リストに追加し(S603)、当該隣接テーブルエントリの更新フラグをクリア(「0」に設定)する(S604)。そして、Helloパケット処理部103Aは、当該隣接テーブルエントリの処理を終了して、次の隣接テーブルエントリの処理に移行する。
【0101】
上述のように、Helloパケット処理部103Aは、隣接端末テーブル104Aの全ての隣接テーブルエントリについて、上述のステップS602〜S604の処理を行い、Helloパケットの隣接端末リストを完成させる。
【0102】
そして、Helloパケット処理部103Aにより、上述のステップS601〜S604において生成されたHelloパケットの隣接端末リストにおいて、LQ=0となっている無線通信端末100に係る隣接テーブルエントリが、隣接端末テーブル104Aから削除される(S605)。
【0103】
そして、Helloパケット生成部106Aにより、上述のステップS601〜S604において生成されたHelloパケットが、無線送受信部101へ与えられる(S606)。
【0104】
(B−3)第2の実施形態の効果
第2の実施形態によれば、以下のような効果を奏することができる。
【0105】
無線通信システム10Aでは、各無線通信端末100Aによって算出されるLQ、NLQの変化がないときは、隣接端末リストが空のHelloパケットが送信される。また、各無線通信端末100Aによって算出されるLQ、NLQの変化があるときは、変化があった隣接テーブルエントリに対応する無線通信端末100Aに係る情報だけを、隣接端末リストに入れることができるので、Helloパケットのデータサイズをより小さくし、Helloパケットが占める帯域を小さくして通信効率を向上させることができる。
【0106】
(C)他の実施形態
本発明は、上記の各実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
【0107】
(C−1)上記の各実施形態では、本発明の無線通信装置を無線通信端末に適用した例について説明したが、本発明の無線通信装置は無線通信端末に適用することに限定されず、例えば、無線ルータや無線アクセスポイント等の配下に他の端末や装置を収容するもの等、他の無線通信装置に適用するようにしても良い。
【0108】
(C−2)上記の各実施形態では、隣接端末テーブルの各隣接テーブルエントリには、図3(b)、図7(b)に示すように、「Hello受信時刻」及び「有効時間」の情報が含まれるものとして説明したが、これらの情報を省略し、無線通信端末100においてこれらの情報に係る処理も省略するようにしても良い。
【0109】
また、第1の実施形態で、隣接端末テーブル104の各隣接テーブルエントリには、図3(b)に示すように、2ホップ隣接端末リスト(2ホップ隣接エントリ)を含むものとして説明したが、2ホップ隣接エントリの情報は省略し、無線通信端末100において2ホップ隣接端末リストに係る処理も省略するようにしても良い。
【0110】
さらに、第2の実施形態で、隣接端末テーブル104Aの各隣接テーブルエントリには、図7(b)に示すように、「チェック時刻」及び「Hello周期時間」の情報が含まれるものとして説明したが、この2つの情報を省略し、無線通信端末100においてこれらの情報に係る処理を省略するようにしても良い。
【0111】
(C−3)上記の各実施形態においては、無線通信端末は、テーブルチェック部を有するものとして説明したが、テーブルチェック部を省略して構築するようにしても良い。
【0112】
(C−4)上記の各実施形態において、隣接端末テーブル内の更新フラグについて、LQ又はNLQのいずれかの項目の情報に変更があった場合に、更新済を示す「1」に設定しているが、更新フラグを「1」に変更する条件はこれに限られないものである。例えば、隣接テーブルエントリのLQの値が変更された時にのみ、更新フラグを更新済を示す「1」に設定する等、他の組み合わせを適用するようにしても良い。
【符号の説明】
【0113】
10…無線通信システム、100、100−1〜100−4…無線通信端末、101…無線送受信部、102…パケットタイプ判定部、103…Helloパケット処理部、104…隣接端末テーブル、105…テーブルチェック部、106…Helloパケット生成部。

【特許請求の範囲】
【請求項1】
無線通信装置において、
当該無線通信装置の周辺に位置する周辺無線通信装置から通信制御に係る制御データを受信する制御データ受信手段と、
上記制御データ受信手段受信した制御データを用いて、周辺無線通信装置ごとに当該無線通信装置との通信状態に係る通信状態パラメータを求める通信状態パラメータ算出手段と、
上記通信状態パラメータ算出手段が算出した、周辺無線通信装置ごとの通信状態パラメータの情報を格納する通信状態情報格納手段と、
上記通信状態情報格納手段に格納された情報の変動を検出する変動検出手段と、
上記変動検出手段が検出した変動内容に応じた内容の制御データを生成する制御データ生成手段と、
上記制御データ生成手段が生成した制御データの無線信号を、当該無線通信装置の周辺に放出する制御データ送信手段と
を有することを特徴とする無線通信装置。
【請求項2】
上記変動検出手段は、上記通信状態情報格納手段に格納された情報のうち、いずれかの周辺無線通信装置に係る通信状態パラメータが変動すると、その変動を検出し、
上記制御データ生成手段は、上記変動検出手段が上記通信状態情報格納手段に格納された情報の変動を検出した場合、上記通信状態情報格納手段に格納された周辺無線通信装置ごとの通信状態パラメータの情報を含む制御データを生成し、上記変動検出手段が上記通信状態情報格納手段に格納された情報の変動を検出しなかった場合には、上記通信状態情報格納手段に格納された周辺無線通信装置ごとの通信状態パラメータの情報を含まない制御データを生成する
ことを特徴とする請求項1に記載の無線通信装置。
【請求項3】
上記変動検出手段は、上記通信状態情報格納手段に格納された情報について、周辺無線通信装置ごとの通信状態パラメータの変動の有無を検出し、
上記制御データ生成手段は、上記変動検出手段により、変動が検出された周辺無線通信装置に係る通信状態パラメータの情報だけを含む制御データを生成する
ことを特徴とする請求項1に記載の無線通信装置。
【請求項4】
無線通信装置に搭載されたコンピュータを、
当該無線通信装置の周辺に位置する周辺無線通信装置から通信制御に係る制御データを受信する制御データ受信手段と、
上記制御データ受信手段受信した制御データを用いて、周辺無線通信装置ごとに当該無線通信装置との通信状態に係る通信状態パラメータを求める通信状態パラメータ算出手段と、
上記通信状態パラメータ算出手段が算出した、周辺無線通信装置ごとの通信状態パラメータの情報を格納する通信状態情報格納手段と、
上記通信状態情報格納手段に格納された情報の変動を検出する変動検出手段と、
上記変動検出手段が検出した変動内容に応じた内容の制御データを生成する制御データ生成手段と、
上記制御データ生成手段が生成した制御データの無線信号を、当該無線通信装置の周辺に放出する制御データ送信手段と
して機能させることを特徴とする無線通信プログラム。
【請求項5】
複数の無線通信装置を配置して有する無線通信システムにおいて、それぞれの上記無線通信装置に請求項1〜3のいずれかに記載の無線通信装置を適用したことを特徴とする無線通信システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate