JP5391582B2 - ノード、通信方法、およびプログラム - Google Patents

ノード、通信方法、およびプログラム Download PDF

Info

Publication number
JP5391582B2
JP5391582B2 JP2008136492A JP2008136492A JP5391582B2 JP 5391582 B2 JP5391582 B2 JP 5391582B2 JP 2008136492 A JP2008136492 A JP 2008136492A JP 2008136492 A JP2008136492 A JP 2008136492A JP 5391582 B2 JP5391582 B2 JP 5391582B2
Authority
JP
Japan
Prior art keywords
node
adjacent
nodes
buffers
maxb
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.)
Expired - Fee Related
Application number
JP2008136492A
Other languages
English (en)
Other versions
JP2009284398A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2008136492A priority Critical patent/JP5391582B2/ja
Publication of JP2009284398A publication Critical patent/JP2009284398A/ja
Application granted granted Critical
Publication of JP5391582B2 publication Critical patent/JP5391582B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Description

本発明は、移動体通信機器などのノードがアドホックモードで通信する技術に関する。
アドホックネットワークにおいては、クライアントのノード自体にデータ中継機能を持たせることにより、それぞれのノードは、基地局やアクセスポイントなどの固定局を介さずに通信することができる。これらの固定局を要しないので、アドホックモードは、コンサート会場、イベント会場、または災害地などにおいて構築される一時的なネットワークや、自動車などにおける移動体通信に適している。但し、アドホックモードでは、各ノードが中継局となり、各ノードが移動することにより経路が変更されることがあるので、輻輳が発生しやすい。
輻輳を緩和するため、特許文献1および特許文献2に記載のノードは、トラフィック量又は通信負荷が小さいノードを中継用のノードとして選択する構成としている。また、アドホックネットワークで一般的に用いられるGreedy方式では、隣接ノードのうち、通信対象である終点ノードと地理的な距離が最も近いノードを中継用のノードとして選択し、中継用のノード数を最小とすることで輻輳の緩和を図っている。
特開2005−142909号公報 特開2006−211375号公報
しかしながら、特許文献1および特許文献2に開示された構成では、通信量は小さいが、終点ノードから地理的に遠い位置のノードを中継用のノードとして選択してしまうことがある。この場合、中継するノード数が多くなってしまうが、ホップ数が大きいと、各ノード間の通信量の変動の影響を受けやすくなり、始点と終点との間の通信が不安定になりやすい。
また、Greedy方式では、終点ノードに地理的に近いが、通信量が大きいノードを選択してしまうことがある。この場合も、通信量の増大により、輻輳が生じやすくなる。
このため、アドホックネットワークにおいて、輻輳が十分に緩和されないという問題があった。
本発明は、アドホックネットワークにおいて、始点と終点との間の安定な通信を確保するとともに、中継ノードにおける輻輳を緩和する技術を提供することを目的とする。
上記目的を達成するために、本発明のノードは、自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードとの間の地理的な距離を算出する距離算出手段と、前記隣接ノードにおける通信量に応じて変動する変数を取得する変数取得手段と、前記距離算出手段により算出された前記距離と、前記変数取得手段により取得された前記変数とに基づいて、1以上の前記隣接ノードのうち、いずれかを前記始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する選択手段と、を有する。
本発明の通信方法は、始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードとの間の地理的な距離を算出し、前記隣接ノードにおける通信量に応じて変動する変数を取得し、前記距離と前記変数とに基づいて、1以上の前記隣接ノードのうち、いずれかを始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する、通信方法である。
本発明のプログラムは、コンピュータに、自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードとの間の地理的な距離を算出する距離取得手順、前記隣接ノードにおける通信量に応じて変動する変数を取得する変数取得手順、及び前記距離算出手順により算出された前記距離と、前記変数取得手順により取得された前記変数とに基づいて、1以上の前記隣接ノードのうち、いずれかを自身と前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する選択手順、を実行させるためのプログラムである。
本発明によれば、ノードは、隣接ノードから終点ノードまでの地理的な距離と、通信量に応じて変動する変数とに基づいて中継ノードを選択するため、終点ノードから地理的に遠すぎるノードを選択しない結果、中継ノード数が少なくなり、通信が安定する。また、ノードは、通信量が多すぎるノードを選択しないので、輻輳が緩和される。
(第1の実施形態)
本発明を実施するための第1の形態について図面を参照して詳細に説明する。
図1は、本実施形態の通信システム1の構成を示す全体図である。通信システム1は、複数のノードがピア・ツー・ピアで相互に無線通信を行うための通信システムである。同図を参照すると、通信システム1は、複数のノード(例えば10、11、12、および13)を有する。これらのノードは、基地局やアクセスポイントを介さずに相互に無線通信を行う機能を有する通信機器である。具体的には、これらのノードは、アドホックモードで通信する機能を有するカーナビゲーション装置、PDA(Personal Digital Assistant)、携帯ゲーム機、またはノートパソコンなどの移動体通信機器である。
アドホックモードで通信するとき、各ノードは、自身を始点ノードとして、それぞれの電波が到達する範囲内に、通信対象のノード(終点ノード)がないのであれば、電波の到達範囲内のいずれかの隣接ノードを中継して、終点ノードと無線通信を行う。
ここで、始点ノードは、終点ノードへの経路が選択される際に、起点とされるノードである。データの送信元であるエッジのノードは、経路選択において最初の始点ノードとなる。そして、この送信元のノードが中継用の中継ノードを選択したのであれば、その中継ノードは、自身を始点ノードとして終点ノードへの経路を選択する。
終点ノードは、始点ノードがデータの送信先とするエッジのノードである。
中継ノードは、始点ノードと終点ノードとの間で送受信されるデータを中継するノードである。
隣接ノードは、始点ノードからみて、同一セグメント内にある終点ノード以外のノードである。
図1において、例えば、ノード10が、自身の電波が到達する範囲外のノード13と無線通信を行うとき、ノード10は、自身からの電波が到達する範囲内のノード11を中継ノードとして選択する。ノード11は、自身を起点ノードとして、ノード12を、中継ノードとして選択し、ノード10は、これらの中継ノード(11および12)を介して、終点ノード(13)と通信する。同図において、一点鎖線の円は、ノード10の電波の到達範囲Eである。
図2を参照して、ノード10の構成について説明する。同図は、ノード10の構成を示すブロック図である。同図を参照すると、ノード10は、距離算出部101、パラメータ取得部103、および選択部105を有する。
距離算出部101は、通信システム1における各ノード(10、11、12、および13等)の地理的な位置を取得する。例えば、各ノードがGPS(Global Positioning System)を利用して自身の位置を示す位置情報を取得し、取得した位置情報を相互に通知しあう。
そして、図3に示すように、距離算出部101は、始点ノード(10)と終点ノード(D−1)との間の距離r_SEを算出し、r_SEが始点ノードの電波が到達する範囲の半径R以下であるか否かを判断する。r_SEがRより大きいと、終点ノードが始点ノードの電波到達範囲外にあるので、データを中継する中継ノードを介しなければ、始点ノードは終点ノードと通信することができない。同図に示すように、r_SEがRより大きければ、中継ノードを決定するために、距離算出部101は、半径R内の各隣接ノード(N−1、N−2)と終点ノード(D−1)との間の距離r_REを算出する。これらの距離(R_REおよびR_SE)の単位は、例えば、メートルとする。
パラメータ取得部103は、終点ノード以外の各隣接ノードについて、通信量により変動するパラメータを取得する。例えば、パラメータとして各ノードに割り当てられたバッファのうち、使用中のバッファ数(使用中バッファ数)Bを求める。
選択部105は、始点ノード(10)の電波が到達する範囲(半径R)内に終点ノードがないのであれば、半径R内の隣接ノードのうちのいずれかを終点ノードへ送信するデータを中継する中継ノードとして選択する。具体的には、選択部105は、半径R内の隣接ノードごとに、下記(1)式で示される選択関数Zを算出する。
Z=r_RE−(r_SE―R)+AV/(MAXB+1−B)・・・(1)
ここで、r_REは、距離算出部101により算出された、隣接ノードと終点ノードとの間の地理的な距離(m)を所定の基準値(例えば、10m)で除した値である。r_SEは、距離算出部101により算出された、始点ノード(10)と終点ノードとの間の地理的な距離(m)を所定の基準値で除した値である。
Rは、ノード10の電波が到達する範囲の半径(m)である。AVは、パラメータ取得部103により取得された、隣接ノードの使用中バッファ数Bの平均値である。MAXBは、隣接ノードが許容する最大のバッファ数(最大バッファ数)である。Bは、各隣接ノードの使用中バッファ数である。
MAXBおよびRの値は、予めノード10のメモリ(不図示)内に記憶されている。
この選択関数Zは中継ノードを選択するための指標となる。このZにおいて、地理的な距離と通信量とが指標を決める要素となる。いずれかの要素あるいは両方の要素に係数を乗算することにより、中継ノードの選択における各要素の寄与度を適切な比率に設定してもよい。例えば、通信量を重視する場合、通信量の寄与度が高くなるような重みづけをすればよい。
なお、通信量に基づくパラメータを使用するのであれば、使用中バッファ数の代わりに、バッファサイズや空いているバッファ数などを求め、(1)式を変形して選択関数Zを算出してもよい。
選択部105は、算出した選択関数Zが最小のノードを中継ノードとして選択する。但し、トラフィックの集中を避けるため、使用中バッファ数Bが、最大バッファ数MAXBを超えるノード、つまり通信負荷の高いノードは除く。また、ループの発生を防ぐため、一度通ったノード、すなわち、中継ノードとして既に選択されたノードは除外する。
選択部105は、中継ノードとして選択したノードに、ノード情報1051を送信する。
図4は、ノード情報1051の構成の一例を示す図である。同図を参照すると、ノード情報1051は、「ノード識別番号」、「隣接ノード数」、「隣接ノード識別番号」、「選択関数」、「選択フラグ」を示す情報を含む。
「ノード識別番号」は、データの送信元のノードおよび中継ノードを識別するための番号である。「隣接ノード数」は、「ノード識別番号」の示すノードからの電波の到達範囲内にある隣接ノードの数である。「隣接ノード識別番号」は、隣接ノードを識別するための番号である。「選択関数」は、隣接ノードについて算出された選択関数Zの値である。「選択フラグ」は、中継ノードとして選択されたか否かを示すフラグであり、選択された場合「1」、選択されなかった場合「0」が設定される。
例えば、ノード10によりノード11が中継ノードとして選択し、ノード11がノード12を中継ノードとして選択したとき、ノード11は、データの送信元のノード10および中継ノード11についての「ノード識別番号」等を示す情報を含むノード情報1051を、ノード12に送信する。
選択部105は、中継ノードでない隣接ノードの使用中バッファ数BがいずれもMAXBを超える場合、すなわち、選択関数Zを算出した隣接ノードが1つもない場合、ノード情報1051を利用して中継ノードを選択する。具体的には、この場合、選択部105は、「ノード識別番号」の示すノードのうち、「隣接ノード数」が最大のノードを求める。そして、選択部105は、求めたノードを始点ノードとし、その始点ノードに対応する「選択フラグ」が「0」のノードのうち、「選択関数」が最小のノードを、始点ノードに対応する中継ノードとして選択する。
例えば、ノード11により、ノード12が中継ノードとして選択されたものの、ノード12の半径R内の隣接ノードはいずれも、中継ノード11を除き、使用バッファ数BがMAXB以上であった場合、これらの隣接ノードについてZは算出されない。この場合、ノード12は、「ノード識別番号」が10、11のノードのうち、「隣接ノード数」が最大のノード11を始点ノードとする。そして、ノード12は、ノード11の半径R内の「選択フラグ」が「0」の隣接ノードのうち、「選択関数」が最小のノード12aを、ノード11に対応する中継ノードとして選択する。
ノード10は、選択部105により選択された中継ノードを介して終点ノードとアドホックモードで通信を行う。
ノード11、12、および13の構成は、ノード10と同様である。
次に、図6〜図7を参照して、ノード10の動作について説明する。図5は、ノード10の実行する選択処理を示すフローチャートである。選択処理は、始点ノード(10)から終点ノードへの経路を求める処理である。選択処理は、ノード10の電源が投入されたときに開始する。
なお、ノード10は、所定のアプリケーションが開始されたときや、始点ノードと終点ノードとが通信を行うときに、選択処理を開始してもよい。
選択処理において、ノード10は、ノード情報(1051)を受信する(ステップS1)。ただし、ノード10は、自身がデータの送信元のノードであれば、ステップS1を実行しない。距離算出部10は、始点ノード(10)と終点ノードとの間の地理的な距離r_SEを算出する(ステップ2)。距離算出部10は、r_SEがR以下であるか否かを判断する(ステップ3)。r_SEがRより大きければ、すなわち、終点ノードが電波の到達範囲になければ(ステップS3:NO)、距離算出部101は、半径R内の各隣接ノードと終点ノードとの間の地理的な距離r_REを算出する(ステップS4)。そして、パラメータ取得部103は、半径R内の各隣接ノードの使用中バッファ数Bを取得する(ステップS5)。選択部105は、中継ノード決定処理を実行する(ステップS6)。r_SEがR以下である場合(ステップS3:YES)、またはステップS6の後、選択部105は、ノード情報1051において、選択した中継ノードの「選択フラグ」を「1」にして、その中継ノードに送信する(ステップS7)。ステップS7の後、ノード10は、選択処理を終了する。
図6は、中継ノード決定処理を示すフローチャートである。選択部105は、半径R内の隣接ノードのいずれか1つを選択し、その隣接ノードの使用中バッファ数Bが、最大バッファ数MAXBより大きい否かを判断する(ステップS61)。BがMAXB以下であれば(ステップS61:NO)、隣接ノードが中継ノードとして選択されたか否か、即ち、始点ノードから終点ノードへの経路において一度通ったノードであるか否かを判断する(ステップS62)。隣接ノードが一度通ったノードでなければ(ステップS62:NO)、選択部105は、上記(1)式を使用して、その隣接ノードの選択関数Zを算出する(ステップS63)。
隣接ノードのBがMAXBより大きい場合(ステップS61:YES)、隣接ノードが一度通ったノードである場合(ステップS62:YES)、またはステップS63の後、選択部105は、半径R内にある隣接ノードの全てについてステップS91〜S95の処理を行ったか否かを判断する(ステップS64)。半径R内の隣接ノードの全てについて処理していない場合(ステップS64:NO)、選択部105は、他の隣接ノードについてステップS91〜S95の処理を実行する。
半径R内の隣接ノードの全てについて処理したのであれば(ステップS64:YES)、Zを算出したノードが1以上であるか否かを判断する(ステップS65)。Zを算出したノードが1つもなかったのであれば(ステップS65:NO)、選択部105は、例外処理を実行する(ステップS66)。
Zを算出したノードが1以上である場合(ステップS65:YES)、選択部105は、Zを算出した隣接ノードのうち、Zが最小のノードを中継ノードとして選択する(ステップS67)。ステップS66またはステップS67の後、選択部105は、中継ノード決定処理を終了する。
図7は、例外処理を示すフローチャートである。同図を参照すると、選択部105は、ノード情報1051の示すノード、即ちデータの送信元のノードまたは中継ノードのうち、そのノードの半径R内の隣接ノード数が最大のノードを求め、求めたノードを始点ノードとする(ステップS661)。選択部105は、ノード情報1051において、始点ノードに対応する隣接ノードのうち、選択フラグが「0」で、且つ、「選択関数」が算出されたノードがあるか否かを判断する(ステップS662)。
選択フラグが「0」で、且つ、「選択関数」が算出されたノードがあれば(ステップS662:YES)、選択部105は、「選択フラグ」が「0」の隣接ノードのうち、「選択関数」が最小のノードを、始点ノードに対応する中継ノードとして選択する(ステップS663)。ステップS663の後、選択部105は、例外処理を終了する。
選択フラグが「0」で、且つ、「選択関数」が算出されたノードがなければ(ステップS662:NO)、選択部105は、残りのノードのうち、隣接ノード数が最大のノード、すなわち、次に隣接ノード数が大きいノードを始点ノードとし(ステップS664)、ステップS662に戻る。
なお、ステップS662において、ステップS661において、半径R内の隣接ノード数が最大のノードを求めているが、選択部105は、隣接ノード数にかかわりなく、直前に選択された中継ノードを始点ノードとしてもよい。この場合、直前の隣接ノードにおいて、2番目に小さな選択関数が算出された隣接ノードが、中継ノードとして選択される。
また、ステップS662において、選択部105は、ノード情報1051から既に算出された「選択関数」を読み出す構成としているが、再度、各ノードの使用中バッファ数Bを取得し、各隣接ノードの選択関数Zを算出しなおす構成としてもよい。
また、ノード情報1051において、Zを算出したノードが1つもない場合、選択部105は、(1)式を使用しないで中継ノードを選択してもよい。この場合、選択部105は、例えば、Greedy方式を使用して、中継ノードを使用してもよいし、単に使用中バッファ数Bが最小のノードを選択してもよい。
続いて、図8および図9を参照して、ノード10による選択処理の動作結果について説明する。
図8は、通信システム1における各ノードの位置および使用中バッファ数の一例を示した図である。同図を参照すると、通信システム1は、ノード10、N−1、N−2、N−3、N−4、およびD−1を有する。このうち、ノード10がノードD−1と無線通信を行う場合について考える。
ノード10にとって、同一セグメント内にある終点ノード以外のノードN−1、N−2、N−3、N−4は隣接ノードである。ノード10が最終的なデータの送信先とするノードD−1は終点ノードである。
ノード10は、自身と終点ノードD−1との距離であるr_SEを算出する(ステップS1)。r_SEは100mと算出され、ノード10の電波の到達範囲Rは80mである。r_SEがRより大きいので(ステップS3:NO)、ノード10は、半径R内の各隣接ノードN−2、N−3、およびN−4について、隣接ノードと終点ノードとの間の距離r_REを算出する(ステップS4)。隣接ノードN−1は、ノード10の半径R内にないので、中継ノードの選択対象から除かれる。
そして、ノード10は、半径R内の各隣接ノードN−2、N−3、およびN−4について、使用中バッファ数Bを求める(ステップS5)。ここで、ノードN−2、N−3、およびN−4のそれぞれのBは、5、22、および10である。
ノード10は、BがMAXB以下であり(ステップS61:NO)、一度通ったノードでない(ステップS62:NO)、半径R内の隣接ノードのそれぞれについて選択関数Zを算出する(ステップS63)。最大バッファ数MAXBは21であり、隣接ノードN−3のBは22でMAXBより大きいので、ノード10は、隣接ノードN−3を除き、N−2およびN−4についてZを算出する。
隣接ノードN−2およびN−4のr_REは、それぞれ80mおよび60mであり、Bは、それぞれ5および10である。また、基準値Sは10mである。(1)式に、これらの値を代入することにより、ノード10は、隣接ノードN−2およびN−4のZとして、11および14を算出する(ステップS63)。そして、ノード10は、Zが最小の隣接ノードN−2を中継ノードとして選択する(ステップS67)。図6において、斜線部分は、選択されたノードである。
このように、ノード10は、Zを算出して、終点ノードまでの距離r_REが比較的遠く、且つ、使用中バッファ数Bが比較的小さいノードを選択する。このため、ノード10は、終点ノードまでの距離が遠すぎるノードを選択しないので、中継ノード数が少なくなり、通信が安定する。また、ノード10は、通信量が大きすぎるノードを選択しないので、輻輳が緩和される。
これに対して、(1)式を使用せずに、単にr_REが小さいノードを選択するGreedy方式を用いる場合、中継ノードとしてノードN−4がノード10により選択される。しかし、ノードN−4の使用中バッファ数Bは、ノードN−2よりも多いので、N−4を中継ノードとすると、輻輳が生じやすくなることがある。
また、(1)式を使用せずに、単にBの小さいノードを選択する方法を使用すると、終点ノードから地理的に遠いノードが選択され、中継ノード数が多くなる結果、輻輳が生じやすくなることがある。
図9は、Greedy方式と(1)式を使用する方式とを比較した結果を示す図である。詳細には、同図は、一辺が1000mの正方形の空間内においてノードを1000個、各ノードの電波の到達距離Rを200m、基準値Sを10mとし、これらのノードについてランダムに始点ノードと終点ノードを3000回選択し、それぞれの方式で中継ノードを選択して通信したときの、1000個のノードそれぞれの使用中バッファ数Bをシミュレートした結果である。同図の縦軸は、使用中バッファ数B、横軸はノードそれぞれに付されたノード識別番号である。同図の実線は、(1)式を使用した場合の折れ線グラフであり、点線は、Greedy方式を使用した場合の折れ線グラフである。また、最大バッファ数MAXBは21である。
図9を参照すると、Greedy方式を使用した場合は、Bが最大バッファ数MAXBに達するノードが全体の約5%に達しており、輻輳が生じていることが確認できる。一方、(1)式を使用した場合はBがMAXBに達するノードはなく、輻輳が緩和されていることが確認できる。
以上説明したように、本実施形態によれば、隣接ノードと終点ノードとの間の地理的な距離r_REと、使用中バッファ数Bとに基づいて、具体的には、これらの値の和が最小のノードを中継ノードとして選択するので、終点ノードまでの地理的な距離が遠すぎたり、通信量が多すぎるノードを中継して各ノードが通信することがなくなる結果、アドホックネットワークにおいて輻輳が緩和される。
また、ノード10、通信量に応じて変動するパラメータとして、使用中バッファ数を取得する。輻輳はノードがバッファ数を使いきったときに発生するので、使用中バッファ数が比較的低いノードを中継することにより、輻輳を緩和することができる。
ノード10は、使用中バッファ数Bが最大バッファ数MAXBに満たないノードを選択するので、輻輳が生じているノードを誤って選択することがなく、輻輳を確実に緩和できる。
そして、ノード10は、一度通ったノードを中継ノードとして選択しないので、ループが生じることがなくなる。
Zが算出された隣接ノードが1つもなければ、選択部105は、ノード情報1051において、「隣接ノード数」が最大のノードを始点ノードとして、その始点ノードに対応する隣接ノードのうち、「選択フラグ」が「0」で、「選択関数」が最小のノードを中継ノードとして選択する。このため、隣接ノードの使用中バッファ数BがいずれもMAXB以上で、Zが算出されない場合でも、選択部105は、ノード情報1051を使用して中継ノードを選択することができる。
(第2の実施形態)
本発明の第2の実施形態について、図10を参照して説明する。本実施形態のノード10の構成は、第1の実施形態の構成と同様である。同図は、本実施形態の選択処理を示すフローチャートである。
図10を参照すると、本実施形態の選択処理は、ステップS5の代わりに、パラメータ算出部103がパラメータとして各ノードの単位時間当たりの受信データ量(通信負荷)を求める、ステップS5aを実行する。本実施形態のノード10は、通信量に応じて変動するパラメータとして通信負荷を求める点で、第1の実施形態と異なる。
そして、選択部105は、(1)式において、バッファ数B、最大バッファ数MAXBの代わりに、通信負荷および許容される最大の通信負荷を代入してZを算出する。
通信負荷の増大によっても輻輳が生じうるので、本実施形態によれば、通信負荷が比較的低いノードを中継することでノード10は輻輳を緩和することができる。
なお、ノード10は通信量に応じて変動するパラメータであれば、通信量自体を求めてもよいし、他のパラメータを(1)式に使用してもよい。ノード10は、通信量に応じて変動する、複数の種類のパラメータを組み合わせて選択関数Zを算出してもよい。
また、選択関数Zは、(1)式に限らず、隣接ノードと終点ノードとの距離が比較的大きく、且つ、通信量が比較的小さなノードを選択できるものであれば、他の式を使用して算出してもよい。例えば、選択部105は、それぞれの隣接ノードについて、隣接ノードから終点ノードまでの距離(r_RE)と、通信量に基づくパラメータ(B)との積を、求め、その値が最小のノードを中間ノードとして選択してもよい。
図5〜図7、および図10に示したフローチャートの一部または全部の処理はコンピュータプログラムの実行により実現することもできる。
第1の実施形態の通信システムの構成を示す全体図である。 第1の実施形態のノードの構成を示すブロック図である。 第1の実施形態のr_SEおよびr_REを示す図である。 第1の実施形態のノード情報の構成の一例を示す図である。 第1の実施形態の選択処理を示すフローチャートである。 第1の実施形態の中継ノード決定処理を示すフローチャートである。 第1の実施形態の例外処理を示すフローチャートである。 第1の実施形態の選択処理の結果を示す図である。 第1の実施形態の選択処理の結果を示すグラフである。 第1の実施形態の中継ノード決定処理を示すフローチャートである。
符号の説明
1 通信システム
10、11、12、13 ノード
101 距離算出部
103 パラメータ取得部
105 選択部
B 使用中バッファ数
E 電波到達範囲
D−1 終点ノード
N−1、N−2、N−3、N−4 隣接ノード
R 半径
r_SE、r_RE 距離
S1〜S9、S91〜S99、S7a ステップ

