JPWO2012101763A1 - 通信装置、通信システム、通信方法、および通信プログラム - Google Patents

通信装置、通信システム、通信方法、および通信プログラム Download PDF

Info

Publication number
JPWO2012101763A1
JPWO2012101763A1 JP2012554535A JP2012554535A JPWO2012101763A1 JP WO2012101763 A1 JPWO2012101763 A1 JP WO2012101763A1 JP 2012554535 A JP2012554535 A JP 2012554535A JP 2012554535 A JP2012554535 A JP 2012554535A JP WO2012101763 A1 JPWO2012101763 A1 JP WO2012101763A1
Authority
JP
Japan
Prior art keywords
congestion
packet
message
unit
node device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012554535A
Other languages
English (en)
Other versions
JP5790665B2 (ja
Inventor
藤田 裕志
裕志 藤田
允 温
允 温
吉田 誠
吉田  誠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2012101763A1 publication Critical patent/JPWO2012101763A1/ja
Application granted granted Critical
Publication of JP5790665B2 publication Critical patent/JP5790665B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/021Traffic management, e.g. flow control or congestion control in wireless networks with changing topologies, e.g. ad-hoc networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

無線アドホックネットワークにおけるパケットの輻輳の発生を効率よく抑制することを課題とする。課題解決のため、ゲートウェイ装置200は、パケットの送信元のノード装置から無線アドホック通信網を介して送信されたパケットを受信するパケット受信部204を備える。また、ゲートウェイ装置200は、パケット受信部204により受信されたパケットに基づいて、パケットがパケット受信部204に到達するまでの通信経路に輻輳が発生したことを検出する輻輳検出部210を備える。また、ゲートウェイ装置200は、輻輳検出部210により通信経路に輻輳が発生したことが検出されたら、通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成する輻輳制御メッセージ生成部212を備える。また、輻輳制御メッセージ生成部212により生成された輻輳制御メッセージをブロードキャストするメッセージ送信部216を備える。

Description

本発明は、通信装置、通信システム、通信方法、および通信プログラムに関する。
近年、監視制御システム(例えばSCADA, Supervisory Control And Data Acquisition)において、ツリーネットワーク型に構成された複数のノード装置間をキャリアセンス方式の無線アドホック通信で結ぶマルチホップネットワークが注目されている。マルチホップネットワークにおいて、隣接ノード装置へのパケットの到達性を重視する場合には、隣接ノード装置間で到達確認を行いながらパケットを転送するルーティングアルゴリズムが用いられる。
隣接するノード装置間で到達確認を行いながらデータを転送するルーティングアルゴリズムでは、パケットの通信経路に輻輳が発生することが知られている。すなわち、キャリアセンス方式で通信を行う無線アドホックネットワークは、自律分散的にノード装置が追加されるため、ノード装置の数が多くなる。ノード装置の数が多くなると、ノード装置からツリー型ネットワークのツリーの頂点に当たるノード装置(以下、ゲートウェイ装置(GW: Gateway)という)へのパケットの送信要求は増加する。すると、ゲートウェイ装置へのパケットの送信要求と、ゲートウェイ装置から周辺ノード装置へのパケット到達確認用のパケット(ACK:ACKnowledgementパケット)の送信要求とが競合して、ゲートウェイ装置がACKを送信する機会が減少する。その結果、ゲートウェイ装置からのACK到着遅延が大きくなり、ACK待ち時間を超えると周辺ノード装置で複製されるパケットが増加する。パケットの複製が増加すると、複製されたパケットの送信要求がさらに発生するため、ゲートウェイ装置からのACK遅延がさらに大きくなり、その結果、複製パケットが大量に発生する悪循環が生じる。
このような場合、輻輳が収まるまで長期間にわたり監視制御システムが使えなくなるおそれがある。したがって、安定した監視制御システムの運用を行うためには、輻輳の発生を抑制すること、および輻輳が発生した場合には速やかに終息させる仕組みを持つことが重要である。
これに対して、従来技術では、無線ネットワーク上のトラフィック量を測定して、測定したトラフィック量が所定レベルを超えた場合、ノード装置から送信するパケットの送信レートを減少させることが知られている。
特表2005−510956号公報
しかしながら、従来技術は、無線アドホックネットワークにおけるパケットの輻輳の発生を効率よく抑制することについては考慮されていない。
すなわち、従来技術は、ノード装置がネットワーク上のパケットの輻輳を検出したら、自ノード端末から送信されるパケットの送信レートを減少させることにより、輻輳の発生を抑制するものである。この従来技術では、ネットワーク上のパケットの輻輳が検出されたときに、周辺ノード装置から送信されるパケットの送信レートは制御することができない。
これに対して、ゲートウェイ装置をツリーの頂点とするツリー型ネットワークにおいては、複数のノード装置から送信されるパケットがゲートウェイ装置に集中するため、ゲートウェイ装置の周辺のパケット通信経路で特に輻輳が発生し易い。ここで、ゲートウェイ装置の周辺に配置された各ノード装置が、従来技術のように自ノード装置のパケットの送信レートを減少させたとしても、ゲートウェイ装置に集中するパケットの輻輳状態を考慮して送信レートを減少させるものではない。したがって、ゲートウェイ装置の周辺のパケット通信経路における輻輳を効率よく抑制できないことが考えられる。一方、ゲートウェイ装置の1箇所で従来技術に沿って輻輳を検出しようとすると、ゲートウェイ装置の周辺の輻輳しか検出できない。その半面、各ノード装置で従来技術に沿って輻輳を検出しようとすると、ネットワークのどこで発生した輻輳も検知できるが、各ノード装置に輻輳検知の機能が必要となり、コストパフォーマンスの点で非効率的である。
開示の技術は、上記に鑑みてなされたものであって、無線アドホックネットワークにおけるパケットの輻輳の発生を効率よく抑制することができる通信装置、通信システム、通信方法、および通信プログラムを実現することを目的とする。
本願の開示する通信装置は、一つの態様において、パケットの送信元のノード装置から無線アドホック通信網を介して送信されたパケットを受信するパケット受信部を備える。また、通信装置は、前記パケット受信部により受信されたパケットに基づいて、前記パケットが前記パケット受信部に到達するまでの通信経路に輻輳が発生したことを検出する輻輳検出部を備える。また、通信装置は、前記輻輳検出部により前記通信経路に輻輳が発生したことが検出されたら、前記通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成する輻輳制御メッセージ生成部を備える。また、通信装置は、前記輻輳制御メッセージ生成部により生成された輻輳制御メッセージをノード装置に送信するメッセージ送信部を備える。
本願の開示する通信装置の一つの態様によれば、無線アドホックネットワークにおけるパケットの輻輳の発生を効率よく抑制することができる。
図1は、本実施例の通信システムの全体構成を示す図である。 図2は、本実施例のゲートウェイ装置の構成を示すブロック図である。 図3は、制御/解除メッセージのフォーマットの一例を示す図である。 図4は、ゲートウェイ装置の第1の処理を示すフローチャートである。 図5は、本実施例のノード装置の第1の構成を示すブロック図である。 図6は、ノード装置の第1の処理を示すフローチャートである。 図7は、ゲートウェイ装置の第2の処理を示すフローチャートである。 図8は、ノード装置の第2の処理を示すフローチャートである。 図9は、ゲートウェイ装置の第3の処理を示すフローチャートである。 図10は、本実施例のノード装置の第2の構成を示すブロック図である。 図11は、ゲートウェイ装置の第4の処理を示すフローチャートである。
以下に、本願の開示する通信装置、通信システム、通信方法、および通信プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例により開示技術が限定されるものではない。
図1は、本実施例の通信システムの全体構成を示す図である。図1に示すように、本実施例の通信システム100は、ゲートウェイ装置200と、ゲートウェイ装置200との間で無線通信を行う複数のノード装置300−1〜300−m(mは2以上の自然数)とを備える。通信システム100は、ゲートウェイ装置200を頂点として、ノード装置300−1〜300−mが枝分かれして設けられたツリー型ネットワークを構成している。ゲートウェイ装置200とノード装置300−1〜300−mとの間、およびノード装置300−1〜300−m相互間は、無線アドホック通信網によって無線通信可能となっている。複数のノード装置300−1〜300−mは、いずれも同様の構成を有しているので、以下、説明の便宜上ノード装置300−1〜300−mのいずれかを示す場合には、ノード装置300という。また、ゲートウェイ装置200とノード装置300はいずれも通信装置の一態様である。
本実施例では、ゲートウェイ装置200と無線通信可能な範囲内にノード装置300−1〜300−3が配置されていると仮定する。また、ノード装置300−1〜300−3それぞれに対して無線通信可能な範囲内にノード装置300−4〜300−mが配置されていると仮定する。例えば、ノード装置300−8からゲートウェイ装置200に対してパケットを送信する場合、ノード装置300−8から直接ゲートウェイ装置200に対してパケットを送信することはできない。そこで、ノード装置300−8は、パケットを一旦ノード装置300−3へ送信する。ノード装置300−3は、ノード装置300−8から送信されたパケットを受信したら、受信したパケットをゲートウェイ装置200へ送信する。つまり、この場合は、ノード装置300−3はパケットを中継する中継ノード装置となる。
なお、ノード装置300−1〜300−3は、ゲートウェイ装置200宛てのパケットを送信する場合には、直接ゲートウェイ装置200にパケットを送信すべきことがあらかじめ設定されたルーティングテーブルを有している。また、ノード装置300−1〜300−3は、ゲートウェイ装置200へパケットを送信できない場合に、どのノード装置へパケットを送信すべきか優先順位を付けてあらかじめ設定されたルーティングテーブルを有している。また、ノード装置300−4〜300−mは、ゲートウェイ装置200宛てのパケットを送信する場合に、どの中継ノード装置へパケットを送信すべきかあらかじめ設定されたルーティングテーブルを有している。また、ノード装置300−4〜300−mは、あらかじめ設定された中継ノード装置へパケットを送信できない場合に、どの中継ノード装置へパケットを送信すべきか優先順位を付けてあらかじめ設定されたルーティングテーブルを有している。ゲートウェイ装置200は、通信ケーブル202を介して他のゲートウェイ装置と接続される。他のゲートウェイ装置に対しては、ゲートウェイ装置200と同様に、複数のノード装置がツリー型ネットワークを構成して配置される。
図2は、本実施例のゲートウェイ装置200の構成を示すブロック図である。図2に示すように、本実施例のゲートウェイ装置200は、パケット受信部204と、経路変更回数抽出部208と、ビジー回数抽出部209とを備える。また、ゲートウェイ装置200は、輻輳検出部210と、輻輳制御メッセージ生成部212と、輻輳解除メッセージ生成部214と、メッセージ送信部216とを備える。
パケット受信部204は、例えばノード装置300−1〜300−3から無線アドホック通信網を介して送信されたパケットを受信する。経路変更回数抽出部208は、パケット受信部204により受信されたパケットに基づいて、このパケットがパケットの送信元のノード装置からパケット受信部204に到達するまでに通信経路を変更した回数を抽出する。経路変更回数抽出部208は、例えば、受信したパケットに付加されている通信経路の履歴に基づいて、通信経路の変更回数を抽出することができる。通信経路の履歴とは、受信したパケットが送信元のノード装置からどのノード装置を中継して送信されたかを示す履歴のことである。送信元のノード装置から送信されたパケットには、中継ノード装置を経由するたびに、中継ノード装置の識別子が付加される。経路変更回数抽出部208は、受信したパケットに付加されている中継ノード装置の識別子を参照することにより、通信経路の変更回数を抽出することができる。
例えばノード装置300−8がパケットの送信元であり、ノード装置300−8から送信されたパケットはノード装置300−3を経由してゲートウェイ装置200へ送信されるという通信経路があらかじめ設定されていたとする。あらかじめ設定された通信経路のとおりにパケットが送信された場合には、パケットの通信経路は変更されていないので、経路変更回数抽出部208は、通信経路の変更回数として「0」回を抽出する。一方、ノード装置300−8からノード装置300−3へパケットの送信を試みたが送信できなかった場合には、ノード装置300−8は、例えばノード装置300−2を介してゲートウェイ装置200へパケットを送信する。この場合には、パケットの通信経路は1回変更されているので、経路変更回数抽出部208は、通信経路の変更回数として「1」回を抽出する。また、ノード装置300−8からノード装置300−3へパケットを送信できず、ノード装置300−2へパケットの送信を試みたがそれでも送信できない場合に、例えばノード装置300−1を介してゲートウェイ装置200へパケットを送信したとする。この場合には、パケットの通信経路は2回変更されたことになるので、経路変更回数抽出部208は、通信経路の変更回数として「2」回を抽出する。なお、ノード装置は、例えばパケットを送信したにもかかわらず到達確認(ACK)パケットが返送されない場合に、パケットの送信ができなかったと判断する。
また、経路変更回数抽出部208は、送信元のノード装置からゲートウェイ装置200へパケットを送信した場合のホップ数に基づいて、経路変更回数を抽出することもできる。ホップ数とは、あるノード装置300からゲートウェイ装置200へパケットを送信する場合に、ゲートウェイ装置200へ到達するまでにパケットが何回ノード装置から送信されたかを示すものである。例えばノード装置300−4からノード装置300−1を中継してゲートウェイ装置200へパケットが送信された場合を考える。この場合、パケットは、ノード装置300−4から送信されてノード装置300−1へ到達し、ノード装置300−1から送信されてゲートウェイ装置200へ到達するので、ホップ数は「2」回となる。経路変更回数抽出部208は、受信パケットに記録された通信経路の履歴から、ホップ数を求めることができる。経路変更回数抽出部208は、ノード装置からゲートウェイ装置200までの最短ホップ数をあらかじめ記録しておき、この最短ホップ数と受信パケットの通信経路の履歴から求めたホップ数との差分を経路変更回数として抽出することもできる。経路変更回数抽出部208は、受信パケットに記録された通信経路の履歴や、ホップ数の差分に限らず、その他の方法で経路変更回数を抽出することもできる。また、ホップ数とは、ゲートウェイ装置200からノード装置300へパケットを送信した場合に、送信されたパケットが宛先のノード装置300へ到達するまでにパケットが何回ゲートウェイ装置200およびノード装置から送信されたかを示すものでもある。
ビジー回数抽出部209は、ノード装置300−1〜300−mがキャリアセンス方式でパケットを送信する場合において、パケットの送信元のノード装置からパケット受信部204に到達するまでのビジーの回数を求める。キャリアセンス方式とは、例えばノード装置300−6がノード装置300−2へパケットを送信しようした際に、他のノード装置(例えばノード装置300−7)がノード装置300−2へパケットを送信しているか否かをセンシングするものである。そして、キャリアセンス方式とは、センシング結果に応じてノード装置300−2へパケットを送信するか否かを決定するものである。例えば、他のノード装置300−7がノード装置300−2へパケットを送信している場合には、ビジーであるのでノード装置300−6はノード装置300−2へパケットを送信しない。一方、他のノード装置300−7がノード装置300−2へパケットを送信していない場合には、ビジーではないので、ノード装置300−6はノード装置300−2へパケットを送信する。言い換えると、ビジーとは、あるノード装置が宛先のノード装置へパケットを送信しようとした際に、他のノード装置が同一の宛先のノード装置へパケットを送信しており、パケットを送信できない状態を表す。ビジーの回数は、送信元のノード装置からゲートウェイ装置200へ送信される過程で、ビジーが発生するたびにカウントアップされて履歴としてパケットに付加される。なお、本実施例では、ゲートウェイ装置200が、経路変更回数抽出部208とビジー回数抽出部209の両方を有する例を挙げたが、これに限らず、ゲートウェイ装置200は、経路変更回数抽出部208とビジー回数抽出部209の一方を有することもできる。
輻輳検出部210は、パケット受信部204により受信されたパケットに基づいて、パケットがパケット受信部204に到達するまでの通信経路に輻輳が発生したことを検出する。輻輳検出部210は、例えば経路変更回数抽出部208により抽出された通信経路の変更回数があらかじめ設定された制御閾値を超えたら、通信経路に輻輳が発生したことを検出する。また、輻輳検出部210は、ビジー回数抽出部209により抽出されたビジーの回数があらかじめ設定された制御閾値を超えたら、通信経路に輻輳が発生したことを検出することもできる。
輻輳制御メッセージ生成部212は、輻輳検出部210により通信経路に輻輳が発生したことが検出されたら、通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成する。また、輻輳解除メッセージ生成部214は、輻輳検出部210により通信経路に輻輳が発生したことが検出された後に、輻輳検出部210により通信経路に輻輳が発生したことが検出されなくなったら、輻輳解除メッセージを生成する。輻輳解除メッセージとは、通信経路の輻輳を回避するための行動の実行の解除を指示するメッセージである。
メッセージ送信部216は、輻輳制御メッセージ生成部212により生成された輻輳制御メッセージまたは輻輳解除メッセージ生成部214により生成された輻輳解除メッセージを含む制御/解除メッセージをノード装置に送信する。メッセージ送信部216は、例えば、輻輳制御メッセージ生成部212により生成された輻輳制御メッセージまたは輻輳解除メッセージ生成部214により生成された輻輳解除メッセージを含む制御/解除メッセージをブロードキャストする。メッセージ送信部216によりブロードキャストされた制御/解除メッセージは、ゲートウェイ装置200との間で通信可能な範囲内に配置されたノード装置300−1〜300−3へ送信される。
図3は、制御/解除メッセージのフォーマットの一例を示す図である。図3の制御/解除メッセージ400は、輻輳制御メッセージ生成部212または輻輳解除メッセージ生成部214で生成される。制御/解除メッセージ400は、制御/解除フラグ402と、輻輳制御対象ID404と、輻輳制御行動種別406とを含む。
制御/解除フラグ402は、輻輳制御メッセージまたは輻輳解除メッセージが生成されたらセットされるフラグであり、輻輳制御メッセージに対応するフラグと輻輳解除メッセージに対応するフラグは識別可能にセットされる。輻輳制御対象ID404は、ノード装置300−1〜300−mのうち、輻輳を回避するための行動を実行すべきノード装置の識別子を表すものである。ただし、輻輳制御対象ID404を設定しないことにより、輻輳を回避するための行動を実行すべき対象を、ノード装置300−1〜300−mとすることもできる。また、輻輳制御対象ID404には、ノード装置300−1〜300−mの個別のIDをセットするだけではなく、例えばゲートウェイ装置200からのホップ数が等しいノード装置、または隣接するノード装置などの属性を表す識別子をセットすることもできる。
輻輳制御行動種別406は、輻輳を回避するために実行すべき行動の種類を表すものである。輻輳制御行動種別406には、例えば、「パケットの廃棄」、「再送回数の抑制」、「転送経路数の抑制」、または「パケット送信頻度の抑制」の少なくとも1つに対応する行動種別が設定される。ただし、輻輳制御行動種別406を設定せず、輻輳を回避するために実行すべき行動の種類をあらかじめノード装置300−1〜300−mに設定しておくこともできる。
輻輳制御行動種別406に「パケットの廃棄」が設定された場合には、ノード装置は、送信すべきパケットを送信することなく廃棄する。ただし、送信すべきパケットを全て廃棄するのではなく、例えば送信すべきパケットの50%を廃棄するなど、廃棄するパケットの割合を設定することもできる。輻輳制御行動種別406に「再送回数の抑制」が設定された場合には、ノード装置は、パケットの送信が失敗したときにパケットを同一の宛先へ再送する(リトライする)回数を抑制する。例えば、パケットを再送する回数の上限を設定することにより、ノード装置は、パケットの送信が失敗したら、設定された上限の回数まではパケットを再送するが、再送回数が上限の回数に達したらパケットを廃棄する。
輻輳制御行動種別406に「転送経路数の抑制」が設定された場合には、ノード装置は、パケットの送信が失敗したときにパケットを他の宛先へ送信する回数を抑制する。例えば、パケットを他の宛先へ送信する回数の上限を設定したとする。この場合、ノード装置は、パケットの送信が失敗したら、設定された上限の回数までは、あらかじめ設定された優先順位にしたがって他の宛先へパケットを送信するが、送信回数が上限の回数に達したらパケットを廃棄する。また、輻輳制御行動種別406に「パケット送信頻度の抑制」が設定された場合には、ノード装置は、パケットを送信する頻度を抑制する。例えば、単位時間あたりにパケットを送信する頻度を設定することにより、ノード装置は、設定された頻度に応じてパケットを送信する。
図4は、ゲートウェイ装置の第1の処理を示すフローチャートである。図4に示すように、まず、パケット受信部204は、ノード装置300−1〜300−mのいずれかから送信されたパケットを受信する(ステップS101)。続いて、経路変更回数抽出部208は、ステップS101で受信されたパケットに基づいて、このパケットがパケットの送信元のノード装置からパケット受信部204に到達するまでに通信経路を変更した回数を抽出する(ステップS102)。続いて、輻輳検出部210は、ステップS102で抽出された経路変更回数が制御閾値より大きいか否かを判定する(ステップS103)。続いて、輻輳制御メッセージ生成部212は、経路変更回数が制御閾値より大きいと判定されたら(ステップS103でYes)、輻輳制御メッセージを生成する(ステップS104)。すなわち、輻輳検出部210により経路変更回数が制御閾値より大きいと判定されたということは、パケットの通信経路に輻輳が発生したことに起因してパケットの経路変更が頻繁に発生していることを表している。このように輻輳検出部210でパケットの通信経路に輻輳が発生したことが検出されたら、輻輳制御メッセージ生成部212は、輻輳制御メッセージを生成する。
一方、輻輳検出部210は、経路変更回数が制御閾値より大きくないと判定されたら(ステップS103でNo)、輻輳制御中であるか否かを判定する(ステップS105)。つまり、輻輳検出部210は、ノード装置300−1〜300−mに対して通信経路の輻輳を回避するための行動の実行を指示している状態か否かを判定する。輻輳検出部210は、輻輳制御中である場合には(ステップS105でYes)、経路変更回数が解除閾値よりも小さいか否かを判定する(ステップS106)。輻輳解除メッセージ生成部214は、経路変更回数が解除閾値よりも小さい場合には(ステップS106でYes)、輻輳解除メッセージを生成する(ステップS107)。すなわち、輻輳検出部210により経路変更回数が解除閾値より小さいと判定されたということは、パケットの通信経路の輻輳が収まったことに起因してパケットの経路変更の発生が減少したことを表している。このように輻輳検出部210でパケットの通信経路に輻輳が発生したことが検出されなくなったら、輻輳解除メッセージ生成部214は、輻輳解除メッセージを生成する。また、輻輳解除メッセージ生成部214は、経路変更回数が解除閾値を下回ったノード装置を判別して記録しておいて、輻輳解除メッセージに、判別されたノード装置のIDを付加することもできる。この場合、ノード装置300−1〜300−mは、輻輳解除メッセージに自ノード装置のノードIDが付加されている場合にのみ、通信経路の輻輳を回避するための行動の実行を解除する。
メッセージ送信部216は、ステップS104で輻輳制御メッセージが生成されたら、またはステップS107で輻輳解除メッセージが生成されたら、制御/解除メッセージをブロードキャストして送信する(ステップS108)。一方、ステップS105で輻輳制御中でないと判定された場合またはステップS106で経路変更回数が解除閾値よりも小さくないと判定された場合には、処理を終了する。
以上のように、本実施例によれば、もっともトラフィックの集中するゲートウェイ装置200で輻輳の発生を検出することにより、輻輳を早期に発見できる。このため、ゲートウェイ装置の周辺のネットワークのキャパシティ以上のトラフィックが発生することを予防することができる。また、ゲートウェイ装置200は、通信システム100のネットワーク全体に輻輳制御メッセージを送信し、ネットワーク全体のノード装置300−1〜300−mが輻輳回避行動をとるため、輻輳の発生を効率よく抑制することができる。その結果、本実施例によれば、輻輳の終息時間を短縮することができる。
また、上記の説明では、ゲートウェイ装置200が、パケットの通信経路の輻輳を検出して、ノード装置300に対して輻輳制御メッセージをブロードキャストするものであるが、これには限られない。すなわち、ノード装置300−1〜300−mが、パケットの通信経路の輻輳を検出して、他のノード装置に対して輻輳制御メッセージをブロードキャストすることもできる。例えば、ノード装置300−3がパケットの通信経路の輻輳を検出する場合を一例に挙げて説明する。ノード装置300−3に対しては、ノード装置300−3を中継ノード装置とするノード装置300−8〜300−mからパケットが集中して送信される。また、仮にノード装置300−6,300−7からノード装置300−2へパケットが送信できない場合には、ノード装置300−6,300−7からもノード装置300−3へパケットが送信される。つまり、ノード装置300−3についても、ゲートウェイ装置200と同様にパケットが集中的に送信されて通信経路の輻輳が生じる場合がある。そこで、ノード装置300−3に、図2のゲートウェイ装置200と同様の構成を搭載することができる。この場合、ノード装置300は、パケット送信元のノード装置から無線アドホック通信網を介してゲートウェイ装置200へ送信されたパケットをパケット送信元のノード装置とゲートウェイ装置200との間で受信する。パケットを受信した後の処理は、ゲートウェイ装置200と同様である。
図5は、本実施例のノード装置の第1の構成を示すブロック図である。図5に示すように、ノード装置300は、メッセージ受信部302と、制御/解除メッセージ判別部306と、輻輳回避行動制御部308と、輻輳回避行動解除部310と、輻輳解除タイマー312と、メッセージ再送信部314とを備える。
メッセージ受信部302は、メッセージ送信部216からブロードキャストされた制御/解除メッセージ400を受信する。制御/解除メッセージ判別部306は、メッセージ受信部302により受信された制御/解除メッセージ400の制御/解除フラグ402を参照する。そして、制御/解除メッセージ判別部306は、制御/解除フラグ402の参照結果に基づいて、制御/解除メッセージ400が、輻輳制御メッセージを表しているか、輻輳解除メッセージを表しているか、またはその他の種別を表しているかを判別する。
輻輳回避行動制御部308は、制御/解除メッセージ判別部306により制御/解除メッセージ400が輻輳制御メッセージを表していると判別されたら、通信経路の輻輳を回避するための行動を実行する。輻輳回避行動解除部310は、制御/解除メッセージ判別部306により制御/解除メッセージ400が輻輳解除メッセージを表していると判別されたら、通信経路の輻輳を回避するための行動の実行を解除する。
輻輳解除タイマー312は、通信経路の輻輳を回避するための行動の実行を解除するためのタイマーである。より具体的には、輻輳解除タイマー312は、輻輳回避行動制御部308により通信経路の輻輳を回避するための行動が実行されたら起動される。そして、輻輳解除タイマー312は、あらかじめ設定された時間が経過したら、タイマー設定時間が経過した旨を輻輳回避行動解除部310に通知する。輻輳回避行動解除部310は、輻輳解除タイマー312からタイマー設定時間が経過した旨が通知されたら、通信経路の輻輳を回避するための行動の実行を解除する。つまり、輻輳回避行動解除部310は、輻輳解除メッセージを表す制御/解除メッセージ400が受信されるか、または輻輳解除タイマー312からタイマー設定時間が経過した旨が通知されたら、通信経路の輻輳を回避するための行動の実行を解除する。
メッセージ再送信部314は、メッセージ受信部302により受信された制御/解除メッセージ400を再ブロードキャストする。例えば、ゲートウェイ装置200のメッセージ送信部216からブロードキャストされた制御/解除メッセージ400は、ノード装置300−1〜300−3で受信される。ノード装置300−1〜300−3で受信された制御/解除メッセージ400は、メッセージ再送信部314により再ブロードキャストされて、ノード装置300−4〜300−mで受信される。
図6は、ノード装置300の第1の処理を示すフローチャートである。図6に示すように、まず、メッセージ受信部302は、ゲートウェイ装置200またはノード装置300−1〜300−mのいずれかからブロードキャストされた制御/解除メッセージ400を受信する(ステップS201)。続いて、制御/解除メッセージ判別部306は、ステップS201で受信された制御/解除メッセージ400が、輻輳制御メッセージを表しているか、輻輳解除メッセージを表しているか、またはその他の種別を表しているかを判別する(ステップS202)。
続いて、輻輳回避行動制御部308は、ステップS201で制御/解除メッセージ400が輻輳制御メッセージを表していると判別されたら、通信経路の輻輳を回避するための行動を実行する(ステップS203)。輻輳回避行動制御部308は、制御/解除メッセージ400の輻輳制御行動種別406が設定されている場合には、輻輳制御行動種別406で設定された種別の行動を実行する。輻輳回避行動制御部308は、制御/解除メッセージ400の輻輳制御行動種別406が設定されていない場合には、あらかじめ設定された種別の行動を実行する。
一方、輻輳回避行動解除部310は、ステップS202で制御/解除メッセージ400が輻輳解除メッセージを表していると判別されたら、通信経路の輻輳を回避するための行動の実行を解除する(ステップS204)。
続いて、メッセージ再送信部314は、ステップS203で通信経路の輻輳を回避するための行動が実行されたら、制御/解除メッセージ400を再ブロードキャストする(ステップS205)。また、メッセージ再送信部314は、ステップS204で通信経路の輻輳を回避するための行動の実行が解除された場合も同様に、制御/解除メッセージ400を再ブロードキャストする(ステップS205)。なお、ステップS202で制御/解除メッセージ400がその他の種別を表していると判別されたら、処理を終了する。
図7は、ゲートウェイ装置200の第2の処理を示すフローチャートである。ゲートウェイ装置200の第2の処理は、第1の処理と比べて、輻輳を回避するための行動を実行する対象となるノード装置を指定する点が異なる。したがって、第1の処理と異なる点を中心に以下の説明を行う。
図7に示すように、まず、パケット受信部204は、ノード装置300−1〜300−mのいずれかから送信されたパケットを受信する(ステップS301)。続いて、経路変更回数抽出部208は、ステップS301で受信されたパケットに基づいて、このパケットがパケットの送信元のノード装置からパケット受信部204に到達するまでに通信経路を変更した回数を抽出する(ステップS302)。続いて、輻輳検出部210は、ステップS302で抽出された経路変更回数が制御閾値より大きいか否かを判定する(ステップS303)。
続いて、輻輳検出部210は、経路変更回数が制御閾値より大きいと判定された場合は(ステップS303でYes)、輻輳を回避するための行動を実行する対象となるノード装置のIDを記録する(ステップS304)。より具体的には、輻輳検出部210は、受信パケットに付加されている通信経路の履歴に基づいて、どの通信経路で輻輳が発生しているかを検出する。すなわち、受信パケットに付加された通信経路の履歴は、受信したパケットが送信元のノード装置からどのノード装置を中継して送信されたかを示しているので、この履歴を参照すると、どの通信経路で輻輳が発生しているかを検出することができる。例えば、ノード装置300−8から送信されたパケットは、輻輳が発生していない状態では、ノード装置300−3を経由してゲートウェイ装置200へ送信されるとする。これに対して、ノード装置300−8から送信されたパケットの通信経路の履歴を参照すると、パケットはノード装置300−8からノード装置300−2を経由してゲートウェイ装置200へ到達したとする。これは、ノード装置300−8とノード装置300−3との間の通信経路に輻輳が発生していることによって、ノード装置300−8からノード装置300−3へのパケットの送信が成功せず、ノード装置300−2経由で送信されたことを示している。そこで、輻輳検出部210は、ノード装置300−8を、輻輳を回避するための行動を実行する対象となるノード装置とし、ノード装置300−8のID(IDentification)を記録する。
続いて、輻輳検出部210は、あらかじめ設定された周期が経過したか否かを判定する(ステップS305)。輻輳検出部210は、あらかじめ設定された周期が経過するまで、ステップS301〜ステップS304を繰り返す。輻輳検出部210は、あらかじめ設定された周期が経過したら(ステップS305でYes)、輻輳を回避するための行動を実行する対象となるノード装置の数が0より多いか否かを判定する(ステップS306)。
輻輳制御メッセージ生成部212は、輻輳を回避するための行動を実行する対象となるノード装置の数が0より多いと判定されたら(ステップS306でYes)、輻輳制御メッセージを生成する(ステップS307)。ここで、輻輳制御メッセージ生成部212は、輻輳制御メッセージに対応するフラグを制御/解除フラグ402にセットするとともに、輻輳を回避するための行動を実行する対象となるノード装置のIDを輻輳制御対象ID404にセットする。
一方、輻輳検出部210は、輻輳を回避するための行動を実行する対象となるノード装置の数が0であると判定されたら(ステップS306でNo)、輻輳制御中であるか否かを判定する(ステップS308)。輻輳検出部210は、輻輳制御中である場合には(ステップS308でYes)、経路変更回数が解除閾値よりも小さいか否かを判定する(ステップS309)。輻輳解除メッセージ生成部214は、経路変更回数が解除閾値よりも小さい場合には(ステップS309でYes)、輻輳解除メッセージを生成する(ステップS310)。
メッセージ送信部216は、ステップS307で輻輳制御メッセージが生成されたら、またはステップS310で輻輳解除メッセージが生成されたら、制御/解除メッセージ400をブロードキャストして送信する(ステップS311)。一方、ステップS308で輻輳制御中でないと判定された場合またはステップS309で経路変更回数が解除閾値よりも小さくないと判定された場合には、処理を終了する。
図8は、ノード装置の第2の処理を示すフローチャートである。ノード装置300−1〜30−mの第2の処理は、第1の処理と比べて、自ノードが輻輳を回避するための行動を実行する対象となっているか否かを判定する点が異なる。したがって、第1の処理と異なる点を中心に以下の説明を行う。
図8に示すように、まず、メッセージ受信部302は、ゲートウェイ装置200またはノード装置300−1〜300−mのいずれかからブロードキャストされた制御/解除メッセージ400を受信する(ステップS401)。続いて、制御/解除メッセージ判別部306は、ステップS201で受信された制御/解除メッセージ400が、輻輳制御メッセージを表しているか、輻輳解除メッセージを表しているか、またはその他の種別を表しているかを判別する(ステップS402)。
続いて、輻輳回避行動制御部308は、ステップS201で制御/解除メッセージ400が輻輳制御メッセージを表していると判別されたら、輻輳制御対象IDと自ノード装置のIDが一致するか否かを判定する(ステップS403)。より具体的には、輻輳回避行動制御部308は、輻輳制御対象ID404にセットされているIDと、自ノード装置のIDが一致するか否かを判定する。輻輳回避行動制御部308は、輻輳制御対象IDと自ノード装置のIDが一致すると判定されたら(ステップS403でYes)、通信経路の輻輳を回避するための行動を実行する(ステップS404)。
一方、輻輳回避行動解除部310は、ステップS402で制御/解除メッセージ400が輻輳解除メッセージを表していると判別されたら、通信経路の輻輳を回避するための行動の実行を解除する(ステップS405)。
続いて、メッセージ再送信部314は、ステップS404で通信経路の輻輳を回避するための行動が実行されたら、制御/解除メッセージ400を再ブロードキャストする(ステップS406)。また、メッセージ再送信部314は、ステップS405で通信経路の輻輳を回避するための行動の実行が解除された場合も同様に、制御/解除メッセージ400を再ブロードキャストする(ステップS406)。また、メッセージ再送信部314は、ステップS403で輻輳制御対象IDと自ノード装置のIDが一致しないと判定された場合も同様に、制御/解除メッセージ400を再ブロードキャストする(ステップS406)。なお、ステップS402で制御/解除メッセージ400がその他の種別を表していると判別されたら、処理を終了する。
以上、ゲートウェイ装置200の第2の処理およびノード装置300の第2の処理によれば、効率よく輻輳の発生を抑制することができる。すなわち、ゲートウェイ装置200の第2の処理およびノード装置の第2の処理によれば、どの通信経路で輻輳が発生しているかを検出することができる。したがって、輻輳が発生している通信経路にパケットを送信するノード装置に絞って、輻輳を回避するための行動を実行する対象とすることができる。その結果、輻輳が発生している通信経路にパケットを送信するノード装置に限って、輻輳回避行動を実行するので、効率よく輻輳の発生を抑制することができる。
図9は、ゲートウェイ装置の第3の処理を示すフローチャートである。ゲートウェイ装置200の第3の処理は、第2の処理と比べて、輻輳を回避するための行動を実行する対象となるノード装置を指定する方法が異なる。したがって、第2の処理と異なる点を中心に以下の説明を行う。
図9に示すように、まず、パケット受信部204は、ノード装置300−1〜300−mのいずれかから送信されたパケットを受信する(ステップS501)。続いて、経路変更回数抽出部208は、ステップS501で受信されたパケットに基づいて、このパケットがパケットの送信元のノード装置からパケット受信部204に到達するまでに通信経路を変更した回数を抽出する(ステップS502)。続いて、輻輳検出部210は、ステップS302で抽出された経路変更回数が制御閾値より大きいか否かを判定する(ステップS503)。
続いて、輻輳制御メッセージ生成部212は、経路変更回数が制御閾値より大きいと判定されたら(ステップS503でYes)、輻輳を回避するための行動を実行する対象となるノード装置のIDを輻輳制御対象ID404に設定する(ステップS504)。ここで、輻輳制御メッセージ生成部212は、あらかじめ設定されたホップ数の基準値に基づいて、輻輳制御対象となるノード装置を設定する。より具体的には、輻輳制御メッセージ生成部212は、あらかじめ設定されたホップ数の基準値より少ないホップ数でメッセージを送信可能な範囲に設置されているノード装置を輻輳制御対象のノード装置として設定する。例えば、輻輳制御対象となるノード装置を設定するためにあらかじめ設定されたホップ数の基準値が「1」であるとする。この場合、ゲートウェイ装置200から1回のホップ数でメッセージを送信可能な範囲に設置されているのは、ノード装置300−1〜300−3である。そこで、輻輳制御メッセージ生成部212は、輻輳制御対象ID404に、ノード装置300−1〜300−3に対応するIDを設定する。
続いて、輻輳制御メッセージ生成部212は、輻輳制御メッセージを生成する(ステップS505)。ここで、輻輳制御メッセージ生成部212は、輻輳制御対象ID404に輻輳回制御対象となるノード装置のIDが設定された制御/解除メッセージ400の制御/解除フラグ402に、輻輳制御メッセージに対応するフラグをセットする。
一方、輻輳検出部210は、経路変更回数が制御閾値より大きいと判定されなかったら(ステップS503でNo)、輻輳制御中であるか否かを判定する(ステップS506)。輻輳検出部210は、輻輳制御中である場合には(ステップS506でYes)、経路変更回数が解除閾値よりも小さいか否かを判定する(ステップS507)。輻輳解除メッセージ生成部214は、経路変更回数が解除閾値よりも小さい場合には(ステップS507でYes)、輻輳解除メッセージを生成する(ステップS508)。
メッセージ送信部216は、ステップS505で輻輳制御メッセージが生成されたら、またはステップS508で輻輳解除メッセージが生成されたら、制御/解除メッセージ400をブロードキャストして送信する(ステップS509)。一方、ステップS506で輻輳制御中でないと判定された場合またはステップS507で経路変更回数が解除閾値よりも小さくないと判定された場合には、処理を終了する。
以上、ゲートウェイ装置の第3の処理によれば、効率よく輻輳の発生を抑制することができる。すなわち、ゲートウェイ装置の第3の処理によれば、輻輳制御メッセージ生成部212は、あらかじめ設定されたホップ数の基準値に基づいて、輻輳制御対象となるノード装置を設定する。例えば、ゲートウェイ装置200には、ノード装置300−1〜300−mから送信されたパケットが集中するので、ゲートウェイ装置200の周囲の通信経路は輻輳が生じ易い。これに対して、ゲートウェイ装置200からのホップ数が少ない通信経路にパケットを送信するノード装置に限って、輻輳を回避するための行動を実行する対象とすることができるので、効率よく輻輳の発生を抑制することができる。
図10は、本実施例のノード装置の第2の構成を示すブロック図である。ノード装置300−1〜300−mの第2の構成は、第1の構成と比べて、転送メッセージ選択部316が加わった点が異なる。したがって、第1の構成と重複する構成(メッセージ受信部302、制御/解除メッセージ判別部306、輻輳回避行動制御部308、輻輳回避行動解除部310、輻輳解除タイマー312、およびメッセージ再送信部314)の構成の説明は省略する。
転送メッセージ選択部316は、自ノード装置に制御/解除メッセージ400を送信したノード装置に基づいて、制御/解除メッセージ400を再ブロードキャストするか否かを判定する。より具体的には、転送メッセージ選択部316は、ゲートウェイ装置200からのホップ数が自ノード装置と比べて小さいノード装置から制御/解除メッセージ400を受信した場合にのみ、受信した制御/解除メッセージ400を再ブロードキャストさせる。例えば、ノード装置300−8を一例に挙げて説明すると、ノード装置300−8のゲートウェイ装置200からのホップ数は「2」である。したがって、ノード装置300−8は、ゲートウェイ装置200からのホップ数が「2」より小さい「1」であるノード装置300−1〜300−3から制御/解除メッセージ400を受信した場合にのみ、再ブロードキャストを行う。また、転送メッセージ選択部316は、自ノード装置から送信されたゲートウェイ装置200宛てのパケットの直近の中継ノード装置から制御/解除メッセージ400を受信した場合にのみ、受信した制御/解除メッセージ400を再ブロードキャストさせてもよい。例えば、ノード装置300−8を一例に挙げて説明すると、ノード装置300−8がゲートウェイ200宛てのパケットを送信する場合の直近の中継ノード装置は、ノード装置300−3である。したがって、ノード装置300−8は、ノード装置300−3から制御/解除メッセージ400を受信した場合にのみ、再ブロードキャストを行う。
ノード装置300の第2の構成によれば、制御/解除メッセージ400のブロードキャストに起因する輻輳の発生を抑制することができる。すなわち、ゲートウェイ装置200およびノード装置300が頻繁に制御/解除メッセージ400をブロードキャストすれば、ブロードキャストされた制御/解除メッセージ400が原因となって、かえって輻輳状態が悪化するおそれも考えられる。この点、転送メッセージ選択部316は、ゲートウェイ装置200からのホップ数が自ノード装置と比べて小さいノード装置から制御/解除メッセージ400を受信した場合にのみ、受信した制御/解除メッセージ400を再ブロードキャストする。また、転送メッセージ選択部316は、自ノード装置から送信されたゲートウェイ装置200宛てのパケットの直近の中継ノード装置から制御/解除メッセージ400を受信した場合にのみ、受信した制御/解除メッセージ400を再ブロードキャストさせる。このように、転送メッセージ選択部316によれば、制御/解除メッセージ400が再ブロードキャストされる頻度が減少するので、制御/解除メッセージ400の再ブロードキャストに起因して輻輳状態が悪化するのを防止することができる。
図11は、ゲートウェイ装置の第4の処理を示すフローチャートである。ゲートウェイ装置200の第4の処理は、第1の処理と比べて、あらかじめ設定された周期における経路変更回数の平均値を求める点が異なる。したがって、第1の処理と異なる点を中心に以下の説明を行う。
図11に示すように、まず、パケット受信部204は、ノード装置300−1〜300−mのいずれかから送信されたパケットを受信する(ステップS601)。続いて、経路変更回数抽出部208は、ステップS601で受信されたパケットに基づいて、このパケットがパケットの送信元のノード装置からパケット受信部204に到達するまでに通信経路を変更した回数を抽出する(ステップS602)。続いて、経路変更回数抽出部208は、平均経路変更回数を計算する(ステップS603)。続いて、経路変更回数抽出部208は、あらかじめ設定された周期が経過したか否かを判定する(ステップS604)。経路変更回数抽出部208は、あらかじめ設定された周期が経過していないと判定されたら(ステップS604でNo)、ステップS601に戻り、あらかじめ設定された周期が経過するまで、ステップS601〜ステップS603を繰り返す。これにより、あらかじめ設定された周期における経路変更回数の平均値が求められる。
輻輳検出部210は、あらかじめ設定された周期が経過したと判定されたら(ステップS604でYes)、ステップS603で抽出された平均経路変更回数が制御閾値より大きいか否かを判定する(ステップS605)。輻輳制御メッセージ生成部212は、平均経路変更回数が制御閾値より大きいと判定されたら(ステップS605でYes)、輻輳制御メッセージを生成する(ステップS606)。
一方、輻輳検出部210は、平均経路変更回数が制御閾値より大きいと判定されなかったら(ステップS605でNo)、輻輳制御中であるか否かを判定する(ステップS607)。輻輳検出部210は、輻輳制御中である場合には(ステップS607でYes)、経路変更回数が解除閾値よりも小さいか否かを判定する(ステップS608)。輻輳解除メッセージ生成部214は、経路変更回数が解除閾値よりも小さい場合には(ステップS608でYes)、輻輳解除メッセージを生成する(ステップS609)。
メッセージ送信部216は、ステップS606で輻輳制御メッセージが生成されたら、またはステップS609で輻輳解除メッセージが生成されたら、制御/解除メッセージ400をブロードキャストして送信する(ステップS610)。一方、ステップS607で輻輳制御中でないと判定された場合またはステップS608で経路変更回数が解除閾値よりも小さくないと判定された場合には、処理を終了する。
以上、ゲートウェイ装置の第4の処理によれば、あらかじめ設定された周期における経路変更回数の平均値を求めて、求められた平均経路変更回数に基づいて通信経路の輻輳を検出する。したがって、ゲートウェイ装置の第4の処理によれば、通信経路の輻輳状態を精度よく求めることができるので、精度よく輻輳制御および輻輳解除を行うことができる。
なお、上記の実施例は、主に通信装置(ゲートウェイ装置200およびノード装置300)、通信システム100、および通信方法を中心に説明したが、これには限られない。あらかじめ用意された通信プログラムをコンピュータで実行することによって、上述の実施例と同様の機能を実現することができる。すなわち、通信プログラムは、コンピュータに、パケットの送信元のノード装置から無線アドホック通信網を介して送信されたパケットを受信する処理を実行させる。また、通信プログラムは、コンピュータに、前記受信されたパケットに基づいて、前記パケットが前記パケット受信部に到達するまでの通信経路に輻輳が発生したことを検出する処理を実行させる。また、通信プログラムは、コンピュータに、前記通信経路に輻輳が発生したことが検出されたら、前記通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成する処理を実行させる。また、通信プログラムは、コンピュータに、前記生成された輻輳制御メッセージをブロードキャストする処理を実行させる。なお、通信プログラムは、インターネットなどの通信ネットワークを介してコンピュータに配布することができる。また、通信プログラムは、コンピュータに設けられたメモリ、ハードディスク、その他のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
100 通信システム
200 ゲートウェイ装置
204 パケット受信部
208 経路変更回数抽出部
210 輻輳検出部
212 輻輳制御メッセージ生成部
214 輻輳解除メッセージ生成部
216 メッセージ送信部
300 ノード装置
302 メッセージ受信部
306 制御/解除メッセージ判別部
308 輻輳回避行動制御部
310 輻輳回避行動解除部
314 メッセージ再送信部
316 転送メッセージ選択部
400 制御/解除メッセージ
402 制御/解除フラグ
406 輻輳制御行動種別
404 輻輳制御対象ID

Claims (16)

  1. パケットの送信元のノード装置から無線アドホック通信網を介して送信されたパケットを受信するパケット受信部と、
    前記パケット受信部により受信されたパケットに基づいて、前記パケットが前記パケット受信部に到達するまでの通信経路に輻輳が発生したことを検出する輻輳検出部と、
    前記輻輳検出部により前記通信経路に輻輳が発生したことが検出されたら、前記通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成する輻輳制御メッセージ生成部と、
    前記輻輳制御メッセージ生成部により生成された輻輳制御メッセージをノード装置に送信するメッセージ送信部と
    を備えることを特徴とする通信装置。
  2. 前記パケット受信部により受信されたパケットに付加されている通信経路の履歴に基づいて、前記パケットが前記ノード装置から前記パケット受信部に到達するまでに通信経路を変更した回数を求める経路変更回数抽出部を
    さらに備え、
    前記輻輳検出部は、前記経路変更回数抽出部により求められた通信経路の変更回数が、あらかじめ設定された制御閾値を超えたら、前記通信経路に輻輳が発生したことを検出する
    請求項1に記載の通信装置。
  3. 前記ノード装置がキャリアセンス方式でパケットを送信する場合において、
    前記パケット受信部により受信されたパケットに付加されており、前記ノード装置がパケットを送信する際に他のノード装置が同一の宛先へパケットを送信していることを表すビジーの回数の履歴に基づいて、前記パケットが前記ノード装置から前記パケット受信部に到達するまでのビジーの回数を求めるビジー回数抽出部を
    さらに備え、
    前記輻輳検出部は、前記ビジー回数抽出部により求められたビジーの回数が、あらかじめ設定された制御閾値を超えたら、前記通信経路に輻輳が発生したことを検出する
    請求項1に記載の通信装置。
  4. 前記輻輳制御メッセージ生成部は、前記輻輳制御メッセージに、前記輻輳を回避するための行動を実行すべきノード装置の識別子を付加したメッセージを生成する
    請求項1に記載の通信装置。
  5. 前記輻輳制御メッセージ生成部は、前記輻輳制御メッセージに、パケットの廃棄、再送回数の抑制、転送経路数の抑制、パケット送信頻度の抑制の少なくとも1つを含む輻輳制御行動種別を付加したメッセージを生成する
    請求項1に記載の通信装置。
  6. 前記メッセージ送信部は、前記輻輳制御メッセージ生成部により生成された輻輳制御メッセージをブロードキャストする
    請求項1に記載の通信装置。
  7. 前記輻輳検出部により前記通信経路に輻輳が発生したことが検出された後に、輻輳検出部により前記通信経路に輻輳が発生したことが検出されなくなったら、前記通信経路の輻輳を回避するための行動の実行の解除を指示する輻輳解除メッセージを生成する輻輳解除メッセージ生成部を
    さらに備え、
    メッセージ送信部は、前記輻輳解除メッセージ生成部により生成された輻輳解除メッセージをブロードキャストする
    請求項1に記載の通信装置。
  8. 無線アドホック通信網を介して通信を行うノード装置とゲートウェイ装置とを備えた通信システムであって、
    前記ゲートウェイ装置は、
    パケットの送信元のノード装置から前記無線アドホック通信網を介して送信されたパケットを受信するパケット受信部と、
    前記パケット受信部により受信されたパケットに基づいて、前記パケットが前記パケット受信部に到達するまでの通信経路に輻輳が発生したことを検出する輻輳検出部と、
    前記輻輳検出部により前記通信経路に輻輳が発生したことが検出されたら、前記通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成する輻輳制御メッセージ生成部と、
    前記輻輳制御メッセージ生成部により生成された輻輳制御メッセージをノード装置に送信するメッセージ送信部とを備え、
    前記ノード装置は、
    前記送信された輻輳制御メッセージを受信するメッセージ受信部と、
    前記メッセージ受信部により前記輻輳制御メッセージを受信したら、前記通信経路の輻輳を回避するための行動を実行する輻輳回避行動制御部と、
    前記メッセージ受信部により受信された輻輳制御メッセージを再送信するメッセージ再送信部と
    を備えることを特徴とする通信システム。
  9. 前記メッセージ送信部は、前記輻輳制御メッセージ生成部により生成された輻輳制御メッセージをブロードキャストし、
    前記メッセージ再送信部は、前記メッセージ受信部により受信された輻輳制御メッセージを再ブロードキャストする
    請求項8に記載の通信システム。
  10. 前記ゲートウェイ装置は、
    前記輻輳検出部により前記通信経路に輻輳が発生したことが検出された後に、輻輳検出部により前記通信経路に輻輳が発生したことが検出されなくなったら、前記通信経路の輻輳を回避するための行動の実行の解除を指示する輻輳解除メッセージを生成する輻輳解除メッセージ生成部
    をさらに備え、
    前記ノード装置は、
    前記メッセージ受信部により前記輻輳解除メッセージを受信したら、前記通信経路の輻輳を回避するための行動の実行を解除する輻輳回避行動解除部
    をさらに備え、
    前記メッセージ送信部は、前記輻輳解除メッセージ生成部により生成された輻輳解除メッセージをブロードキャストし、
    前記メッセージ再送信部は、前記メッセージ受信部により受信された輻輳解除メッセージを再ブロードキャストする
    請求項8に記載の通信システム。
  11. 前記輻輳制御メッセージ生成部は、前記輻輳制御メッセージに、前記輻輳を回避するための行動を実行すべきノード装置の識別子を付加したメッセージを生成し、
    前記輻輳回避行動制御部は、前記メッセージに含まれる前記輻輳を回避するための行動を実行すべきノード装置の識別子と自ノード装置の識別子が一致する場合には、前記通信経路の輻輳を回避するための行動を実行する
    請求項8に記載の通信システム。
  12. 前記ノード装置は、
    前記ゲートウェイ装置からのホップ数が自ノード装置と比べて小さいノード装置から前記輻輳制御メッセージまたは輻輳解除メッセージを受信した場合にのみ、前記メッセージ再送信部に前記輻輳制御メッセージまたは輻輳解除メッセージを再ブロードキャストさせるか、または、自ノード装置から送信された前記ゲートウェイ装置宛てのパケットの直近の中継ノード装置から前記輻輳制御メッセージまたは輻輳解除メッセージを受信した場合にのみ、前記メッセージ再送信部に前記輻輳制御メッセージまたは輻輳解除メッセージを再ブロードキャストさせる転送メッセージ選択部を
    さらに備えることを特徴とする請求項8に記載の通信システム。
  13. パケットの送信元のノード装置から無線アドホック通信網を介して送信されたパケットを受信するパケット受信ステップと、
    前記パケット受信ステップにより受信されたパケットに基づいて、前記パケットが前記パケット受信部に到達するまでの通信経路に輻輳が発生したことを検出する輻輳検出ステップと、
    前記輻輳検出ステップにより前記通信経路に輻輳が発生したことが検出されたら、前記通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成する輻輳制御メッセージ生成ステップと、
    前記輻輳制御メッセージ生成ステップにより生成された輻輳制御メッセージをノード装置に送信するメッセージ送信ステップと
    を備えることを特徴とする通信方法。
  14. 前記メッセージ送信ステップは、前記輻輳制御メッセージ生成ステップにより生成された輻輳制御メッセージをブロードキャストする
    請求項13に記載の通信方法。
  15. パケットの送信元のノード装置から無線アドホック通信網を介して送信されたパケットを受信し、
    前記受信されたパケットに基づいて、前記パケットが前記パケット受信部に到達するまでの通信経路に輻輳が発生したことを検出し、
    前記通信経路に輻輳が発生したことが検出されたら、前記通信経路の輻輳を回避するための行動の実行を指示する輻輳制御メッセージを生成し、
    前記生成された輻輳制御メッセージをノード装置に送信する
    処理をコンピュータに実行させることを特徴とする通信プログラム。
  16. 前記生成された輻輳制御メッセージをノード装置に送信する処理は、前記生成された輻輳制御メッセージをブロードキャストする処理をコンピュータに実行させる
    請求項15に記載の通信プログラム。
JP2012554535A 2011-01-25 2011-01-25 通信装置、通信システム、通信方法、および通信プログラム Expired - Fee Related JP5790665B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/051368 WO2012101763A1 (ja) 2011-01-25 2011-01-25 通信装置、通信システム、通信方法、および通信プログラム

Publications (2)

Publication Number Publication Date
JPWO2012101763A1 true JPWO2012101763A1 (ja) 2014-06-30
JP5790665B2 JP5790665B2 (ja) 2015-10-07

Family

ID=46580370

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012554535A Expired - Fee Related JP5790665B2 (ja) 2011-01-25 2011-01-25 通信装置、通信システム、通信方法、および通信プログラム

Country Status (3)

Country Link
US (1) US9407552B2 (ja)
JP (1) JP5790665B2 (ja)
WO (1) WO2012101763A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2727284B1 (en) * 2011-06-30 2018-06-06 British Telecommunications public limited company Determining path congestion measures
JP2013150177A (ja) * 2012-01-19 2013-08-01 Canon Inc 画像処理装置及びその制御方法
FR2995160B1 (fr) * 2012-09-05 2014-09-05 Thales Sa Procede de transmission dans un reseau ad hoc multisauts ip
JP6040663B2 (ja) * 2012-09-19 2016-12-07 富士通株式会社 通信制御装置、無線通信システム、及び無線通信方法
CN105594169A (zh) * 2013-11-07 2016-05-18 华为技术有限公司 用于流量分割的系统及方法
EP3349504A4 (en) * 2015-09-11 2019-04-17 Sony Corporation INFORMATION PROCESSING DEVICE, COMMUNICATION SYSTEM, INFORMATION PROCESSING AND PROGRAM
CN107493238A (zh) * 2016-06-13 2017-12-19 华为技术有限公司 一种网络拥塞控制方法、设备及系统
JP7059149B2 (ja) * 2018-08-24 2022-04-25 株式会社東芝 無線通信装置、無線通信システム、無線通信方法及びプログラム
US11057305B2 (en) * 2018-10-27 2021-07-06 Cisco Technology, Inc. Congestion notification reporting for a responsive network
US11082344B2 (en) 2019-03-08 2021-08-03 GoTenna, Inc. Method for utilization-based traffic throttling in a wireless mesh network

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5138847B2 (ja) * 2001-08-31 2013-02-06 富士通株式会社 ネットワークシステム、ネットワーク中継装置、ネットワーク中継監視装置およびネットワーク運用方法
WO2003047175A1 (en) 2001-11-28 2003-06-05 Millennial Net Etwork protocol for an ad hoc wireless network
US7489632B2 (en) * 2002-03-22 2009-02-10 Nokia Corporation Simple admission control for IP based networks
US8081566B1 (en) * 2004-04-19 2011-12-20 Rockstar BIDCO, LLP Method and apparatus for indicating congestion in a source routed network
US7403496B2 (en) * 2004-09-28 2008-07-22 Motorola, Inc. Method and apparatus for congestion relief within an ad-hoc communication system
CN101061463A (zh) * 2004-10-27 2007-10-24 网状网络公司 在无线通信网络中提供服务质量供应和拥塞控制的系统和方法
CN101438541B (zh) 2006-09-20 2011-12-07 松下电器产业株式会社 中继传输设备以及中继传输方法
TWI459754B (zh) 2007-01-12 2014-11-01 Koninkl Philips Electronics Nv 無線網狀網路中擁擠管理之方法
JP2010245783A (ja) * 2009-04-03 2010-10-28 Mitsubishi Electric Corp モバイルルータアドホックネットワーク通信システム
US8982694B2 (en) * 2010-09-01 2015-03-17 Telefonaktiebolaget L M Ericsson (Publ) Localized congestion exposure

Also Published As

Publication number Publication date
US9407552B2 (en) 2016-08-02
JP5790665B2 (ja) 2015-10-07
WO2012101763A1 (ja) 2012-08-02
US20130294244A1 (en) 2013-11-07

Similar Documents

Publication Publication Date Title
JP5790665B2 (ja) 通信装置、通信システム、通信方法、および通信プログラム
TWI644539B (zh) 用於無線環網路的方法
Lou et al. Toward broadcast reliability in mobile ad hoc networks with double coverage
JP5653535B2 (ja) 通信装置およびアドホックネットワークシステム
AU2018442113B2 (en) Model based path selection in a bluetooth low energy, BLE, mesh network
CN105338535A (zh) 一种使用移动终端进行无线组网的方法
KR20120017972A (ko) 무선 메쉬 네트워크에서 데이터 전송의 혼잡 상황을 통지/회피하는 방법 및 이를 위한 메쉬 노드
WO2018151640A1 (en) Network node and method therein for transmitting a message in a mesh network
KR101136051B1 (ko) 무선 이동 멀티홉 네트워크 시스템에서의 멀티캐스트 라우팅 방법
JP6098322B2 (ja) パケット転送方法、ノード装置およびプログラム
US10257763B2 (en) Routing protocol for advanced metering infrastructure system
KR100997660B1 (ko) 무선 멀티홉 네트워크에서의 협업 데이터 전송 방법 및 시스템
EP2335383B1 (en) Network nodes
Lohith et al. Link peek: A link outage resilient ip packet forwarding mechanism for 6lowpan/rpl based low-power and lossy networks (llns)
Sett et al. An overhearing based routing scheme for wireless sensor networks
WO2015194134A1 (ja) 通信状態推定装置、通信状態推定方法及び通信状態推定プログラムを記憶する記録媒体
KR20130048547A (ko) Lqi를 이용한 위치 기반의 라우팅 장치 및 방법
JP2017055371A (ja) 通信装置、中継判定方法及び中継判定プログラム
JP6272060B2 (ja) ノード装置
JP2015053581A (ja) 送信装置、受信装置、管理装置及びプログラム
JP6513992B2 (ja) 通信装置および通信プログラムならびに通信方法
JP2014236413A (ja) 無線通信装置
KR101125933B1 (ko) 그리드형 무선 프로세스 제어 네트워크에서 버퍼링 재전송을 기반으로 하는 메시지 전송 방법 및 노드들
JP5897320B2 (ja) 無線通信システム
JP6246073B2 (ja) 無線通信基地局

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150707

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150720

R150 Certificate of patent or registration of utility model

Ref document number: 5790665

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees