説明

通信装置、通信方法およびプログラム

【課題】実環境を忠実に再現する必要なく、試験パケットを流すことにより発生するトラヒックの影響を受けずにネットワークの状態を計算する。
【解決手段】通信装置200は、送信レートと送信レートにより第1の通信状態測定装置と第2の通信状態測定装置との間で実ネットワークを介して行われる通信の状態とに基づいて、シミュレーションエンジンから要求された送信レートに応じた通信状態を決定する通信状態設定部230と、通信状態設定部230により決定された通信状態に基づいて、データを生成することによりトラヒックを発生させるトラヒック発生部210と、トラヒック発生部210により生成されたデータを含むパケットを生成するプロトコル処理部220と、プロトコル処理部220により生成されたパケットを他の通信装置に送信する通信部240と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信装置、通信方法およびプログラムに関する。
【背景技術】
【0002】
近年、ネットワークの状態を計算するコンピュータとしてネットワークシミュレータが開発されている。従来のネットワークシミュレータとしては、例えば、ネットワークが実際に置かれている環境(以下、「実環境」とも言う。)を忠実に再現する技術がある。
【0003】
しかしながら、実環境を忠実に再現する技術では、実環境と同じネットワークトポロジや、実環境と同じリンクレベルの通信プロトコルによる通信処理などを再現する必要がある。したがって、実環境を忠実に再現する技術では、例えば、ネットワークの一例としての複雑かつブラックボックス化されたインターネットにて行われる処理、外的要因の大きい無線部によって行われる処理などを、コンピュータシミュレーションのみを用いて正確に再現することは困難である。
【0004】
また、ネットワークシミュレータによる計算の対象となる現実のネットワーク(以下、「実ネットワーク」とも言う。)にネットワークの状態を測定するための試験パケットを流すことによってネットワークの状態を予め測定しておき、測定により得られたネットワークの状態をシミュレーションで再現する技術も開発されている(例えば、特許文献1参照)。かかる技術によれば、上記したような実環境を忠実に再現する技術が有していた問題を解決することができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−13969号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記した実ネットワークに試験パケットを流すことによってネットワークの状態をあらかじめ測定しておく技術では、試験パケットを流すことによって新たにトラヒックが発生する。そのため、実ネットワークの状態を正確に測定することができないという問題があった。
【0007】
そこで、本発明は、実環境を忠実に再現する必要なく、試験パケットを流すことにより発生するトラヒックの影響を受けずにネットワークの状態を計算することが可能な、新規かつ改良された技術を提供しようとするものである。
【課題を解決するための手段】
【0008】
本発明のある実施形態によれば、送信レートと上記送信レートにより第1の通信状態測定装置と第2の通信状態測定装置との間で実ネットワークを介して行われる通信の状態とに基づいて、シミュレーションエンジンから要求された送信レートに応じた通信状態を決定する通信状態決定部と、上記通信状態決定部により決定された上記通信状態に基づいて、データを生成することによりトラヒックを発生させるトラヒック発生部と、上記トラヒック発生部により生成されたデータを含むパケットを生成するプロトコル処理部と、上記プロトコル処理部により生成された上記パケットを他の通信装置に送信する通信部と、を備える、通信装置が提供される。
【0009】
上記通信状態決定部は、上記シミュレーションエンジンから要求された上記送信レートに近い送信レートにより上記第1の通信状態測定装置と上記第2の通信状態測定装置との間で上記実ネットワークを介して行われた通信の状態を上記通信状態として決定することとしてもよい。
【0010】
上記通信状態決定部は、上記第1の通信状態測定装置と上記第2の通信状態測定装置との間で上記実ネットワークを介して行われる通信の上記送信レートが段階的に上昇する場合に、上記段階的に上昇する上記送信レートをS”(0≦k≦n−1)、上記シミュレーションエンジンから要求された上記送信レートS’とし、kをn−1から1つずつ減算したときに、初めてS’>S”を満たすkを求め、求めたkに1を加算したちでkを更新し、更新後のkにて表されるS”を上記通信状態として決定することとしてもよい。
【0011】
上記通信状態決定部は、上記段階的に上昇する送信レートをS”(0≦k≦n−1)、上記シミュレーションエンジンから要求された上記送信レートをS’、所定の係数をαとし、kを1から1つずつ加算したときに、初めてS’<S”−α(S”−S”k−1)を満たすkを上記通信状態として決定することとしてもよい。
【0012】
上記通信状態決定部は、上記送信レートと上記送信レートにより上記第1の通信状態測定装置と上記第2の通信状態測定装置との間で上記実ネットワークを介して行われた通信の状態とが統計処理されて得られた統計データに基づいて、上記通信状態を決定することとしてもよい。
【0013】
上記通信状態決定部は、上記第1の通信状態測定装置と上記第2の通信状態測定装置との間で上記実ネットワークを介して行われる通信の上記送信レートが段階的に上昇する場合に、上記段階的に上昇する上記送信レートをS”(0≦k≦n−1)、上記シミュレーションエンジンから要求された上記送信レートをS’、上記送信レートS”0,2,…,n−1に対応する受信レートの平均値をR”1,2,…,nとし、S”≦S’<S”k+1となるkを見つけ、係数αを式(1)により求め、
α=1−(S’−S”)/(S”k+1−S”) …(1)
S’に対する受信レートの平均値R’を、式(2)を用いて計算し、
R’=α・R”+(1−α)・R”k+1 …(2)
S’に対する分散値σ’を計算し、R’とσ’とに基づく正規分布乱数を発生させ、発生させた正規分布乱数に基づいて送信レートを求め、求めた上記送信レートに対応する通信の状態を上記通信状態として決定することとしてもよい。
【0014】
また、本発明の別の実施形態によれば、送信レートと上記送信レートにより第1の通信状態測定装置と第2の通信状態測定装置との間で実ネットワークを介して行われる通信の状態とに基づいて、シミュレーションエンジンから要求された送信レートに応じた通信状態を決定するステップと、上記通信状態に基づいて、データを生成することによりトラヒックを発生させるステップと、上記データを含むパケットを生成するステップと、上記パケットを他の通信装置に送信するステップと、を含む、通信方法が提供される。
【0015】
また、本発明の別の実施形態によれば、コンピュータを、送信レートと上記送信レートにより第1の通信状態測定装置と第2の通信状態測定装置との間で実ネットワークを介して行われる通信の状態とに基づいて、シミュレーションエンジンから要求された送信レートに応じた通信状態を決定する通信状態決定部と、上記通信状態決定部により決定された上記通信状態に基づいて、データを生成することによりトラヒックを発生させるトラヒック発生部と、上記トラヒック発生部により生成されたデータを含むパケットを生成するプロトコル処理部と、上記プロトコル処理部により生成された上記パケットを他の通信装置に送信する通信部と、を備える、通信装置として機能させるためのプログラムが提供される。
【発明の効果】
【0016】
以上説明したように、本発明によれば、実環境を忠実に再現する必要なく、試験パケットを流すことにより発生するトラヒックの影響を受けずにネットワークの状態を計算することができる。
【図面の簡単な説明】
【0017】
【図1】本実施形態に係る通信状態測定装置の使用例を示す図である。
【図2】本実施形態に係るネットワークシミュレータの構成例を示す図である。
【図3】第1の通信状態決定手法を説明するためのサンプルグラフである。
【図4】第1の通信状態決定手法の流れを示すフローチャートである。
【図5】通信状態設定部の機能の詳細を説明するための図である。
【発明を実施するための形態】
【0018】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付すことにより重複説明を省略する。
【0019】
また、以下の順序にしたがって当該「発明を実施するための形態」を説明する。
1.実施形態
1−1.通信状態を測定する装置の使用例
1−2.ネットワークシミュレータの構成例
1−2−1. 第1の通信状態決定手法
1−2−2. 第2の通信状態決定手法
1−2−3. 第1の通信状態決定手法の詳細
1−2−3−1.データの選択方法
1−2−3−2.データの適用手法
1−2−3−3.どのような測定データを取得しておくのが好ましいか
1−2−4.第2の通信状態決定手法の詳細
1−2−4−1.データの選択と適用方法
1−3.通信状態設定部の機能の詳細
2.変形例
3.まとめ
【0020】
<1.実施形態>
[1−1.通信状態を測定する装置の使用例]
【0021】
本実施形態は、ネットワークシミュレーション方式に関し、特に、パケットレベルでトラヒックを制御し、通信状態を制御するものに関する。より具体的には、仮想的なネットワークをコンピュータ上に再現するシミュレーションソフトウェアにおいて、実ネットワーク環境での測定結果に基づいて、ネットワーク状態を変化させることで、現実のネットワークに近いネットワークシミュレーションを容易に実現することができる。
【0022】
図1は、通信状態を測定する装置の使用例を示す図である。図1に示すように、ネットワークシミュレーションに先立ち、計算対象となる現実のネットワークであるネットワークNに2台の通信状態測定装置100である通信状態測定装置100A、100Bを接続して動作させる。通信状態測定装置100AとネットワークNとは全二重リンクD1により接続し、通信状態測定装置100BとネットワークNとは全二重リンクD2により接続する。以下において、通信状態測定装置100Aと通信状態測定装置100Bとを特に区別しない場合には、通信状態測定装置100と記載することにする。
【0023】
通信状態測定装置100Aと通信状態測定装置100Bとは、全二重リンクD1、全二重リンクD2およびネットワークNを介して互いにエンド・ツー・エンドの通信を行い、通信状態測定装置100Aまたは通信状態測定装置100Bは、その通信を行っている場合における通信状態を測定する。測定対象となる通信状態としては、パケットの受信レート、パケット遅延量、パケットロス率、バーストパケットロス率、パケットの順序誤り率、重複パケット率などが挙げられるが、通信状態には、少なくともパケットの受信レートが含まれる。これらの通信状態は、測定された時刻とともに通信状態測定装置100Aまたは通信状態測定装置100Bにより取得される。
【0024】
通信状態測定装置100Aは、通信状態測定装置100Bに対してUDP(User Datagram Protocol)パケットなどにより構成される試験パケットを伝送する。そのとき、通信状態測定装置100Aによる試験用パケットの送信レートを徐々に増加させながら、通信状態測定装置100Bにおける試験用パケットの受信レートを測定する。試験用パケットはどのような形式のパケットでもよい。通信状態測定装置100Aから伝送された試験用パケットを通信状態測定装置100Bにおいてどの程度まで受信できるかを把握するため、通信状態測定装置100は通信状態測定装置100Bが受信できる最大の受信レートである最大受信レートを測定する。最大受信レートは、例えば、通信状態測定装置100Aによる試験用パケットの送信レートが増加されているにも関わらず、通信状態測定装置100Bによる試験用パケットの受信レートが下がった場合に、受信レートが下がる直前の受信レートが最大受信レートとして測定される。
【0025】
次に、通信状態測定装置100Aは、ゼロ(無通信状態)から最大受信レートまで、離散的に送信レートを変化させながら試験用パケットを通信状態測定装置100Bに送信し、通信状態測定装置100は、各送信レートについて通信状態を所定時間測定する(例えば、1Mbps単位で各送信レートについて180秒間測定する)。この測定により、通信状態測定装置100は、送信レートと通信状態とが対応付けられた測定データを取得することができる。
【0026】
次に、通信状態測定装置100は、測定データを統計処理することによって測定データを分類する。例えば、通信状態測定装置100は、パケットロス率やパケット遅延量から、測定データが、ネットワークNが輻輳状態にあるときに取得したものか、ネットワークNが輻輳状態にないときに取得したものかを判断して分類する。より具体的には、例えば、通信状態測定装置100は、パケットロス率が所定値を超えている場合にネットワークNが輻輳状態であると判断することができる。また、例えば、通信状態測定装置100は、パケット遅延量が所定値を超えている場合にネットワークNが輻輳状態であると判断することができる。
【0027】
[1−2.ネットワークシミュレータの構成例]
図2は、本実施形態に係るネットワークシミュレータの構成例を示す図である。図2に示すように、ネットワークシミュレータは、2台の通信装置200である通信装置200A、200Bと、通信装置200Aと通信装置200Bとを結ぶ全二重リンクD3と、シミュレーションエンジン300とを備えるものである。以下において、通信装置200Aと通信装置200Bとを特に区別しない場合には、通信装置200と記載することにする。通信装置200は、トラヒック発生部210と、プロトコル処理部220と、通信状態設定部230と、通信部240とを備えるものである。通信状態設定部230は、通信状態決定部の一例として機能するものである。
【0028】
トラヒック発生部210は、通信状態設定部230により決定された通信状態に基づいて、通信装置200Aと通信装置200Bとの間で通信されるデータを生成することによりトラヒックを発生させる機能を有する。プロトコル処理部220は、通信装置200Aと通信装置200Bとの間における通信プロトコルにしたがった処理を行う機能を有する。具体的には、トラヒック発生部210により生成されたデータを含むパケットを生成するなどといった処理が想定される。トラヒック発生部210と、プロトコル処理部220と、通信状態設定部230とは、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)などにより構成され、通信装置200が備える図示しない記憶部により記憶されているプログラムがCPUによりRAMに展開されて実行されることによって実現される。通信部240は、例えば、通信装置により構成される。
【0029】
通信状態測定装置100により取得された測定データは、オペレータから通信装置200に備えられた図示しない入力部により入力が受け付けられ、通信装置200に備えられた図示しない記憶部によって記憶される。また、通信状態測定装置100により取得された測定データは、通信状態測定装置100から通信回線を介して通信装置200に送信され、通信装置200に備えられた図示しない記憶部によって記憶されることとしてもよい。通信装置200に備えられた図示しない記憶部によって記憶された測定データは、通信状態設定部230により使用される。
【0030】
オペレータからの指示などにより、シミュレーションエンジン300によるシミュレーションが開始されると、シミュレーションエンジン300が要求する送信レートが通信装置200Aまたは通信装置200Bに通知される。シミュレーションエンジン300が要求する送信レートは、オペレータからの指示によりリアルタイムにシミュレーションエンジン300に入力されてもよいし、時間の経過とともにどのように変化させるかについてあらかじめシミュレーションエンジン300に登録されていてもよい。
【0031】
シミュレーションエンジン300から送信レートが要求されると、シミュレーションエンジン300から要求された送信レートに応じて、通信装置200Aまたは通信装置200Bにおいて通信状態が決定され、決定された通信状態にしたがって通信装置200Aと通信装置200Bとの間において全二重リンクD3を介した通信が行われる。シミュレーションエンジン300から要求される送信レートは、例えば、通信装置200Aまたは通信装置200Bの通信状態設定部230に専用線を介して直接出力されることにより通知される。通信状態設定部230は、シミュレーションエンジン300から要求された送信レートに応じて、通信状態測定装置100により取得された測定データに基づいて通信状態を決定するが、通信状態決定手法としては、以下の2つの手法を提案することが可能である。
【0032】
[1−2−1.第1の通信状態決定手法]
第1の通信状態決定手法は、シミュレーションエンジン300から要求された送信レートに近い送信レートで測定された測定データの通信状態を通信装置200Aと通信装置200Bとの間における通信状態として決定する手法である。この手法では、細かい送信レート間隔で予め測定データを取得しておかなければならないが、決定した通信状態間において時間的な相関が取れているという利点がある。
【0033】
[1−2−2.第2の通信状態決定手法]
第2の通信状態決定手法は、測定データからの統計をとり、シミュレーションエンジン300から要求された送信レートに合わせて統計データを適用する手法である。この手法では、通信状態間において時間的な相関が取れていることは保証できないが、離散的に取得されている測定データと測定データとの間の通信状態を計算しやすいという利点がある。
【0034】
[1−2−3.第1の通信状態決定手法の詳細]
[1−2−3−1.データの選択方法]
通信状態設定部230は、シミュレーションエンジン300から要求された送信レートに基づいて、通信状態測定装置100により取得された測定データから適切な測定データを選択する。シミュレーションエンジン300から要求された送信レートよりも高い送信レートで測定された測定データを選択するのが基本となる。ここでは、選択された測定データをステージと呼び、その選択手法を、図を用いて説明する。図3に第1の通信状態決定手法を説明するためのサンプルグラフを、図4に第1の通信状態決定手法の流れを示すフローチャートを示す。なお、図中の記号の意味は以下のとおりである。
【0035】
S’:シミュレーションエンジン300から要求された送信レート
S”0,1,2,…,n:通信状態測定装置100における測定データ取得時の送信レート
(S”=0,S”<S”k+1
α:変化係数(0<α<1.0)
T:現在のステージ番号
【0036】
図4に示す処理(ステップS101〜ステップS112)が開始される前に、通信状態設定部230によりTが初期化される。通信状態設定部230は、シミュレーションエンジン300から送信レートS’が要求されるたびに、図4に示す処理(ステップS101〜ステップS112)が実行される。通信状態設定部230は、図4に示す処理(ステップS101〜ステップS112)の実行が完了した時点で保持しているTを、次に図4に示す処理(ステップS101〜ステップS112)を実行する際に使用することとする。
【0037】
通信状態設定部230は、シミュレーションエンジン300から送信レートS’が要求されると、n−1をkに代入し(ステップS101)、Loop1(ステップS102〜ステップS104)に示された処理を行う。通信状態設定部230は、Loop1に示された処理において、S’>S”またはk≦0を満たすまでステップS103に示された処理を行う。ステップS103では、通信状態設定部230は、k−1をkに代入する(ステップS103)。Loop1に示された処理を抜けると、通信状態設定部230は、k+1をkに代入する(ステップS105)。
【0038】
通信状態設定部230は、kがTよりも大きいか否かを判断する(ステップS106)。通信状態設定部230は、kがTよりも大きいと判断した場合には(ステップS106で「Yes」)、ステップS112に進む。通信状態設定部230は、kがT以下であると判断した場合には(ステップS106で「No」)、1をkに代入し(ステップS107)、Loop2(ステップS108〜ステップS110)に示された処理を行う。通信状態設定部230は、Loop2に示された処理において、S’<S”−α(S”−S”k−1)またはk≧nを満たすまでステップS109に示された処理を行う。ステップS109では、通信状態設定部230は、k+1をkに代入する(ステップS109)。
【0039】
Loop2に示された処理を抜けると、通信状態設定部230は、k+1をkに代入する(ステップS105)。通信状態設定部230は、kがTよりも小さいか否かを判断する(ステップS111)。通信状態設定部230は、kがTよりも小さいと判断した場合には(ステップS111で「Yes」)、ステップS112に進む。通信状態設定部230は、kがT以上であると判断した場合には(ステップS111で「No」)、処理を終了する。ステップS112に進んだ場合には、通信状態設定部230は、kをTに代入し、処理を終了する。
【0040】
[1−2−3−2.データの適用手法]
通信状態設定部230は、選択した測定データのうち、送信レートに関してはそのまま送信レートとして適用するのではなく、最大送信レートとして設定を行う。
【0041】
[1−2−3−3.どのような測定データを取得しておくのが好ましいか]
通信状態測定装置100において取得した測定データがほぼそのままシミュレーションに使用されるため、通信状態測定装置100は、様々な条件で測定を行っておくのが好ましい。例えば、通信状態測定装置100は、細かい送信レート間隔で測定するだけではなく、曜日や時間によるネットワーク状態の変化も考慮したデータを作成する。ただし、データの切り替わりの際は、時間的な連続性がなくなることに留意する。
【0042】
[1−2−4.第2の通信状態決定手法の詳細]
[1−2−4−1.データの選択と適用方法]
通信状態測定装置100は、あらかじめ各送信レートに対する通信状態の測定結果を統計処理し、通信状態の平均値と分散値とを統計値として計算しておく。シミュレーションの際は、通信状態設定部230が、シミュレーションエンジン300から要求された送信レートに基づいて、測定結果の統計値に対して線形補間を行って得た値を使用する。ここでは、例として、通信状態測定装置100が、受信レートを統計処理する例を示す。
【0043】
シミュレーションエンジン300から要求された送信レートをS’、送信レートS”0,1,…,n−1に対応する受信レートの平均値をR”0,1,…,n−1とする。
【0044】
通信状態設定部230は、S”≦S’<S”k+1となるkを見つけ、係数αを、式(1)を用いて計算する。
【0045】
α=1−(S’−S”)/(S”k+1−S”) …(1)
【0046】
次に、通信状態設定部230は、S’に対する受信レートの平均値R’を、式(2)を用いて計算する。
【0047】
R’=α・R”+(1−α)・R”k+1 …(2)
【0048】
同様に、通信状態設定部230は、S’に対する分散値σ’を計算し、R’とσ’とに基づく正規分布乱数を発生させ、発生させた正規分布乱数に基づいて送信レートSを求める。通信状態設定部230は、このような手法による送信レートSの算出を所定時間ごとに行い、所定時間ごとに算出した送信レートSによりトラヒック発生部210により使用される送信レートを更新する。
【0049】
[1−3.通信状態設定部の機能の詳細]
基本ポリシーは以下のとおりである。
リーキーバケツを用いて、送信レートの上限を設定する
バケツにあるパケットの破棄、順序入れ替え、重複パケットの作成を行う
【0050】
ここで、重要なのは、バケツにパケットが溜まることで測定結果とは無関係にパケットロスが生じてしまうことを防止することである。そこで、図5は、通信状態設定部の機能の詳細を説明するための図である。図5に示すように、バケツサイズが無限(実際には、シミュレータを動作させる装置に依存して有限)のリーキーバケツを考え、レート(流出量)の設定、バケツ内のパケットの破棄、順序入れ替え、重複パケット作成のみを行う。これにより、パケット遅延量は自動的に決定される。
【0051】
<2.変形例>
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【0052】
例えば、本実施形態では、測定対象となる通信状態は、送信レートを0から最大受信レートまで離散的に変化させたときに測定されるものとしたが、これに限定されない。例えば、送信レートを0Mbpsから10Mbpsまで、10Mbpsから20Mbpsまで、20Mbpsから30Mbpsまで変化させ、変化の瞬間の通信状態を測定して使用することとしてもよい。このように測定された通信状態をシミュレーションに使用することでより、シミュレーションの精度を高めることができる。
【0053】
また、時刻ごとに測定された通信状態や、曜日ごとに測定された通信状態などを通信状態として使用することとしてもよい。これにより、日時による通信状態の違いを反映させたシミュレーションを行うことができる。
【0054】
<3.まとめ>
本実施形態によれば、実環境を忠実に再現する必要なく、試験パケットを流すことにより発生するトラヒックの影響を受けずにネットワークの状態を計算することが可能である。また、本実施形態によれば、複雑かつ予測困難なネットワークを介した通信に関する測定データをあらかじめ取得することで、以下のような効果を得ることができる。
簡単な実装でネットワークシミュレーションを行うことができる
下位のレイヤーに相当するネットワークレイヤーに依存しない実装にできる
再現性の高いシミュレーションを行うことができる
【符号の説明】
【0055】
100 通信状態測定装置
200 通信装置
210 トラヒック発生部
220 プロトコル処理部
230 通信状態設定部
240 通信部
300 シミュレーションエンジン




【特許請求の範囲】
【請求項1】
送信レートと前記送信レートにより第1の通信状態測定装置と第2の通信状態測定装置との間で実ネットワークを介して行われる通信の状態とに基づいて、シミュレーションエンジンから要求された送信レートに応じた通信状態を決定する通信状態決定部と、
前記通信状態決定部により決定された前記通信状態に基づいて、データを生成することによりトラヒックを発生させるトラヒック発生部と、
前記トラヒック発生部により生成されたデータを含むパケットを生成するプロトコル処理部と、
前記プロトコル処理部により生成された前記パケットを他の通信装置に送信する通信部と、
を備える、通信装置。
【請求項2】
前記通信状態決定部は、
前記シミュレーションエンジンから要求された前記送信レートに近い送信レートにより前記第1の通信状態測定装置と前記第2の通信状態測定装置との間で前記実ネットワークを介して行われた通信の状態を前記通信状態として決定する、
請求項1に記載の通信装置。
【請求項3】
前記通信状態決定部は、
前記第1の通信状態測定装置と前記第2の通信状態測定装置との間で前記実ネットワークを介して行われる通信の前記送信レートが段階的に上昇する場合に、前記段階的に上昇する前記送信レートをS”(0≦k≦n−1)、前記シミュレーションエンジンから要求された前記送信レートS’とし、kをn−1から1つずつ減算したときに、初めてS’>S”を満たすkを求め、求めたkに1を加算したちでkを更新し、更新後のkにて表されるS”を前記通信状態として決定する、
請求項2に記載の通信装置。
【請求項4】
前記通信状態決定部は、
前記段階的に上昇する送信レートをS”(0≦k≦n−1)、前記シミュレーションエンジンから要求された前記送信レートをS’、所定の係数をαとし、kを1から1つずつ加算したときに、初めてS’<S”−α(S”−S”k−1)を満たすkを前記通信状態として決定する、
請求項3に記載の通信装置。
【請求項5】
前記通信状態決定部は、
前記送信レートと前記送信レートにより前記第1の通信状態測定装置と前記第2の通信状態測定装置との間で前記実ネットワークを介して行われた通信の状態とが統計処理されて得られた統計データに基づいて、前記通信状態を決定する、
請求項1に記載の通信装置。
【請求項6】
前記通信状態決定部は、
前記第1の通信状態測定装置と前記第2の通信状態測定装置との間で前記実ネットワークを介して行われる通信の前記送信レートが段階的に上昇する場合に、前記段階的に上昇する前記送信レートをS”(0≦k≦n−1)、前記シミュレーションエンジンから要求された前記送信レートをS’、前記送信レートS”0,2,…,n−1に対応する受信レートの平均値をR”1,2,…,nとし、S”≦S’<S”k+1となるkを見つけ、係数αを式(1)により求め、
α=1−(S’−S”)/(S”k+1−S”) …(1)
S’に対する受信レートの平均値R’を、式(2)を用いて計算し、
R’=α・R”+(1−α)・R”k+1 …(2)
S’に対する分散値σ’を計算し、R’とσ’とに基づく正規分布乱数を発生させ、発生させた正規分布乱数に基づいて送信レートを求め、求めた前記送信レートに対応する通信の状態を前記通信状態として決定する、
請求項5に記載の通信装置。
【請求項7】
送信レートと前記送信レートにより第1の通信状態測定装置と第2の通信状態測定装置との間で実ネットワークを介して行われる通信の状態とに基づいて、シミュレーションエンジンから要求された送信レートに応じた通信状態を決定するステップと、
前記通信状態に基づいて、データを生成することによりトラヒックを発生させるステップと、
前記データを含むパケットを生成するステップと、
前記パケットを他の通信装置に送信するステップと、
を含む、通信方法。
【請求項8】
コンピュータを、
送信レートと前記送信レートにより第1の通信状態測定装置と第2の通信状態測定装置との間で実ネットワークを介して行われる通信の状態とに基づいて、シミュレーションエンジンから要求された送信レートに応じた通信状態を決定する通信状態決定部と、
前記通信状態決定部により決定された前記通信状態に基づいて、データを生成することによりトラヒックを発生させるトラヒック発生部と、
前記トラヒック発生部により生成されたデータを含むパケットを生成するプロトコル処理部と、
前記プロトコル処理部により生成された前記パケットを他の通信装置に送信する通信部と、
を備える、通信装置として機能させるためのプログラム。



【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2011−217060(P2011−217060A)
【公開日】平成23年10月27日(2011.10.27)
【国際特許分類】
【出願番号】特願2010−82339(P2010−82339)
【出願日】平成22年3月31日(2010.3.31)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】