説明

通信制御装置及びプログラム

【課題】無線環境の変化に即応してノード間の通信タイミングと送信経路とを相互調整し、発信衝突や輻輳を回避できるようにする。
【解決手段】本発明の通信制御装置は、他ノードとの間でデータ信号を送信する帯域を取り合い、自ノードの通信タイミングを示す帯域幅の獲得を行う通信タイミング制御手段と、自ノードの帯域幅の中で各データ信号の送信経路を決定する経路制御手段と、制御情報通信手段とデータ信号送信手段とを備え、経路制御手段が、各他ノードからの制御情報を用いて各他ノードにおいてデータ信号の停滞や廃棄がなく深さの小さいノードに向けて各データ信号が到達する可能性を示す第1の評価値をリンク毎に算出し、第1の評価値に応じた各リンクの帯域幅に基づいて各送信先ノードを決定し、通信タイミング制御手段及び経路制御手段が、それぞれの処理に係る状態情報を相互に拘束条件として自ノードの帯域の調整及び各リンクの帯域の調整を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信制御装置及びプログラムに関し、例えば、無線センサネットワークやアドホックネットワーク、あるいは無線LAN(Local Area Network)に接続された複数の機器から構成されるシステム等のように、空間に分散配置された多数のノードや移動体に設置されたノードが、相互にデータ通信を行う場合において、電波干渉等による通信データの衝突や幅輳を回避する装置や方法に関するものである。
【背景技術】
【0002】
集中管理サーバを必要とせず、個々のノードが自律分散的に通信タイミングをスケジューリングすることによって発信衝突を回避する方法として、特許文献1〜特許文献7に開示される技術がある。また、特許文献1〜特許文献7に記載の技術によって得られる機能に、幅輳回避のための経路制御機能を付加した方法として、特願2009−151075号(以下、先行出願1という)に記載の技術がある。
【0003】
一般に、無線センサネットワーク等が設置される空間内には、様々な形状の構造物や壁などが存在し、しばしば、そこに新たな障害物が出現する場合がある。障害物は単にリンク切れを引き起こす要因になるだけではなく、例えば、金属製の構造物の場合、反射波等の影響が顕著に表れ、無線環境の変化は複雑な状況を呈する。
【0004】
上記先行出願1の記載技術の方法は、こうした複雑な無線環境の変化に適応して、ネットワークを構成するノード間において、通信タイミングと送信経路とを相互調整することによって、発信衝突と幅輳をともに回避したマルチホップ通信を実現する基本的な機能を有する。
【0005】
特許文献1〜特許文献7及び先行出願1に開示される方法では、各ノードが近傍ノードとの間で周期的に制御パケット(自ノードの発信タイミングを示す制御情報)を送受信することによって、通信タイミングの相互調整を行う。以後、制御パケットの発信周期を、単に周期と呼ぶ。
【0006】
通信タイミングの相互調整により、近傍ノード間で1周期の期間を分け合って、各ノードが送信に必要な時間区間を獲得する。1周期内において、各ノートが送信に用いる時間区間は、通信タイミング制御ための演算における位相区間に対応する。すなわち、通信タイミングを示す時間は、制御演算上は、位相に置き換えて処理される。以後の本発明の説明において、1周期内において、各ノードが送信に用いる時間区間や位相区間を、そのノードが獲得している帯域と呼ぶ。同様に、時間区間幅や位相区間幅を帯域幅と呼ぶ。
【0007】
また、近傍ノード間における制御パケットの送受信方法にはいくつかの形態がある。図2は、この近傍ノード間における制御パケットの送受信方法を説明する説明図である。
【0008】
第1番目の形態は、図2(a)に示すように、制御パケットの電波到達範囲を、データパケットの電波到達範囲よりも広くし、例えば、その比を2倍程度とする。この場合、制御パケットとデータパケットとの送信電力比を調節することによって、電波到達範囲の比を設定する。制御パケットとデータパケットとの電波到達範囲の比を、このようにする理由は、隠れ端末などによる発信衝突の発生を回避するためである。
【0009】
第2番目の形態は、図2(b)に示すように、制御パケットとデータパケットの電波到達範囲は同一(つまり、送信電力は同一)とし、他ノードから受信した制御パケットに基づいて、自身の内部に生成した当該ノードに対する仮想位相(特許文献5参照)を、自身が制御パケットを送信する際に付加する方法である。
【0010】
着目ノードから制御パケットを受信したノード(図2(b)における実線の円内のノード)は、自身の内部に着目ノードに対する仮想位相が存在しなければ新たに生成し、すでに存在する場合はその値を調整する。生成あるいは調整された仮想位相の値は、その後、固有角振動数に相当する一定の速度で変化する。そして、自身が制御パケットを送信する際に、現時刻における着目ノードに対する仮想位相の値を付加して送信する。このようにすることで、着目ノードの位相情報が1ホップ先のノード(図2(b)における実線の円内のノード)を介して間接的に2ホップ先(図2(b)において、点線の円内のノードで実線の円内に含まれないもの)のノードに伝えられる。
【0011】
上記では、着目ノードの位相情報が2ホップ先のノードに間接的に伝えられる仕組みについて説明したが、すべてのノードの位相情報が同様にして2ホップ先のノードに伝えられる。したがって、通信タイミング調整における相互作用範囲は、各ノードの2ホップ近傍範囲となる。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2005−094663号公報
【特許文献2】特開2006−074617号公報
【特許文献3】特開2006−074619号公報
【特許文献4】特開2006−157438号公報
【特許文献5】特開2006−157441号公報
【特許文献6】特開2006−211585号公報
【特許文献7】特開2006−211564号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
上述した先行出願1に記載の方法は、無線環境が変化した場合でも、その変化に即応して発信衝突や輻輳を回避することができるので有効な方法であるが、次に示すような課題が生じ得る。
【0014】
(a)ネットワークを構成する各ノードiの送信先ノードjが、ノードiの1ホップ近傍範囲内に存在する他ノードで、「深さがノードiより小さい」という条件を満たすノードに限定されている。このため、「深さがノードiと同一」、あるいは「深さがノードiより大きい」ノードを用いた送信経路制御方法は提供されていない。ここで、ノードiの深さとは、シンクノードからノードiまでの最短ホップ数を表す。以後、必要に応じてノードiの深さをDiと記述する。
【0015】
(b)発信衝突と幅輳をともに回避した状態が実現されれば、各ノードiの送信先ノードjは複数であっても問題ないが、先行出願1に記載の方法を用いた場合、1つに収束する傾向がある。その結果、必要以上に制御動作を持続する傾向が生まれ、その分、収束時間が増加する。
【0016】
そのため、ネットワークを構成する各ノードが、自ノードと深さが同一あるいは大きいノードを送信先ノードとして指定することができ、送信先ノードを決定する際の制御動作の収束時間の増加を抑制することができる通信制御装置及びプログラムが望まれている。
【課題を解決するための手段】
【0017】
かかる課題を解決するために、第1の本発明の通信制御装置は、ネットワークを構成する複数のノードのそれぞれに搭載される通信制御装置において、(1)1又は複数の他ノードとの間でデータ信号を送信する帯域を取り合い、自ノードの通信タイミングを示す帯域幅の獲得を行う通信タイミング制御手段と、(2)通信タイミング制御手段が獲得した自ノードの帯域幅の中で、各データ信号を送信する帯域を調整し、各データ信号を送信する1又は複数の送信経路を決定する経路制御手段と、(3)各他ノードとの間で制御情報を送受信する制御情報通信手段と、(4)経路制御手段により決定された各送信経路に係る各送信先ノードに対して各データ信号を送信するデータ信号送信手段とを備え、経路制御手段が、(2−1)送信先ノードとする各他ノードから受信した制御情報を用いて、各他ノードにおいてデータ信号の停滞や廃棄がなされることなく、当該他ノードよりも深さの小さいノードに向けて各データ信号が到達する可能性を示す第1の評価値をリンク毎に算出する第1の評価値算出部と、(2−2)各リンクの第1の評価値に応じた各リンクの帯域幅に基づいて、各送信先ノードを決定する送信先決定部とを有し、(5)通信タイミング制御手段及び経路制御手段が、それぞれの処理に係る状態情報を相互に受け渡し、相手の状態情報を拘束条件として、自ノードの帯域の調整及び各送信先ノードとの間のリンクの帯域の調整を行うものであることを特徴とする。
【0018】
第2の本発明の通信制御プログラムは、ネットワークを構成する複数のノードのそれぞれに搭載される通信制御装置を、(1)1又は複数の他ノードとの間でデータ信号を送信する帯域を取り合い、自ノードの通信タイミングを示す帯域幅の獲得を行う通信タイミング制御手段、(2)通信タイミング制御手段が獲得した自ノードの帯域幅の中で、各データ信号を送信する帯域を調整し、各データ信号を送信する1又は複数の送信経路を決定する経路制御手段、(3)各他ノードとの間で制御情報を送受信する制御情報通信手段、(4)経路制御手段により決定された各送信経路に係る各送信先ノードに対して各データ信号を送信するデータ信号送信手段として機能させ、経路制御手段として、(2−1)送信先ノードとする各他ノードから受信した制御情報を用いて、各他ノードにおいてデータ信号の停滞や廃棄がなされることなく、当該他ノードよりも深さの小さいノードに向けて各データ信号が到達する可能性を示す第1の評価値をリンク毎に算出する第1の評価値算出部、(2−2)各リンクの第1の評価値に応じた各リンクの帯域幅に基づいて、各送信先ノードを決定する送信先決定部として機能させ、(5)通信タイミング制御手段及び経路制御手段が、それぞれの処理に係る状態情報を相互に受け渡し、相手の状態情報を拘束条件として、自ノードの帯域の調整及び各送信先ノードとの間のリンクの帯域の調整を行うように機能させることを特徴とする。
【発明の効果】
【0019】
本発明によれば、ネットワークを構成する各ノードが、自ノードと深さが同一あるいは大きいノードを送信先ノードとすることができるので、無線環境の変化に応じた適応性を向上させることができる。また、本発明によれば、送信先ノードを決定する際の制御動作の収束時間を短縮することができるので、無線環境の変化に応じた適応速度を向上させることができる。
【図面の簡単な説明】
【0020】
【図1】第1の実施形態のノードの内部構成を示す内部構成図である。
【図2】従来技術により近傍ノード間での制御パケットの送受信方法を説明する説明図である。
【図3】本発明の通信制御方法の動作を概念的に示した概念図である。
【図4】第1の実施形態の経路制御演算部の演算処理に係る機能構成を説明する機能ブロック図である。
【図5】第1の実施形態の通信タイミング制御演算部における位相応答関数の具体的な例を説明する説明図である。
【図6】第1の実施形態におけるノードが他ノードとの間のリンクの獲得帯域幅を説明する説明図である。
【発明を実施するための形態】
【0021】
(A)第1の実施形態
以下では、本発明の通信制御装置及びプログラムの第1の実施形態を、図面を参照しながら詳細に説明する。
【0022】
第1の実施形態では、空間に分散配置された多数のノードや移動体等に設置されたノードが、例えばマルチホップ通信により相互にデータ通信を行う通信システムに本発明を適用した場合の実施形態を例示して説明する。
【0023】
第1の実施形態では、近傍ノード間における制御パケットの送受信方法として、例えば、図2(b)で説明した仮想位相を用いた方法を適用する場合を仮定して例示する。ただし、説明の便宜上、このような仮定をするのであって、本発明は図2(a)で説明した形態に対しても適用可能である。
【0024】
また、シンクノードからの各ノードのホップ数は、あらかじめ各ノードに与えられていると仮定する。これは、例えば、次のようにして与えることができる。シンクノードから制御パケットと同等のパケットを発信し、マルチホップで転送しながら転送回数をカウントして、各ノードに到達するまでのホップ数を観測する。各ノードは、自ノードで観測されたホップ数の最小値を、「自ノードからシンクノードまでのホップ数」として保持する。このような処理を事前に行うことにより、前記のホップ数を各ノードにあらかじめ与えておくことができる。
【0025】
さらに、以下において、リンクi→jは、ノードiがノードjを送信先ノードとするリンクを示す。
【0026】
(A−1)基本概念の説明
図3は、本発明の通信制御方法の動作を概念的に説明する概念説明図である。図3は、ネットワークを構成する各ノードが、無線環境の変化に応じて、他ノードとの間の通信タイミングと経路制御とを相互調整する通信制御方法の概念を示す。
【0027】
図3において、通信タイミング制御機構M1は、ノード間で通信タイミングをずらしあう動作を実行する機構である。また、通信タイミングパターン形成過程P1は、通信タイミング制御機構M1の動作により、ノード間に通信タイミングのずれを生じさせる過程である。通信タイミングは、各ノードがデータパケットの送信に要する時間だけずれる必要がある。もし、ずれの時間幅がデータパケットの送信に必要な大きさ以上になっていなければ、ノード間で発信衝突が発生する。したがって、通信タイミングパターン形成過程P1は、ノード間で通信に必要な帯域を取り合う過程に対応する。
【0028】
一方、経路制御機構M2は、ネットワーク上におけるデータパケットの送信経路を制御する機構である。また、ネットワークトポロジー形成過程P2は、経路制御機構M2の動作により、ネットワーク上におけるデータパケットの送信経路を決定する過程である。ネットワークトポロジー形成過程P2の詳細な説明は後述するが、本発明では、このネットワークトポロジー形成過程P2は、ノード間のリンク同士で帯域を取り合う過程に対応する。
【0029】
本発明では、無線環境の変化に応じて、上記の2つの過程(通信タイミングパターン形成過程P1、ネットワークトポロジー形成過程P2)が相互に拘束しあいながら、次第に整合する関係を形成する動作を実行する。
【0030】
一般に、ネットワーク上の送信経路が変化すれば、各ノードの通信負荷は変化し、それぞれが必要とする帯域幅も変化する。したがって、送信経路の決定は、通信タイミングパターン形成過程P1における拘束条件となる。
【0031】
一方、通信タイミングパターン形成過程P1では、ノード間における通信タイミングの衝突や競合(以後、コンフリクトと呼ぶ)が発生する。本発明では、通信タイミングパターン形成過程P1で発生するコンフリクトの状態を、ネットワークトポロジー形成過程P2における拘束条件としてフィードバックさせる。
【0032】
すなわち、ノード間において通信に必要な帯域を取り合う過程で生じるコンフリクトの状態が、データパケットの送信経路を決定する過程に影響し、コンフリクトを低減する方向に作用する。このようにして、本発明では、上記の2つの過程が相互に拘束しあいながら、次第に整合する関係を形成するように進行する。その結果、無線環境の変化に応じて、ノード間において通信タイミングと送信経路とが相互に調整され、発信衝突と幅輳をともに回避したマルチホップ通信が可能になる。
【0033】
(A−2)第1の実施形態の構成
図1は、第1の実施形態の各ノードの通信制御装置の内部構成を示す内部構成図である。図3に示す通信タイミング制御機構M1と経路制御機構M2は、図1に示す内部構成を有するノードを複数用いて構成されるネットワークにおいて実現される機構である。
【0034】
図1において、ノード1は、制御パケット受信部11、通信タイミング制御演算部12、経路制御演算部13、制御パケット送信部14、データパケット送受信部15を少なくとも有して構成される。
【0035】
第1の実施形態において、ネットワークは複数のノード1を有して構成される。各ノード1は、他のノードとの間で周期的に制御パケットの送受信を相互に行い、ノード間で通信タイミングの相互調整を行う。これにより、各ノード1は、自律的な通信タイミングを求めることができる。また、各ノード1は、他ノードとの間で授受する制御パケットに基づいて、図3で説明した通信タイミング制御機構M1と経路制御機構M2との相互調整を行う。これにより、無線環境が変化した場合でも即応性のある通信制御を行うことができる。
【0036】
通信タイミング制御演算部12は、制御パケット受信部11から他ノードの位相情報を受け取り、この他ノードの位相情報に基づいて他ノード及び自ノードの帯域を取り合い、自ノードの通信タイミングを調整するものである。また、通信タイミング制御演算部12は、経路制御演算部13から自ノードの送信に必要な帯域幅を受け取り、この自ノードの送信に必要な帯域幅も用いて、通信タイミングの調整を行う。
【0037】
ここで、通信タイミング制御演算部12による通信タイミングの演算方法としては、例えば、特許文献1〜特許文献7及び先行出願1に記載の種々の方法を適用することができきる。通信タイミングの演算方法の例については、後述するが、例えば特許文献5に記載されるように、自ノードに対する仮想位相を用いて通信タイミングを演算する方法を適用することができる。
【0038】
また、通信タイミング制御演算部12は、通信タイミングの演算により得られた自ノードの位相情報及び他ノードの位相情報を、制御パケット送信部14、データパケット送受信部15に与えるものである。また、通信タイミング制御演算部12は、自ノードが獲得している帯域幅を経路制御演算部13に与えるものである。
【0039】
経路制御演算部13は、制御パケット受信部11から制御パケットに含まれる各種情報を受け取り、各種情報に基づいて、自ノードが送信するデータパケットの送信先ノードを決定するものである。また、経路制御演算部13は、通信タイミング制御演算部12から自ノードが獲得している帯域幅を受け取り、この自ノードが獲得している帯域幅を用いて、送信先ノードを決定する。
【0040】
また、経路制御演算部13は、送信先ノードを決定する際に得た各種情報を、制御パケット送信部14、データパケット送受信部15に与えるものである。これにより、これら各種情報を含んだ制御パケットを制御パケット送信部14に送信させたり、データパケット送受信部15に対して、自ノードから他ノードへの中継要求帯域幅でデータパケットを送信させたりすることができる。さらに、経路制御演算部13は、送信先ノードの決定の際に自ノードの送信に必要な帯域幅を求め、その自ノードが送信に必要な帯域幅を通信タイミング制御演算部12に与えるものである。
【0041】
ここで、制御パケットに含まれる上記の各種情報としては、他ノードから自ノードへの中継要求帯域幅、他ノードの競合解消度、他ノードを送信元とするリンクに対するリンク品質の加重平均、他ノードにおけるペナルティー関数値、他ノードの深さなどである。なお、これらの各種情報の説明も含め、経路制御演算部13による送信先ノードの決定方法の詳細な説明は後述する。
【0042】
図4は、経路制御演算部13の演算処理に係る機能構成を説明する機能ブロック図である。図4において、経路制御演算部13は、パケット流動度算出部21、リンク品質算出部211、リンク品質加重平均算出部212、演算抑制部213、ペナルティー関数算出部22、競合解消度算出部23、感度関数算出部24、リンク獲得帯域幅算出部25、パラメータ設定部26、速度調整部27、送信先決定部28、条件格納部20、送信先条件格納部29、を少なくとも有する。
【0043】
図4において、パケット流動度算出部21、送信先決定部28、及び、ペナルティー関数算出部22は、自ノードと深さが同じ又は大きい他ノードも送信先とできるようにする手段である。
【0044】
また、競合解消度算出部23、感度関数算出部24、演算抑制部213、及び、速度調整部27は、送信先の決定の制御動作に係る収束時間を短縮するようにする手段である。
【0045】
パケット流動度算出部21は、「自ノードiがリンクi→jを用いて送信したデータパケット」が、ノードjで停滞する、あるいは廃棄されることなく、その後、より深さの小さい他ノードヘ到達する可能性を評価する尺度である「パケット流動度」(第1の評価値ともいう)を算出するものである。
【0046】
リンク品質算出部211は、自ノードと他ノードとの間のリンク品質を求めるものである。
【0047】
リンク品質加重平均算出部212は、すべての送信先ノードのリンク品質の平均値を求めるものである。リンク品質加重平均算出部212は、自ノードのすべての送信先ノードのリンク品質の平均値を求めると、その演算結果を制御パケットに含めて送信させるようにする。
【0048】
送信先決定部28は、他ノードの深さに応じて、それぞれの他ノードを送信先として決定するか否かを判断して、送信先ノードを決定するものである。送信先決定方法については後述するが、送信先決定部28は、各リンクi→jに対する帯域幅φij(t)の値に基づいて送信先ノードjを決定する。また、送信先決定部28は、制御パケット受信部11から受け取った他ノードの深さに基づいて、当該他ノードが、「自ノードより深さが小さい」、「自ノードと深さが同一」又は「自ノードより深さが深い」のいずれかを認識し、送信先条件格納部29に格納される所定の条件を満たすか否かを判断し、条件を満たす場合に当該条件に応じて所定の処理を行い、その処理結果による各リンクi→jに対する帯域幅φij(t)の値に基づいて送信先ノードjを決定する。
【0049】
ペナルティー関数算出部22は、自ノードiの送信先をノードjとするとき、「ノードjの深さDj」と「ノードjが送信先に指定している他ノードuの深さDu」との関係に基づいて、「リンクi→jに対するパケット流動度」にペナルティーを与えるものである。ペナルティー関数算出部22は、「ノードjの深さDj」と「ノードjが送信先に指定している他ノードuの深さDu」との関係が、条件格納部20に格納される条件を満たすか否かを判断して、「リンクi→jに対するパケット流動度」に与えるペナルティーを決定する。
【0050】
競合解消度算出部23は、自ノードiの送信先をノードjとするとき、ノードjにおける競合解消度を算出するものである。
【0051】
感度関数算出部24は、リンクi→jのパケット流動度に対する「ノードjにおける競合解消度」の与える影響度を調整するための関数(以後、感度関数という)を算出するものである。感度関数算出部24は、競合解消度算出部23による「ノードjにおける競合解消度」と、リンク品質算出部211による「ノードjを送信元とするリンク品質」とは独立にリンクi→jのパケット流動度に対する感度関数を評価する。
【0052】
演算抑制部213は、自ノードiを送信元とするリンクi→k(k=1,2,…,N)同士で帯域を取り合う演算を実行する過程において、異なるリンクに対するパケット流動度のわずかな差を解消することによって、必要以上の演算を抑制するものである。
【0053】
パラメータ設定部26は、リンクi→jの帯域獲得度wij(t)が、自他のリンクi→k(k=jの場合を含む)の帯域獲得度wik(t)から受ける影響度を示すパラメータを設定するものである。
【0054】
速度調整部27は、自ノードiにおいて、リンクi→jの帯域獲得度の変化する速度と、位相の変化する速度との関係を調整するものである。
【0055】
リンク獲得帯域幅算出部25は、自ノードiの送信先をノードjとするときに、リンクi→jの獲得帯域幅を算出するものである。
【0056】
制御パケット受信部11は、他ノードから出力された制御パケットを入力制御パケットとして受信し、当該制御パケットに含まれている情報を、通信タイミング制御演算部12、経路制御演算部13に与えるものである。
【0057】
制御パケット送信部14は、通信タイミング制御演算部12、経路制御演算部13から受け取った情報を含む制御パケットを出力制御パケットとして送信するものである。
【0058】
データパケット送受信部15は、自ノードが獲得した帯域幅のうち、自ノードから該当する送信先ノードへの帯域幅において、当該送信先ノードに向けてデータパケットを送信するものである。なお、データパケットの送信先ノードは、経路制御演算部13により決定されたノードとする。
【0059】
(A−3)第1の実施形態の動作
以下では、第1の実施形態のノード1における通信制御方法の処理の動作を具体的に説明する。
【0060】
(A−3−1)通信タイミング制御演算部12における処理
自ノードの1ホップ範囲内に存在する他ノードから受信した制御パケットを用いて、通信タイミングの調整動作を実行する。この通信タイミングの調整動作は、図1の通信タイミング制御演算部12における演算結果に基づいて、自ノードが制御パケットを送信するタイミングを制御することによって実行される。各ノードが並列に調整動作を実行することにより、ノード間における相互調整機構として機能する。
【0061】
ここで、自ノードが他ノードから受信する制御パケットには、他ノードの1ホップ範囲内に存在するすべての他ノードに対する仮想位相が付加されている。したがって、各ノードは、1ホップ近傍範囲内に存在する他ノードから制御パケットを受信することによって、間接的に2ホップ近傍範囲内の他ノードに対する位相情報を得ることができる。
【0062】
通信タイミング制御演算部12では、制御パケットの受信タイミングで得られる2ホップ近傍範囲内の他ノードに対する位相情報を用いて、当該ノードに対する仮想位相モデルを生成し、以後、受信のたびにその仮想位相の値を調整する。そして、通信タイミング制御演算部12における演算は、2ホップ近傍範囲内の他ノードに対する仮想位相を用いて実行される。
【0063】
通信タイミングは、各ノードがデータパケットの送信に要する時間だけずれる必要がある。一般に、通信負荷は各ノードよって異なるため、各ノードが必要とする帯域幅も異なる。もし、それぞれが必要な帯域幅を獲得できなければ、ノード間で発信衝突が発生する。通信タイミング制御演算部12では、ノード間で通信に必要な帯域を取り合う過程に対応する演算を実行する。
【0064】
以下に、通信タイミング制御演算部12における演算の例を示す。通信タイミング制御演算部12の演算は、例えば、次の(1.1)式及び(1.2)式のような非線形振動子が結合した系をモデル化した数式を用いて行うことができる。
【数1】

【0065】
ここで、変数tは時間を表し、θ(t)は、時刻tにおける自ノードiの位相を表す。θ(t)は、mod2π(2πで割った余り)の演算を施すことにより、常に、区間0≦θ(t)<2πの値を取るものとする。
【0066】
d/dtは、時間tに関する微分演算を表す記号であり、dθ(t)/dtは位相θ(t)を時間tで微分した状態変数を表す。
【0067】
Δθ^ij(t)(^はハット)は、他ノードjに対する仮想位相θ^ij(t)と、自ノードiの位相θ(t)との位相差である。ただし、位相差Δθ^ij(t)は、2πを加算した備にmod2π(2πで割った余り)の演算を施すことにより、便宜的に区間0≦Δθ^ij(t)<2πの値を取るものとする。
【0068】
ωは、固有角振動数パラメータであり、各ノード固有の振動リズムを表す。ここでは、一例として、ωの値をあらかじめ全ノードで同一の値に統一しておくものと仮定する。
【0069】
R(Δθ^ij(t))は、位相差Δθ^ij(t)に応じて自ノードの振動リズムを変化させる応答特性を表現する位相応答関数である。位相応答関数R(Δθ^ij(t))の具体的な関数形の例を図5に示す。
【0070】
図5に示す位相応答関数の具体例は、下記式を適用できる。
【数2】

