(57)【要約】【課題】サーバからクライアントにコンテンツをダウンロードする際のボトルネックが、空き帯域、ＴＣＰ、ハードウェア性能のいずれにあるかを検出する方法を提供する。【解決手段】始めにＵＤＰを用いて試験データを転送し、所望のスループットが得られないときは空き帯域がボトルネックであると判定する。次に、ＴＣＰセッションの数（ｎ）を（ｎ＋１）に１本だけ増加したときのスループットＴｈ（ｎ＋１）のＴｈ（ｎ）に対する比が所定の値より大きいときは、ＴＣＰのプロトコルスタックがボトルネックを引き起こしていると判断する。空き帯域及びＴＣＰがボトルネックでなく、かつ所望のスループットが得られないときは、サーバ又はクライアントのハードウェア性能がボトルネックであると判断する。【選択図】      図４
2005026798.tif 000002
【特許請求の範囲】
【請求項１】
サーバとクライアントの間でＴＣＰを用いたコンテンツ配信を行う際のボトルネックの検出方法において、
１つのコンテンツに対して少なくとも１本の所定数（ｎ）のＴＣＰセッションを利用したダウンロードを行い、
前記所定数（ｎ）のＴＣＰセッションではスループットＴｈ（ｎ）が目標値に達しないときに、
ＴＣＰセッションの数（ｎ）を（ｎ＋１）に１本だけ増加したときのスループットＴｈ（ｎ＋１）のＴｈ（ｎ）に対する比が所定の値より大きいときは、ＴＣＰのプロトコルスタックがボトルネックを引き起こしていると判断することを特徴とする、ボトルネックの検出方法。
【請求項２】
ＴＣＰセッションの数（ｎ）とそのときのスループットＴｈ（ｎ）とが
【数１】
2005026798.tif 000005
Ａは０＜Ａ＜１を満足する所定数
を満足するとき、ＴＣＰのプロトコルスタックがボトルネックを引き起こしていると判定する、請求項１記載の検出方法。
【請求項３】
Ａ＝０．５である請求項２記載の検出方法。
【請求項４】
ＴＣＰセッションの数（ｎ）とそのときのスループットＴｈ（ｎ）とが
【数２】
2005026798.tif 000006
Ｂは０＜Ｂ＜１を満足する所定数
を満足するとき、ＴＣＰのプロトコルスタックがボトルネックを引き起こしていると判定する請求項１記載の検出方法。
【請求項５】
Ｂ＝０．１である請求項４記載の検出方法。
【請求項６】
ＴＣＰのプロトコルスタックの前記判断の前に、ＵＤＰを用いた試験データの転送を行い、ＵＤＰにより所望のスループットが得られないときはネットワークの空き帯域がボトルネックを引き起こしていると判断する、請求項１記載の検出方法。
【請求項７】
前記の空き帯域がボトルネックを引き起こさず、かつ、ＴＣＰのプロトコルスタックがボトルネックを引き起こしていないときは、サーバ又はクライアントのハードウェア性能がボトルネックを引き起こしていると判断する、請求項６記載の検出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）を用いたコンテンツ配信系に関し、特にボトルネックの原因を特定する技術に関する。本発明はサーバ上のコンテンツをＴＣＰを用いてクライアントにダウンロードするときに、スループットを限定するボトルネックの原因を推定することに利用可能である。ここでボトルネックは、ネットワークの空き帯域、サーバ又はクライアントの処理能力、又はＴＣＰのデータ転送能力であり、本発明はこれらの３項目のうちのいずれがボトルネックとなっているかを検出するものである。
【０００２】
【従来の技術】
従来のコンテンツ配信サービスにおけるボトルネックの推定法では、ネットワークとサーバのリソースを監視してボトルネックとなっていないかどうかを判断する。具体的な監視項目としては、ネットワークに対しては、例えば、帯域使用率、パケットロス率、遅延、遅延ゆらぎ等があり、サーバに対しては、例えば、ＣＰＵ利用率、空きメモリ容量等がある。
【０００３】
一方、ＴＣＰ（例えばバージョン  Ｎｅｗ  Ｒｅｎｏ）を利用する場合には、サーバとクライアントの間の遅延時間が大きいときには、ＴＣＰがボトルネックとなる可能性がある。
【０００４】
図１はＴＣＰ（Ｎｅｗ  Ｒｅｎｏ）を用いた場合のＴＣＰが転送できる能力の最大値（スループットの理論値）を示す。図１の条件（ＯＳの設定値）は、ＴＣＰバージョン；Ｎｅｗ  Ｒｅｎｏ，ｄｅｌａｙｅｄ  ＡＣＫ＝２（２回に１回返事を出す）、及びパケット再送間隔＝５００ｍＳである。図１において横軸はロス率（％）、たて軸は往復遅延時間（ｍＳ）であり、各ロス率及び往復遅延時間に対応するスループット（Ｍｂｐｓ）を示す。
【０００５】
図１からＴＣＰのデータ転送能力がボトルネックとなる可能性が十分にあるが、従来の技術ではサーバ又はクライアントに実装されているＴＣＰがボトルネックとなっている場合を検出することができない。
【０００６】
【非特許文献１】
インターネット  ｈｔｔｐ：／／ｗｗｗ．ｈｉｔａｃｈｉｊｏｈｏ．ｃｏｍ／ｓｏｌｕｔｉｏｎ／ＮＥＱＳＴ／  ２００３年４月２１日閲覧
【非特許文献２】
インターネット  ｈｔｔｐ：／／ｗｗｗ．ｆｔｔｘ．ｃｏ．ｊｐ／ｊｐ／ｓｅｒｖｉｃｅ／ｍｏｎｉｔｏｒｉｎｇ．ｈｔｍｌ  ２００３年４月２１日閲覧
【０００７】
【発明が解決しようとする課題】
本発明は従来の技術の上記問題点を改善するもので、その目的はＴＣＰをふくめてコンテンツ配信系のボトルネックを検出する方法を提供することにある。
【０００８】
【課題を解決するための手段】
上記目的を達成するための本発明の特徴は、
サーバとクライアントの間でＴＣＰを用いたコンテンツ配信を行う際のボトルネックの検出方法において、
１つのコンテンツに対して少なくとも１本の所定数（ｎ）のＴＣＰセッションを利用したダウンロードを行い、
前記所定数（ｎ）のＴＣＰセッションではスループットＴｈ（ｎ）が目標値に達しないときに、
ＴＣＰセッションの数（ｎ）を（ｎ＋１）に１本だけ増加したときのスループットＴｈ（ｎ＋１）のＴｈ（ｎ）に対する比が所定の値より大きいときは、ＴＣＰのプロトコルスタックがボトルネックを引き起こしていると判断することにある。
【０００９】
ＴＣＰがボトルネックとなっているときは、ＴＣＰセッションの数を増やすことによりスループットを増やすことができる。
【００１０】
【発明の実施の形態】
図４に、本発明によるボトルネックの検出方法のフローチャートを示す。
【００１１】
スタート（５１）から始めて、まず、５３で、サーバからクライアントへのコンテンツの配信で、所望のスループットが得られるか否かをチェックする。所望のスループットが得られれば、システムに問題はなく、テストは終了する（６５ａ）。
【００１２】
所望のスループットが得られないと、５５に進み、図２に示すように、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）を用いて、サーバ１０からネットワーク３０を介してクライアント２０に試験データを転送する。これは、プロトコルによりスループットの上限が制限されることのないＵＤＰを用いてネットワークの空き帯域に余裕があるかどうかを判断するために行うもので、所望のスループットＸ（Ｍｂｐｓ）を得られるかどうかを調べ、もしスループットがＸ（Ｍｂｐｓ）を下回っていればネットワークの空き帯域が不足していると判断する（６５ｂ）。つまり、空き帯域がボトルネックであると判断する。
【００１３】
空き帯域がボトルネックでないときは、次に、図３によりＴＣＰがボトルネックとなっているかどうかを調べるために、５９，６１，６３に進む。
【００１４】
図３では、サーバ１０からネットワーク３０を介してクライアント２０にコンテンツをダウンロードするための３本のＴＣＰセッションＴ１，Ｔ２，Ｔ３が示される。
【００１５】
１本のＴＣＰセッションＴ１を用いたときのスループットが所望のスループットＸ（Ｍｂｐｓ）を下回っているときは、ＴＣＰセッションを１本増やして（５９）、合計のスループットが増加したかどうかを判定する（６１）。
【００１６】
このとき、スループットが増加しなければＴＣＰはボトルネックではなく、サーバ又はクライアントのハードウェア性能がボトルネックであると判定する（６５ｃ）。
【００１７】
６１でスループットが増加したときは、所望のスループットに達したかどうかをテストし（６３）、達していればＴＣＰがボトルネックであると判定する（６５ｄ）。達していなければ、５９にもどって、ＴＣＰセッションの数を更に１本増やす。以後、ボトルネックをみつけるまで、５９，６１，６３のループを繰り返す。
【００１８】
ＴＣＰセッションの数を増やしたときにスループットが増加したかどうかの判定（６１）は例えば次のように行う。
【００１９】
第１の実施例では
【数３】
2005026798.tif 000003
Ａは０＜Ａ＜１を満足する所定数
ｎは増加前のＴＣＰセッションの数
Ｔｈ（ｎ）はＴＣＰセッションの数がｎのときのスループット
が成立するときに、６１でスループットが増加したと判定する。Ａの値は例えば０．５とする。
【００２０】
第２の実施例では
【数４】
2005026798.tif 000004
Ｂは０＜Ｂ＜１を満足する所定数
が成立するときに、６１でスループットが増加したと判定する。Ｂの値は例えば０．１である。
【００２１】
【発明の効果】
以上のように、本発明によると、サーバからクライアントにコンテンツをダウンロードする際のボトルネックが、空き帯域、ＴＣＰ、ハードウェア性能のいずれにあるかを検出することができる。
【図面の簡単な説明】
【図１】ＴＣＰのスループットの理論値を示す図である。
【図２】ＵＤＰプロトコルを利用した試験データの転送を示す図である。
【図３】ＴＣＰセッションを利用したデータ転送を示す図である。
【図４】本発明の実施例の動作フローを示す。
【符号の説明】
１０  サーバ
２０  クライアント
３０  ネットワーク
Ｔ１，Ｔ２，Ｔ３  ＴＣＰセッション
【図１】
2005026798.tif 000007
【図２】
2005026798.tif 000008
【図３】
2005026798.tif 000009
【図４】
2005026798.tif 000010