Claims (10)

  1. 自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードとの間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出する距離算出手段と、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得する変数取得手段と、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出する選択手段と、を有し、
    前記選択手段は、
    記隣接ノードのうち、前記和が最小となる前記隣接ノードを、前記始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択するノード。
  2. 自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードと、の間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出する距離算出手段と、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得する変数取得手段と、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出する選択手段と、を有し、
    前記選択手段は、
    記使用中バッファ数Bが前記最大バッファ数MAXBに満たない前記隣接ノードのうち、前記和が最小となる前記隣接ノードを、前記始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する、ノード。
  3. 自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードと、の間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出する距離算出手段と、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得する変数取得手段と、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出する選択手段と、を有し、
    前記選択手段は、
    継ノードとして選択されたことがなく、且つ、前記データの送信元のノードでない前記隣接ノードのうち、前記和が最小となる前記隣接ノードを、前記始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する、ノード。
  4. 前記選択手段により選択された前記中継ノードを通じて前記終点ノードとアドホックモードで通信する通信手段を更に有する、請求項1乃至のいずれか1項に記載のノード。
  5. 始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードとの間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出し、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得し、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出し、
    記隣接ノードのうち、前記和が最小となる前記隣接ノードを、前記始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する、通信方法。
  6. 始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードと、の間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出し、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得し、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出し、
    前記使用中バッファ数Bが前記最大バッファ数MAXBに満たない前記隣接ノードのうち、前記和が最小となる前記隣接ノードを、前記始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する、通信方法。
  7. 始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードと、の間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出し、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得し、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出し、
    中継ノードとして選択されたことがなく、且つ、前記データの送信元のノードでない前記隣接ノードのうち、前記和が最小となる前記隣接ノードを、前記始点ノードと前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する、通信方法。
  8. コンピュータに、
    自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードとの間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出する距離取得手順、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得する変数取得手順
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出する手順、及び
    記隣接ノードのうち、前記和が最小となる前記隣接ノードを、自身と前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する選択手順、
    を実行させるためのプログラム。
  9. コンピュータに、
    自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードと、の間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出する距離取得手順、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得する変数取得手順、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出する手順、及び
    前記使用中バッファ数Bが前記最大バッファ数MAXBに満たない前記隣接ノードのうち、前記和が最小となる前記隣接ノードを、自身と前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する選択手順、
    を実行させるためのプログラム。
  10. コンピュータに、
    自身を始点ノードとして、該始点ノードからの電波が到達する範囲内にある1以上の隣接ノードと、終点ノードと、の間の地理的な距離をr_RE、前記始点ノードと該終点ノードとの間の地理的な距離をr_SEとして算出する距離取得手順、
    1以上の前記隣接ノードが使用している使用中バッファ数の平均値をAVとして算出し、該隣接ノードごとの前記使用中バッファ数をBとして取得する変数取得手順、
    自身からの電波が到達する範囲の半径をR、前記隣接ノードにおいて許容される最大の値である最大バッファ数をMAXBとして、
    Z=r_RE−(r_SE−R)+AV/(MAXB+1−B)
    を和として算出する手順、及び
    中継ノードとして選択されたことがなく、且つ、前記データの送信元のノードでない前記隣接ノードのうち、前記和が最小となる前記隣接ノードを、自身と前記終点ノードとの間で送受信されるデータを中継する中継ノードとして選択する選択手順、
    を実行させるためのプログラム。