【0071】
図5のような位相応答関数R(Δθ^ij(t))を用いることにより、通信負荷、すなわち送信に必要な帯域幅b(t)に応じて、他ノードの位相との間に反発特性が働く。図5に示す位相応答関数R(Δθ^ij(t))において、反発特性の働く位相差範囲が、b(t)に応じて決定されている点に注意されたい。また、σは実験的に決定する定数パラメータである。帯域幅b(t)と、後述の経路制御演算部13における処理で説明する変数b(rel)(t)、b(int)(t)との間には、次の関係がある。
【0072】
(t)=b(rel)(t)+b(int)(t) …(2)
上記のように、位相応答関数に対して通信負荷に応じた特性を持たせることにより、送信経路の決定が、通信タイミングパターン形成過程P1における拘束条件となる。
【0073】
R(Δθ^ij(t))を含む項のN^は、時刻tにおける仮想位相モデルの総数、Kは結合定数パラメータを表す。ここで、結合定数パラメータKは、位相の時間発展に対するR(Δθ^ij(t))を含む項の寄与度を決定するパラメータであり、その値は実験的に決定する。
【0074】
ξ(S(t))は、自ノードと他ノードとの相対位相差が小さい場合にストレスを蓄積し、蓄積されたストレス値S(t)に応じてランダムな大きさで位相シフト(位相状態変化)を実行する働きをする項である。ここで、相対位相差とは次のように定義される量である。
【0075】
位相差Δθ^ij(t),相対位相差Eとすると
Δθ^ij(t)≦π のとき E=Δθ^ij(t) …(3.1)
Δθ^ij(t)>π のとき E=2π−Δθ^ij(t) …(3.2)
すなわち、ξ(S(t))は、蓄積されたストレス値S(t)に対する応答特性を表現する関数である。ξ(S(t))の関数形の具体例は、特許文献1〜特許文献7及び先行出願1に記載されている例を適用することができる。
【0076】
(A−3−2)経路制御演算部13における処理
経路制御演算部13では、各ノードが時刻tに獲得している帯域を、リンク同士で取り合う過程に対する演算を実行する。
【0077】
ここで、リンクとは、各ノードに対する送信先ノード(1ホップ近傍範囲内に存在する他ノード)との間のリンクを指す。一般に、各ノードに対する送信先ノードは複数存在するため、各ノードに対するリンクも複数存在する。これらのリンク同士で帯域を取り合う。
【0078】
以下に、経路制御演算部13における演算の例を示す。経路制御演算部13の演算は、次の(1.3)〜(1.11)式に示す数式を用いて行う。
【数3】

【0079】
変数tは時間を表す。wij(t)は、時刻tにノードiが獲得している帯域幅Φ(t)の内、リンクi→jが獲得する割合を決定するための変数であり、時刻tにおけるリンクi→jの帯域獲得度を示す。
【0080】
ここで、Φ(t)は、時刻tにノードiが獲得している帯域幅であり、その値は、通信タイミング制御演算部12の動作に基づいて以下のように決定される。
【0081】
ノードiの獲得する帯域幅は、
「後続との位相差」>「送信に必要な位相差」ならば、「送信に必要な位相差」
「後続との位相差」<「送信に必要な位相差」ならば、「後続との位相差」
で与える。
【0082】
ここで、「後続との位相差」とは、通信タイミング制御演算部の動作において、「自ノードiの位相」と「後続する他ノードの位相」との位相差である。ただし、「後続する他ノードの位相」は、「自ノードiの位相」の直後の位相である。また、「送信に必要な位相差」とは、時刻tにノードiがパケットの送信に必要な帯域幅(位相区間幅)であり、後述する(1.7)式における右辺の分母によって表される量である。
【0083】
(1.3)式において、τはwij(t)の変化する速度を制御するための定数パラメータ(τ>0)である。τの値は、速度調整部27において調整されるものとし、例えば、その値は実験的に決定した値を用いる。τは、帯域獲得度wij(t)の変化する速度と、位相θ(t)の変化する速度との関係を調整するという機能を有する。すなわち、τは、経路制御機構M2と通信タイミング制御機構M1における制御動作速度の関係を調整する。経路制御機構M2と通信タイミング制御機構M1とは、相互に影響を与え合いながら、それぞれの状態を変化させるため、τを用いて制御動作速度の関係を調整することにより、適切な状態に収束する安定性が向上し、収束時間の増加を抑制する効果が得られる。
【0084】
(1.3)、(1.4)式において、Nはノードiの送信先ノードの総数である。ここで、送信先ノードとは、ノードiの1ホップ近傍範囲内に存在する他ノードである。
【0085】
φij(t)は、Φ(t)とwij(t)に基づいて、時刻tにリンクi→jが獲得している帯域幅を表す。φij(t)は、自ノードiが他ノードjに対して中継要求するデータパケットを送信するために必要な帯域幅に対応する。(1.4)式からわかるようにΦ(t)とφij(t)との間には、次の(1.12)式の関係がある。
【数4】

【0086】
d/dtは時間tに関する微分演算を表す記号であり、dwij(t)/dtはwij(t)を時間tで微分した状態を表す。
【0087】
μjk(i)は定数パラメータであり、パラメータ設定部26により設定されるものである。定数パラメータμjk(i)は、ノードiが時刻tに獲得している帯域Φ(t)を、リンク同士で取り合う過程に対応する演算を実行する際に、リンクi→jの帯域獲得度wij(t)が、自他のリンクi→k(k=jの場合を含む)の帯域獲得度wik(t)から受ける影響度を表す。例えば、パラメータ設定部26による典型的な設定方法として、μjk(i)の値をi、j、kによらず一律に設定する方法がある。すなわち、(1.13)式に例示するようにして、μjk(i)の値を設定する。
【数5】

【0088】
ここで、λは定数パラメータで、その値は実験的に決定する。ただし、この実施形態に限定されるものではないことに注意されたい。このように設定することにより、ノードiが時刻tに獲得している帯域Φ(t)を、リンク同士で取り合う過程に対応する演算が抑制され、収束時間が低減するという効果が得られる。
【0089】
ij(t)は、例えば(1.5)式で定義される評価関数であり、リンクi→jにおけるパケット流動度である。パケット流動度fij(t)は、パケット流動度算出部21により求められる。以下では、(1.5)式の構成を説明する。
【0090】
ijはリンクi→jのリンク品質を示す。このリンク品質Lijは、ノードiが送信したパケットを、ノードjが受信に成功する割合(送信成功度)を表す。リンク品質Lijは、リンク品質算出部211により算出される。
【0091】
は、(1.6)式で与えられるように、ノードiの送信先ノードjにおいて、ノードjが送信先とするノードuとのリンクj→uのリンク品質Ljuを、ノードjのすべての送信先ノードについて加重平均した値である。加重平均を求める際の重み係数は、例えばリンクj→uの帯域獲得度wij(t)に基づいて算出する。したがって、Lは、ノードjを送信元とする全リンクの中で、獲得している帯域幅が大きいリンクほど寄与度が高い「リンク品質の平均値」を表す。(1.6)式において、Mはノードjの送信先ノードの総数である。なお、Lは制御パケットに含まれており、パケット流動度算出部21は、制御パケットに含まれている他ノードjを送信元とするリンクに対するLを用いる。
【0092】
(t)は、例えば(1.7)式で定義される評価関数であり、競合解消度算出部23により求められる。c(t)は、以下に示すように、時刻tにノードjがパケットの送信に必要な帯域幅に対して獲得している帯域幅の割合、すなわちノード間の帯域の競合解消度を示す。
【0093】
(1.7)式において、b(rel)(t)は、例えば(1・8)式で定義されるものであり、ノードjが、1周期の間に、他ノードから中継要求されたデータパケットを送信するために必要な帯域幅である。なお、(1.8)式において、Bは、1周期の間に、ノードjに対して中継要求したノードの集合を表す。ただし、ノードjに対して中継要求をすることができるノードは、ノードjの1ホップ近傍範囲内に存在する他ノードである。
【0094】
また、(1.7)式において、b(int)(t)は、ノードjが、1周期の間に、自ノード内部で発生したデータパケットを送信するために必要な帯域幅である。
【0095】
したがって、(1.7)式の分母は、時刻tにノードjがパケットの送信に必要なトータルの帯域幅を表す。一方、(1.7)式の分子は、時刻tにノードjが獲得している帯域幅Φ(t)を表す。そのため、c(t)は、上述したように、時刻tにノードjがパケットの送信に必要な帯域幅に対して獲得している帯域幅の割合、すなわち、ノード間における帯域の競合解消度を示している。
【0096】
g(c(t))は、fij(t)に対する競合解消度c(t)の与える影響度を調整するための関数(感度関数)を示す。g(c(t))は、例えば(1.9)式に示すような関数形を適用することができ、感度関数算出部24により求められる。ただし、g(c(t))の関数形はこの形態に限定されない。(1.9)式は、関数値がc(t)のn乗(nは正の整数値)で与えられる例を示している。
【0097】
δ(t)は、例えば(1.10)式のように定義されるペナルティー関数である。δ(t)は、ペナルティー関数算出部22により求められる。ただし、ペナルティー関数δ(t)の関数形は、(1.10)式の形態に限定されないことに注意されたい。
【0098】
(1.10)式は、例えば、以下の条件(Con1),(Con2),(Con3)のいずれに該当するかによって関数値が決定されることを示している。
【0099】
すなわち、δ(t)の値は、
(Con1)の場合、1,
(Con2)の場合、α,
(Con3)の場合、β(0≦β≦α<1)であることを表す。
【0100】
ただし、以下の条件(Con1),(Con2),(Con3)において、ノードjは自ノードiの送信先ノードを表す。
【0101】
(1.10)式で定義されるδ(t)は、自ノードiの送信先をノードjとするとき、「ノードjの深さD」と「ノードjが送信先に指定している他ノードuの深さDu」との関係に基づいて、fij(t)の値にペナルティーを与える。
【0102】
例えば、自ノードiの送信先ノードjが、自身より深さの大きい他ノードuを送信先に指定している場合、fij(t)の値が低下することにより、リンクi→jの帯域獲得度wij(t)は減少する傾向が生じる。自ノードiを送信元とする複数のリンクの中で、リンクi→jの帯域獲得度wij(t)の小さくなる傾向が相対的に強ければ、自ノードiが送信先ノードjに対して送信するパケットの量は減少する。
【0103】
一般に、「ノードjが送信先に指定している他ノードu」は時間的に変化する可能性があるため、δ(t)は時間tの関数となる。
【0104】
[条件]
(Con1):ノードjが、自身より深さの小さい他ノードuを送信先に指定している、かつ、条件(Con2),(Con3)を満足しない。
【0105】
(Con2):ノードjが、自身と同じ深さの他ノードuを送信先に指定している、かつ、条件(Con3)を満足しない。ただし、条件(Con1)を満足するか否かは問わない。
【0106】
(Con3):ノードjが、自身より深さの大きい他ノードuを送信先に指定している。ただし、条件(Con1)、(Con2)を満足するか否かは問わない。
【0107】
以上、(1.5)式の右辺における各変数が表す量について説明した。(1.5)式に示すように、パケット流動度fij(t)は、以下の量の積で与えられる評価尺度である。以下において、ノードjは自ノードiの送信先ノードを表す。
【0108】
(1)リンクi→jのリンク品質Lij
(2)ノードjにおけるリンク品質の加重平均L
(3)ノードjにおける「競合解消度c(t)」の感度関数値g(c(t))
(4)ノードjにおけるペナルティー関数値δ(t)
ij(t)には、「リンクi→jのリンク品質Lij」や、「ノードjを送信元とするリンクに対するリンク品質」だけでなく、「ノードjにおける帯域の競合解消度」や、『「ノードjの深さDj」と「ノードjが送信先に指定している他ノードuの深さDu」との関係に基づいて決定されるペナルティー関数値δj(t)』が反映されている点に注意されたい。
【0109】
このように、fij(t)は、時刻tにおいて、「自ノードiがリンクi→jを用いて送信したデータパケット」が、ノードjで停滞する、あるいは廃棄されることなく、その後、より深さの小さい他ノードヘ到達する可能性を評価する尺度になっている。そこで、第1の実施形態では、fij(t)を、時刻tにおけるリンクi→jの「パケット流動度」と呼ぶ。
【0110】
自ノードiの送信先ノードjにおいて、「帯域の競合」や、「深さがDjより大きい他ノードを送信先に指定する事態」が発生している場合、「パケット流動度fij(t)」が低下することによって、当該リンクi→jを用いたデータパケットの送信を抑制する作用が働く。
【0111】
また、パケット流動度算出部21において、演算抑制部213は、fij(t)の値を、上記以外に(1.11)式に示す演算を実行することにより更新する。以下では、(1.11)式によるパケット流動度fij(t)の値の更新を説明する。
【0112】
(1.11)式は、自ノードiを送信元とするリンクi→k(k=1,2,…,N)に対するパケット流動度fik(t)の中で、リンクi→jに対する値fij(t)が最大でない場合、
「最大値maxfik(t)とfij(t)との差が閾値Thよりも小さい」ならば、
「fij(t)にmaxfik(t)の値を代入する」
ことを示している。ここで、Aは集合A={1,2,…,N}であり、k,jは集合Aの要素である。また、閾値Thfは実験的に決定する定数パラメータである。
【0113】
上記の処理を実行することにより、自ノードiを送信元とするリンクi→k(k=1,2,…,N)同士で帯域を取り合う演算を実行する過程において、異なるリンクに対するfik(t)のわずかな差に左右されずに、収束状態に至る動作が実現される。その結果、収束時間が低減するという効果が得られる。
【0114】
先行出願1に開示される方法ではfij(t)を算出する演算にリンクi→jが獲得する帯域幅Φij(t)の値が直接影響を与えている。そのため、Φij(t)の値が大きいリンクほど、Φij(t)がより成長しやすいという性質があった。その結果、発信衝突と幅輳をともに回避した状態が実現されても、一般に複数存在する「自ノードiの送信先ノードj」が1つに収束するまで制御動作を継続する傾向が生まれ、その分、収束時間が増加するという問題を引き起こしていた。
【0115】
また、先行出願1に開示される方法では、fij(t)を算出する演算に、自ノードiの送信先ノードjにおける活性度a(t)を用いている。a(t)は、ノードjに対する通信負荷と、それに対する(リンク品質を考慮した)実効的な送信能力とのバランスを表す。a(t)の値が低いほど、上記のバランスが悪く、ノードjにデータパケットの蓄積が発生する傾向が強いことを表している。しかし、a(t)は、「ノードjにおける帯域の競合度」と、「ノードjを送信元とするリンク品質」とを独立に評価していない。そのため、fij(t)に対する「ノードjにおける帯域の競合度」の与える影響度を調整できず、コンフリクトを低減する作用が十分得られない場合があった。
【0116】
それに対して、本発明では、上記の構成によってfij(t)の値を算出することにより、こうした問題を解消している。このように、先行出願1に開示される方法におけるfij(t)は、リンクi→jを用いて送信したデータパケットの流れの良し悪しを評価する尺度(リンクi→jの帯域幅Φij(t)が関与する尺度)になっているのに対して、本発明におけるfij(t)は、「リンクi→jを用いて送信したデータパケット」が、ノードjで停滞する、あるいは廃棄されることなく、その後、より深さの小さい他ノードヘ到達する可能性を評価する尺度になっている。その結果、上記の問題が解消されるという効果が得られる。
【0117】
(A−3−3)各ノードにおける送信先の指定方法
次に、(1.3)〜(1.11)式を用いた演算を実行する過程での「各ノードにおける送信先の指定方法」について説明する。送信先決定部28は、以下で説明する条件判定及び処理を行い、その処理結果を用いて送信先を指定する。
【0118】
以下の説明において、[初期設定]は、(1.3)〜(1.11)式を用いた演算を実行する際の初期設定、[初期設定]以外は、(1.3)〜(1.11)式を用いた演算を実行する過程で、当該の条件を満足した場合に実行する処理を示している。
【0119】
また、以下の説明において、自ノードiの送信先に指定可能であるノードは、「自ノードiの1ホップ近傍範囲内に存在する他ノードj」である。
【0120】
さらに、以下の説明において、例えば、単に「自ノードiより深さの小さい他ノードj」等と記述されている場合も、他ノードjは「自ノードiの1ホップ近傍範囲内に存在する他ノード」であるという条件を満たす点に注意されたい。
【0121】
[初期設定]
初期設定として、「自ノードiより深さの小さい他ノードj」を送信先とするリンクi→jに対するwij(t)に、wij(t)>0の初期値を設定する。
【0122】
初期値は実験的に決定する定数パラメータである。「自ノードiより深さの小さい他ノードj」が複数存在する場合も、すべて同様に設定を行う。上記の操作は、「自ノードiより深さの小さい他ノードj」を、すべて送信先に指定することを意味する。
【0123】
また、「自ノードiと深さが同じ他ノードj」、及び「自ノードiより深さの大きい他ノードj」を送信先とするリンクi→jに対するwij(t)は、wij(t)=0と設定する。この操作は、「自ノードiと深さが同じ他ノードj」、及び「自ノードiより深さの大きい他ノードj」を、送信先に指定しないことを意味する。
【0124】
同様に以下の説明においても、リンクi→jに対するwij(t)が、wij(t)>0ならば、「自ノードiは他ノードjを送信先に指定している状態」であり、逆にwij(t)=0ならば、「自ノードiは他ノードjを送信先に指定していない状態」であることを意味する。
【0125】
(ア)[条件判定と処理1]
[条件1]
自ノードiが他ノードjを送信先とするリンクi→jに対するwij(t)が、閾値Th1以下である。ここで、閾値Th1は実験的に決定する定数パラメータである。
【0126】
[処理]
上記[条件1]を満足する場合、当該リンクに対するwij(t)を、wij(t)=0とする。
【0127】
(イ)[条件判定と処理2]
[条件2]
「自ノードiより深さの小さい他ノードj」を送信先とするリンクi→jに対するwij(t)が、すべて閾値Th2以下である。
【0128】
かつ、「自ノードiより深さの小さい他ノードj」を送信先とするリンクi→jに対するwij(t)の内、少なくとも1つはwij(t)>0である。
【0129】
かつ、「自ノードiと深さが同じ他ノードj」、及び「自ノードiより深さの大きい他ノードj」を送信先とするリンクi→jに対するwij(t)が、すべてwij(t)=0である。
【0130】
かつ、「自ノードiと深さが同じ他ノードj」が、自ノードiより相互作用対象ノード数が少ない。
【0131】
ここで、閾値Th2は実験的に決定する定数パラメータである。
【0132】
[処理2]
上記[条件2]を満足する場合、「自ノードiと深さが同じ他ノードj」を送信先とするリンクi→jに対するwij(t)に、wij(t)>0の値を設定する。設定する値は実験的に決定する定数パラメータである。
【0133】
「自ノードiと深さが同じ他ノードj」が複数存在する場合も、すべて同様に設定を行う。
【0134】
ただし、「自ノードiと深さが同じ他ノードj」が、自ノードiを送信先に指定している場合は、当該リンクi→jに対するwij(t)を更新せず、wij(t)=0とする。すなわち、自ノードiは、当該リンクi→jの他ノードjを送信先に指定しない。
【0135】
また、「自ノードiと深さが同じ他ノードj」が、すべて自ノードiを送信先に指定している場合は、「自ノードiより深さの大きい他ノードj」を送信先とするリンクi→jに対するwij(t)に、wij(t)>0の値を設定する。設定する値は実験的に決定する定数パラメータである。「自ノードiより深さの大きい他ノードj」が複数存在する場合も、すべて同様に設定を行う。上記の処理は、「自ノードiより深さの大きい他ノードj」が、自ノードiを送信先に指定している状態であっても実行する。
【0136】
第1の実施形態の典型的な利用形態では、閾値Th2は、閾値Th1以上の値を設定する。すなわち、Th1≦Th2を満たすように、閾値Th2を設定する。
【0137】
(ウ)[条件判定と処理3]
[条件3]
「自ノードiより深さの小さい他ノードj」、及び「自ノードiと深さが同じ他ノードj」を送信先とするリンクi→jに対するwij(t)が、すべて閾値Th3以下である。
【0138】
かつ、「自ノードiと深さが同じ他ノードj」を送信先とするリンクi→jに対するwij(t)の内、少なくとも1つはwij(t)>0である。
【0139】
かつ、「自ノードiより深さの大きい他ノードj」を送信先とするリンクi→jに対するwij(t)が、すべてwij(t)=0である。
【0140】
ここで、閾値Th3は実験的に決定する定数パラメータである。
【0141】
[処理3]
上記[条件3]を満足する場合、「自ノードiより深さの大きい他ノードj」を送信先とするリンクi→jに対するwij(t)に、wij(t)>0の値を設定する。設定する値は実験的に決定する定数パラメータである。「自ノードiより深さの大きい他ノードj」が複数存在する場合も、すべて同様に設定を行う。上記の処理は、「自ノードiより深さの大きい他ノードj」が、自ノードiを送信先に指定している状態であっても実行する。
【0142】
第1の実施形態の典型的な利用形態では、閾値Th3は、閾値Th2と等しい値を設定する。すなわち、Th3=Th2を満たすように、閾値Th3を設定する。
【0143】
(エ)条件判定と処理4
[条件4]
「自ノードiより深さの小さい他ノードj」が、自ノードiを送信先に指定している。
【0144】
[処理4]
上記[条件4]を満足する場合、
当該リンクi→jに対するwij(t)を、wij(t)=0とする。すなわち、自ノードiは、当該リンクi→jの他ノードjを送信先に指定しない。
【0145】
上記の処理は、例え、自ノードiが他ノードjを送信先に指定している状態であっても、他ノードjが自ノードiを送信先に指定した場合は、「自ノードiは他ノードjを送信先に指定しない状態に変更する」ということを意味する。
【0146】
(オ)条件判定と処理5
[条件5]
「自ノードiが他ノードkを送信先に指定している状態、すなわち、wik(t)>0」のとき、リンクi→kに対する、wik(t)が、すべて閾値Th5A以下である。
【0147】
かつ、「自ノードiより深さの小さい他ノードj」を送信先とするリンクi→jに対する、wij(t)が、wij(t)=0である。
【0148】
かつ、当該リンクi→jに対するfij(t)が、閾値Th5B以上である。
【0149】
ここで、閾値Th5A及び閾値Th5Bは、実験的に決定する定数パラメータである。
【0150】
[処理5]
上記[条件5]を満足する場合、当該リンクi→jに対するwij(t)に、wij(t)>0の値を設定する。設定する値は実験的に決定する定数パラメータである。上記[条件5]を満足するリンクi→jが複数存在する場合も、すべて同様に設定を行う。
【0151】
上記の処理は、例え、「自ノードiより深さの小さい他ノードj」を送信先とするリンクi→jに対するwij(t)が、wij(t)=0である状態(自ノードiが他ノードjを送信先に指定していない状態)になっても、その後、無線環境が変化して、当該リンクi→jに対するfij(t)が、閾値Th5B以上になれば、wij(t)>0である状態(自ノードiが他ノードjを送信先に指定している状態)に変化することを意味する。
【0152】
(カ)条件判定と処理6
[条件6]
上記[条件5]を満足しない。
【0153】
かつ、「自ノードiが他ノードkを送信先に指定している状態、すなわち、wik(t)>0」のとき、リンクi→kに対するfik(t)が、すべて閾値Th6A以下である。
【0154】
かつ、「自ノードiより深さの小さい他ノードj」を送信先とするリンクi→jに対するwij(t)が、すべてwij(t)=0である。
【0155】
かつ、「自ノードiと深さが同じ他ノードp」を送信先とするリンクi→pに対するwip(t)が、wip(t)=0である。
【0156】
かつ、当該リンクi→pに対するfip(t)が、閾値Th6B以上である。
【0157】
ここで、閾値Th6A、及びTh6Bは実験的に決定する定数パラメータである。
【0158】
[処理6]
上記[条件6]を満足する場合、当該リンクi→pに対するwip(t)に、wip(t)>0の値を設定する。設定する値は実験的に決定する定数パラメータである。上記[条件6]を満足するリンクi→pが複数存在する場合も、すべて同様に設定を行う。
【0159】
(キ)[条件判定と処理7]
[条件7]
上記[条件5]及び[条件6]を満足しない。
【0160】
かつ、「自ノードiが他ノードkを送信先にしている状態、すなわち、wik(t)>0」のとき、リンクi→kに対するfik(t)が、すべて閾値Th7A以下である。
【0161】
かつ、「自ノードiより深さの小さい他ノードj」を送信先とするリンクi→jに対するwij(t)が、すべてwij(t)=0である。
【0162】
かつ、「自ノードiと深さが同じ他ノードp」を送信先とするリンクi→pに対するwip(t)が、すべてwip(t)=0である。
【0163】
かつ、「自ノードiより深さの大きい他ノードq」を送信先とするリンクi→qに対するwiq(t)が、wiq(t)=0である。
【0164】
かつ、当該リンクi→qに対するfiq(t)が、閾値Th7B以上である。
【0165】
ここで、閾値Th7A及び閾値Th7Bは実験的に決定する定数パラメータである。
【0166】
[処理7]
上記[条件7]を満足する場合、当該リンクi→qに対するwiq(t)に、wiq(t)>0の値を設定する。設定する値は実験的に決定する定数パラメータである。上記[条件7]を満足するリンクi→pが複数存在する場合も、すべて同様に設定を行う。
【0167】
(A−3−4)経路制御動作
(1.3)〜(1.11)式を用いた演算を実行することにより、自ノードのリンクの中で「パケット流動度fij(t)」が大きい値をとるリンクほど、その帯域幅φij(t)が時間と共に増大する。
【0168】
すなわち、リンクi→j(j=1,2,…,N)が獲得する帯域幅φij(t)は、そのリンクの「パケット流動度fij(t)」に依存して、時間と共に増大、あるいは減衰する。
【0169】
これは、図6に示すように、自ノードiが獲得している帯域幅Φ(t)において、自ノードiのリンク同士(例えば、リンクi→j、リンクi→k等)で帯域幅を取り合う動作に相当する。
【0170】
したがって、例えば、図6において、あるリンクi→jの帯域幅φij(t)が増大すれば、その分、他のリンクi→k(k≠j)の帯域幅φik(t)は減衰する。定数パラメータμは、上述したように、その演算を実行する際に、リンクi→jが他のリンクi→k(k≠j)から受ける影響度を表す。その結果、次の2つの状態のいずれかを収束する。
【0171】
(1)自ノードiのリンクの中で、1個のリンクが帯域幅Φ(t)をすべて獲得する。
【0172】
(2)自ノードiのリンクの中で、複数のリンクが帯域幅Φ(t)をある比率で分割する。
【0173】
上記の2つの状態の内、どちらに収束するかは、定数パラメータμと「パケット流動度fij(t)」の値に依存する。定数パラメータμの値は、アプリケーションの要求等に合わせて実験的に決定する。
【0174】
(A−3−5)通信タイミングバターン形成過程の状態が経路制御動作に与える影響
通信タイミングパターン形成過程P1で発生するコンフリクトは、ノードの「競合解消度」の値に反映される。
【0175】
例えば、ノードjでコンフリクトが発生すれば、ノードjの「競合解消度c(t)」の値が低下する。その結果、リンクi→jの「パケット流動度fij(t)」の値が減少し、リンクi→jが獲得する帯域幅Φij(t)を減衰させる作用が働く。
【0176】
これは、ノードiにおける他のリンクi→j(k≠j)の帯域幅φik(t)を増大させる。このようにして、コンフリクトが発生しているノードjに対する通信負荷を軽減し、それを他のノードに分散させる機能が働く。
【0177】
したがって、ノード間において通信に必要な帯域を取り合う過程で生じるコンフリクトの状態が、データパケットの送信経路を決定する過程に影響し、コンフリクトを低減する方向に作用する。
【0178】
(A−3−6)制御パケット送信部14及び制御パケット受信部11
制御パケット送信部14では、通信タイミング制御演算部12の演算結果に基づくタイミングで、制御パケットに制御情報を付加して送信する。また、制御パケット受信部11では、他ノードが送信した制御パケットを受信し、制御情報の読み出しを行う。
【0179】
制御パケットには、近傍ノードの位相情報以外に、以下の制御情報を付加する。
【0180】
(1)自ノードiにおける「競合解消度c(t)」
(2)他ノードjに対して中継要求する「データパケットを送信するために必要な帯域幅φij(t)」
(3)自ノードiを送信元とするリンクに対する「リンク品質の加重平均L
(4)自ノードiの深さDi
(5)自ノードiにおけるペナルティー関数δ(t)の値
(A−3−7)データパケット送受信部15
自ノードiのデータパケット送受信部15は、経路制御演算部13の演算結果に基づいて、他ノードjに対して中継要求するデータパケットを送信する。つまり、データパケット送受信部15は、経路制御演算部13の演算結果から、自ノードiから各他ノードjへの帯域幅φij(t)を用いて、各他ノードj宛のデータパケットを送信する。
【0181】
また、データパケット送受信部15は、他ノードから中継要求されたデータパケットを受信する。
【0182】
(A−4)微分方程式の演算方法について
(1.1)及び(1.3)式で示した微分方程式の演算は、例えば、オイラー方やルンゲ・クッタ法などの一般的な数値計算法を用いて、ソフトウェアとしてノード上に実行可能である。すなわち、上述したノードにおける各処理は、ソフトウェア処理により実現することができ、例えば、ROMに格納される演算を実行させる処理プログラムをCPUが読み出し、CPUが処理プログラムを実行することにより実現できる。これらの数値計算法は、微分方程式を差分化(連続時間変数tを離散化)して得られる差分方程式(漸化式)を用いて状態変数の変化(時間発展)を計算する手法を適用することができる。さらに、(1.1)及び(1.3)式と同様の動作をする電子回路を構成すれば、ハードウェアとしてノード上に実装することも可能である。
【0183】
(A−5)第1の実施形態の効果
以上のように、第1の実施形態によれば、パケット流動度算出部、送信先決定部、ペナルティ関数算出部を備えることにより、「自ノードより深さが小さいノード」だけでなく、「自ノードと深さが同一」又は「自ノードより深さが大きい」ノードを用いた送信経路制御が可能となり、無線環境の変化に対する適応性が向上する。
【0184】
また、第1の実施形態によれば、競合解消度算出部、感度関数算出部、演算抑制部、速度調整部を備えることにより、必要以上に制御動作を継続することによる収束時間の増加を抑制することが可能になり、無線環境の変化に対する適応速度が向上する。
【符号の説明】
【0185】
1…ノード、11…制御パケット受信部、12…通信タイミング制御演算部、
13…経路制御演算部、14…制御パケット送信部、15…データパケット送受信部、
21…パケット流動度算出部、211…リンク品質算出部、
212…リンク品質加重平均算出部、213…演算抑制部、
22…ペナルティー関数算出部、23…競合解消度算出部、24…感度関数算出部、
25…リンク獲得帯域幅、26…パラメータ設定部、27…速度調整部、
28…送信先決定部、29…送信先条件格納部、20…条件格納部。

