(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
近年、インターネットの利用において、可用帯域は様々な通信アプリケーションにとって重要な指標となっている。例えば、映像ストリーミングでは、通信端末間で可用帯域を監視することにより、映像データのコーデックや送信ビットレートを可用帯域に応じて動的に制御し、通信ネットワークの状況に適した映像配信を行うことができる。
【0003】
通信ネットワークのエンドツーエンド(end to end)の可用帯域を測定する技術として、例えば、試験パケット(UDP(User Datagram Protocol)パケット)を通信ネットワーク内に送信し、試験パケットが経験する遅延の変動等(キューイング遅延に相当)を監視し、この監視結果に基づいて可用帯域を推定するアクティブ計測法がある。代表的なアクティブ計測法の例としてpathChirp法が知られている(例えば非特許文献1参照)。
【0004】
Pathchirp法では、連続する試験パケット群(以下、パケットトレインと称する)を、送信端末から、試験パケットの送信間隔が指数関数的に減少するように調節して、受信端末へ送信する(試験パケットの送信レートは徐々に増加する)。そして、受信端末側で計算される各試験パケットのキューイング遅延の増加傾向を分析することにより、可用帯域を推定する。具体的には、試験パケットの送信レートが可用帯域を超えたところで試験パケットのキューイング遅延が増加する特性を利用するものであって、キューイング遅延の増加が始まるポイント(以下、増加ポイントと称する)を検出することにより、増加ポイントに該当する試験パケットの送信レートに基づいて可用帯域を推定している。
【0005】
上記したPathchirp法以外の可用帯域測定技術として、観測されるパケット遅延の傾向に基づき、次に送信する試験パケットの送信レート(送信間隔)を動的に調節し、可用帯域を絞り込む方法として、Pathload法(例えば非特許文献2参照)やIGI法(例えば非特許文献3参照)が知られている。また、試験パケットの送信間隔ではなくパケットサイズを変化させたり、又は試験パケットの送信間隔とパケットサイズの両方を変化させたりすることで、試験パケットの送信レートを調整する方法が知られている(例えば非特許文献4参照)。
【発明を実施するための形態】
【0017】
以下、図面を参照し、本発明の実施形態について説明する。
図1は、本発明の一実施形態に係る可用帯域測定システム1の概念図である。
図1において、可用帯域測定システム1は送信端末10と受信端末20を備える。送信端末10は、パケットトレインを受信端末20へ送信する。パケットトレイン内の試験パケットの送信間隔は徐々に減少する(言い換えれば、徐々に送信レートが増大する)。受信端末20は、パケットトレインを受信し、パケットトレイン内の各試験パケットのキューイング遅延の増加傾向を分析することにより、可用帯域を推定する。
【0018】
図2は、本実施形態に係る可用帯域測定方法を説明するためのグラフ図である。
図2において、横軸は試験パケット番号を示し、縦軸は試験パケットのキューイング遅延(秒)を示す。パケットトレイン内の試験パケットの送信レートは徐々に高くなる。その試験パケットのキューイング遅延の増加が始まるポイント(増加ポイント)に該当する試験パケットの送信レートを可用帯域として推定する。このため、増加ポイントを精度よく検出することが、可用帯域の測定精度の向上につながる。
【0019】
図3は、本実施形態に係る試験パケットの送信レートを説明するためのグラフ図である。
図3において、横軸は試験パケット番号を示し、縦軸は試験パケットのキューイング遅延(秒)を示す。
図3中の領域101,102,103から成る領域は、可用帯域の推定範囲に対応する。これら領域101,102,103のうち、領域102は、増加ポイントの検出対象領域として特に着目する領域である。このため、領域102に存在する試験パケットの送信レートの増加度合いを、他の領域101,103よりも低くする。例えば、領域102に存在する試験パケットの送信レートの増加度合いは、増加ポイントの検出精度を十分に保つことができる値とする。一方、領域102以外の領域101,103に存在する試験パケットの送信レートの増加度合いは、領域102の増加度合いに比して大きく、且つ、キューイング遅延の増加傾向を判断できる値とする。送信レートの増加度合いとして、例えば増変化速度が挙げられる。
【0020】
図4は、
図1に示す送信端末10の構成例を示すブロック図である。
図4において、送信端末10は送信レート算出部11と送信部12と着目区間更新部13を備える。送信レート算出部11は、パケットトレイン内の各試験パケットの送信レートを算出する。送信部12は、送信レート算出部11により算出された送信レートで各試験パケットを受信端末20へ送信する。着目区間更新部13は、受信端末20で判定された増加ポイントが着目区間に存在しない場合に、該増加ポイントから推定された可用帯域推定値に基づいて着目区間を変更する。着目区間とは、可用帯域の推定範囲のうち一部であって、増加ポイントの検出対象区間として特に着目する区間である。該着目区間は、
図3の領域102に相当する。
【0021】
図5は、
図1に示す受信端末20の構成例を示すブロック図である。
図5において、受信端末20は送信レート算出部11と着目区間更新部13と受信部21と増加ポイント判定部22と可用帯域推定部23を備える。受信端末20の送信レート算出部11と着目区間更新部13は、送信端末10のものと同じ機能を有する。これは、送信端末10と受信端末20が、パケットトレイン内の各試験パケットの送信レートを共通に認識するためである。
【0022】
受信部21は、送信端末10から送信された試験パケットを受信する。また、受信部21は、各試験パケットのキューイング遅延を取得する。増加ポイント判定部22は、受信部21により取得された各試験パケットのキューイング遅延に基づいて、増加ポイントを判定する。可用帯域推定部23は、増加ポイント判定部22による判定結果の増加ポイントに該当する試験パケットの送信レートを、可用帯域推定値とする。試験パケットの送信レートは、受信部21の送信レート算出部11から取得される。
【0023】
次に
図6を参照して、本実施形態に係る可用帯域測定システム1の動作を説明する。
図6は、本実施形態に係る可用帯域測定方法の手順を示すフローチャートである。
【0024】
試験パケットの送信レートを変化させる仕方として、(1)試験パケットの送信間隔を変化させる、(2)試験パケットのパケットサイズを変化させる、(3)試験パケットの送信間隔とパケットサイズの両方を変化させる、ことが挙げられる。ここでは、(1)試験パケットの送信間隔を変化させることを例に挙げて説明する。
【0025】
また、ここでは、
図3に例示されるように、可用帯域の推定範囲を3つの領域101,102,103に分け、領域101,102,103毎にそれぞれの送信レートの増加度合いを使用する。
【0026】
(ステップS1) 送信端末10及び受信端末20のそれぞれにおいて、送信レート算出部11が各試験パケットの送信レートを算出する。この送信レート算出方法を以下に説明する。送信端末10及び受信端末20の各送信レート算出部11は同じ送信レート算出処理を行う。このため、以下の説明では、送信端末10と受信端末20を区別せずに、送信レート算出部11が行う送信レート算出処理を説明する。
【0027】
送信レート算出部11には、予め、可用帯域の推定範囲と、2種類の拡散係数γ
1、γ
2が設定される。可用帯域の推定範囲は、上限値u(ビット/秒)と下限値l(ビット/秒)で定義される。拡散係数γ
1、γ
2の関係は「γ
1>γ
2」である。例えば、「γ
1=1.2、γ
2=1.1」といった値で設定される。また、試験パケットのパケットサイズP(ビット)が予め設定される。試験パケット番号p_noは1から「N+1」までの連続した自然数である。
【0028】
送信間隔をδ
i(秒)とする(但し、i=1,2,・・・,N)。送信間隔δ
iは、パケットトレイン内における、i番目の試験パケットと「i+1」番目の試験パケットの間隔である。また、送信レートをC
i(ビット/秒)とする。送信間隔δ
iは次式で算出される。
δ
i=P/C
i−1
【0029】
まず、送信レート算出部11は、次式により、領域101,102,103の分割ポイントn,2nを算出する。
可用帯域の推定範囲の上限値uと下限値lの関係は、
l×(γ
1)
n(γ
2)
n(γ
1)
n=u
と定義する。これにより、
n=integer[log(u/l)/log((γ
1)
2(γ
2))]
となる。但し、integer[]は[]内の数値の整数部分を表す。
【0030】
次いで、送信レート算出部11は、領域101,102,103毎に、以下の式により送信レートC
iを算出する。
(1)「1≦i≦n」の場合(領域101)。
送信レートC
i=l×(γ
1)
(i−1)
(2)「n<i≦2n」の場合(領域102:着目区間)。
送信レートC
i=l×(γ
1)
n(γ
2)
(i−n)
(3)「2n<i」の場合(領域103)。
送信レートC
i=l×(γ
1)
n(γ
2)
n(γ
1)
(i−2n)
【0031】
上記送信レートC
iの算出式において、拡散係数γ
1、γ
2の関係「γ
1>γ
2」により、着目区間である領域102では、他の区間(領域101,103)よりも、送信レートC
iの増加度合いが小さい。これにより、着目区間(領域102)における増加ポイントの検出精度を、他の区間(領域101,103)よりも上げることができる。また、着目区間(領域102)における増加ポイントの検出精度を十分なものとする一方で、他の区間(領域101,103)の検出精度を、キューイング遅延の増加傾向を判断できる程度に下げることにより、試験パケットの効率的な使用による試験パケット数の削減を図ることができる。
【0032】
(ステップS2) 送信端末10の送信部12が、送信レート算出部11により算出された送信レートを使用して算出された送信間隔で各試験パケットを受信端末20へ送信する。各試験パケットには、送信時刻情報s
jが付加される(j=1,2,・・・,N+1)。試験パケット番号「p_no=j」の試験パケットの送信時刻情報がs
jである。但し、「N=3n」である。
【0033】
(ステップS3) 受信端末20が、送信端末10から送信された試験パケットを受信し、増加ポイントの判定を行う。この増加ポイント判定方法を以下に説明する。
【0034】
まず、受信端末20の受信部21が、送信端末10から送信された試験パケットを受信し、各試験パケットのキューイング遅延を取得する。受信部21は、次式により、各試験パケットのキューイング遅延を算出する。
q
i=(r
i+1−r
1)−(s
i+1−s
1)
但し、q
iは、「i+1」番目の試験パケットのキューイング遅延(秒)である(i=1,2,・・・,N)。r
jは、試験パケット番号「p_no=j」の試験パケットの受信時刻情報である(j=1,2,・・・,N+1)。受信時刻情報r
jは、受信部21により試験パケット受信時に記録される。
これにより、
図3に例示される、試験パケット番号に対するキューイング遅延のグラフデータが取得される。
【0035】
次いで、受信端末20の増加ポイント判定部22が、受信部21により取得された各試験パケットのキューイング遅延に基づいて、増加ポイントを判定する。この判定にはPathchirp法の判定条件を利用できる。この判定条件を以下に示す。
[判定条件]
「i+1」番目以降のキューイング遅延は、「i+1」番目以降のキューイング遅延の最大値の「1/d」倍よりも大きい。但し、dは、1よりも大きい定数であり、予め設定される。Pathchirp法では、デフォルト値として「d=1.5」が使用される。
この判定条件によれば、キューイング遅延が最大値の「1/d」倍以下に低下するポイントにおいて、キューイング遅延の増加傾向は継続していないと判定される。
【0036】
(ステップS4) 受信端末20の可用帯域推定部23が、増加ポイント判定部22による判定結果の増加ポイントに該当する試験パケットの送信レートを、可用帯域推定値とする。試験パケットの送信レートは、受信部21の送信レート算出部11から取得される。
【0037】
(ステップS5) 送信端末10及び受信端末20のそれぞれにおいて、着目区間更新部13が、ステップS4で取得された可用帯域推定値に対応する増加ポイントが着目区間内に存在するかを判断する。可用帯域推定値は、受信端末20から送信端末10へ直接的に通知されてもよく、又は、受信端末20から他の装置や人を介して送信端末10へ通知されてもよい。
【0038】
ステップS5の判断の結果、可用帯域推定値が着目区間内に存在する場合にはステップS6へ進み、可用帯域推定値が着目区間内に存在しない場合にはステップS7へ進む。
【0039】
(ステップS6) 受信端末20は、ステップS4で取得された可用帯域推定値を出力する。例えば、受信端末20の表示画面上に可用帯域推定値を表示したり、又は、特定の宛先へ電子メール等で可用帯域推定値を送信したりする。
【0040】
(ステップS7) 送信端末10及び受信端末20のそれぞれにおいて、着目区間更新部13が、ステップS4で取得された可用帯域推定値に基づいて着目区間を変更する。この着目区間更新方法を以下に説明する。送信端末10及び受信端末20の各着目区間更新部13は同じ着目区間更新処理を行う。このため、以下の説明では、送信端末10と受信端末20を区別せずに、着目区間更新部13が行う着目区間更新処理を説明する。
【0041】
着目区間の変更の仕方の例として、ここでは、可用帯域の推定範囲の上限値uと下限値lを変更する。着目区間更新部13は、可用帯域推定値に対応する増加ポイントの位置に応じて、以下の式により、可用帯域の推定範囲の上限値uと下限値lを算出する。
【0042】
更新前の着目区間は「n<i≦2n」の範囲である。可用帯域推定値に対応する増加ポイントを「i=x」番目のポイント、可用帯域推定値をC
xとする。
【0043】
(1)可用帯域推定値C
xが更新前の下限値lに近接している場合。
この場合、実際の可用帯域は更新前の下限値lよりも低い可能性がある。このため、次式により下限値lおよび上限値uを更新する。
更新後の下限値l=l/((γ
1)
n(γ
2)
n)
更新後の上限値u=l×(γ
1)
n
【0044】
(2)可用帯域推定値C
xが更新前の上限値uに近接している場合。
この場合、実際の可用帯域は更新前の上限値uよりも高い可能性がある。このため、次式により下限値lおよび上限値uを更新する。
更新後の下限値l=u/((γ
1)
n)
更新後の上限値u=u×(γ
1)
n(γ
2)
n
【0045】
(3)上記(1),(2)以外の場合。
この場合、可用帯域推定値C
xが可用帯域の推定範囲の中心に位置するように、次式により下限値lおよび上限値uを更新する。
更新後の下限値l=C
x/((γ
1)
n(γ
2)
n/2)
更新後の上限値u=C
x×(γ
1)
n(γ
2)
n/2
【0046】
着目区間更新部13は、上記式により算出した更新後の上限値uと下限値lを用いて、新たな可用帯域の推定範囲を定義する。これにより、着目区間が変更される。
【0047】
ステップS7の後、ステップS1に戻り送信レートが再算出され、再算出された送信レートで試験パケットの再送信が行われ、可用帯域が再推定される。
【0048】
上述した実施形態によれば、可用帯域の推定に重要な増加ポイントの検出に注力することによって、可用帯域の推定精度を向上させると共に、試験パケットの効率的な使用による試験パケット数の削減を図ることができる。
【0049】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【0050】
例えば、上述した実施形態では、試験パケットの送信レートを変化させる仕方として、試験パケットの送信間隔を変化させることを例に挙げて説明したが、試験パケットのパケットサイズを変化させる場合、又は、試験パケットの送信間隔とパケットサイズの両方を変化させる場合にも適用可能であり、同様に上述した効果が得られる。なお、試験パケットのパケットサイズは、送信レートを送信間隔で除算することにより、容易に計算できる。
【0051】
また、上述した実施形態では、送信端末10及び受信端末20の両方に、送信レート算出部11及び着目区間更新部13を設けたが、いずれか一方に設けるようにしてもよい。例えば、送信端末10にのみ送信レート算出部11及び着目区間更新部13を設け、各試験パケットの送信レートを送信端末10から受信端末20へ通知してもよい。又は、送信端末10にのみ送信レート算出部11を設け、また、受信端末20にのみ着目区間更新部13を設け、各試験パケットの送信レートを送信端末10から受信端末20へ通知し、また、着目区間の更新情報を受信端末20から送信端末10へ通知するようにしてもよい。
【0052】
また、送信レート算出部11及び着目区間更新部13を送信端末10及び受信端末20とは独立の装置として設け、該装置から送信端末10及び受信端末20へ各試験パケットの送信レートを通知してもよい。
【0053】
また、送信端末10、受信端末20として、スマートフォンやタブレット型のコンピュータ(タブレットPC)等の携帯通信端末装置、又は、据置き型の通信端末装置(例えば、据置き型のパーソナルコンピュータ等)であってもよい。
【0054】
また、上述した実施形態では、通信端末間(通信ネットワークのエンドツーエンド)の可用帯域を測定する場合を例に挙げたが、通信中継装置間や、通信端末と通信中継装置間の可用帯域を測定する場合にも同様に適用可能である。
【0055】
また、
図6に示す各ステップを実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、可用帯域測定処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
【0056】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0057】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。