(57)【要約】【課題】安価なパーソナルコンピュータを複数台用いることによって、安いコストで動画配信サーバの負荷試験を実行できる動画配信サーバの負荷試験システム及びその試験方法を提供する。【解決手段】通信回線２を介して接続された動画配信サーバ１，制御用マシン３，マスター試験器４及びスレーブ試験器５により、前記動画配信サーバの負荷試験を実行する動画配信サーバの負荷試験システムであって、前記マスター試験器に、前記スレーブ試験器との同期をとるためのＮＴＰサーバ機能を備え、前記制御マシンからの同期命令を受けて、前記マスター試験器と前記スレーブ試験器との同期をとって、動画配信サーバに対する負荷試験を実行する動画配信サーバの負荷試験システム。【選択図】    図２
2004318636.tif 000002
【特許請求の範囲】
【請求項１】
通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及びスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画配信サーバの負荷試験システムであって、
前記マスター試験器に、前記スレーブ試験器との同期をとるためのＮＴＰサーバ機能を備え、
前記制御マシンからの同期命令を受けて、前記マスター試験器と前記スレーブ試験器との同期をとって、動画配信サーバに対する負荷試験を実行することを特徴とする動画配信サーバの負荷試験システム。
【請求項２】
通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及び複数のスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画サーバの負荷試験システムであって、
前記マスター試験器に、前記複数のスレーブ試験器との同期をとるためのＮＴＰサーバ機能を備え、
前記制御マシンからの同期命令を受けて、前記マスター試験器と前記複数のスレーブ試験器との同期をとって、動画配信サーバに対する負荷試験を実行することを特徴とする動画配信サーバの負荷試験システム。
【請求項３】
通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及びスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画配信サーバの負荷試験方法であって、
前記マスター試験器から前記スレーブ試験器に同期命令を送信するステップと、
前記スレーブ試験器から前記マスター試験器４に対してＮＴＰリクエストを送信するステップと、
前記制御用マシンからの試験開始要求に応じて、負荷試験の開始タイミングの時間を記述した試験開始要求をスレーブ試験器に送信するステップと、
前記開始タイミングに合わせて、前記マスター試験器及び前記スレーブ試験器により前記動画配信サーバに対する負荷試験を実行するステップと、
を含み、
前記マスター試験器からの同期命令の送信から、スレーブ試験器からのＮＴＰリクエストを受信するまでの時間をレスポンスタイムとし、前記開始タイミングを前記開始タイミングの時間を記述した試験開始要求をスレーブ試験器に送信する時間に前記レスポンスタイムの少なくとも１／２を加えた時間とする、
ことを特徴とする動画配信サーバの負荷試験方法。
【請求項４】
通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及び複数のスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画配信サーバの負荷試験方法であって、
前記マスター試験器から前記複数のスレーブ試験器に同期命令を送信するステップと、
前記複数のスレーブ試験器から前記マスター試験器４に対してＮＴＰリクエストを送信するステップと、
前記制御用マシンからの試験開始要求に応じて、負荷試験の開始タイミングの時間を記述した試験開始要求を前記複数のスレーブ試験器に送信するステップと、
前記開始タイミングに合わせて、前記マスター試験器及び前記複数のスレーブ試験器により前記動画配信サーバに対する負荷試験を実行するステップと、
を含み、
前記マスター試験器が同期命令を送信してから最後にスレーブ試験器からのＮＴＰリクエストを受信するまでの時間をレスポンスタイムとし、前記開始タイミングを前記開始タイミングの時間を記述した試験開始要求をスレーブ試験器に送信する時間に前記レスポンスタイムの少なくとも１／２を加えた時間とする、
ことを特徴とする動画配信サーバの負荷試験方法。
【請求項５】
前記制御用マシンとマスター試験器との機能を共通の筐体に備えることを特徴とする請求項１〜４に記載の動画配信サーバの負荷試験システム又は負荷試験方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、動画配信サーバ（ストリーミングサーバ）の負荷試験を実行する動画サーバ負荷試験システム及びその試験方法に関する。
【０００２】
【従来の技術】
ネットワークを介した動画配信（ストリーミング）サービスは、動画配信サーバが多数のクライアントからの不特定タイミングの配信サービス要求に対して並列的に動画をストリーミング配信するものである。
ここで、ストリーミング配信とは、配信されたメディアがコンピュータに到達するのと同時に表示できるようにする技術である。
ストリーミング配信では、利用者（クライアント）はライブメディアや記録済みメディアのブロードキャストを視聴できる。
また、利用者は、ストリーミングメディアをメディアが到着したら直ちにみることができるので、配信されたメディアのファイルがダウンロードされるのを待つ必要はない。
この種の従来の技術としては以下のものが知られている。（例えば、特許文献１参照。）
【０００３】
【特許文献１】
特開２００３−７００２６号公報（図１，（０００２）〜（０００７））
【０００４】
上記公報には、以下の記載がなされている。
このようなストリーミング配信における送信符号量は膨大であり、動画配信サーバ（配信コンピュータ）には、処理速度だけでなく、高い送信量が求められる。
このため、動画配信サーバは、プロセッサ、記憶装置、データ処理装置等の多くの部分に同時並列手法を採用している。
このような動画配信サーバの負荷試験を行う場合には、クライアントとしてのコンピュータを数十台用意し、各コンピュータから試験対象である動画配信サーバに同時にアクセスして、各コンピュータに対して配信サービスが正常に行われるか否かを調べることによって行われていた。
また、この場合、各コンピュータにおいて動画配信サーバにアクセスする配信要求プログラムを複数並列起動し、各々のコンピュータから配信サーバに同時に加える負荷数を増やすように工夫している。この場合、配信要求プログラムを起動させた複数のサーバが動画配信サーバに同時にアクセスすることになり、動画配信サーバにはユーザ数に応じた負荷数の負荷が掛かる。
【０００５】
従来の複数の試験用のサーバを用いる動画配信サーバの負荷試験方法には、以下のような問題点がある。
（１）コンピュータを数十台程用意して並列作動させる必要があり、必要台数の手配、運搬設置、接続、起動、配信要求プログラム等のインストール、設定操作、設置するための場所の確保、電力の確保、空調設備の確保等々、多大な準備と、多くの費用と準備時間が必要になる。
なお、上記数十台を大きくこえるコンピュータ台数は準備の規模及びコストが現実的ではなくなるので、数十台程度が事実上の限界に近い。
（２）上述したように１台のコンピュータから複数の動画配信を動画配信サーバに要求を行う場合、その要求数は、性能上または操作の煩雑さの点で１０クライアント分程度が限界である。すなわち、実際の並列要求数は、最大で数百程度となる。
したがって、この数を越える並列要求数を実現することは、現実的には極めて困難である。
（３）この種の負荷試験は日常頻繁に実施される必要はなく、新規にサービスを開始する前、機材やネットワークを更新した場合、出荷納入の前等であり、数十台のコンピュータの使用効率は、準備コストに比べて極めて低い。
（４）配信要求プログラムを複数並列起動して１台のコンピュータから特定の動画配信サーバに動画配信を複数要求した場合、当該コンピュータにおいて動画の再生表示を同時に並列実行すると、動画符号の復号には膨大な処理が必要なために、コンピュータの負荷が大きくなる。
このような事情から、動画配信サーバの負荷試験に特化して、処理負荷を軽減するように配信要求プログラムを改造する必要が生じ得る。
しかしながら、配信要求プログラムの改造は、特定の動画配信サーバ毎に個別に行う必要があるので、汎用的ではないばかりか非効率的である。
【０００６】
また、上記公報には、多数の試験用のコンピュータを用いるシステムの問題点を解決するシステムとして、１台の高性能のコンピュータ（高性能専用機）を動画配信（ストリーミング）サーバに接続して、多数の擬似ユーザとして動作させる負荷試験システムが記載されている。
以下、図１を用いて従来の動画配信サーバの負荷試験システムについて説明する。
図１では、高性能専用機（クライアント）６と動画配信（ストリーミング）サーバ１は通信回線２を介して接続され、高性能専用機６から動画配信サーバ１に送信される配信要求パケットのユーザアドレスを複数の擬似ユーザアドレスに書き換えることにより複数の擬似配信要求パケットを生成し、当該各擬似配信要求パケットを所定タイミングで動画配信サーバに順次送信して、負荷試験を実行する。
【０００７】
【本発明が解決しようとする課題】
上記の１台の高性能専用機から動画配信サーバに対して擬似アクセスを行って、動画配信サーバに高負荷をかけて負荷試験を行うシステムでは、かけられる負荷にも限界があると共に、高性能専用機が高価であるため、システムとしてコストが高くなるという問題点があった。
【０００８】
本発明の課題
（目的）は、安価なパーソナルコンピュータを複数台用いることによって、安いコストで動画配信サーバの負荷試験を実行できる動画配信サーバの負荷試験システム及びその試験方法を提供することにある。
【０００９】
【課題を解決するための手段】
前記課題を解決するために、通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及びスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画配信サーバの負荷試験システムであって、
前記マスター試験器に、前記スレーブ試験器との同期をとるためのＮＴＰサーバ機能を備え、前記制御マシンからの同期命令を受けて、前記マスター試験器と前記スレーブ試験器との同期をとって、動画配信サーバに対する負荷試験を実行する。（請求項１）
この構成によって、制御マシンからの同期命令に応じて、マスター試験器とスレーブ試験器とをＮＴＰプロトコルで同期させて、動画配信サーバに対して、高負荷をかけて負荷試験を実行できる。
【００１０】
また、通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及び複数のスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画サーバの負荷試験システムであって、
前記マスター試験器に、前記複数のスレーブ試験器との同期をとるためのＮＴＰサーバ機能を備え、前記制御マシンからの同期命令を受けて、前記マスター試験器と前記複数のスレーブ試験器との同期をとって、動画配信サーバに対する負荷試験を実行する。（請求項２）
この構成によって、制御マシンからの同期命令に応じて、マスター試験器と複数のスレーブ試験器とをＮＴＰプロトコルで同期させて、動画配信サーバに対して、更に高負荷をかけて負荷試験を実行できる。
【００１１】
また、通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及びスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画配信サーバの負荷試験方法であって、
前記マスター試験器から前記スレーブ試験器に同期命令を送信するステップと、前記スレーブ試験器から前記マスター試験器４に対してＮＴＰリクエストを送信するステップと、前記制御用マシンからの試験開始要求に応じて、負荷試験の開始タイミングの時間を記述した試験開始要求をスレーブ試験器に送信するステップと、前記開始タイミングに合わせて、前記マスター試験器及び前記スレーブ試験器により前記動画配信サーバに対する負荷試験を実行するステップとを含み、前記マスター試験器からの同期命令の送信から、スレーブ試験器からのＮＴＰリクエストを受信するまでの時間をレスポンスタイムとし、前記開始タイミングを前記開始タイミングの時間を記述した試験開始要求をスレーブ試験器に送信する時間に前記レスポンスタイムの少なくとも１／２を加えた時間とする。（請求項３）
この構成によって、制御マシンからの同期命令に応じて、マスター試験器とスレーブ試験器とをＮＴＰプロトコルによる同期手順におけるレスポンスタイムを有効に用いて、動画配信サーバに対して、確実に高負荷をかける負荷試験が実現できる。
【００１２】
また、通信回線を介して接続された動画配信サーバ，制御用マシン，マスター試験器及び複数のスレーブ試験器により、前記動画配信サーバの負荷試験を実行する動画配信サーバの負荷試験方法であって、
前記マスター試験器から前記複数のスレーブ試験器に同期命令を送信するステップと、前記複数のスレーブ試験器から前記マスター試験器４に対してＮＴＰリクエストを送信するステップと、前記制御用マシンからの試験開始要求に応じて、負荷試験の開始タイミングの時間を記述した試験開始要求を前記複数のスレーブ試験器に送信するステップと、前記開始タイミングに合わせて、前記マスター試験器及び前記複数のスレーブ試験器により前記動画配信サーバに対する負荷試験を実行するステップとを含み、前記マスター試験器が同期命令を送信してから最後にスレーブ試験器からのＮＴＰリクエストを受信するまでの時間をレスポンスタイムとし、前記開始タイミングを前記開始タイミングの時間を記述した試験開始要求をスレーブ試験器に送信する時間に前記レスポンスタイムの少なくとも１／２を加えた時間とする。（請求項４）
この構成によって、制御マシンからの同期命令に応じて、マスター試験器と複数のスレーブ試験器とをＮＴＰプロトコルによる同期手順におけるレスポンスタイムを有効に用いて、動画配信サーバに対して、確実に高負荷をかける負荷試験が実現できる。
この際、複数のスレーブ試験器は、動画配信サーバとは離れた遠隔地に配置されていても容易に相互の同期が確立できる。
また、前記制御用マシンとマスター試験器との機能を共通の筐体に備えることを特徴とする。（請求項５）
【００１３】
【発明の実施の形態】
本発明の第１の実施の形態について図２及び３を用いて説明する。
図２において、通信回線２を介してストリーミング（動画配信）サーバ１、制御用マシン３，マスター試験器４及びスレーブ試験器５が接続されている。
前記通信回線２は、図２では単一のＬＡＮで示されているが、一般の通信回線でもインターネットでも良く、複数のＬＡＮを接続した構成でも良い。
この構成では、制御用マシン３の制御の下、マスター試験器４からの負荷１及びスレーブ試験器５からの負荷２をストリーミングサーバ１に同期をとりながら高負荷をかける。
【００１４】
図２の動作を図３のタイムチャートを用いて説明する。
・先ず、制御用マシン３からマスタ試験器４に対して同期命令１を出力する。（ステップＳ１）
・同期命令１を受信したマスター試験器４はスレーブ試験器５に対して同期命令２を送信する。（ステップＳ２）
・スレーブ試験器５はマスタ試験器４からの同期命令２を受け取ると、マスター試験器４に対してＮＴＰ（Ｎｅｔｗｏｒｋ−Ｔｉｍｅ−Ｐｒｏｔｏｃｏｌ）リクエストを送信する。（ステップＳ３）
ここで、マスター試験器４が同期命令２を送信してからスレーブ試験器５からのＮＴＰリクエストを受信するまでの時間をレスポンスタイムとする。
【００１５】
・マスター試験器４では、予めＮＴＰサービスを開始しておき、スレーブ試験器５からのＮＴＰリクエストに対してＮＴＰリプライを送信して、マスター試験器４及びスレーブ試験器５の時刻同期を取る。（ステップＳ４）
・マスター試験器４では、スレーブ試験器５にＮＴＰリプライを返した後、制御用マシン３に同期完了を送信する。（ステップＳ５）
ステップＳ５の同期完了を受信した制御用マシン３は何時でも負荷試験を開始することができる。
・制御用マシン３からマスター試験器４に対して試験開始要求１を送信する。（ステップＳ６）
・マスター試験器４では、制御用マシンからの試験開始要求１を受信すると、開始タイミングの時間を記述した試験開始要求２をスレーブ試験器５に送信する。（ステップＳ７）
ここで、開始タイミングは、試験開始要求２を送信する時間から前記レスポンスタイムの１／２以上の後とする。
【００１６】
・この開始タイミングに合わせて、マスター試験器４及びスレーブ試験器５は、それぞれ負荷１及び負荷２としてストリーミングサーバに高負荷をかけて負荷試験を実行する。（ステップＳ８）
この負荷試験では、ストリーミングサーバから送信されてくるストリーミングデータについてマスター試験器４及びスレーブ試験器５で、例えば、以下の項目を測定する。
・パケットロス率（送られてくるはずのパケットがどのくらい欠落したか）
・ジッタ（受信タイミングのゆらぎ）
・帯域（毎秒何ｂｙｔｅ送られてきたか）
・レスポンス（ストリーミング要求を送信してからストリーミングパケットがくるまでの時間）
等のデータの変化を時系列で観測する。
【００１７】
・負荷試験の終了後、スレーブ試験器５からマスター試験器４に負荷試験終了通知を送信する。（ステップＳ９）
この試験終了通知には、スレーブ試験器５で実行された負荷試験の解析結果も含まれる。
・スレーブ試験器５からの負荷試験終了通知を受信したマスター試験器４は、制御用マシン３にステータスを送信し、負荷試験終了を通知する。（ステップＳ１０）
なお、この制御ステータスには、前記スレーブ試験器５及びマスタ試験器４で実行された負荷試験の解析結果を総合処理した結果も含まれる。
【００１８】
次に、本発明の第２の実施の形態について図４及び５を用いて説明する。
図４において、通信回線２を介してストリーミング（動画配信）サーバ１、制御用マシン３，マスター試験器４，第１のスレーブ試験器５−１及び第２のスレーブ試験器５−２が接続されている。
前記通信回線２は、単一のＬＡＮでも複数のＬＡＮを接続したも構成でも良い。
この構成では、制御用マシンの制御の下、マスター試験器からの負荷１及び第１及び２のスレーブ試験器からの負荷２及び負荷３をストリーミングサーバに同期をとりながら高負荷をかける。
図４ではスレーブ試験器として第１及び第２の２台のスレーブ試験器が接続されているが、２台以上のスレーブ試験器を接続しても良いことはいうまでもない。
【００１９】
図４の動作を図５のタイムチャートを用いて説明する。
・先ず、制御用マシン３からマスタ試験器４に対して同期命令１を出力する。（ステップＳ１）
・同期命令１を受信したマスター試験器４は第１のスレーブ試験器５−１及び第２のスレーブ試験器５−２に対して同期命令２及び同期命令３を送信する。（ステップＳ２）
このステップＳ２の処理は、各スレーブ試験器に対して、順次送信しても良いし、同報で全てのスレーブ試験器に同時に送信しても良い。
・第１のスレーブ試験器５−１はマスタ試験器４からの同期命令２を受け取ると、マスター試験器４に対してＮＴＰ（Ｎｅｔｗｏｒｋ−Ｔｉｍｅ−Ｐｒｏｔｏｃｏｌ）リクエスト１を送信する。（ステップＳ３）
【００２０】
・マスター試験器４では、予めＮＴＰサービスを開始しておき、第１スレーブ試験器５−１からのＮＴＰリクエスト１に対してＮＴＰリプライ１を送信して、マスター試験器４と第１のスレーブ試験器５−１の時刻同期を取る。（ステップＳ４）
・また、第２のスレーブ試験器５−２はマスタ試験器４からの同期命令２を受け取ると、マスター試験器４に対してＮＴＰ（Ｎｅｔｗｏｒｋ−Ｔｉｍｅ−Ｐｒｏｔｏｃｏｌ）リクエスト２を送信する。（ステップＳ５）
・マスター試験器４では、第２のスレーブ試験器５−２からのＮＴＰリクエスト２に対してＮＴＰリプライを送信して、マスター試験器４及び第２スレーブ試験器５−２の時刻同期を取る。（ステップＳ６）
【００２１】
ここで、マスター試験器４が最初に送信した同期命令２（又は同期命令３）を送信してから最後にＮＴＰリクエストを受信するまでの時間（図３では、第２のスレーブ試験器５−２からのＮＴＰリクエスト２を受信するまでの時間）をレスポンスタイムとする。（なお、このレスポンスタイムの測定としては、同期命令を順次送信する場合には、厳密には最後にＮＴＰリクエストを受けたスレーブ試験器に対する同期命令の送信時間とＮＴＰリクエストの受信時間とで測定するのが理想であるが、同期命令は順次連続的に送信されるので、同期命令の送信時間に大きな差異は生じない。また、同期命令を同報で送信する場合には、この同期命令の送信時間を基準にして最後のＮＴＰリクエストの受信時間との時間を測定する。）
【００２２】
・マスター試験器４では、第２のスレーブ試験器５−２にＮＴＰリプライ２を返した後、制御用マシン３に同期完了を送信する。（ステップＳ７）
ステップＳ７の同期完了を受信した制御用マシン３は何時でも負荷試験を開始することができる。
・制御用マシン３からマスター試験器４に対して負荷試験開始要求１を送信する。（ステップＳ８）
・マスター試験器４では、制御用マシンからの負荷試験開始要求１を受信すると、開始タイミングの時間を記述した負荷試験開始要求２及び負荷試験開始要求３を第１のスレーブ試験器５−１及び第２のスレーブ試験器５−２に送信する。（ステップＳ９）
ここで、開始タイミングは、負荷試験開始要求２及び負荷試験開始要求３を送信する時間から前記レスポンスタイムの１／２以上の後とする。
【００２３】
・この開始タイミングに合わせて、マスター試験器４及び第１のスレーブ試験器５−１及び第２のスレーブ試験器５−２は、それぞれ負荷１，負荷２及び負荷３として、ストリーミングサーバ１に高負荷をかけて負荷試験を実行する。（ステップＳ１）
この負荷試験では、ストリーミングサーバから送信されてくるストリーミングデータについてマスター試験器４及びそれぞれのスレーブ試験器５−１及び５−２で、例えば、以下の項目を測定する。
・パケットロス率（送られてくるはずのパケットがどのくらい欠落したか）
・ジッタ（送られてくるタイミングのゆらぎ）、
・帯域（毎秒何ｂｙｔｅ送られてきたか）、
・レスポンス（ストリーミング要求を送信してからストリーミングパケットがくるまでの時間）、
等のデータの変化を時系列で観測する。
【００２４】
・負荷試験の終了後、第１のスレーブ試験器５−１及び第２のスレーブ試験器５−２からマスター試験器４に試験終了通知を送信する。（ステップＳ１１）
この試験終了通知には、各スレーブ試験器で実行された負荷試験の解析結果も含まれる。
・第１のスレーブ試験器５−１及び第２のスレーブ試験器５−２からの試験終了通知を受信したマスター試験器４は、制御用マシン３にステータスを送信し、試験終了を通知する。（ステップＳ１２）
なお、この制御ステータスには、前記各スレーブ試験器及びマスタ試験器で実行された負荷試験の解析結果を総合処理した結果も含まれる。
【００２５】
なお、図２及び図４では、マスター試験器とスレーブ試験器とが同一のＬＡＮ上に接続されている状態で示されているが、遠隔地にある試験器同士がＬＡＮ間接続によって通信可能であれば、マスター試験器と少なくとも１台のスレーブ試験器とが遠く離れた場所に設置されていても、本発明に係る動画サーバの負荷試験は実施可能である。
また、図２及び４では、制御用マシンとマスター試験器とを別の構成としているが、両者の機能を単一の装置で構成しても良いことはいうまでもない。
【００２６】
【発明の効果】
請求項１〜５に記載の発明では、安価なパーソナルコンピュータを複数台試験器として用いることによって、安いコストで動画配信サーバの負荷試験を実行できる動画配信サーバの負荷試験システム及びその試験方法が実現できる。
【図面の簡単な説明】
【図１】従来の動画サーバの負荷試験システムの構成を示す図である。
【図２】本発明の動画サーバの負荷試験システムの第１の実施の形態を示す図である。
【図３】図２の動作を説明するタイムチャートである。
【図４】本発明の動画サーバの負荷試験システムの第２の実施の形態を示す図である。
【図５】図４の動作を説明するタイムチャートである。
【符号の説明】
１        動画配信サーバ（ストリーミングサーバ）
２                通信回線（ＬＡＮ）
３        制御用マシン
４        マスター試験器
５，５−１，５−２  スレーブ試験器
【図１】
2004318636.tif 000003
【図２】
2004318636.tif 000004
【図３】
2004318636.tif 000005
【図４】
2004318636.tif 000006
【図５】
2004318636.tif 000007