(57)【要約】【課題】  通信ネットワークでのファイル転送時間の高精度な推定を、少ないテストデータ転送量で行う。【解決手段】  テストデータ転送実行部１ｄが、通信ネットワーク３でのファイルの転送時間の推定に用いるテストデータの転送とその転送速度の測定を、予め定められたブロックサイズで予め定められた転送回数だけ繰り返し、さらに、順次、ブロックサイズを増やし転送回数を減らしながら、転送したテストデータの合計量が予め定められた閾値、例えば、推定対象のファイルのサイズのＹ％になるまで、テストデータの転送と転送速度の測定を繰り返し行い、結果算出部１ｅが、その測定結果から各ブロックサイズの転送での最大値と最小値を求め、求めた最大値と最小値のそれぞれの近似線を求め、それぞれの近似線が交差する点におけるテストデータの転送速度の測定結果を、転送対象のファイルの転送に必要な時間の推定値として算出する。【選択図】        図１
2007052621.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークでのファイルの転送に必要となる時間の推定値を算出する装置であって、
ファイル転送に先立ちテストデータの転送条件を設定する第１の手段と、
該第１の手段が設定した転送条件に従ってテストデータの転送を実行し当該テストデータの転送に要した時間を測定して記憶装置に記録する第２の手段と、
該第２の手段で記憶装置に記録したテストデータ転送所要時間を用いて、当該通信ネットワークでの実際のファイル転送に要する時間の推定値を算出する第３の手段とを有し、
上記第１の手段は、上記転送条件として、推定対象のファイルのサイズより小さいサイズと転送回数からなる第１〜第ｎの転送条件を有し、該第ｎの転送条件は第ｎ―１の転送条件におけるサイズと転送回数に比べてより大きなサイズとより少ない転送回数の組からなり、
上記第２の手段は、上記第１〜第ｎの転送条件に順次に従ってテストデータの転送と転送時間の測定を、転送したテストデータの合計サイズが予め定められた閾値になるまで繰り返し行い、各転送条件毎に測定したテストデータ転送所要時間を記憶装置に記録し、
上記第３の手段は、上記第２の手段が上記記憶装置に各転送条件毎に記録した各テストデータ転送所要時間を用いて上記推定対象のファイルの転送に必要な時間の推定値を算出する
ことを特徴とするファイル転送時間推定装置。
【請求項２】
請求項１に記載のファイル転送時間推定装置であって、
上記推定対象のファイルのサイズのＹ％を上記予め定められた閾値とし、
上記第２の手段は、上記第１〜第ｎの転送条件に順次に従ってテストデータの転送と転送時間の測定を、転送したテストデータの合計サイズが、上記推定対象のファイルのサイズのＹ％になるまで繰り返し行うことを特徴とするファイル転送時間推定装置。
【請求項３】
請求項１もしくは請求項２のいずれかに記載のファイル転送時間推定装置であって、
上記第３の手段は、上記第２の手段が上記記憶装置に各転送条件毎に記録した各テストデータ転送所要時間の最大値と最小値で規定される推定分布幅を求め、該各転送条件毎に求めた推定分布幅を用いて上記推定対象のファイルの転送に必要な時間の推定値を算出することを特徴とするファイル転送時間推定装置。
【請求項４】
請求項１もしくは請求項２のいずれかに記載のファイル転送時間推定装置であって、
上記第３の手段は、上記第２の手段が上記記憶装置に各転送条件毎に記録した各テストデータ転送所要時間に対して外れ値除外を行った残りの最大値と最小値で規定される推定分布幅を求め、該各転送条件毎に求めた推定分布幅を用いて上記推定対象のファイルの転送に必要な時間の推定値を算出することを特徴とするファイル転送時間推定装置。
【請求項５】
請求項３もしくは請求項４のいずれかに記載のファイル転送時間推定装置であって、
上記第３の手段は、
上記推定分布幅を規定する各転送条件毎のテストデータ転送所要時間の各最大値の近似線と各最小値の近似線を求め、求めた近似線の交点におけるテストデータ転送所要時間を上記推定対象のファイルの転送に必要な時間の推定値として算出することを特徴とするファイル転送時間推定装置。
【請求項６】
請求項５に記載のファイル転送時間推定装置であって、
上記第３の手段が求める上記近似線は、０．５次曲線もしくは１次直線、２次曲線のいずれかであることを特徴とするファイル転送時間推定装置。
【請求項７】
プログラムされたコンピュータによって通信ネットワークでのファイルの転送に必要となる時間の推定値を算出する方法であって、
推定対象のファイルのサイズより小さいサイズのテストブロックのファイル転送を予め定められた回数だけ繰り返し、各ファイル転送に要した時間を測定する第１のステップと、
該第１のステップで測定した各ファイル転送所要時間を第１の記憶装置に記録する第２のステップと、
上記第１の記憶装置に記録した各ファイル転送所要時間に対して外れ値除外を行った残りの最大値と最小値で規定される推定分布幅を求めて第２の記憶装置に記録する第３のステップと、
上記第１のステップから上記第３のステップまでの処理を順次に上記テストブロックのサイズを増やし上記回数を減らして繰り返す第４のステップと、
該第４のステップで繰り返された上記第１のステップでの転送テストブロックの合計サイズを計数し、計数した合計サイズが予め定められた閾値になれば上記第１のステップから上記第３のステップまでの処理を終了する第５のステップと、
該第５のステップでの終了処理の後、上記第２の記録装置に記録した各テストブロックサイズ毎の推定分布幅を用いて上記推定対象のファイルの転送に必要な時間の推定値を算出する第６のステップと
を有することを特徴とするファイル転送時間推定方法。
【請求項８】
コンピュータを、請求項１から請求項６のいずれかに記載のファイル転送時間推定装置における各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークを用いたファイルの転送時間の算出技術に係り、特に、ファイル転送に必要となる時間を、実際の転送前に高精度かつ効率的に推定するのに好適な技術に関するものである。
【背景技術】
【０００２】
ファイル転送時間を実際の転送前に求める従来技術、すなわち、ファイル転送時間を推定する従来技術として、ファイルの一部分をダウンロードし、そのダウンロードスピードからファイル全体の転送に必要な時間を推定する技術がある。この技術では、試験データの転送量は少なくて済み効率的であるが、推定精度が低いという問題がある。
【０００３】
他の従来技術として、非特許文献１に記載のＶＴＰＥＭ法がある。この技術は、高い推定精度を持つが、精度を上げるためにはより多くの試験データ転送が必要となり、アクティブ測定用のオーバヘッドとしては無視できない値となり、効率的ではない。例えば、１００ＭＢのファイル転送時間を８０％の精度で推定するためには、２３ＭＢの試験データ転送が必要となり、推定時間、推定オーバヘッドとも大きなものとなってしまう。
【０００４】
【非特許文献１】Takuya Asaka, Katsunori Ori, Hiroshi Yamamoto, “Method of Estimating Flow Duration Using Active Measurements,” IEICE TRANS. COMMUN, VOL. E86-B, NO.10 October 2003.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
解決しようとする問題点は、従来の技術では、通信ネットワークでのファイルの転送時間の推定を高精度で行うには、多くの試験データの転送が必要であり、推定時間、推定オーバヘッド共に大きくなってしまう点である。
【０００６】
本発明の目的は、これら従来技術の課題を解決し、通信ネットワークでのファイルの転送時間の高精度な推定を、少ない試験データを用いて効率的に行うことを可能とすることである。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明では、通信ネットワークでのファイルの転送時間の推定に用いるテストデータの転送とその転送速度の測定を、予め定められたブロックサイズで予め定められた転送回数だけ繰り返し、さらに、順次、ブロックサイズを増やし転送回数を減らしながら、転送したテストデータの合計量が予め定められた閾値、例えば、推定対象のファイルのサイズのＹ％になるまで、テストデータの転送と転送速度の測定を繰り返し行い、その測定結果から各ブロックサイズの転送での最大値と最小値を求め、求めた最大値の近似線と最小値の近似線を求め、それぞれの近似線が交差する点におけるテストデータの転送速度の測定結果を、転送対象のファイルの転送に必要な時間の推定値として算出する。このことにより、ファイル転送に必要となる時間を、転送前に推定する際に、推定に必要なテストデータ転送量が少なくすることができる。
【発明の効果】
【０００８】
本発明によれば、通信ネットワーク上でファイルを転送するのに必要となる時間の転送前での推定を、少ないテストデータ転送量でありながらも、高い推定精度で行うことが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、図を用いて本発明を実施するための最良の形態例を説明する。図１は、本発明に係るファイル転送時間推定装置の構成例を示すブロック図、図２は、図１におけるファイル転送時間推定装置を含むネットワークシステムの構成例を示すブロック図、図３は、図１におけるファイル転送時間推定装置の本発明に係る処理動作例を示すフローチャート、図４は、図１におけるファイル転送時間推定装置の本発明に係る処理動作の基本概念例を示す説明図、図５は、図１におけるファイル転送時間推定装置の実験結果例を示す説明図である。
【００１０】
図１におけるファイル転送時間推定装置１は、ＣＰＵ（Central Processing Unit）や主記憶装置（主メモリ）、表示装置、入力装置、外部記憶装置、周辺装置等を具備したコンピュータ構成からなり、周辺装置としての光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、本発明に係る各処理を実行する各機能を構成する。
【００１１】
すなわち、ファイル転送時間推定装置１は、テスト条件設定・実行指示部１ａと、推定分布幅算出部１ｂ、推定結果蓄積部１ｃ、テストデータ転送実行部１ｄ、結果算出部１ｅ、ネットワークインタフェース（図中「ネットワークＩＦ」と記載）１ｆを有し、図２に示すように、クライアント側端末に設置され、通信ネットワーク３を介して配信サーバ２に対し、サーバ名や転送データサイズなどを指定してテストデータの転送要求を行うと共に、配信サーバ２から通信ネットワーク３を介して転送される当該テストデータを受信する動作を繰り返すことで、そのテストデータの転送に要した時間を測定し、その測定結果に基づき、当該通信ネットワーク３を介して転送されるデータの実転送時間を推定する。
【００１２】
具体的には、図３に示すように、まず、テスト条件設定・実行指示部１ａが、予め設定された、最小テストブロックサイズＢ（ｉｎｉ）と、初期テスト回数Ｎ（ｉｎｉ）での転送実行指示を、テストデータ転送実行部１ｄに送る（ステップＳ３０１）。
【００１３】
この最小テストブロックサイズＢ（ｉｎｉ）とは、試験転送を行う最小転送単位であり、例えば、１０ＫＢや１００ＫＢなどのデータ量が利用される。また、初期テスト回数Ｎ（ｉｎｉ）とは、最小テストブロックサイズでのテストデータ転送を何回行うか規定するものであり、例えば、１００回や２００回などの値が利用される。
【００１４】
テストデータ転送実行部１ｄは、テスト条件設定・実行指示部１ａから指示された条件に従ってテストデータ転送を実際に行い、その際に必要としたファイル転送時間を測定し、その結果をテスト条件設定・実行指示部１ａに送る（ステップＳ３０２）。
【００１５】
ここでは、決められた最小テストブロックサイズＢ（ｉｎｉ）のデータ転送を、初期テスト回数Ｎ（ｉｎｉ）回行い、ファイル転送にかかった時間を測定する。
【００１６】
テストデータ転送の例として、ＨＴＴＰプロトコルの「Ｒａｎｇｅ」フィールドを指定した転送を繰り返し、その開始時間と終了時間との差分からダウンロード時間（ファイル転送時間）を測定するとことが挙げられる。
【００１７】
テスト条件設定・実行指示部１ａは、テストデータ転送実行部１ｄから送られてきたフィル転送時間の測定結果（ファイル転送時間リスト）を推定分布幅算出部１ｂに送る。このファイル転送時間リストは、測定回数分のファイルサイズと、その転送にかかった時間の組合せである。
【００１８】
推定分布幅算出部１ｂは、テスト条件設定・実行指示部１ａから送られてきたファイル転送時間リストを用いて、転送完了予測時間を算出し、外れ値を除外した推定分布幅の算出を行う（ステップＳ３０３）。
【００１９】
この推定分布幅とは、テストデータ転送実行部１ｄが測定した転送時間データから外れ値を除外し、残った値の最大値と最小値の範囲で規定される。外れ値の除外技術の例として、以下のように、危険率を仮定した外れ値除外例が挙げられる。
【００２０】
すなわち、危険率ｋ％を設定し、測定結果集合（ｘ１，ｘ２，…，ｘｎ−１）のうちで、外れ値評価対象となる値を除外した集合の平均μ及び標準偏差σを求め、外れ値評価対象となる値と平均μの差分の絶対値ａを求め、求めた絶対値ａが「σ×（１００／ｋ）１／２」以上であれば、評価対象の値は、外れ値であると判定する。これを測定結果集合の全要素に対して行い、外れ値除外を行う。尚、他の外れ値除外技術を用いることでも良い。
【００２１】
推定分布幅算出部１ｂは、算出した推定分布幅（推定結果）、ここでは、ファイルサイズと推定転送完了時間の最大・最小値の組合せでなるリストを、推定結果蓄積部１ｃに送り、推定結果蓄積部１ｃは、送られてきたリストを記憶する。
【００２２】
テスト条件設定・実行指示部１ａは、テストデータの転送の合計データ量を計数しておき、この転送合計データ量が予め定められた閾値に達したか否かを判定する（ステップＳ３０４）。ここでは、閾値として、推定対象のファイルサイズのＹ％とする。
【００２３】
テストデータの転送の合計データ量が閾値に達していなければ、テスト条件設定・実行指示部１ａは、テストデータ転送実行部１ｄに対して、テストブロックサイズを増やし、テスト回数を減らす内容で、データ転送実行指示を送る（ステップＳ３０５）。
【００２４】
増減のさせ方の例として、テストブロックサイズをＸ倍にし、テスト回数を１／Ｘ倍にするパターン（増減係数Ｘは任意の数）、あるいは、テストブロックサイズをＸ倍にして、テスト回数を２／Ｘ倍にするパターン等でも良い。
【００２５】
具体的な数値例として、テストブロックサイズをＸ倍にし、テスト回数を１／Ｘ倍にする（Ｘ＝２）という増減条件を採用し、前回のテストブロックサイズが６４ＫＢであり、テスト回数が２０回であった場合、次回のテストブロックサイズは１２８ＫＢとなり、テスト回数は１０回となる。
【００２６】
このような条件を含む転送条件で、テストデータ転送実行部１ｄによるステップＳ３０２でのテストデータ転送処理と、推定分布幅算出部１ｂによるステップＳ３０３での推定分布幅算出を行う。
【００２７】
このようなステップＳ３０５，Ｓ３０２，Ｓ３０４での処理を繰り返し行い、テストデータ転送の合計データ量が予め定められた閾値（推定対象のファイルサイズのＹ％）に達したところで、テストデータ転送フェーズを終了する。
【００２８】
例えば、推定対象ファイルのサイズが１００ＭＢで、Ｙが５％であった時は、テストデータ転送の総量が５ＭＢに達したところで、テスト条件設定・実行指示部１ａは、ステップＳ３０５での処理を実行せず、ステップＳ３０２，Ｓ３０３での各処理の繰り返しを終了させ、試験終了を、結果算出部１ｅに通知する。
【００２９】
結果算出部１ｅは、テスト条件設定・実行指示部１ａから試験終了を通知されると、推定結果蓄積部１ｃに対して、転送試験毎に蓄積した推定結果（テストブロックサイズ毎の推定分布幅）を送るよう要求して取得し、各テストブロックサイズ毎の推定分布幅の上端および下端のそれぞれを近似線で近似し（ステップＳ３０６）、推定分布幅の上端近似線と下端近似線との交点におけるテストデータ転送時間を、推定対象ファイルの転送完了推定時間として算出する（ステップＳ３０７）。
【００３０】
尚、近似線の例としては、１次直線、０．５次曲線、２次曲線などが考えられる。図４においては、１次直線の例を示している。
【００３１】
このように、本例のファイル転送時間推定装置１では、まず、（１）最小テストブロックサイズＢ（ｉｎｉ）と、初期テスト回数Ｎ（ｉｎｉ）を決め、（２）Ｎ（ｉｎｉ）回、最小テストブロックのファイル転送テストを行い、各ファイル転送にかかった時間を記録して、（３）各テスト結果から、転送完了予測時間を計算し、外れ値を除外した推定分布幅を求める。さらに、図４に示すようにして、（４）テストブロックサイズを増やし、テスト回数を減らし、同様のテスト転送と測定、外れ値除外、推定分布幅算出を行い、（５）これを繰り返し実施し、試験転送を行った合計データ量が、予め定められた閾値（推定するファイルサイズのＹ％）に達したところでテストデータの転送を終了する。そして、（６）各ブロックサイズ毎の推定値のうちで、最大の点および最小の点を最適な近似線で近似し、最小近似線と最大近似線の交点を求め、この交点におけるテストデータ転送所要時間を、推定対象ファイルの転送に必要な推定時間として求める。
【００３２】
このことにより、通信ネットワーク３を通したファイル転送に必要となる時間を、実際の転送前に、少ないテストデータ転送量で、かつ高い精度で推定することができる。
【００３３】
このような本例でのファイル転送時間推定の有効性を検証するため、以下の条件で実績におけるデータ転送実験を行った結果を、図５を用いて、従来技術としてのＶＴＰＥＭ技術での結果と比較して説明する。
【００３４】
ここでは、推定対象コンテンツのサイズは１００ＭＢ、初期の最小テストブロックサイズＢ（ｉｎｉ）＝１０ＫＢ、初期テスト回数Ｎ（ｉｎｉ）＝１２８、増減係数Ｘ＝２とする。また、ＶＴＰＥＭ法のパラメタは、ブロックサイズを１００ＫＢで固定し、試験回数を可変とする。そして、２種類のネットワークでファイル転送を１００回測定し、評価は、各手法の推定誤差が３０％，２０％以内となるのに必要な試験データ転送量の平均値によって行った。
【００３５】
その実験結果を、図５に示す。この結果から、本例のファイル転送時間推定技術では、誤差２０％〜３０％が許容される条件において、従来技術よりも大幅に少ないデータ量で転送完了時間の推定が可能であることが確認できる。
【００３６】
尚、本例では、実測データに基づいて推定分布幅を計算するため、上端近似線と下端近次線が交差しないケース、すなわち、解無しとなるケースが発生する可能性がある。しかし、２種類の実績ネットワークで約６００回の推定を行ったが、解無しの発生確率は１％未満であった。
【００３７】
以上、図１〜図５を用いて説明したように、本例では、通信ネットワーク３でのファイルの転送時間の推定に用いるテストデータの転送とその転送速度の測定を、予め定められたブロックサイズで予め定められた転送回数だけ繰り返し、さらに、順次、ブロックサイズを増やし転送回数を減らしながら、転送したテストデータの合計量が、推定対象のファイルのサイズのＹ％になるまで、テストデータの転送と転送速度の測定を繰り返し行い、その測定結果から各ブロックサイズの転送での最大値と最小値を求め、求めた最大値の近似線と最小値の近似線（１次直線、０．５次曲線、２次曲線等）を求め、それぞれの近似線が交差する点におけるテストデータの転送速度の測定結果を、転送対象のファイルの転送に必要な時間の推定値として算出する。
【００３８】
このことにより、ファイル転送に必要となる時間を、転送前に推定する際に、推定に必要なテストデータ転送量が少なくすることができ、通信ネットワーク上でファイルを転送するのに必要となる時間の転送前での推定を、少ないテストデータ転送量でありながらも、高い推定精度で行うことが可能となる。
【００３９】
尚、本発明は、図１〜図５を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、テストデータ転送の例として、ＨＴＴＰプロトコルの「Ｒａｎｇｅ」フィールドを指定した転送を繰り返し、その開始時間と終了時間との差分からダウンロード時間を測定するとことを挙げたが、これに限るものではない。
【００４０】
また、本例のコンピュータ構成例としては、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、プログラムを記録する記録媒体としては、光ディスクに限らず、ＦＤ（Flexible Disk）等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【図面の簡単な説明】
【００４１】
【図１】本発明に係るファイル転送時間推定装置の構成例を示すブロック図である。
【図２】図１におけるファイル転送時間推定装置を含むネットワークシステムの構成例を示すブロック図である。
【図３】図１におけるファイル転送時間推定装置の本発明に係る処理動作例を示すフローチャートである。
【図４】図１におけるファイル転送時間推定装置の本発明に係る処理動作の基本概念例を示す説明図である。
【図５】図１におけるファイル転送時間推定装置の実験結果例を示す説明図である。
【符号の説明】
【００４２】
１：フィル転送時間推定装置、１ａ：テスト条件設定・実行指示部、１ｂ：推定分布幅算出部、１ｃ：推定結果蓄積部、１ｄ：テストデータ転送実行部、１ｅ：結果算出部、１ｆ：ネットワークインタフェース、２：配信サーバ、３：通信ネットワーク。
【図１】
2007052621.tif 000003
【図２】
2007052621.tif 000004
【図３】
2007052621.tif 000005
【図４】
2007052621.tif 000006
【図５】
2007052621.tif 000007