(57)【要約】【課題】  ある無線ノードから別の無線ノードへ１以上の無線ノードを経由して情報を伝送するアドホックネットワークにおいて、情報伝送に関与する無線ノードに同一の周波数を選択させる無線通信方法を使用する無線通信装置を提供すること。【解決手段】  無線通信装置は、当該無線通信装置周辺に別の無線通信装置が存在することを検出する検出手段と、当該無線通信装置で管理される第１の基準値と、前記別の無線通信装置で管理される第２の基準値とを比較する比較手段と、比較結果に基づき、前記第１の基準値を修正する手段と、前記第１の基準値を前記別の無線通信装置に報知する手段とを有する。当該無線通信装置の電波は届かないが前記別の無線通信装置の電波は届く更に別の無線通信装置の周波数と、当該無線通信装置の周波数とが同じになるように、周波数が設定される。【選択図】  図２
2006254209.tif 000002
【特許請求の範囲】
【請求項１】
アドホックネットワークにおける無線通信装置であって、
当該無線通信装置周辺に別の無線通信装置が存在することを検出する検出手段と、
当該無線通信装置で管理される第１の基準値と、前記別の無線通信装置で管理される第２の基準値とを比較する比較手段と、
比較結果に基づき、前記第１の基準値を修正する手段と、
前記第１の基準値を前記別の無線通信装置に報知する手段と
を有し、当該無線通信装置の電波は届かないが前記別の無線通信装置の電波は届く更に別の無線通信装置の周波数と、当該無線通信装置の周波数とを一致させる
ことを特徴とする無線通信装置。
【請求項２】
アドホックネットワークにおける無線通信装置であって、
第１の基準値を格納する記憶手段と、
第２の基準値を含む報知信号を、別の無線通信装置から受信する受信手段と、
前記第１及び第２の基準値を比較する比較手段と、
比較手段による比較結果に応じて、前記報知信号で指定される周波数を、無線通信に使用するか否かを決定する手段と
を備えることを特徴とする無線通信装置。
【請求項３】
前記第１及び第２の基準値が、時間で表現される量である
ことを特徴とする請求項１記載の無線通信装置。
【請求項４】
前記第１及び第２の基準値が、時間以外の数値である
ことを特徴とする請求項１記載の無線通信装置。
【請求項５】
前記第１及び第２の基準値が、時間で表現される量と時間以外の数値との組み合わせで表現される
ことを特徴とする請求項１記載の無線通信装置。
【請求項６】
前記第１及び第２の基準値が、時刻、ある時点からの経過時間、乱数、無線通信装置に固有の識別子、通信品質又はアドホックネットワークに接続済みの無線通信装置の台数の内の１以上で表現される
ことを特徴とする請求項１記載の無線通信装置。
【請求項７】
第１の基準値を含む報知信号を作成し、別の無線通信装置に送信する手段
を更に備えることを特徴とする請求項２記載の無線通信装置。
【請求項８】
前記第１の基準値とは異なる値を基準値として含む報知信号を作成し、別の無線通信装置に送信する手段
を更に備えることを特徴とする請求項２記載の無線通信装置。
【請求項９】
前記比較結果に応じて、第１の基準値が前記第２の基準値に変更される
ことを特徴とする請求項２記載の無線通信装置。
【請求項１０】
アドホックネットワークにおける無線通信装置で使用される無線通信方法であって、
報知信号を受信し、
無線通信装置で格納済みの第１の基準値と、前記報知信号に含まれる第２の基準値とを比較し、
比較結果に応じて、前記報知信号で指定される周波数を、無線通信に使用するか否かを決定する
ことを特徴とする無線通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に無線通信の技術分野に関し、特に複数の無線通信装置（無線ノード又はノードとも言及される）でアドホックネットワークにおける無線通信装置及び無線通信方法に関する。
【背景技術】
【０００２】
この種の技術分野では、アドホックネットワーク、マルチホップネットワーク又はメッシュネットワーク等と言及されるネットワーク方式が注目されている。アドホックネットワークでは、アクセスポイント（ＡＰ：ａｃｃｅｓｓ  ｐｏｉｎｔ）や無線基地局等のような固定的なインフラを必要とせずに、隣接する無線ノード間で直接通信を行うことができ、通信相手の無線ノードに情報を伝送する間に、１以上の他の無線ノードを経由することが許容される。アドホックネットワークは、固定的なインフラの無い場所でも無線ネットワークを柔軟に構築できるので、ネットワークの経済的な構築法として有望である。アドホックネットワークは、家庭やオフィス等の屋内の通信環境だけでなく、ホットスポットのような屋外の私的な又は公的なネットワークに利用されてもよい。また、アドホックネットワークは、固定的なインフラを要しないので、災害時における一時的なネットワークの構築にも有利である。
【０００３】
図１はアドホックネットワークの模式的な全体図を示し、ノードＡ乃至Ｇの複数のノードが示されている。アドホックネットワークは、複数のノードを集中的に統括又は制御する装置を必要としないが、通信に関与する各ノードで使用される周波数は、同じであることを要する。即ち、通信する各ノードの送信装置と受信装置が同一の周波数で動作する必要があり、各ノードはそのように周波数を選択する周波数同期機能を有する必要がある。
【０００４】
例えば非特許文献１に記述されている無線ＬＡＮシステムでは、２つの通信形態を規定している。その１つはＢＳＳモードと呼ばれ、通信端末（ＳＴＡ：ｓｔａｔｉｏｎ）は、アクセスポイントＡＰである無線基地局を経由して通信を行う。ＢＳＳモードでは、アクセスポイントＡＰが、通信に利用される周波数を統括的に決定し、各通信端末ＳＴＡは、アクセスポイントＡＰから定期的に又は不定期的に送信される報知情報（ビーコンとも呼ばれる）を受信し、アクセスポイントＡＰで使用される周波数に合わせる。もう１つはｉＢＳＳモードと呼ばれ、全ての通信端末ＳＴＡが互いに電波の届く範囲内に位置する条件のもとで、各通信端末ＳＴＡが互いに無線回線で直接接続することにより通信が行われる。ｉＢＳＳモードでは、他のノードが送信しているビーコンを受信できるか否かを自ノードで確認し、他のノードから送信されるビーコンを検出できなかった場合には、その通信端末ＳＴＡ（自ノード）は、使用する周波数を自ら決定し、ビーコンを送信する。また、他ノードから送信されたビーコンを検出できた場合には、通信端末は、ビーコンに示される周波数に合わせる。
【０００５】
非特許文献２に示されているブルートゥース（Ｂｌｕｅｔｏｏｔｈ（登録商標））においては、ノードに、マスタ（Ｍａｓｔｅｒ）とスレーブ（Ｓｌａｖｅ）という２つのカテゴリーがあり、マスタの役割を担うノードが周波数を決定し、スレーブのノードはマスタの決定した周波数に従って周波数の同期を図る。この場合において、マスタは、１つのネットワーク（ピコネット）で１つしか存在できない。
【非特許文献１】Ｔｈｅ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ，Ｉｎｃ．，（“ＩＥＥＥ”），“ＩＥＥＥ  Ｗｉｒｅｌｅｓｓ  ＬＡＮ  Ｅｄｉｔｉｏｎ  −Ａ  ｃｏｍｐｉｌａｔｉｏｎ  ｂａｓｅｄ  ｏｎ  ＩＥＥＥ  Ｓｔｄ  ８０２．１１ＴＭ−１９９９  （Ｒ２００３）  ａｎｄ  ｉｔｓ  ａｍｅｎｄｍｅｎｔｓ−”，  ２００３
【非特許文献２】Ｊ．Ｂｒａｙ，Ｃｈａｒｌｅｓ  Ｆ  Ｓｔｕｒｍａｎ，“Ｂｌｕｅｔｏｏｔｈ  Ｃｏｎｎｅｃｔ  Ｗｉｔｈｏｕｔ  Ｃａｂｌｅｓ”，  Ｐｒｅｎｔｉｃｅ−Ｈａｌｌ，Ｉｎｃ，２００１
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ＢＳＳモードの非特許文献１及び非特許文献２のような従来技術では、アクセスポイントＡＰのような集中制御機能を有するノードが、配下の１以上のノードＳＴＡを統括的に制御することを前提としている。アドホックネットワークに集中制御機能を有するノードを配置することは技術的には可能である。しかし、１つの集中制御ノードへの接続を前提とした機構は、ネットワークの信頼性を低下させるおそれがある。なぜなら、ネットワークを構成するノード数及び位置関係（ネットワークトポロジ）は逐次変化し、ノード間を接する無線リンクの回線品質は不安定に変化しやすいためである。
【０００７】
例えば、集中制御機能を有するノードがネットワークから離脱することや、集中制御機能を有するノードに至るまでの途中経路の無線回線品質が劣化すること等により、多数のノードの通信品質の劣化、延いてはネットワーク全体の通信品質の劣化や通信断を招くおそれがある。
【０００８】
また非特許文献１のｉＢＳＳモードでは、そのような集中制御機能を有するノードを要しないが、ネットワークを構成する総てのノードが互いに電波の届く範囲内にあることを前提としている。従って、この技術は、より広範囲にわたる領域でネットワークを展開しようとする場合（マルチホップネットワーク）には適切ではない。例えばノードＡの電波が届く範囲では周波数ｆＡが、ノードＢの電波が届く範囲では周波数ｆＢが利用されるような設定がなされると、ネットワークが分断されてしまうことになる。
【０００９】
上述したようなアドホックネットワークの制約の中で、全てのノードで利用される周波数を、ネットワークの分断なく自律的に整合させ、ネットワーク内のノード構成が変更されたとしても安定的な通信を確保できる周波数同期方式が望まれる。
【００１０】
本発明は、上記問題点の少なくとも１つに対処するためになされたものであり、その課題は、ある無線ノードから別の無線ノードへ１以上の無線ノードを経由して情報を伝送するアドホックネットワークにおいて、情報伝送に関与する無線ノードに同一の周波数を選択させる通信方法及びその無線通信方法を使用する無線通信装置を提供することである。
【課題を解決するための手段】
【００１１】
本発明では、アドホックネットワークにおける無線通信装置が使用される。無線通信装置は、当該無線通信装置周辺に別の無線通信装置が存在することを検出する検出手段と、当該無線通信装置で管理される第１の基準値と、前記別の無線通信装置で管理される第２の基準値とを比較する比較手段と、比較結果に基づき、前記第１の基準値を修正する手段と、前記第１の基準値を前記別の無線通信装置に報知する手段とを有する。当該無線通信装置の電波は届かないが前記別の無線通信装置の電波は届く更に別の無線通信装置の周波数と、当該無線通信装置の周波数とが同じになるように、周波数が決定される。
【発明の効果】
【００１２】
本発明によれば、アドホックネットワークにおける情報伝送に関与する無線ノードに同一周波数を効率的に設定することができる。
【発明を実施するための最良の形態】
【００１３】
本発明の一態様によれば、アドホックネットワークにおける無線通信装置（ノード）にて、報知信号が受信され、無線通信装置で格納済みの第１の基準値と、前記報知信号に含まれる第２の基準値とが比較される。比較結果に応じて、報知信号で指定される周波数を、無線通信に使用するか否かが決定される。事前に周波数を設定することなく、各ノードが自律的に周波数を設定するので、アドホックネットワーク（メッシュネットワーク）を簡易且つ柔軟に構築できる。ノードで使用されるべき周波数は、そのノードで自律的に決定されるので、集中制御機能を有するような特定のノードの通信状況によらず、ノードは安定的に周波数を設定できる。また、そのような特定のノードを要しないので、ネットワーク中のどのノードがネットワークから離脱しても、他のノードは通信を安定に維持できる。すべてのノードが１ホップで到達可能な範囲に存在することは必須でないので、２ホップ以上離れたノード間で、同一の周波数を簡易に決定することができる。決定又は選択される周波数は、どの周波数でもよく、任意の周波数にネットワーク全体のノードを同期させることができる。
【００１４】
第１及び第２の基準値は、時間で表現される量でもよい。そのような量は例えば、起動時点のようなある時点の時刻でもよいし、ある時点からの経過時間でもよい。この場合、ネットワーク内で、より早期から動作しているノードを優先することができ、そのようなノードでの周波数の設定変更をなるべく少なくすることができる。多くのノードに時計機能は備わっているので、基準値を起動時の絶対時間で表すことは、ノードに付加する機能を少なくする点で有利である。基準値に経過時間を使用する場合は、起動時点からの比較的短期間を測定できるタイマが備わっていればよいので、絶対時間を正確に知る必要がなく、ＧＰＳや正確な計時機能を備えなくて済む点で有利である。
【００１５】
第１及び第２の基準値は、時間以外の値でもよい。そのような値は、例えば、乱数、無線通信装置に固有の識別子、通信品質又はアドホックネットワークに接続済みの無線通信装置の台数等でもよい。乱数が利用される場合は、２つの乱数が一致することは極めて希であるので、何れのノードの周波数を優先させるかを確実に決定できる（衝突又は競合を著しく少なくすることができる。）。同様な観点からは、第１及び第２の基準値は無線通信装置に固有の識別子で表現されてもよい。第１及び第２の基準値は、通信品質で表現されてもよい。この場合は、品質の良好な周波数を優先して使用することができる。
【００１６】
通信に使用する周波数を合わせる必要性は、ノードがネットワークに参入する場合に加えて、各自別個の周波数を利用する複数のネットワークが、１つのネットワークに統合される場合にも生じる。本発明は何れの場合にも適用可能である。後者のような場合には、第１及び第２の基準値は、ネットワークに接続済みの無線通信装置の台数で表現されてもよい。接続台数の多いネットワークの周波数を優先することで、周波数の設定変更を要するノード数を少なくすることができる。
【００１７】
「周波数」なる語は、１つのノードが通信に使用する最小単位の周波数だけでなく、適切ならば、使用可能な周波数の帯域を意味してもよい。例えば、４０ＭＨｚの帯域を将来利用しようとする無線通信装置と、２０ＭＨｚの帯域を実際に利用している無線通信装置との間の周波数の調整を行う場合に、本発明が利用されてもよい。或いは、２０ＭＨｚの帯域を利用するネットワークと、４０ＭＨｚの帯域を利用するネットワークとを統合するような状況に、本発明が使用されてもよい。
【００１８】
第１及び第２の基準値は、時間で表現される量と、時間以外の数値との組み合わせで表現されてもよい。そのような組み合わせで表現すると、時間で表現される量が同じ場合であっても、基準値の比較結果に応じて、通信に使用する周波数を確実に決定できる。
【００１９】
本発明の一態様によれば、比較結果に応じて、第１の基準値が前記第２の基準値に変更されてもよい。例えば、基準値が時間で表現される場合には、無線通信装置間で基準値を合わせることで、時間を同期させることができる。このように基準値（基準値の少なくとも一部）が更新されることで、最終的には、ネットワーク内の総ての無線通信装置が、時間及び周波数を合わせることができる。
【００２０】
１つのノードに複数のネットワークインターフェースが備わっている場合には、ネットワークインターフェース毎に周波数等を管理することが望ましい。このような場合には、報知信号が、インターフェースの識別子を含み、その識別子でインターフェースが区別されてもよい。この場合、インターフェース毎に基準値が管理されてもよい。
【００２１】
また、少なくとも一部が物理的に同じ空間内に複数のアドホックネットワークが存在する場合には、ネットワーク毎に基準値及び周波数等を管理することが望ましい。このような場合には、報知信号にネットワークの識別子を含ませ、同一の識別子を有するネットワークに属するノードのみが基準値等の管理の対象にされてもよい。
【００２２】
本発明の一態様では、第１の基準値を含む報知信号が無線通信装置で作成され、別の無線通信装置にそれが送信される。第１の基準値とは異なる値を基準値として含む報知信号が無線通信装置で作成され、別の無線通信装置に送信されてもよい。これにより、その無線通信装置は、ネットワークで使用される周波数を、自身の指定する内容に強制することができる。例えば、ある無線通信装置が、第１の基準値（起動時点の絶対時刻）とは異なる値（その絶対時刻よりも非常に前の時間）を基準値として含む報知信号を報知することで、事実上、その無線通信装置の指定する周波数を優先させることができる。或いは逆に、自身の真の基準値とは別に、常に最新時間を含む報知信号を基準値として報知することで、その特定の無線通信装置の指定する周波数等の内容が、他の無線通信装置の設定内容に影響を与えないようにしてもよい。
【実施例１】
【００２３】
図２は本発明の一実施例による通信装置の機能ブロック図を示す。通信装置は、無線アドホックネットワークを構成する複数のノードの１つに相当する。それ以外のノードも同様な構成及び機能を有する。通信装置は、アンテナ２０２、無線インターフェース２０４、パケット転送部２０６、経路制御部２０８、中央処理装置（ＣＰＵ）２１０及び記憶部２１０を有する。これらの要素に加えて、通信装置は、報知情報送信部２１４、報知情報受信部２１６、基準値制御部２１８及び周波数制御部２２０を有する。
【００２４】
無線インターフェース２０４は、アンテナ２０２を通じて通信する無線信号と、通信装置内部で使用する信号との間の変換処理を行う。より具体的には、アナログ信号及びディジタル信号間の形式の変換、周波数変換、帯域制限、利得制御等の処理が行われる。例えば、ＩＥＥＥ８０２．１１の規格に従う無線信号に関する処理が行われる。パケット転送部２０６は、他の通信装置に送信するパケットを作成し、無線インターフェース２０４に与える。ユーザが送受信しようとするペイロードは、このパケット転送部２０６により伝送される。この場合において、送信されるパケットの伝送経路は、経路制御部２０８にて管理される。ＣＰＵ２１０は通信装置内の各要素の動作を制御する。記憶部２１２は、通信装置に必要なデータを格納する。
【００２５】
報知情報送信部２１４は報知パケットを作成し、それを無線インターフェース２０４に与える。報知パケットは近隣ノードに通知される。報知パケットは、ネットワーク内のノード間の周波数同期機能（本発明により発揮される周波数を合わせる機能）に必要な報知情報を含む。報知パケットは、定期的に他ノードに通知されてもよいし、他ノードからの要求に応じて通知されてもよい。前者の場合には、例えば、ＩＥＥＥ８０２．１１規格で規定されるビーコン（Ｂｅａｃｏｎ）等を利用して実現されてもよい。後者の場合には、ＩＥＥＥ８０２．１１規格で規定されるプローブ要求（Ｐｒｏｂｅ  ｒｅｑｕｅｓｔ）及びプローブ応答（Ｐｒｏｂｅ  ｒｅｓｐｏｎｓｅ）等を利用して実現されてもよい。報知情報には、後述の「基準値」が必ず含まれるが、この他に、ネットワーク識別子（ＩＤ）、通信に実際に利用する周波数（使用周波数）、本発明のアルゴリズムによって選択された周波数（基準周波数）、基準周波数を実際に利用しているか否かの情報、インターフェースの識別子等が含まれてもよい。インターフェースの識別子には、共通チャネル（ネットワーク全体で共通に利用されるチャネル）用のインターフェースであることを示す情報が含まれてもよい。後述されるように、ノードは、基準周波数と同じ周波数を使用周波数に設定してもよいし、基準周波数とは異なる周波数を使用周波数に設定してもよい。
【００２６】
報知情報受信部２１６は、近隣のノードから通知される報知パケットを受信し、ネットワークのノード間の周波数同期に必要な情報を取得する。上述したように、報知パケットは、定期的に他ノードから受動的に受信されてもよいし、或いは自ノードが他ノードに報知パケットを能動的に要求してもよい。報知情報受信部２１６は、近隣の他ノードからの情報を取得するので、自ノード周辺における他ノードの存否を調べることもできる。無線ノードが利用できる周波数（チャネル）は、複数あってもよいので、その場合の近隣ノードの検出は、使用される可能性のある周波数毎になされる必要がある。
【００２７】
図３は、自ノード周辺における他ノードの存否を調べるフローチャートを示す。図示の例では、自ノードのそばに１つの他ノード又は隣接ノードがあり、他ノードは周波数ｆ２で通信を行っているものとする。自他のノードで使用する可能性のある周波数は、ｆ１，ｆ２，ｆ３であるとする。図示されているように、隣接ノードはビーコンを利用して定期的に報知パケットを送信し、その報知パケットは自ノードに定期的に到来している。自ノードは、ステップ３１にて、周波数ｆ１で通信している他ノードの存否を調べる。隣接ノードは周波数ｆ２で通信しているので、この段階では、その隣接ノードは検出されない。自ノードは、ステップ３２にて、周波数ｆ２で通信している他ノードの存否を調べる。隣接ノードは周波数ｆ２で通信しているので、この段階で、その隣接ノードが検出される。更に、自ノードは、ステップ３３にて、周波数ｆ３で通信している他ノードの存否を調べる。隣接ノードは周波数ｆ２で通信しているので、この段階では、その隣接ノードは検出されない。このようにして、自ノードは、周波数ｆ２で通信している隣接ノードが存在することを知ることができる。以後、この隣接ノードと自ノードとの間の通信で、自ノードの使用すべき周波数が、後述の手法に従って決定される。
【００２８】
図４も、自ノード周辺における他ノードの存否を調べるフローチャートを示す。図示の例では、自ノードのそばに１つの他ノード又は隣接ノードがあり、他ノードは周波数ｆ２で通信を行っているものとする。自他のノードで使用する可能性のある周波数は、ｆ１，ｆ２，ｆ３であるとする。この例では、自ノードは、ステップ４１に先立って、プローブ要求パケットを近辺の隣接ノードに送信する。このプローブ要求パケットは、隣接ノードが周波数ｆ１を使用しているならば応答することを要求する。隣接ノードは周波数ｆ２で通信しているので、応答はなされず、この段階では、その隣接ノードは検出されない。自ノードは、ステップ４２に先立って、プローブ要求パケットを近辺の隣接ノードに送信する。このプローブ要求パケットは、隣接ノードが周波数ｆ２を使用しているならば応答することを要求する。隣接ノードは周波数ｆ２で通信しているので、応答がなされ、その隣接ノードが検出される。自ノードは、ステップ４３に先立って、プローブ要求パケットを近辺の隣接ノードに送信する。このプローブ要求パケットは、隣接ノードが周波数ｆ３を使用しているならば応答することを要求する。隣接ノードは周波数ｆ２で通信しているので、応答はなされず、この段階では、その隣接ノードは検出されない。このようにして、自ノードは、周波数ｆ２で通信している隣接ノードが存在することを知ることができる。以後、この隣接ノードと自ノードとの間の通信で、自ノードの使用すべき周波数が、後述の手法に従って決定される。図３，４に示されるように、受動的に又は能動的に近隣のノードを検出することができる。
【００２９】
なお、近隣のノードの存否を調べる際に、ネットワークＩＤが併用されてもよい。例えば、複数のネットワークが存在する場合には、ネットワーク（ネットワークインターフェース）毎に近隣ノードを検出する必要があり、そのような場合に、ネットワークＩＤが使用されてもよい。この場合は、近隣ノードが報知するネットワークＩＤと、自ノードが保有するネットワークＩＤが一致した場合にのみ、近隣ノードが存在するものと判断される。
【００３０】
近隣ノードの検出方法については、例えば、特開２００４−４８５０３号に記載されているような方法が使用されてもよいかもしれない。但し、この公知技術は、いわゆるモバイルＩＰネットワークにおいて、近隣ノードをレイヤ３で検出しようとするので、レイヤ２における処理を前提とする本発明の実施例の処理にそのまま適用することは容易でないかもしれない。
【００３１】
近隣ノードの検出結果および受信した報知情報の内容は、図２の基準値制御部２１８および周波数制御部２２０に与えられる。
【００３２】
基準値制御部２１８は、自ノードの基準値を管理する。具体的には、基準値制御部２１８は、近隣ノードから取得した基準値と自ノードの記憶部２１２等に格納済みの基準値とを比較し、比較結果に基づいて、自ノードの基準値を更新する（例えば、自ノードの基準値が、他ノードの基準値で置き換えられる。）。基準値制御部２１８における基準値の比較や基準値の更新は、典型的には、報知情報受信部２１６が近隣ノードを検出した場合に行われる。報知情報受信部２１６から供給される基準値には、様々な形態があり得る。本実施例では、基準値に、ある時点からの経過時間が採用されている。ある時点とは、例えばそのノードを起動した時点でもよい。なお、基準値が、後述されるように、経過時間を表す量であるならば、近隣ノードの存否とは別に、基準値は適宜更新されてもよい。
【００３３】
基準値制御部２１８は、自ノードの経過時間（基準値）と近隣ノードの経過時間（基準値）を比較し、経過時間の長短を調べる。比較の結果、より長い経過時間を与えるノードはどれであるかが判定される。近隣ノードからの経過時間の方が長かった場合は、自ノードの経過時間が、近隣ノードの経過時間で置換される。一方、近隣ノードからの経過時間の方が短かった場合は、自ノードの経過時間はそのまま維持される。以後、時間の経過と共に、基準値としての経過時間が逐次更新される。基準値制御部２１８における比較結果は、周波数制御部２２０及び報知情報送信部２１４に通知される。
【００３４】
周波数制御部２２０は、基準値制御部２１８からの比較結果等に基づいて、自ノードの周波数を管理する。ただし、インターフェースＩＤが利用されている場合には、周波数の管理はネットワークインターフェース毎に実施される。通信装置は、その起動時又はネットワークへの参入時などの場合に、そのノードで使用しようとする周波数（基準周波数）を選択する。様々な選択方法が考えられるが、一例として、利用可能な周波数の利用状況を観測し、最も利用されていない周波数を選択することが挙げられる。基準値制御部２１８から通知された比較結果が、自ノードの経過時間の方が長いことを示す等の場合には、基準周波数を用いて通信を行うことが許可される。一方、他ノードの経過時間の方が長いことを示す場合には、基準周波数を用いて通信を行うことは認められない。この場合は、他ノードで使用している周波数を用いて通信が行われる。図３，４の例において、隣接ノードがより長い経過時間を有しており、自ノードが周波数ｆ２を利用しようとしていたならば（基準周波数はｆ２）、自ノードは周波数ｆ２を使用してもよい。この場合、周波数制御部２２０は、基準周波数ｆ２を実際に使用する周波数（使用周波数）として決定し、決定内容を無線インターフェース２０４に通知する。しかし、図３，４の例において、隣接ノードがより長い経過時間を有しており、自ノードが周波数ｆ１を利用しようとしていたならば（基準周波数はｆ１）、それは認められず、自ノードは周波数ｆ２で通信しなければならない。この場合、周波数制御部２２０は、実際の通信に使用する周波数（使用周波数）をｆ２に決定し、決定内容を無線インターフェース２０４に通知する。自ノードの基準周波数はｆ１からｆ２に変更される。基準周波数は、報知情報に含まれ、他ノードに通知される情報の一部をなす。
【００３５】
図５は、本発明の一実施例による、複数ノード間で使用周波数を一致させる方法を示すフローチャートである。図中、下向きの縦軸は時間の流れに沿うものである。図中左側の破線で示される矢印は、ノード１の起動時から計時又はカウントされる経過時間ＥＴ１を示す。経過時間は、時刻と同様に時、分、秒などで連続的に計時されもよいが、簡明化のため、本実施例では経過時間は、０，１０，２０，．．．のような離散的な値をとるものとする。例えば、ＥＴ１＝０の期間の後に、ＥＴ１＝１０の期間が続く。図中右側の破線で示される矢印は、ノード２の起動時から計時される経過時間ＥＴ２を示す。この経過時間も、０，１０，２０，．．．のような離散的な値をとる。ノード１の基準周波数（通信に使用しようとしている周波数）は当初はｆ１に設定され、この周波数はこの時点では未使用であるとする。ノード２の基準周波数はｆ２に設定され、ノード２はノード１の起動前に既に周波数ｆ２で実際の通信を行った実績があるものとする。即ち、ノード１の使用周波数は未定であるが、ノード２の使用周波数はｆ２である。
【００３６】
ノード１では、起動後に経過時間が計時され、経過時間ＥＴ１は、０，１０，．．．のように増えてゆく。ノード１は近隣のノードの有無を検出する。本実施例では、図４で説明されたような能動的な検出方法が使用される（図３に示されるような受動的な検出方法が使用されてもよい。）。図示の例では、ノード１は経過時間ＥＴ１＝２０のときに、周波数ｆ２に関するプローブ要求パケットを送信する。このプローブ要求パケットを受信したノード２の基準周波数はｆ２であるので、プローブ応答パケットを返送する。プローブ応答パケットは、その送信時点のノード２の経過時間ＥＴ２（＝５０）を含む。このプローブ応答パケットを受信したノード１は、図２の基準値制御部２１８で、２つの経過時間ＥＴ１，ＥＴ２を比較する。図示の例では、ＥＴ１＝２０で示される期間内で、この処理が行われる。目下の例では、ＥＴ１＝２０＜ＥＴ２＝５０なので、ノード２の基準周波数及び使用周波数が優先される。従って、ノード１の基準周波数はｆ１からｆ２に変更され、使用周波数はｆ２に設定される。一方、ノード２の側でも、ＥＴ２＝５０の期間内で、通知された経過時間ＥＴ１＝２０とノード２自身の経過時間ＥＴ２＝５０とが比較される。ＥＴ１＝２０＜ＥＴ２＝５０なので、ノード２の基準周波数及び使用周波数が優先される。従って、ノード２の基準周波数はｆ２のまま変更されず、使用周波数もｆ２のままである。このようにして、経過時間の長い方を優先し、古くから動作しているノードの設定変更回数をなるべく少なくすることができる。
【００３７】
ノード１では、基準周波数の更新と共に、経過時間ＥＴ１も２０から５０に変更される。以後、ノード１での経過時間は、５０，６０，７０，．．．のように増えてゆく。これにより、ノード１とノード２の経過時間を同期させることもできる。更に、ノード１及びノード２の経過時間（基準値）が同じなので、以後ネットワークに参入するノードは、ノード１，２のどちらと周波数を合わせてもよい。従って、基準値を適切に更新することで、ある新規参入ノードが、ノード１の電波の届かない場所にあったとしても、ノード２と通信可能ならば、ノード１及び２と周波数を合わせることができる。
【００３８】
図６は、図２に示されるような通信装置の動作に関する状態遷移図を示す。本発明に関しては、「初期設定」、「待機」、「近隣ノードの探索」、「基準値の比較」、「基準値の同期」、「基準周波数の比較」、「基準周波数の同期」及び「基準値の報知」として図示される状態が想定されている。
【００３９】
（初期設定）
この状態では、基準値及び基準周波数が初期設定される。近隣で最も利用されていない周波数が、初期の基準周波数に自動的に選択されてもよいし、何らかの周波数が基準周波数として手動的に設定されてもよい（マニュアル設定）。自ノードが実際に通信に利用する周波数（使用周波数）に、基準周波数がそのまま採用されてもよいし、後述されるように、基準周波数とは別の周波数が採用されてもよい。初期設定の状態では、ネットワークを識別するネットワークＩＤ、インターフェースを区別するインターフェースＩＤが設定されてもよい。ノードが複数の無線インターフェースを実装しているならば、基準値及び基準周波数がインターフェース毎に設定できるように、インターフェースＩＤが使用されてもよい。初期設定の後は「待機」状態に移行する。
【００４０】
（待機）
二重の円で示されるこの状態では、通信装置は、次の状態に移るまで待機する。この状態は、初期設定後の状態遷移間の基本状態である。「待機」状態から次の状態への状態遷移は、ある時間経過の後に行われてもよいし、何らかのイベントに応じて行われてもよい。
【００４１】
（近隣ノードの探索）
ノードは、「待機」状態からの移行後にこの状態に至る。この移行は、タイマー等で管理されたタイミングで、又は近隣ノードの探索の要求を受けた場合に行われる。図２の報知信号受信部２１６で近隣ノードが検出されなかった場合は、「待機」状態に戻る。また近隣ノードが検出された場合は、ノードは、近隣ノードの基準値、基準周波数、インターフェースＩＤ等の情報を取得し、「基準値の比較」状態に移行する。近隣ノードの基準周波数は、近隣ノードの使用周波数を検出することで見出してもよいし、近隣ノードから受信した報知パケットから抽出してもよい。近隣ノードが検出されると、ノードは「基準値の比較」状態に移行し、そうでなければ「待機」状態に戻る。報知パケットにネットワークＩＤが挿入されている場合であって、自ノードが所属するネットワークＩＤと近隣ノードから取得したネットワークＩＤが異なっているときは、近隣ノードは発見されなかったのと同じであるから、ノードは「待機」状態に移行する。
【００４２】
（基準値の比較）
この状態では、自ノードの基準値と、検出された近隣ノードの基準値との比較が行われ、何れかが選択される（例えば、より大きな値が選択される。）。自ノードの基準値が選択された場合には、「待機」状態への移行が行われる。近隣ノードの基準値が選択された場合には、「基準値の同期」状態への移行が行われる。
【００４３】
基準値の内容として、上記の経過時間の他に様々なものが使用されてもよい。以下の基準値は、限定的に列挙されるものではなく、例示的なものに過ぎない。
【００４４】
（ａ）起動時の絶対時間
ノードが起動された時刻（絶対時間）が、基準値として利用されてもよい。この場合、各ノードは、少なくともそのような時間を知るための構成を備えている必要があり、時計（タイマー）やＧＰＳ等を実装する必要がある。ノードが起動された時刻を比較することで、古くから動作しているノードの周波数を優先し、周波数の設定変更を要するノード数をなるべく減らすことができる。時計等の機能は通信装置に備わっていることが多いので、基準値を管理するだけのために別段の機構を用意しなくて済む。
【００４５】
（ｂ）起動からの経過時間
図５に示される例のように、各ノードの起動時からの経過時間が基準値として利用されてもよい。経過時間の長短を比較することで、より以前から動作しているノードの周波数を優先させることができる。基準値に経過時間を利用する場合は、経過時間を測定するために適宜リセットすることのできるタイマが必要になる。更にそのタイマは、基準値制御部２１８の比較結果に応じて、経過時間を調整できることが望ましい。調整には、リセットだけでなく、時間を進める又は遅らせることが含まれてもよい。
【００４６】
（ｃ）各ノード一意の識別子
各ノードが作成する乱数や、各ノードに一意の値（ＭＡＣアドレス等）が基準値として利用されてもよい。時間で表現される基準値は、比較の結果、同じ値になる可能性があり、何れのノードの周波数を優先させるべきかが明確でないことも起こり得る。ノードに一義的に対応する値を基準値に採用することで、競合するノード間の優先性を明確に決定することができる。
【００４７】
（ｄ）既にネットワークに接続しているノードの台数
複数のネットワークが存在し、各ネットワークで現在は異なる使用周波数が設定されているが、それらのネットワークは将来統合される場合に、各ネットワークに既に接続しているノードの数が、基準値に利用されてもよい。各ノードは、ネットワークの接続台数を管理するためのカウンタを有し、接続台数を定期的に又は不定期的に逐次更新する必要がある。例えば、３台のノードが接続されているネットワークＡと、１０台のノードが接続されてるネットワークＢが存在し、それらが統合される場合、ネットワークＢの使用周波数を優先させることが考えられる。これにより、使用周波数の設定変更を行うノード数を、なるべく少なくすることができる。
【００４８】
（ｅ）使用周波数の品質
実際に通信に使用されている使用周波数での通信品質が、基準値に使用されてもよい。通信品質は、例えばＳＩＲ等で表現されてもよい。利用可能な周波数のうち、利用度の少ない周波数を選択することで、通信品質や通信資源の使用効率を向上させることができる。通信品質の測定は、定期的に又は不定期的に行ってもよい。
【００４９】
（ｆ）組み合わせ
図５に示される例では、経過時間の相違に基づいて基準周波数等が更新された。従って、経過時間が同じ場合には、基準周波数を合わせることができない。この問題に対処するには、別の基準値を付加的に又は代替的に使用することが考えられる。例えば、経過時間に加えて、ＭＡＣアドレスや乱数値が基準値に併用されてもよい。絶対時間や経過時間等が同じ場合には、ＭＡＣアドレスや乱数値の情報を比較することで、何れかのノードを優先させることができる。即ち、基準値が、経過時間とＭＡＣアドレス（及び／又は乱数）とで表現されてもよい。ＩＥＥＥ８０２．１１規格では時間に関する情報がノード間で通信されるので、上記のような態様はそのような規格に準拠する通信装置に望ましい。なお、基準値の組み合わせは、これに限定されず、適切ないかなる組み合わせが使用されてもよい。
【００５０】
（基準値の同期）
図６の「基準値の同期」状態では、自分ノードの基準値が、他ノードの基準値に合わせられる（置換される又は更新される。）。その後、ノードは「基準周波数の比較」状態へ移行する。
【００５１】
（基準周波数の比較）
この状態では、近隣ノードの基準周波数と自ノードの基準周波数とが比較され、同一だった場合には「待機」状態への移行が行われる。異なっていた場合は、「基準周波数の同期」状態への移行が行われる。
【００５２】
（基準周波数の同期）
この状態では、自ノードの基準周波数が、他ノードの基準周波数に変更される。その後、「待機」状態への移行が行われる。基準周波数が使用周波数として設定される場合には、基準周波数の変更に応じて、使用周波数の変更も行われる。このように、基準周波数の変更は、基準値の比較により行われる。
【００５３】
ところで、基準値や周波数の変更は、そのノードの通信環境だけでなくネットワーク内の他ノードの通信環境にも影響を及ぼすので、適切且つ慎重になされるべきである。そのようなセキュリティを高める観点からは、隣接ノードから報知される基準情報が信頼できるか否かを検討し、認証後に、基準値の制御や、周波数の変更処理等を行うことが望ましい。隣接ノードの認証方法としては、報知パケットに認証子が付加されてもよい（図７）。この場合は、一方のノードから他方のノードへ認証子を含む報知パケットが伝送され、他方のノードで認証が行われる。そして、他方のノードから一方のノードへ認証子を含む報知パケットが伝送され、一方のノードでも認証が行われる。或いは、何らかの認証処理機能部による認証後に、報知パケットの情報に合わせて基準値や周波数が変更されてもよい（図８）。
【００５４】
近隣に複数のノードが存在した場合、それら複数のノードからの複数の報知パケットが受信されるかもしれない。この場合に、報知パケットを受信する毎に基準値や周波数の更新が行われてもよいし、一定時間経過後に基準値等の更新が行われてもよい。前者の場合は、基準値や周波数の変更が頻繁に発生する可能性があるので、高速な処理が必要になる。後者の場合は、周波数等の更新頻度を一定値以下に制限し、動作の安定化を図ることができる。ただし、待機する期間の長さによっては、一定時間待機している間に、自ノードの基準値が変わる可能性がある（例えば、経過時間ＥＴが進んでしまうことが起こり得る。）。このため、報知パケットを受信した場合、受信した時点での自ノードの基準値を隣接ノード毎に管理することが望ましい。なお、待機中に基準値が変わるおそれがある点については、近隣ノード数によらず、対処する必要がある。また、一定時間待機する場合には、一定時間内に自ノードの基準値より良好な値（望ましい値）を示す報知パケットを複数のノードから受信する可能性がある。この場合、ノードは、その中で最も良好な値を示す基準値に自ノードの基準値を変えてもよい。
【００５５】
典型的なアドホックネットワークでは、それを構成する複数のノードは互いに対等な関係にあり、特定のノードが全ノードを統括的に管理しなくてよい。しかしながら、そのような統括的な管理機能（集中制御機能）を特定のノードが備えることが、禁止される必要もない。即ち、何らかの特権を有するノードが、ネットワークでの使用周波数を変更する契機を他のノードに与えてもよい。具体的には、利用される基準値にも依存するが、経過時間を基準値として利用した場合は、所望の周波数に基準周波数を変更し、一定値以上の時間を強制的に経過させた基準値を他ノードに報知することが考えられる。強制的に調整された経過時間は、どのノードの経過時間よりも長いので、各ノードで基準値が比較された結果、その特定のノードで使用される基準値及び周波数等が優先される。逆に、どのノードの経過時間よりも短い時間（例えば、最新の時間や未来の時間）を他ノードに報知することで、基準値や周波数の決定に、そのノードが関与しないようにしてもよい。
【００５６】
（基準値の報知）
この状態は、「待機」状態に続く状態であり、近隣ノードからの要求を受信した場合、自ノードのタイマー等で管理される期間が満了した場合、基準値の報知要求を受信した場合その他必要が生じた場合に生じる。この状態では、ノードは、基準値を含む報知パケットを送信し、以後、再び「待機」状態へ移行する。基準値に加えて、基準周波数、利用周波数、ネットワークＩＤ、インターフェースＩＤ等の情報が報知されてもよい。
【実施例２】
【００５７】
１ノードが複数の無線インターフェース（例えばＩＦａ、ＩＦｂ）を実装している場合には、無線インターフェース間の電波干渉の影響を減らすため、各無線インターフェース間で異なる周波数が利用されてもよい。従って、近隣ノードの探索、基準値や周波数の管理等の処理は、無線インターフェース毎に行われることが望ましい。このため、複数の無線インターフェースを実装しているノードは、無線インターフェース毎に付与されたインターフェースＩＤを含む報知パケットを、近隣ノードへ送信することが望ましい。報知情報受信部２１６、基準値制御部２１８及び周波数制御部２２０等は、この受信したＩＤに基づいて、無線インターフェース毎に状態や設定を管理することができる。なお、複数のネットワークが存在する場合には、同じネットワークに属するノード間で通信が行われる。所属するネットワークが異なれば、たとえ電波が届く範囲内にノードが存在したとしても、そのノードとの間では周波数を合わせる等の動作はなされない。従って、ネットワークが複数存在する場合には、それらを区別するネットワークＩＤが報知パケットに含まれていることが望ましい。従って、あるノードが複数のインターフェースを有し、ネットワークも複数存在する場合には、同一のネットワークに属するノードとの間で、インターフェース毎に周波数等が管理される。
【００５８】
図９は、アドホックネットワークの全体図を示し、この例では、４つの各ノードが、２つ無線インターフェースＡ，Ｂを利用できる。無線インターフェースＡ，Ｂは、インターフェースの識別子ＩＦａ，ＩＦｂでそれぞれ区別される。これらのＩＤを用いて、無線インターフェース各々で使用される周波数が別々に決定される。図示のノード１〜４は総て同じネットワークに属するものとする。ネットワーク全体で共通に使用される周波数は、実施例１で説明済みの方法で決定される。図９に示される例では、全ノードの無線インターフェースＡの基準周波数及び使用周波数は、ｆＡに設定される。また、全ノードの無線インターフェースＢの基準周波数及び使用周波数は、ｆＢに設定される。
【００５９】
図１０も、アドホックネットワークの全体図を示し、この例でも、４つの各ノードが、２つ無線インターフェースＡ，Ｂを利用できる。図示の例では、全ノードの無線インターフェースＡの基準周波数及び使用周波数は、ｆＡに設定される。周波数ｆＡは実施例１説明済みの方法で決定される。これに対して、ノード１及びノード４の無線インターフェースＢで使用される周波数は、ｆ１４に設定される。周波数ｆ１４は、ノード１及びノード４の間で任意に決定されてもよい。従って、周波数ｆ１４は、実施例１で説明済みの方法で決定されてもよいし、それ以外の方法で決定されてもよい。周波数ｆ１４は全ノードで統一的に使用されるものではなく、ノード１及びノード４間の通信に適切でありさえすればよいからである。また、ノード２及びノード３の無線インターフェースＢで使用される周波数は、ｆ２３に設定される。周波数ｆ２３も、実施例１で説明済みの方法で決定されてもよいし、それ以外の方法で決定されてもよい。周波数ｆ２３は全ノードで統一的に使用されるものではなく、ノード２及びノード３間の通信に適切でありさえすればよいからである。
【００６０】
従って、ノード１，４間の通信に使用される周波数（使用周波数）ｆ１４や、ノード２，３間での使用周波数ｆ２３は、無線インターフェースＢに関する基準周波数ｆＢと同一でもよいし、異なっていてもよい。同一ならば図９に示される状況が実現され、異なっていれば図１０に示される状況が実現される。図９，１０に示されるような状況を各ノードが識別するため、無線インターフェースＢに関する報知パケットが、基準周波数ｆＢと使用周波数ｆｉｊとの関係を示す情報を含んでもよい。或いは、報知パケットが、基準周波数ｆＢだけでなく、使用周波数ｆｉｊを示す情報を含んでもよい。
【図面の簡単な説明】
【００６１】
【図１】アドホックネットワークの全体図を示す。
【図２】本発明の一実施例による通信装置のブロック図を示す。
【図３】隣接ノードの存否を受動的に調べるフローチャートを示す。
【図４】隣接ノードの存否を能動的に調べるフローチャートを示す。
【図５】複数のノード間で使用周波数を一致させる方法を示すフローチャートである。
【図６】通信装置の動作に関する状態遷移図を示す。
【図７】隣接ノードを認証する方法例を示す図である。
【図８】隣接ノードを認証する別の方法例を示す図である。
【図９】各ノードが複数の無線インターフェースを利用するアドホックネットワークを示す図である。
【図１０】各ノードが複数の無線インターフェースを利用する別のアドホックネットワークを示す図である。
【符号の説明】
【００６２】
２０２  アンテナ
２０４  無線インターフェース
２０６  パケット転送部
２０８  経路制御部
２１０  中央処理装置（ＣＰＵ）
２１２  記憶部
２１４  報知情報送信部
２１６  報知情報受信部
２１８  基準値制御部
２２０  周波数制御部
【図１】
2006254209.tif 000003
【図２】
2006254209.tif 000004
【図３】
2006254209.tif 000005
【図４】
2006254209.tif 000006
【図５】
2006254209.tif 000007
【図６】
2006254209.tif 000008
【図７】
2006254209.tif 000009
【図８】
2006254209.tif 000010
【図９】
2006254209.tif 000011
【図１０】
2006254209.tif 000012