(57)【要約】【課題】パケットの衝突を抑制することを課題とする。【解決手段】各ノードは、ＧＷに対して、自ノードがパケットの送信を要求するノードであることを示す登録パケットを送信する。そして、各ノードは、ＧＷから通知された送信時間内で、ＧＷに対してパケットを送信する。ＧＷは、各ノードから登録パケットを受信し、ＧＷと直接通信することができる隣接ノードを経由する経路ごとに、各経路で発生するトラフィック量を算出する。そして、ＧＷは、算出された各経路のトラフィック量に基づいて、経路ごとに、パケットを送信する送信時間を割当て、割当てられた送信時間を各ノードに通知する。【選択図】図１
2013162423.tif 000002
【特許請求の範囲】
【請求項１】
複数のノードがマルチホップ無線ネットワークを形成する無線通信システムであって、
各ノードは、
宛先ノードに対して、自ノードがパケットの送信を要求するノードであることを示す登録パケットを送信する第１送信部と、
前記宛先ノードから通知された送信時間内で、前記宛先ノードに対してパケットを送信する第２送信部と、を有し、
前記宛先ノードは、
前記各ノードから登録パケットを受信し、前記宛先ノードと直接通信することができる隣接ノードを経由する経路ごとに、各経路で発生するトラフィック量を算出する算出部と、
前記算出部によって算出された各経路のトラフィック量に基づいて、前記経路ごとに、パケットを送信する送信時間を割当てる割当部と、
前記割当部によって割当てられた送信時間を前記各ノードに通知する通知部と
を有することを特徴とする無線通信システム。
【請求項２】
前記宛先ノードの割当部は、前記宛先ノードにデータを送信することができる時間帯の範囲内で、前記隣接ノードから受信した前記登録パケットの数、または、前記各ノードが送信を予定するデータ量の合計が多い前記経路ごとに送信時間が多くなるように、前記送信時間を割当てることを特徴とする請求項１に記載の無線通信システム。
【請求項３】
前記各ノードのうち前記隣接ノードは、前記宛先ノードから受信した送信時間のうち自ノードに割当てられた送信時間を、自ノードを経由して前記宛先ノードにパケットを送信する配下のノードに通知する通知部をさらに有することを特徴とする請求項１に記載の無線通信システム。
【請求項４】
前記各ノードのうち前記隣接ノードの第１送信部は、自ノードを経由して前記宛先ノードにパケットを送信する配下のノード各々から受信した登録パケットに含まれる情報を１つにまとめた登録パケットを生成し、生成した登録パケットを前記宛先ノードに送信することを特徴とする請求項１に記載の無線通信システム。
【請求項５】
前記各ノードの第１送信部は、前記宛先ノードまでの経路が変更された場合に、前記登録パケットを前記宛先ノードに送信し、
前記宛先のノードの割当部は、前記複数のノードのいずれかから前記登録パケットを受信した場合には、前記登録パケットを受信してから所定期間内に受信した登録パケットを用いて、前記経路ごとにパケットを送信する送信時間を割当てることを特徴とする請求項１に記載の無線通信システム。
【請求項６】
複数のノードがマルチホップ無線ネットワークを形成する無線通信システムに適した無線通信制御方法であって、
各ノードが、
宛先ノードに対して、自ノードがパケットの送信を要求するノードであることを示す登録パケットを送信し、
前記宛先ノードから通知された送信時間内で、前記宛先ノードに対してパケットを送信する処理を実行し、
前記宛先ノードは、
前記各ノードから登録パケットを受信し、前記宛先ノードと直接通信することができる隣接ノードを経由する経路ごとに、各経路で発生するトラフィック量を算出し、
算出した各経路のトラフィック量に基づいて、前記経路ごとに、パケットを送信する送信時間を割当て、
割当てた送信時間を前記各ノードに通知する処理を
実行することを特徴とする無線通信制御方法。
【請求項７】
マルチホップ無線ネットワーク内の宛先ノードに対して、自ノードがパケットの送信を要求するノードであることを示す登録パケットを送信する第１送信部と、
前記宛先ノードから通知された送信時間内で、前記宛先ノードに対してパケットを送信する第２送信部と
を有することを特徴とする無線通信装置。
【請求項８】
マルチホップ無線ネットワークを形成する各ノードから、前記各ノードがパケットの送信を要求するノードであることを示す登録パケットを受信する受信部と、
前記受信部によって受信された登録パケットに基づいて、自ノードと直接通信することができる隣接ノードを経由する経路ごとに、各経路で発生するトラフィック量を算出する算出部と、
前記算出部によって算出された各経路のトラフィック量に基づいて、前記経路ごとに、パケットを送信する送信時間を割当てる割当部と、
前記割当部によって割当てられた送信時間を前記各ノードに通知する通知部と
を有することを特徴とする無線通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信システム、無線通信制御方法および無線通信装置に関する。
【背景技術】
【０００２】
近年、複数の中継ノードを介して、宛先ノードに接続するマルチホップの無線通信システムが注目を集めている。マルチホップの無線通信システムでは、ＣＳＭＡ／ＣＡ（Carrier  Sense  Multiple  Access  with  Collision  Avoidance）方式を用いて、各ノードが自律的に通信を実行する。
【０００３】
ＣＳＭＡ／ＣＡでは、各ノードが通信を実行する前にキャアリアセンスを実行して、受信電力強度（ＲＳＳＩ：Received  Signal  Strength  Indication）を監視する。そして、各ノードは、一定値以下のＲＳＳＩを検出した場合またはＲＳＳＩを検知しない場合には、他のノードが送信していないと判断して、データ送信を実行する。
【０００４】
ところが、この手法では、宛先ノードの直接通信可能な範囲内にあり、かつ、送信ノードの送信をキャリアセンスで検出できないノードとの間でデータの衝突が発生する。つまり、送信ノードと、送信ノードからの受信電力が閾値以下になるノード（以降、隠れ端末と表記する）との間でパケットの衝突が発生し、パケットが宛先に到達しない事象等が発生する。
【０００５】
このような無線通信システムにおいてパケットを効率的に送信する技術として、例えば、各ノードが時間割当用のスロットで通信時間領域を要求し、ホップ数に応じて割当時間を一意に決定する技術が知られている。また、宛先ノードと１ホップで通信できるノードは時分割（Time  Division  Multiplexing）方式を用いてパケットを送信し、それ以外のノードは、時分割スロット以外の領域においてＣＳＭＡ／ＣＡ方式を用いてパケットを送信する技術が知られている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２２８１７８号公報
【特許文献２】特開２０１１−１８８０９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の技術では、宛先ノードから同一のホップ数でパケットを送信するノード同士でパケットが衝突する可能性が高くなったり、ノードを生成するコストが高くなったりすることから、パケットの衝突を抑制することが難しいという問題がある。
【０００８】
例えば、ホップ数に応じて割当時間を一意に決定する技術では、宛先ノードから同一のホップ数で宛先ノードにパケットを送信する全ノードが、同タイミングでパケット送信を開始する。このため、同一ホップ内で隠れ端末関係にあるノード同士のパケットが衝突する可能性が高い。また、時分割方式を用いる技術では、時分割方式とＣＳＭＡ／ＣＡ方式との両方を１ノード内に実装することになるので、コストが高くなる。
【０００９】
開示の技術は、上記に鑑みてなされたものであって、パケットの衝突を抑制することができる無線通信システム、無線通信制御方法および無線通信装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本願の開示する無線通信システム、無線通信制御方法および無線通信装置は、一つの態様において、複数のノードがマルチホップ無線ネットワークを形成する無線通信システムである。各ノードは、宛先ノードに対して、自ノードがパケットの送信を要求するノードであることを示す登録パケットを送信する第１送信部を有する。各ノードは、前記宛先ノードから通知された送信時間内で、前記宛先ノードに対してパケットを送信する第２送信部を有する。前記宛先ノードは、前記各ノードから登録パケットを受信し、前記宛先ノードと直接通信することができる隣接ノードを経由する経路ごとに、各経路で発生するトラフィック量を算出する算出部を有する。前記宛先ノードは、前記算出部によって算出された各経路のトラフィック量に基づいて、前記経路ごとに、パケットを送信する送信時間を割当てる割当部と、前記割当部によって割当てられた送信時間を前記各ノードに通知する通知部とを有する。
【発明の効果】
【００１１】
本願の開示する無線通信システム、無線通信制御方法および無線通信装置の一つの態様によれば、パケットの衝突を抑制することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例１に係る無線通信システムの全体構成例を示す図である。
【図２】図２は、実施例１に係るゲートウェイおよびノードのハードウェア構成例を示す図である。
【図３】図３は、実施例１に係るノードの構成を示す機能ブロック図である。
【図４】図４は、登録パケットのフォーマット例を示す図である。
【図５】図５は、実施例１に係るゲートウェイの構成を示す機能ブロック図である。
【図６】図６は、割当通知パケットのフォーマット例を示す図である。
【図７】図７は、実施例１に係るＧＷが実行する処理の流れを示すフローチャートである。
【図８】図８は、実施例１に係る無線通信システムが実行する処理シーケンス図である。
【図９】図９は、実施例１に係る無線通信システムが実行する処理シーケンス図である。
【図１０】図１０は、具体的なノード配置例を示す図である。
【図１１】図１１は、具体的な送信時間割当例を示す図である。
【図１２】図１２は、従来技術を用いた場合の平均衝突率を説明する図である。
【図１３】図１３は、実施例１を用いた場合の平均衝突率を説明する図である。
【図１４】図１４は、計算結果を示す図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する無線通信システム、無線通信制御方法および無線通信装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１４】
［全体構成例］
図１は、実施例１に係る無線通信システムの全体構成例を示す図である。図１に示すように、この無線通信システムは、有線ネットワーク５と無線マルチホップネットワーク６とがゲートウェイ装置（ＧＷ）１０を介して接続される。なお、図１に示す装置の数等は、あくまで例示であり、これに限定されるものではない。
【００１５】
有線ネットワーク５は、ＩＰ（Internet  Protocol）等でデータ通信を実行するＩＰ網であり、ＧＷ１０に接続される管理サーバ５ａを有する。管理サーバ５ａは、無線マルチホップネットワーク６で検出されたデータを収集したり、無線マルチホップネットワーク６内の各ノードの電源管理や異常検出等を実行したりするサーバ装置である。
【００１６】
ＧＷ１０は、無線マルチホップネットワーク６内の各ノードからデータを収集して、管理サーバ５ａに送信する装置であり、無線通信を実行する機能やＬＡＮ（Local  Area  Network）等を用いて通信を実行する機能を有する。
【００１７】
無線マルチホップネットワーク６は、アドホックなネットワークを形成する複数のノードで構成される無線ネットワークである。図１の場合、無線マルチホップネットワーク６は、ノードＡ、ノードＢ、ノードＣ、ノードＤ、ノードＥ、ノードＦ、ノードＧ、ノードＨ、ノードＩ、ノードＪ、ノードＫで構成される。
【００１８】
図１に示した各ノードは、ＣＳＭＡ／ＣＡ方式を用いてパケットを送信する無線通信端末である。また、各ノードは、電気メータ、加速度センサ、温度センサなどの各種センサをノードの内部または外部に有する。そして、各ノードは、各種センサがセンシングした値であるセンサ値を含めたデータパケットをＧＷ１０に送信する。
【００１９】
ここで、ノードＡは、ＧＷ１０に直接通信できる隣接ノードであり、ノードＢは、ノードＡを介してＧＷ１０にデータを送信するノードであり、ノードＣとノードＤは、ノードＢとノードＡとを順に介してＧＷ１０にデータを送信するノードである。また、ノードＥは、ＧＷ１０に直接通信できる隣接ノードであり、ノードＦは、ノードＥを介してＧＷ１０にデータを送信するノードであり、ノードＧは、ノードＥとノードＦとを順に介してＧＷ１０にデータを送信するノードである。また、ノードＨは、ＧＷ１０に直接通信できる隣接ノードであり、ノードＩとノードＫは、ノードＨを介してＧＷ１０にデータを送信するノードであり、ノードＪは、ノードＩを介してＧＷ１０にデータを送信するノードである。
【００２０】
なお、ＧＷ１０が電波を検出することができる位置に位置するノードＡなどの隣接ノードを１ホップノードと呼び、１ホップノード以外のノードをマルチホップノードと呼ぶ。
【００２１】
また、各ノードは、隣接ノードとの間で、自身が保持する経路情報を含んだＨＥＬＬＯパケットなどの制御メッセージを交換することで、自律的に経路情報を更新し、宛先ノードまでの経路を構築する。なお、経路情報は、各ノードが動的に自動生成することもでき、管理者等が手動で更新することもできる。
【００２２】
このような無線マルチホップネットワークにおいて、各ノードは、ＧＷ１０に対して、自ノードがパケットの送信を要求するノードであることを示す登録パケットを送信する。また、各ノードは、ＧＷ１０から通知された送信時間内で、ＧＷ１０に対してパケットを送信する。ＧＷ１０は、各ノードから登録パケットを受信し、ＧＷ１０と直接通信することができる隣接ノードを経由する経路ごとに、各経路で発生するトラフィック量を算出する。また、ＧＷ１０は、算出された各経路のトラフィック量に基づいて、経路ごとに、パケットを送信する送信時間を割当てる。また、ＧＷ１０は、割当てられた送信時間を各ノードに通知する。
【００２３】
このように、実施例１に係るＧＷ１０は、隣接ノードを含む経路ごとに送信時間を割当てることができる。また、各ノードは、ＧＷ１０から割当てられた送信時間の範囲内でパケット送信を実行することができる。つまり、トラフィック量の多いノード同士に異なるリソースを割り当てるため、隠れ端末関係にあってもパケットの衝突確率が低下し、キャパシティを向上させることができる。この結果、パケットの衝突を抑制することができる。
【００２４】
［ハードウェア構成］
図２は、実施例１に係るゲートウェイおよびノードのハードウェア構成例を示す図である。なお、ゲートウェイとノードとは同様のハードウェア構成を有するので、ここでは、端末１として説明する。
【００２５】
端末１は、アンテナ１ａと、ＲＦ処理部１ｂと、Ａ／Ｄ変換部１ｃと、ベースバンド処理部１ｄと、プロセッサ１ｅと、メモリ１ｆと、Ｄ／Ａ変換部１ｇとを有する。アンテナ１ａは、データである信号を電波として宛先に向けて送信し、データである信号を電波として受信するハードウェアである。なお、ここで例示したハードウェアはあくまで例示であり、これに限定されるものではなく、例えば変調部等のハードウェアを有していてもよい。なお、ＧＷ１０については、図２に示したハードウェア以外にも例えば、有線ネットワークと接続するインタフェースを有する。
【００２６】
ＲＦ処理部１ｂは、アンテナ１ａによって受信されたＲＦ信号をＩＦ信号等に変換して増幅させた後に、Ａ／Ｄ変換部１ｃに出力する回路等である。また、ＲＦ処理部１ｂは、Ｄ／Ａ変換部１ｇから入力されたデジタル信号をＲＦ信号等に変換して増幅させた後に、アンテナ１ａから出力させる回路等である。
【００２７】
Ａ／Ｄ変換部１ｃは、ＲＦ処理部１ｂから入力されたＩＦ信号などのアナログ信号をデジタル信号に変換して、ベースバンド処理部１ｄに出力する回路等である。ベースバンド処理部１ｄは、Ａ／Ｄ変換部１ｃから入力されたデジタル信号に対して復調処理や誤り訂正処理等を実行する回路である。また、ベースバンド処理部１ｄは、プロセッサ１ｅから入力されたデータに対して変調処理等を実行して、Ｄ／Ａ変換部１ｇに出力する。
【００２８】
プロセッサ１ｅは、ＣＰＵ（Central  Processing  Unit）またはＤＳＰ（Digital  Signal  Processor）などのプロセッサであり、端末１の全体的な制御を司る。このプロセッサ１ｅは、ベースバンド処理部１ｄから出力されたデジタル信号に対して、例えば図３や図５に示す各機能部が実行する処理を実行する。また、プロセッサ１ｅは、送信対象のデータを生成して、ベースバンド処理部１ｄに出力する。
【００２９】
メモリ１ｆは、プロセッサ１ｅが実行するプログラム、プロセッサ１ｅが使用するデータや各種情報などを記憶する記憶装置である。例えば、メモリ１ｆは、図３に示す割当情報記憶部５７に記憶される情報や図５に示した経路別トラフィック量記憶部１２に記憶される情報を記憶する。Ｄ／Ａ変換部１ｇは、ベースバンド処理部１ｄから出力されたデジタル信号をアナログ信号に変換してＲＦ処理部１ｂに出力する回路である。
【００３０】
［ノードの構成］
図３は、実施例１に係るノードの構成を示す機能ブロック図である。図１に示した各ノードは同様の構成を有するので、ここでは、ノード５０として説明する。また、ここで示した各処理部は例示であり、これに限定されるものではない。
【００３１】
図３に示すように、ノード５０は、パケット種別判定部５１、転送処理部５２、接続ＧＷ決定部５３、登録パケット生成部５４を有する。また、ノード５０は、割当情報読取部５５、割当情報転送処理部５６、割当情報記憶部５７、送信タイミング決定部５８、ユーザデータ処理部５９、パケット生成部６０、パケット送信部６１を有する。
【００３２】
パケット種別判定部５１は、受信したパケットの種別を判定し、それぞれの種別に対応した処理部に受信パケットを出力する処理部である。例えば、パケット種別判定部５１は、受信したパケットのヘッダに含まれるパケットの種類を示す情報を抽出する。そして、パケット種別判定部５１は、パケットの種類が「割当通知」を示す識別子である場合には、受信したパケットを割当情報読取部５５に出力する。また、パケット種別判定部５１は、パケットの種類が「ＨＥＬＬＯ」などの制御メッセージを示す識別子である場合には、受信したパケットを接続ＧＷ決定部５３に出力する。また、パケット種別判定部５１は、パケットの種類がユニキャストで、かつ、宛先が自ノードではない転送対象のパケットを示す識別子である場合には、受信したパケットを転送処理部５２に出力する。
【００３３】
つまり、パケット種別判定部５１から転送処理部５２へは、転送対象のパケットが出力される。また、パケット種別判定部５１から接続ＧＷ決定部５３へは、経路情報パケットが出力される。パケット種別判定部５１から割当情報読取部５５へは、割当通知パケットが出力される。パケット種別判定部５１からユーザデータ処理部５９へは、自分宛のデータパケットが出力される。
【００３４】
転送処理部５２は、パケット種別判定部５１から入力された転送対象のパケットを、宛先に向けて隣接ノードに転送する処理である。例えば、転送処理部５２は、配下ノードから送信されたデータパケットが受信された場合に、ＧＷ１０への経路となるノードに当該データパケットを転送する。この転送処理部５２は、センサデータパケットや登録パケットなどのユニキャストパケットを転送する。なお、割当通知パケットは、ブロードキャストパケットなので、一旦受信した後、改めて送信される。このため、割当通知パケットは、転送処理部５２を経由しない。
【００３５】
転送手法の例を説明すると、転送処理部５２は、入力されたパケットのヘッダ等に含まれる「隣接宛先」を転送先である自ノードの隣接ノードのアドレス情報に書き換え、「隣接送信元」を自ノードのアドレス情報に書き換えてパケット送信部６１に出力する。すなわち、転送処理部５２は、最終的な宛先やパケット生成元を示すグローバルな情報については書き換えず、転送先や転送元を示すローカルな情報を書き換えて、次のノードに転送する。なお、転送先ノードを特定するための経路情報については、後述する接続ＧＷ決定部５３等によって生成されてメモリ等に格納されている。
【００３６】
接続ＧＷ決定部５３は、隣接ノードとの間で交換した経路情報に基づいて、接続先となるＧＷを決定する処理部である。また、接続先ＧＷ決定部５３は、接続先となるＧＷに送信するための最初の転送先ノードも決定する処理部である。すなわち、接続先ＧＷ決定部５３は、後述する代表端末を識別する代表端末ＩＤを決定する。この代表端末ＩＤは、割当情報を受信した場合に、自装置が所属するグループを識別する情報となる。
【００３７】
例えば、接続ＧＷ決定部５３は、パケット種別判定部５１から入力された各ＨＥＬＬＯパケットから、経路情報を抽出してメモリ等に格納する。そして、接続ＧＷ決定部５３は、抽出した経路情報から接続先となるＧＷ１０を決定し、ＧＷ１０を決定したことを登録パケット生成部５４に通知する。また、接続ＧＷ決定部５３は、抽出した経路情報からルーティングテーブルを生成してメモリ等に格納する。
【００３８】
なお、接続ＧＷ決定部５３は、ホップ数や経路品質を用いて、接続先のＧＷを決定したり、ルーティングテーブルを生成したりすることができる。一例を挙げると、接続ＧＷ決定部５３は、ＧＷ１０が接続先であることを通知するパケットを隣接ノードから受信した場合に、接続先のＧＷを決定する。また、接続ＧＷ決定部５３は、経路情報等用いてトポロジ情報を生成し、トポロジ情報のルートノードを接続先のＧＷとして決定することもできる。また、接続ＧＷ決定部５３は、接続先ＧＷまでの経路について、ホップ数が少なくなる経路の順で決定したり、ＨＥＬＬＯパケット等で通知された経路の品質がよい順に決定したりすることができる。
【００３９】
登録パケット生成部５４は、ノード５０が送信する予定のトラフィック量を含んだ登録パケットを生成する処理部である。例えば、登録パケット生成部５４は、接続ＧＷ決定部５３によって接続先のＧＷが決定されたことが通知されると、登録パケットを生成して、パケット送信部６１に出力する。ここで、生成される登録パケットについて説明する。図４は、登録パケットのフォーマット例を示す図である。図４に示すように、登録パケットは、「隣接宛先、隣接送信元、最終宛先、登録パケット送信元、パケットの種類、発生予定トラフィック量」を有する。
【００４０】
「隣接宛先」は、転送先のノードを示すアドレス情報であり、例えば、ノード５０の隣接ノードがノードＡである場合には、ノードＡのアドレス情報が格納される。「隣接送信元」は、転送元のノードを示すアドレス情報であり、例えば、ノード５０がノードＣから受信した登録パケットをノードＡに転送する場合には、ノード５０のアドレス情報が格納される。この「隣接宛先」と「隣接送信元」は、転送されるタイミングで書き換えられる。「最終宛先」は、登録パケットの宛先を示す情報であり、ＧＷ１０のアドレス情報が格納される。「登録パケット送信元」は、登録パケットを生成したノードのアドレス情報が格納される。「パケットの種類」は、パケットの種別を特定する識別子が格納され、登録パケットの場合には「登録」が格納される。「発生予定トラフィック量」は、ノード５０が送信する予定のデータ容量を示し、例えばビット数が格納される。なお、発生予定トラフィック量は、管理者等によってメモリ等に保持される。
【００４１】
割当情報読取部５５は、パケット種別判定部５１から出力された割当通知パケットから、自ノードがデータを送信することができる時間帯を読み取る処理部である。例えば、割当情報読取部５５は、割当通知パケットから、送信開始後６０秒後から１２０秒までの間などの情報までを読み取って、送信可能な時間帯として割当情報記憶部５７に格納する。
【００４２】
割当情報転送処理部５６は、受信した割当情報を配下のノードに転送するための処理を行う処理部である。例えば、割当情報転送処理部５６は、割当情報読取部５５によって読み出された割当情報を流用して、割当通知パケットを生成する。このとき、割当情報転送処理部５６は、隣接宛先および最終宛先をブロードキャストとし、各領域の代表端末ＩＤを自装置のＩＤに変更する。
【００４３】
割当情報記憶部５７は、割当情報読取部５５によって格納された時間帯を記憶する記憶部である。また、割当情報記憶部５７は、無線マルチホップネットワークの各ノードで共通に保持する送信開始時間を記憶する。一例を挙げると、割当情報記憶部５７は、センサデータを含んだパケットの送信開始時間として、１０：００、１１：００、１２：００などを記憶する。
【００４４】
送信タイミング決定部５８は、自ノードのパケット送信開始時間を検出する処理部である。例えば、送信タイミング決定部５８は、割当情報記憶部５７に情報が格納されると、格納された送信開始時間と送信可能な時間帯とを読み込む。そして、送信タイミング決定部５８は、割当てられた送信時間内のランダムな時刻を送信タイミングに決定しておき、ノード５０が計時する時刻情報を監視して、自ノードが送信可能な時間に到達すると、パケット生成部６０にパケットの生成を指示する。その後、送信タイミング決定部５８は、送信可能な時間帯が経過すると、パケット生成部６０にパケットの生成を終了させる。
【００４５】
上述した例で説明すると、送信タイミング決定部５８は、１０：００になったことを検出すると、自ノードに割当てられた時間である６０秒後すなわち１０：０１になるまで待機する。そして、送信タイミング決定部５８は、１０：０１を検出すると、パケット生成部６０にパケットの生成を指示する。その後、送信タイミング決定部５８は、１０：０２を検出すると、パケット生成部６０にパケットの生成を終了させる。
【００４６】
ユーザデータ処理部５９は、ノード５０に内蔵されるセンサやノード５０の外部に接続されるセンサ等からセンサ値を取得する処理部である。例えば、ユーザデータ処理部５９は、各種アプリケーションを実行し、センサがセンシングした値を取得して、パケット生成部６０に出力する。
【００４７】
パケット生成部６０は、センサ値を含んだデータパケットを生成する処理部である。例えば、パケット生成部６０は、ユーザデータ処理部５９からセンサ値を受信する。そして、パケット生成部６０は、送信タイミング決定部５８からパケット生成を指示された場合に、センサ値を含めたデータパケットを生成して、パケット送信部６１に出力する。その後、パケット生成部６０は、送信タイミング決定部５８からパケットの生成を終了することを指示された場合に、データパケットの生成を終了する。
【００４８】
パケット送信部６１は、各種パケットを宛先に向けて送信する処理部である。例えば、パケット送信部６１は、転送処理部５２から入力された転送対象のパケット、登録パケット生成部５４から入力された登録パケット、パケット生成部６０から入力されたデータパケット、割当情報転送処理部５６から入力された割当通知パケットを宛先に向けて送信する。また、パケット送信部６１は、各パケットを送信する際に、キャリアセンスを実行し、チャネルが空いていることを確認した上で送信する。
【００４９】
［ＧＷの構成］
図５は、実施例１に係るゲートウェイの構成を示す機能ブロック図である。ここで示した各処理部は例示であり、これに限定されるものではない。
【００５０】
図５に示すように、ＧＷ１０は、パケット種別判定部１０ａと、転送処理部１０ｂと、経路別カウント部１１と、経路別トラフィック量記憶部１２と、送信時間割当部１３と、割当情報生成部１４と、ユーザデータ処理部１５と、パケット送信部１６とを有する。
【００５１】
パケット種別判定部１０ａは、受信したパケットの種別を判定し、それぞれの種別に対応した処理部に受信パケットを出力する処理部である。例えば、パケット種別判定部１０ａは、受信したパケットのヘッダに含まれるパケットの種類を示す情報を抽出する。そして、パケット種別判定部５１は、パケットの種類が「登録パケット」を示す識別子である場合には、受信したパケットを経路別カウント部１１に出力する。また、パケット種別判定部５１は、パケットの種類が「データパケット」を示す識別子である場合には、受信したパケットを転送処理部１０ｂに出力する。
【００５２】
転送処理部１０ｂは、パケット種別判定部１０ａから出力されたデータパケットを管理サーバ５ａなどに転送する処理部である。例えば、転送処理部１０ｂは、各ノードから送信されたセンサデータなどのデータパケットが受信された場合に、受信されたパケットを管理サーバ５ａに転送する。また、転送処理部１０ｂは、管理サーバ５ａから各ノードに対して送信されたパケットを転送する。
【００５３】
経路別カウント部１１は、経路別のトラフィック量を算出して、経路別トラフィック量記憶部１２に格納する処理部である。具体的には、経路別カウント部１１は、１ホップノードごとにトラフィック量を算出する。すなわち、経路別カウント部１１は、１ホップノードを経由するノードを１つのグループとして、無線マルチホップネットワーク内の各グループのトラフィック量を算出する。
【００５４】
図１の場合、経路別カウント部１１は、ノードＡを経由する経路として、ノードＡ、ノードＢ、ノードＣ、ノードＤを１つのグループとしてトラフィック量を算出する。同様に、経路別カウント部１１は、ノードＥを経由する経路として、ノードＥ、ノードＦ、ノードＧを１つのグループとしてトラフィック量を算出する。同様に、経路別カウント部１１は、ノードＨを経由する経路として、ノードＨ、ノードＩ、ノードＪ、ノードＫを１つのグループとしてトラフィック量を算出する。
【００５５】
続いて、トラフィック量の算出例について説明する。経路別カウント部１１は、ノードＡ、ノードＢ、ノードＣ、ノードＤの各々から受信した登録パケットの「発生予定トラフィック量」に格納されるビット数の合計をトラフィック量として算出する。別の例としては、経路別カウント部１１は、ノードＡを介して受信した登録パケットの数をトラフィック量として算出してもよい。図１のノードＡを経由するグループについては、トラフィック量が４と算出される。なお、経路別カウント部１１は、受信した登録パケットの「隣接送信元」によって、どの１ホップノードを経由した登録パケットかを特定することができる。
【００５６】
図５に戻り、経路別トラフィック量記憶部１２は、経路別カウント部１１によって格納された経路別のトラフィック量を記憶する記憶部である。例えば、経路別トラフィック量記憶部１２は、ノードＡを含む経路のトラフィック量が３５０ビット数、ノードＥを含む経路のトラフィック量が２００ビット数、ノードＨを含む経路のトラフィック量が４５０ビット数などと記憶する。別例としてノード数を用いた場合、経路別トラフィック量記憶部１２は、ノードＡを含む経路のトラフィック量が４、ノードＥを含む経路のトラフィック量が３、ノードＨを含む経路のトラフィック量が４などと記憶する。
【００５７】
送信時間割当部１３は、経路別カウント部１１によって算出された各経路のトラフィック量に基づいて、経路ごとに、パケットを送信する送信時間を割当てる処理部である。具体的には、送信時間割当部１３は、経路別トラフィック量記憶部１２に記憶される情報を参照し、ＧＷ１０にデータを送信することができる時間帯の範囲内で、トラフィック量が多い経路ごとに送信時間が多くなるように、送信時間を割当てる。
【００５８】
一例として、ＧＷ１０がデータを受信できる時間が５分であり、ノードＡを含む経路のトラフィック量が３５０ビット数、ノードＥを含む経路のトラフィック量が２００ビット数、ノードＨを含む経路のトラフィック量が４５０ビット数であったとする。この場合、送信時間割当部１３は、ノードＡのグループのトラフィック量が全トラフィック量に占める割合が「３５０／（３５０＋２００＋４５０）＝０．３５」と算出する。同様に、送信時間割当部１３は、ノードＥのグループのトラフィック量が全トラフィック量に占める割合が「２００／（３５０＋２００＋４５０）＝０．２」と算出する。同様に、送信時間割当部１３は、ノードＨのグループのトラフィック量が全トラフィック量に占める割合が「４５０／（３５０＋２００＋４５０）＝０．４５」と算出する。
【００５９】
そして、送信時間割当部１３は、ＧＷ１０がデータを受信できる時間が５分（３００秒）のうち、ノードＡのグループが送信できる時間帯を「３００秒×０．３５＝１０５秒」間と算出する。同様に、送信時間割当部１３は、ＧＷ１０がデータを受信できる時間が５分（３００秒）のうち、ノードＥのグループが送信できる時間帯を「３００秒×０．２＝６０秒」間と算出する。同様に、送信時間割当部１３は、ＧＷ１０がデータを受信できる時間が５分（３００秒）のうち、ノードＥのグループが送信できる時間帯を「３００秒×０．４５＝１３５秒」間と算出する。
【００６０】
この結果、送信時間割当部１３は、送信開始後から１０５秒までの時間帯をノードＡのグループに対して割当てる。また、送信時間割当部１３は、送信開始後１０５秒経過後から１６５秒経過するまでの時間帯をノードＥのグループに対して割当てる。また、送信時間割当部１３は、送信開始後１６５秒経過後から３００秒経過するまでの時間帯をノードＨのグループに対して割当てる。そして、送信時間割当部１３は、各経路に割当てた時間帯を割当情報生成部１４に通知する。
【００６１】
割当情報生成部１４は、送信時間割当部１３によって割当てられた送信時間を各ノードに通知するための割当通知パケットを生成する処理部である。具体的には、割当情報生成部１４は、送信時間割当部１３から通知された経路ごとの送信時間を含めたパケットを生成して、パケット送信部１６に出力する。ここで、割当通知パケットについて説明する。図６は、割当通知パケットのフォーマット例を示す図である。図６に示すように、割当通知パケットは、「隣接宛先、隣接送信元、最終宛先、パケット送信元、パケットの種類、各領域の代表端末ＩＤ／割当時間」を有する。
【００６２】
「隣接宛先」は、転送先のノードを示すアドレス情報であり、例えば、ＧＷ１０から送信される際にはブロードキャストアドレスが格納される。「隣接送信元」は、転送元のノードを示すアドレス情報である。この「隣接宛先」と「隣接送信元」は、転送されるタイミングで書き換えられる。「最終宛先」は、割当通知パケットの宛先を示す情報であり、ブロードキャストアドレス等が格納される。「パケット送信元」は、割当通知パケットを生成したＧＷ１０のアドレス情報が格納される。「パケットの種類」は、パケットの種別を特定する識別子が格納され、割当通知パケットの場合には「割当通知」が格納される。
【００６３】
「各領域の代表端末ＩＤ」は、１ホップノードのアドレス情報であり、例えば１ホップノードの数だけ用意される。「割当時間」は、割当情報生成部１４から通知された送信時間が格納される。例えば、上述した例の場合、「各領域の代表端末ＩＤ」には「ノードＡのアドレス情報」、「割当時間」には「送信開始０秒後から１０５秒まで」が格納される。同様に、「各領域の代表端末ＩＤ」には「ノードＥのアドレス情報」、「割当時間」には「送信開始１０５秒後から１６５秒まで」が格納される。同様に、「各領域の代表端末ＩＤ」には「ノードＨのアドレス情報」、「割当時間」には「送信開始１６５秒後から３００秒まで」が格納される。
【００６４】
図５に戻り、ユーザデータ処理部１５は、各種アプリケーションを実行して各種パケットを生成する処理部である。例えば、ユーザデータ処理部１５は、自ノードが接続先のＧＷであることを通知するパケットや、各ノードや各ノードに接続されるセンサの電源を制御するパケット等を生成して、パケット送信部１６に出力する。
【００６５】
パケット送信部１６は、割当情報生成部１４から入力された割当通知パケットやユーザデータ処理部１５から入力された各種パケットを送信する処理部である。例えば、パケット送信部１６は、各パケットを送信する際に、キャリアセンスを実行してチャネルが空いていることを確認した後に、上記各種パケットを送信する。
【００６６】
［処理の流れ］
次に、無線通信システムにおける処理の流れを説明する。ここでは、ＧＷ１０が実行する処理の流れ、無線通信システムで実行される処理シーケンスを説明する。
【００６７】
（ＧＷが実行する処理の流れ）
図７は、実施例１に係るＧＷが実行する処理の流れを示すフローチャートである。図７に示すように、ＧＷ１０の経路別カウント部１１は、トラフィック量測定期間中に登録パケットが受信されると（Ｓ１０１肯定、Ｓ１０２肯定）、トラフィック量を測定して（Ｓ１０３）、Ｓ１０１に戻る。なお、ＧＷ１０の経路別カウント部１１は、登録パケットを受信するたびに、登録パケットに含まれる「隣接送信元」ごとに、経路別トラフィック量記憶部１２に記憶されるトラフィック量を算出する。
【００６８】
一方、経路別カウント部１１は、トラフィック量測定期間中ではなく（Ｓ１０１否定）、トラフィック測定期間が終了している状態で（Ｓ１０４肯定）、登録パケットが受信されると（Ｓ１０５肯定）、割当時間をリセットする（Ｓ１０６）。そして、経路別カウント部１１は、トラフィック量の測定を開始した後（Ｓ１０７）、Ｓ１０１に戻って以降の処理を繰り返す。
【００６９】
また、経路別カウント部１１は、トラフィック測定期間が終了した状態で登録パケットが受信されないと（Ｓ１０４否定）、トラフィック量の測定を終了する（Ｓ１０８）。
【００７０】
その後、送信時間割当部１３は、経路別カウント部１１によって算出された各経路のトラフィック量に基づいて、経路ごとに、パケットを送信する送信時間を割当てる（Ｓ１０９）。
【００７１】
続いて、割当情報生成部１４は、送信時間割当部１３によって割当てられた送信時間を各ノードに通知するための割当通知パケットを生成する（Ｓ１１０）。そして、パケット送信部１６は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ１１１）、割当情報生成部１４によって生成された割当通知パケットを各ノードに向けて送信する（Ｓ１１２）。
【００７２】
なお、ここでは、新たなノードから登録パケットを受信した場合に、図７の処理を実行することもできる。また、定期的に実行してもよく、任意のタイミングで実行してもよく、ノードの追加や削除を検出した場合に実行してもよい。
【００７３】
（シーケンス）
図８と図９は、実施例１に係る無線通信システムが実行する処理シーケンス図である。なお、図８と図９では、１ホップノードと、１ホップノードを経由してＧＷ１０にデータを送信する配下ノードとを分けて図示しているが、両ノードとも図３に示した構成を有するので、ここでは、両ノードとも図３で説明した処理部や符号等を用いて説明する。
【００７４】
図８に示すように、１ホップノードのパケット送信部６１は、１ホップで通信できるＧＷ１０や配下ノード各々との間で、経路情報を含んだＨＥＬＬＯパケットを交換して、経路情報を構築する（Ｓ２０１〜Ｓ２０３）。そして、接続ＧＷ決定部５３は、構築された経路情報等に基づいて、接続先となるＧＷ１０を決定する（Ｓ２０４）。その後、登録パケット生成部５４は、自ノードが送信を予定するトラフィック量を含めて登録パケットを生成する（Ｓ２０５）。そして、パケット送信部６１は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ２０６）、登録パケットをＧＷ１０に向けて送信する（Ｓ２０７とＳ２０８）。
【００７５】
ＧＷ１０の経路別カウント部１１は、１ホップノードから送信された登録パケットに基づいて、１ホップノードを経由する経路ごとに、トラフィック量を算出して経路別トラフィック量記憶部１２に格納する（Ｓ２０９）。すなわち、経路別カウント部１１は、登録パケットから「隣接送信元」と「発生予定トラフィック量」とを抽出し、１ホップノードを経由する経路ごとに、トラフィック量の合計を算出して経路別トラフィック量記憶部１２に格納する。
【００７６】
なお、１ホップノードから送信された登録パケットは、ＧＷ１０だけでなく、１ホップノードと直接通信できる配下ノードにも受信される。ところが、当該配下ノードは、登録パケットに含まれる「最終宛先」または「隣接宛先」に自ノードのアドレス情報が格納されていないことから、転送対象外のパケットと判定し、受信した登録パケットを破棄する。
【００７７】
また、配下ノードのパケット送信部６１は、１ホップで通信できる１ホップノードや配下ノード各々との間で、経路情報を含んだＨＥＬＬＯパケットを交換して、経路情報を構築する（Ｓ２１０とＳ２１１）。そして、配下ノードの接続ＧＷ決定部５３は、構築された経路情報等に基づいて、接続先となるＧＷ１０を決定する（Ｓ２１２）。その後、配下ノードの登録パケット生成部５４は、自ノードが送信を予定するトラフィック量を含めて登録パケットを生成する（Ｓ２１３）。そして、配下ノードのパケット送信部６１は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ２１４）、生成された登録パケットをＧＷ１０に向けて送信する（Ｓ２１５とＳ２１６）。
【００７８】
１ホップノードのパケット種別判定部５１が配下ノードから受信した登録パケットを転送対象と判定し、パケット送信部６１は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ２１７）、Ｓ２１８とＳ２１９を実行する。すなわち、パケット送信部６１は、転送処理部５２によって転送処理が実行された後に、宛先のＧＷ１０に向けて当該登録パケットを転送する。
【００７９】
このとき、１ホップノードの転送処理部５２は、「隣接宛先」を隣接ノードのアドレス情報に書き換え、さらに「隣接送信元」を自ノードのアドレス情報に書き換える。なお、配下ノードから送信された登録パケットは、１ホップノードだけでなく、配下ノードと直接通信できる他の配下ノードにも受信される。ところが、上述したように、他の配下ノードは、登録パケットに含まれる「最終宛先」または「隣接宛先」に自ノードのアドレス情報が格納されていないことから、転送対象外のパケットと判定し、受信した登録パケットを破棄する。
【００８０】
ＧＷ１０の経路別カウント部１１は、１ホップノードから送信された登録パケットに基づいて、１ホップノードを経由する経路ごとに、トラフィック量を算出して経路別トラフィック量記憶部１２に格納する（Ｓ２２０）。
【００８１】
その後、ＧＷ１０の送信時間割当部１３は、経路別カウント部１１によって算出された各経路のトラフィック量に基づいて、経路ごとに、パケットを送信する送信時間を割当てる（Ｓ２２１）。続いて、割当情報生成部１４は、送信時間割当部１３によって割当てられた送信時間を各ノードに通知するための割当通知パケットを生成する（Ｓ２２２）。その後、パケット送信部１６は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ２２３）、割当情報生成部１４によって生成された割当通知パケットをブロードキャスト送信する（Ｓ２２４とＳ２２５）。
【００８２】
この割当通知パケットを受信した１ホップノードの割当情報読取部５５は、受信した割当通知パケットの「各領域の代表端末ＩＤ／割当時間」から自ノード宛の情報を抽出して、割当情報記憶部５７に格納する（Ｓ２２６）。そして、１ホップノードの割当情報転送処理部５６が割当通知パケットを生成し、パケット送信部６１は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ２２７）、受信した割当通知パケットを配下ノードに向けて送信する（Ｓ２２８とＳ２２９）。
【００８３】
このとき、１ホップノードの割当情報転送処理部５６は、自ノードの配下ノードに関係ない、他のグループの「各領域の代表端末ＩＤ／割当時間」については削除してもよい。また、「隣接送信元」を自ノードのアドレス情報に書き換える。なお、ここでも、１ホップノードから送信された割当通知パケットは、１ホップノードと直接通信できる配下ノード以外にも、ＧＷ１０や他の１ホップノードの配下ノードにも受信され、ＧＷ１０や他の１ホップノードの配下ノードでは自分に関係のある情報が無ければ、破棄されることになる。
【００８４】
また、配下ノードの割当情報読取部５５は、１ホップノードから受信した割当通知パケットの「各領域の代表端末ＩＤ／割当時間」から自ノード宛の情報を抽出して、割当情報記憶部５７に格納する（Ｓ２３０）。なお、配下ノードは、受信した割当通知パケットの含まれる「各領域の代表端末ＩＤ／割当時間」を自ノードに割当てられた送信時間と認識することができる。また、配下ノードは、「各領域の代表端末ＩＤ／割当時間」が割当通知パケットに複数含まれている場合には、予め記憶する１ホップノードのアドレス情報と一致する「各領域の代表端末ＩＤ」に対応する「割当時間」を送信時間と認識することもできる。また、配下ノードは、１ホップノードのアドレスではなく、隣接する親ノードのアドレスを持っていてもよい。この場合、割当通知パケットの「各領域の代表端末ＩＤ」は、送信元端末のアドレスとなる。
【００８５】
続いて、図９に示すように、１ホップノードの送信タイミング決定部５８は、自ノードに割当てられた送信時間になったことを検知する（Ｓ３０１）。すると、パケット生成部６０は、センサ値を含んだデータパケットを生成する（Ｓ３０２）。そして、パケット送信部６１は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ３０３）、データパケットをＧＷ１０に向けて送信する（Ｓ３０４とＳ３０５）。なお、データパケットは、ＧＷ１０以外に受信されるが上述した説明と同様の理由で破棄される。
【００８６】
また、配下ノードの送信タイミング決定部５８も、自ノードに割当てられた送信時間になったことを検知する（Ｓ３０６）。すると、パケット生成部６０は、センサ値を含んだデータパケットを生成する（Ｓ３０７）。そして、パケット送信部６１は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ３０８）、データパケットをＧＷ１０に向けて送信する（Ｓ３０９とＳ３１０）。なお、データパケットは、１ホップノード以外に受信されるが上述した説明と同様の理由で破棄される。
【００８７】
その後、１ホップノードのパケット種別判定部５１が、配下ノードから受信したデータパケットを転送対象と判定し、パケット送信部６１は、キャリアセンスを実行してチャネルが空いていることを確認した後に（Ｓ３１１）、Ｓ３１２とＳ３１３を実行する。すなわち、パケット送信部６１は、転送処理部５２によって転送処理が実行された後に、宛先のＧＷ１０に向けて当該データパケットを転送する。
【００８８】
［具体例］
次に、図１０と図１１とを用いて、上述した送信時間割当の具体例を説明する。ここでは、ノードの数によって送信時間を割当てる例を説明する。図１０は、具体的なノード配置例を示す図である。図１１は、具体的な送信時間割当例を示す図である。
【００８９】
図１０に示す無線通信システムは、複数のノードとＧＷとを有する。複数のノードのうち、ノードＡ、ノードＢ、ノードＣ、ノードＤ、ノードＥ、ノードＦ、ノードＧは、ＧＷと直接通信することができる１ホップノードである。また、ノードＡを経由してＧＷにパケットを送信するノードＡの配下ノードとして、２台のノードがノードＡに接続されている。同様に、ノードＢを経由してＧＷにパケットを送信するノードＢの配下ノードとして、３台のノードがノードＢに接続されている。同様に、ノードＣを経由してＧＷにパケットを送信するノードＣの配下ノードとして、２台のノードがノードＣに接続されている。同様に、ノードＤを経由してＧＷにパケットを送信するノードＤの配下ノードとして、１台のノードがノードＤに接続されている。ノードＥ、ノードＦ、ノードＧ各々は、配下ノードを有していない。
【００９０】
このような状態において、各ノードは、所定の場所に設置されて起動すると、経路情報を含んだＨＥＬＬＯパケットを隣接ノードと交換して、経路情報の構築や接続ＧＷを決定する。例えば、ノードＡは、自ノードと直接通信することができる各ノードおよびＧＷとＨＥＬＬＯパケットを交換する。
【００９１】
そして、各ノードは、接続先のＧＷを決定した後、ＧＷに対して登録パケットを送信する。例えば、各１ホップノードは、ＧＷに対して直接登録パケットを送信する。また、１ホップノードは、自ノードの配下ノードから受信した登録パケットの「隣接送信元」を「自ノードのアドレス情報」に書き換えて、自ノードを経由した登録パケットであることを明らかにした上で、ＧＷに向けて転送する。
【００９２】
その後、ＧＷは、各ノードから受信した登録パケットに基づいて、各ノードに送信時間を割当てる。例えば、ＧＷは、ノードＡを経由した登録パケットが３つ、ノードＢを経由した登録パケットが４つ、ノードＣを経由した登録パケットが３つ、ノードＤを経由した登録パケットが２つであることを把握する。また、ＧＷは、ノードＥ、ノードＦ、ノードＧ各々を経由した登録パケットが１つずつであることを確認する。
【００９３】
この結果、ＧＷは、ノードＢのグループの送信時間が一番長く、その次がノードＡのグループ、ノードＣのグループ、ノードＤのグループ、ノードＥのグループ、ノードＦのグループ、ノードＧのグループの順になるように、送信時間を割当てる。
【００９４】
このようして送信時間を割当てた結果を図１１に示す。図１１に示すように、ＧＷは、全送信時間Ｔの範囲内で、ノードＡのグループには送信開始０秒後からｔ１秒までを送信時間として割当てる。また、ＧＷは、ノードＢのグループには送信開始ｔ１秒後からｔ２秒までを送信時間として割当てる。ＧＷは、ノードＣのグループには送信開始ｔ２秒後からｔ３秒までを送信時間として割当てる。ＧＷは、ノードＤのグループには送信開始ｔ３秒後からｔ４秒までを送信時間として割当てる。そして、ＧＷは、配下ノードを有さないノードＥ、ノードＦ、ノードＧ各々に残りの時間を割当てる。
【００９５】
このようにすることで、配下ノードの数が多いほど、ＧＷに送信されるトラフィック量が多いと仮定した上で、送信時間を割当てることができる。トラフィックの多いノードにはそのトラフィック量に応じた領域を割り当てる。トラフィック量の少ないノードには全送信領域から割当済み時間分を除いた領域を割り当てる。このようにすることで、ノードＡ、ノードＢ、ノードＣ、ノードＤ各々のグループに属するノードから送信されるパケットは衝突なくＧＷに到着することができる。
【００９６】
また、配下ノードを有さないノードＥ、ノードＦ、ノードＧから送信されるパケットは、他ノードから送信されるトラフィックとの衝突は回避でき、かつ、割り当て領域の過度な細分化による割り当て情報の肥大化を防ぐ事ができる。
【００９７】
なお、どのグループから送信を開始させるかについては、例えば装置番号の小さい順など任意に設定することができる。また、図１０と図１１では、配下ノードの数によって送信時間を割当てたので、配下ノードを有さないノードＥ、ノードＦ、ノードＧについては、同じグループとして扱った。ところが、送信予定のビット数等に基づいて送信時間を割当てる場合には、配下ノードを有さないノードを１グループとせずに、ノードごとに送信時間を割当ててもよい。
【００９８】
［効果］
次に、図１２から図１４を用いて、上述した実施例の効果を説明する。図１２は、従来技術を用いた場合の平均衝突率を説明する図である。図１３は、実施例１を用いた場合の平均衝突率を説明する図である。図１４は、計算結果を示す図である。
【００９９】
図１２に示すように、従来技術の場合には、全ノードが、送信可能な時間帯を示す全割当窓幅（Ｔａｌｌ）の範囲内で一斉にキャリアセンスを実行して、パケット送信を実行する。このため、Ｔａｌｌ全体が、送信可能な時間帯で衝突する可能性のある時間幅となる。
【０１００】
一方、図１３に示すように、実施例１を用いた場合、送信可能な時間帯を示す全割当窓幅（Ｔａｌｌ）のうち、各グループに割当てられた時間帯Ｔａであり、それ以外の時間帯がＴｂ＝Ｔａｌｌ−Ｔａとなる。このＴａは、送信時間が割当てられたグループのノードだけがパケット送信を実行する時間帯なので、パケットの衝突を抑制できる時間帯（非衝突領域）となる。また、Ｔｂは、配下ノードを有さないノードが一斉にパケット送信を実行する時間帯なので、パケットが衝突する可能性のある時間帯（衝突領域）となる。
【０１０１】
すなわち、図１２と図１３とを比較すると、実施例１を用いた場合、従来技術と比べてＴａの時間帯だけパケットが衝突する確率を低減することができる。ここで、シミュレーション結果を説明する。ここでは、ノードの密度固定でノード数を増加させる。また、配下ノードを有さないノード、言い換えると、中継局にならないノード数は、エリア増加に関らず固定される。また、配下ノードを有するノード、言い換えると、中継局になるノード数は、エリア増加に伴い増加する。このような条件下で、総ノード数に対するパケットの平均衝突率を比較した結果を図１４に示す。なお、図１４では、送信総時間を示す総割当スロットを２０００、総ノード数を（Ａ）＋（Ｂ）、（Ａ）を中継局になるノード数、（Ｂ）を中継局にならないノード数を示す１００（固定値）とする。
【０１０２】
図１４に示すように、従来技術では、ノード数が増加するについて衝突確率も上昇している。これは、図１２に示すように、ノード数が増加してもＴａｌｌは変わらないことから、パケットが衝突する確率が単純に増加するためである。これに対して、実施例１を用いた場合、ノード数が増加するにつれて、衝突確率が低下しており、従来の３分の１程度まで確率を抑えることができる。これは、図１３に示すように、Ｔａｌｌが固定値の状態で、ノード数が増加するに連れて非衝突領域Ｔａが増加するためである。
【０１０３】
上述したように、開示する無線通信システムでは、宛先ノードから同一のホップ数でパケットを送信するノード同士でパケットが衝突する可能性を小さくすることができる。また、開示する無線通信システムでは、各ノードにＣＳＭＡ／ＣＡ方式を実装するだけで、時分割方式を実装しないので、ノードを生成するコストを抑えることができる。この結果、低コストでパケットの衝突を抑制することができる。
【実施例２】
【０１０４】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
【０１０５】
（宛先ノード）
上記実施例では、宛先ノードがＧＷ装置である例を説明したが、これに限定されるものではなく、任意のノードを宛先とすることができる。
【０１０６】
（登録パケットの中継方法）
上記実施例では、各ノードが登録パケットをＧＷに送信し、１ホップノードが配下ノードから受信した各登録パケットをＧＷに転送する例を説明したが、これに限定されるものではない。例えば、１ホップノードは、配下ノードから受信した登録パケットを一時的に保持した後に、１つの登録パケットにまとめてＧＷに送信してもよい。
【０１０７】
具体例を挙げると、図１に示したノードＡは、ノードＢ、ノードＣ、ノードＤ各々から受信した登録パケットを一時的に保持する。その後、ノードＡの登録パケット生成部５４は、自ノードを含む４つの登録パケットを含めた１つの登録パケットをＧＷに送信する。このとき、ノードＡの登録パケット生成部５４は、ノード数が４であること、または各ノードの発生予定トラフィック量、または各ノードの発生予定トラフィック量の合計値を含めた登録パケットをＧＷに送信する。このようにすることで、登録パケット送信に関する無線リソースの消費を削減することができる。
【０１０８】
（割当通知パケットの中継方法）
また、１ホップノードは、ＧＷから受信した割当通知パケットを配下ノードに転送する場合にも、パケット容量を小さくすることができる。例えば、ＧＷは、各１ホップノードに割当てた送信時間、すなわち各グループの割当時間を全て含んだ割当通知パケットを各１ホップノードに送信する。そして、１ホップノードの転送処理部５２が、割当通知パケットから自ノードのグループ以外の送信時間を削除し、パケット送信部６１が、自ノードのグループ以外の送信時間が削除された割当通知パケットを配下ノードに送信してもよい。なお、パケット送信部６１は、割当通知パケットをそのまま配下ノードに送信してもよい。また、１ホップノードは、自ノードのアドレス情報に対応付けられているか否かによって、自ノードのグループに割当てられた送信時間を検出することができる。このようにすることで、割当通知パケット送信に関する無線リソースの消費を削減することができる。
【０１０９】
（再計算）
上記実施例では、ＧＷは、新たなノードから登録パケットを新たに受信した場合に、送信時間の割当を再計算する例を説明したが、これに限定されるものではない。例えば、定期的に実行してもよく、ノードの増減を検出した場合に実行してもよく、経路変更が発生した場合に実行してもよく、任意に設定することができる。具体例を挙げると、ＧＷは、１ホップノードから受信した登録パケットの数が前回と異なる場合に、ノードの増減を検出する。また、ＧＷは、定期的に送受信するＨＥＬＬＯパケットに基づいて経路を構築し、今回構築した経路情報が前回と異なる場合に、経路変更が発生したと検出する。
【０１１０】
（送信時間内のパケット送信）
例えば、各ノードのパケット送信部は、ＧＷから割当てられた送信時間内に送信するパケットを種別によって制御することができる。一例を挙げると、各ノードのパケット送信部は、自ノードで生成したデータパケットについては、ＧＷから割当てられた送信時間内に送信するように制御することができる。すなわち、各ノードは、ＧＷから割当てられた送信時間以外であっても、他のノードから受信したパケットの転送や自ノードで生成した登録パケットの送信を実行することができる。なお、各ノードは、自ノードで生成した登録パケットおよびデータパケットについては、ＧＷから割当てられた送信時間内に送信するように制御することもできる。
【０１１１】
（システム）
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１１２】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、パケット生成部６０とパケット送信部６１とを統合することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【符号の説明】
【０１１３】
１  端末
１ａ  アンテナ
１ｂ  ＲＦ処理部
１ｃ  Ａ／Ｄ変換部
１ｄ  ベースバンド処理部
１ｅ  プロセッサ
１ｆ  メモリ
１ｇ  Ｄ／Ａ変換部
５  有線ネットワーク
５ａ  管理サーバ
６  無線マルチホップネットワーク
１０  ＧＷ
１１  経路別カウント部
１２  経路別トラフィック量記憶部
１３  送信時間割当部
１４  割当情報生成部
１５  ユーザデータ処理部
１６  パケット送信部
５０  ノード
５１  パケット種別判定部
５２  転送処理部
５３  接続ＧＷ決定部
５４  登録パケット生成部
５５  割当情報読取部
５６  割当情報転送処理部
５７  割当情報記憶部
５８  送信タイミング決定部
５９  ユーザデータ処理部
６０  パケット生成部
６１  パケット送信部
【図１】
2013162423.tif 000003
【図２】
2013162423.tif 000004
【図３】
2013162423.tif 000005
【図４】
2013162423.tif 000006
【図５】
2013162423.tif 000007
【図６】
2013162423.tif 000008
【図７】
2013162423.tif 000009
【図８】
2013162423.tif 000010
【図９】
2013162423.tif 000011
【図１０】
2013162423.tif 000012
【図１１】
2013162423.tif 000013
【図１２】
2013162423.tif 000014
【図１３】
2013162423.tif 000015
【図１４】
2013162423.tif 000016