JP2008136492A 2008-05-26 2008-05-26 ノード、通信方法、およびプログラム Expired - Fee Related JP5391582B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008136492A JP5391582B2 (ja) 2008-05-26 2008-05-26 ノード、通信方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008136492A JP5391582B2 (ja) 2008-05-26 2008-05-26 ノード、通信方法、およびプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012241783A Division JP5545342B2 (ja) 2012-11-01 2012-11-01 ノード、通信方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2009284398A JP2009284398A (ja) 2009-12-03
JP5391582B2 true JP5391582B2 (ja) 2014-01-15

Family

ID=41454345

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008136492A Expired - Fee Related JP5391582B2 (ja) 2008-05-26 2008-05-26 ノード、通信方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP5391582B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110305189A1 (en) * 2010-06-09 2011-12-15 The Hong Kong University Of Science And Technology Exploiting buffers in cognitive multi-relay systems for delay-sensitive applications
JP5712715B2 (ja) * 2011-03-18 2015-05-07 富士通株式会社 無線通信装置および経路構築方法
JP2013243459A (ja) * 2012-05-18 2013-12-05 Nec System Technologies Ltd 移動型中継装置および移動型中継プログラムならびに移動型中継方法
JP2015119399A (ja) * 2013-12-19 2015-06-25 富士通株式会社 サーバ装置の選定プログラム、サーバ装置の選定方法およびサーバ選定装置
JP6766892B2 (ja) * 2017-02-02 2020-10-14 株式会社村田製作所 無線通信システムの管理ノードおよび無線通信システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006211375A (ja) * 2005-01-28 2006-08-10 Matsushita Electric Ind Co Ltd 無線アドホックネットワークにおける負荷分散方法
EP2030381A1 (fr) * 2006-05-24 2009-03-04 France Telecom Procede de routage de paquets de donnees dans un reseau de noeuds mobiles et terminal associe
EP1883185B1 (en) * 2006-07-28 2009-04-08 NTT DoCoMo, Inc. Method and apparatus for obtaining virtual coordinates
JP4877778B2 (ja) * 2006-11-07 2012-02-15 株式会社国際電気通信基礎技術研究所 無線装置およびそれを備えた無線通信ネットワーク