【特許請求の範囲】
【請求項1】
ネットワークを構成する複数のノードのそれぞれに搭載される通信制御装置において、
1又は複数の他ノードとの間でデータ信号を送信する帯域を取り合い、自ノードの通信タイミングを示す帯域幅の獲得を行う通信タイミング制御手段と、
上記通信タイミング制御手段が獲得した自ノードの帯域幅の中で、各データ信号を送信する帯域を調整し、各データ信号を送信する1又は複数の送信経路を決定する経路制御手段と、
各他ノードとの間で制御情報を送受信する制御情報通信手段と、
上記経路制御手段により決定された上記各送信経路に係る各送信先ノードに対して各データ信号を送信するデータ信号送信手段と
を備え、
上記経路制御手段が、
送信先ノードとする各他ノードから受信した上記制御情報を用いて、各他ノードにおいてデータ信号の停滞や廃棄がなされることなく、当該他ノードよりも深さの小さいノードに向けて各データ信号が到達する可能性を示す第1の評価値をリンク毎に算出する第1の評価値算出部と、
上記各リンクの第1の評価値に応じた各リンクの帯域幅に基づいて、上記各送信先ノードを決定する送信先決定部と
を有し、
上記通信タイミング制御手段及び上記経路制御手段が、それぞれの処理に係る状態情報を相互に受け渡し、相手の状態情報を拘束条件として、自ノードの帯域の調整及び上記各送信先ノードとの間のリンクの帯域の調整を行うものであることを特徴とする通信制御装置。
【請求項2】
上記経路制御手段が、上記第1の評価値に基づいて上記各リンクのリンク帯域獲得度を求めて上記各リンクの帯域幅を算出するリンク帯域幅算出部を有し、
上記送信先決定部が、上記各リンクのリンク帯域獲得度と、自ノードと各他ノードとの深さの大小関係とに基づき所定条件を満たすか否かの判定を行い、その判定結果に応じて上記各リンクのリンク帯域獲得度を変更し、自ノードより深さの小さい他ノード、自ノードと深さが同一の他ノード、自ノードより深さの大きい他ノードの全て又はいずれかを、送信先ノードとして決定する
ことを特徴とする請求項1に記載の通信制御装置。
【請求項3】
上記経路制御手段が、
自ノードにおける上記各リンクのリンク品質を求めるリンク品質算出部と、
自ノードにおける全てのリンクについて、上記各リンクの帯域幅の大きさに応じて、自ノードが寄与する上記各リンクのリンク品質加重平均値を求める加重平均値算出手段と、
上記通信タイミング制御手段からの自ノードの獲得帯域幅と、自ノードのデータ信号の送信に必要な帯域幅とに基づいて、自ノードと各他ノードとの間の帯域の競合解消度を求める競合解消度算出部と、
各他ノードから受信した上記制御情報に含まれている当該他ノードにおける上記帯域の競合解消度による上記第1の評価値への影響度を示す感度関数値を調整する感度関数算出部と
を有し、
上記第1の評価値算出部は、少なくとも、
自ノードの上記リンク品質算出部により求められた上記各リンクのリンク品質と、
各他ノードから受信した上記制御情報に含まれている当該他ノードにおける上記各リンクのリンク品質加重平均値と、
上記感度関数算出部により求められた各他ノードの上記感度関数値と
に基づいて、上記各リンクの上記第1の評価値を求めることを特徴とする請求項1又は2に記載の通信制御装置。
【請求項4】
上記経路制御手段が、自ノードが送信先とする各他ノードの深さと、当該他ノードが送信先とする各他ノードの深さとの関係に基づくペナルティー関数値を決定するペナルティー関数値算出部を有し、
上記第1の評価値算出部が、上記ペナルティー関数値算出部により決定された上記ペナルティー関数値を用いて、上記第1の評価値を求めることを特徴とする請求項3に記載の津新制御装置。
【請求項5】
上記経路制御手段が、自ノードを送信元とするリンク同士で帯域を獲得する際に、それぞれ異なるリンクに対する上記第1の評価値の微小差を解消させる演算抑制部を有することを特徴とする請求項1〜4のいずれかに記載の通信制御装置。
【請求項6】
上記演算抑制部が、自ノードを送信元とする各リンクの上記第1の評価値と最大値との差が閾値より小さいとき、当該第1の評価値を上記最大値とすることを特徴とする請求項5に記載の通信制御装置。
【請求項7】
上記通信タイミング制御手段が、各他ノードの通信タイミングを示す位相情報と自ノードの通信タイミングを示す位相情報とに基づき、1周期の期間で位相の状態を変化させて、自ノードの通信タイミングを獲得するものであり、
上記経路制御手段が、上記リンク帯域幅算出部が算出する上記各リンクのリンク帯域獲得度の変化速度と、上記通信タイミング制御手段における位相の変化速度とを調整する速度調整部を有することを特徴とする請求項1〜6のいずれかに記載の通信制御装置。
【請求項8】
上記経路制御手段は、上記リンク帯域幅算出部により求められる上記各リンクのリンク帯域獲得度の、自他のリンクの帯域獲得度から受ける影響度を示すパラメータを設定するパラメータ設定部を有することを特徴とする請求項1〜7のいずれかに記載の通信制御装置。
【請求項9】
ネットワークを構成する複数のノードのそれぞれに搭載される通信制御装置を、
1又は複数の他ノードとの間でデータ信号を送信する帯域を取り合い、自ノードの通信タイミングを示す帯域幅の獲得を行う通信タイミング制御手段、
上記通信タイミング制御手段が獲得した自ノードの帯域幅の中で、各データ信号を送信する帯域を調整し、各データ信号を送信する1又は複数の送信経路を決定する経路制御手段、
各他ノードとの間で制御情報を送受信する制御情報通信手段、
上記経路制御手段により決定された上記各送信経路に係る各送信先ノードに対して各データ信号を送信するデータ信号送信手段
として機能させ、
上記経路制御手段として、
送信先ノードとする各他ノードから受信した上記制御情報を用いて、各他ノードにおいてデータ信号の停滞や廃棄がなされることなく、当該他ノードよりも深さの小さいノードに向けて各データ信号が到達する可能性を示す第1の評価値をリンク毎に算出する第1の評価値算出部、
上記各リンクの第1の評価値に応じた各リンクの帯域幅に基づいて、上記各送信先ノードを決定する送信先決定部
として機能させ、
上記通信タイミング制御手段及び上記経路制御手段が、それぞれの処理に係る状態情報を相互に受け渡し、相手の状態情報を拘束条件として、自ノードの帯域の調整及び上記各送信先ノードとの間のリンクの帯域の調整を行うように機能させることを特徴とする通信制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2011−109265(P2011−109265A)
【公開日】平成23年6月2日(2011.6.2)
【国際特許分類】
【出願番号】特願2009−260217(P2009−260217)
【出願日】平成21年11月13日(2009.11.13)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【Fターム(参考)】