Also Published As

Publication number Publication date
JP2009284398A (ja) 2009-12-03

Similar Documents

Publication Publication Date Title
Arafat et al. Location-aided delay tolerant routing protocol in UAV networks for post-disaster operation
CN102223671B (zh) 无线多跳网络中数据传输的方法和通信设备
JP5391582B2 (ja) ノード、通信方法、およびプログラム
JP2006514503A (ja) 1つまたは複数のパケットを経路指定するための方法および装置(ワイヤレス・アドホック・ネットワーク内の経路指定)
US20080037560A1 (en) Solution For Routing Scheme In Wireless Communication
US9603079B2 (en) Routing for mobile nodes
Darehshoorzadeh et al. Distance progress based opportunistic routing for wireless mesh networks
JP5953990B2 (ja) 通信制御装置、通信制御システムおよび通信制御方法
Noureddine et al. A new link lifetime estimation method for greedy and contention-based routing in mobile ad hoc networks
JP6406700B2 (ja) 無線通信システム、無線端末および無線通信方法
JP5545342B2 (ja) ノード、通信方法、およびプログラム
JP6747571B2 (ja) 無線アドホックネットワークにおける通信端末、通信方法及び通信プログラム
auf der Heide et al. Congestion, dilation, and energy in radio networks
KR101680262B1 (ko) 무선 메쉬 백홀 망에서의 토폴로지 구성 방법
Yang et al. ITGR: intermediate target based geographic routing
WO2010110216A1 (ja) 移動体端末、サーバ、移動体端末の接続制御方法及び接続制御プログラム
KR101359455B1 (ko) 메시지 전송 주기 결정 방법
Park et al. Mobility state based routing method in vehicular ad-hoc network
JP2005347879A (ja) 無線通信システム
JP6120411B2 (ja) ネットワーク制御方法及び装置
KR102053763B1 (ko) 확장형와이파이무선망 내 무선 백홀망 경로 설정 시스템 및 방법
CN113453145A (zh) 一种预测空口状态的方法和无线覆盖设备
WO2009135981A1 (en) Method, apparatus and computer program product for providing routing in a network
JP5347850B2 (ja) 通信経路選択装置及び通信経路選択方法
Lee et al. QoS-aware relay node placement in a segmented wireless sensor network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130702

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130828

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: 20130917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130930

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees