(57)【特許請求の範囲】
【請求項１】
通信負荷試験が実施される通信制御プログラムがインストールされたセンタサーバと、前記センタサーバに通信回線を介して接続された試験サーバと、を備え、前記センタサーバとこれにネットワークを介して接続された複数の試験サーバ間の通信負荷試験を仮想的に実行する通信プログラム試験システムの試験方法であって、
前記試験サーバが、ポート番号、コンピュータ名、ＩＰアドレス、サービス名のうちの少なくとも１個を含む固有情報が一義的に対応づけられ、前記センタサーバからの通信要求に対してステータス情報とダミーデータとを前記センタサーバに返送する複数個の疑似応答プログラムを生成して実行するステップと、このステップにより生成された複数個の疑似応答プログラムに一義的に対応づけられた前記固有情報を前記センタサーバに送信するステップと、
前記センタサーバが、前記試験サーバから送信された固有情報を登録テーブルに登録するステップと、
前記センタサーバが、この登録テーブルに登録された固有情報を前記通信制御プログラムにより逐次読み出し、前記試験サーバの複数個の疑似応答プログラムに通信要求を逐次送信するステップと、
前記試験サーバがこの通信要求に応答し、前記疑似応答プログラムから返送したステータス情報とダミーデータとを、前記センタサーバが試験結果ファイルに蓄積するステップと、を備えることを特徴とする通信プログラム試験方法。
【請求項２】
前記複数個の疑似応答プログラムを生成するステップは、生成すべき疑似応答プログラムの個数が入出力端末から与えられることを特徴とする請求項１記載の通信プログラム試験方法。
【請求項３】
前記疑似応答プログラムが前記通信制御プログラムの通信負荷試験のための通信手順のみを実行する、ことを特徴とする請求項１記載の通信プログラム試験方法。
【請求項４】
通信負荷試験が実施される通信制御プログラムがインストールされたセンタサーバと、
このセンタサーバに通信回線を介して接続された試験サーバと、を備え、
前記試験サーバは、
ポート番号、コンピュータ名、ＩＰアドレス、サービス名のうちの少なくとも１個を含む固有情報が一義的に対応づけられ、前記センタサーバからの通信要求に対してステータス情報とダミーデータとを前記センタサーバに返送する複数個の疑似応答プログラムを生成し、
生成された複数個の前記疑似応答プログラムに一義的に対応づけられた前記固有情報を前記センタサーバに送信し、
前記センタサーバは、
前記試験サーバから送信された固有情報を登録する登録テーブルと、前記疑似応答プログラムから返送されたステータス情報とダミーデータとを蓄積する試験結果ファイルと、を備え、
前記登録テーブルに登録された固有情報を前記通信制御プログラムにより逐次読み出し、前記試験サーバの複数個の疑似応答プログラムに通信要求を逐次送信する、
ことを特徴とする通信プログラム試験システム。
【請求項５】
前記試験サーバはさらに入出力端末を備え、この入出力端末から、前記複数個の疑似応答プログラムを生成する手段が生成すべき疑似応答プログラムの個数を入力することを特徴とする請求項４記載の通信プログラム試験システム。
【請求項６】
前記疑似応答プログラムが前記通信制御プログラムの通信負荷試験のための通信手順のみを実行する、ことを特徴とする請求項４記載の通信プログラム試験システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信を行うプログラムの通信負荷試験の試験方法及び通信プログラム試験システムに関する。
【背景技術】
【０００２】
通信を行うプログラムが必要な通信スペックを満たしているかを試験する通信負荷試験は、実際に通信を行って試験をすることが必要である。特に最近では数百台から千台を超えるサーバ又は端末との通信の試験をする必要が出てきている。
【０００３】
同時に数台のサーバ又は端末と通信する場合には、実機をその台数だけ用意して通信を行えば通信負荷試験が可能である。しかし、実機を購入するには費用がかかる。
【０００４】
そこで、１台のサーバの中に仮想端末を複数実行させる技術が提案されている。例えば特許文献１にはＭＡＣアドレスとＩＰアドレスとをそれぞれ複数管理する機能を設け、負荷試験を行う技術が提案されている。
【特許文献１】特開２００１−２８５８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、ネットワーク上ではＭＡＣアドレスとＩＰアドレスがそれぞれ同じ値の装置は重複して存在できない。このため、設定作業が困難であるという問題点があった。
【０００６】
本発明は上記のような問題点に鑑みてなされたものであり、サーバのリソースの消費を最小限にし、オペレータの負担を最小限にするプログラムの通信負荷試験を行う通信プログラム試験方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
この目的を達成するために本発明は、通信負荷試験が実施される通信制御プログラムがインストールされたセンタサーバと、前記センタサーバに通信回線を介して接続された試験サーバと、を備え、前記センタサーバとこれにネットワークを介して接続された複数の試験サーバ間の通信負荷試験を仮想的に実行する通信プログラム試験システムの試験方法であって、試験サーバが、ポート番号、コンピュータ名、ＩＰアドレス、サービス名のうちの少なくとも１個を含む固有情報が一義的に対応づけられ、センタサーバからの通信要求に対してステータス情報とダミーデータとをセンタサーバに返送する複数個の疑似応答プログラムを生成して実行するステップと、このステップにより生成された複数個の疑似応答プログラムに一義的に対応づけられた固有情報を前記センタサーバに送信するステップと、センタサーバが、試験サーバから送信された固有情報を登録テーブルに登録するステップと、センタサーバが、この登録テーブルに登録された固有情報を通信制御プログラムにより逐次読み出し、試験サーバの複数個の疑似応答プログラムに通信要求を逐次送信するステップと、試験サーバがこの通信要求に応答し、疑似応答プログラムから返送したステータス情報とダミーデータとを、センタサーバが試験結果ファイルに蓄積するステップと、を備えることを特徴とする通信プログラム試験方法を提供する。
【０００８】
また本発明は、通信負荷試験が実施される通信制御プログラムがインストールされたセンタサーバと、このセンタサーバに通信回線を介して接続された試験サーバと、を備え、試験サーバは、ポート番号、コンピュータ名、ＩＰアドレス、サービス名のうちの少なくとも１個を含む固有情報が一義的に対応づけられ、センタサーバからの通信要求に対してステータス情報とダミーデータとをセンタサーバに返送する複数個の疑似応答プログラムを生成し、生成された複数個の疑似応答プログラムに一義的に対応づけられた固有情報をセンタサーバに送信し、センタサーバは、試験サーバから送信された固有情報を登録する登録テーブルと、疑似応答プログラムから返送されたステータス情報とダミーデータとを蓄積する試験結果ファイルと、を備え、登録テーブルに登録された固有情報を通信制御プログラムにより逐次読み出し、試験サーバの複数個の疑似応答プログラムに通信要求を逐次送信する、ことを特徴とする通信プログラム試験システムを提供する。
【発明の効果】
【０００９】
本発明によれば、通信相手が数百の規模であってもサーバのリソースの消費とオペレータの負担を最小限にしてプログラムの通信負荷試験を行うことが可能であるという効果がある。
【発明を実施するための最良の形態】
【００１０】
以下、本発明による通信プログラム試験方法及び通信プログラム試験システムの一実施の形態を、図面を用いて詳細に説明する。なお、各図において同一箇所については同一の符号を付すとともに、重複した説明は省略する。
【００１１】
＜実施形態の詳細＞
本実施形態の通信プログラム試験システム及び通信プログラム試験方法は、疑似応答プログラムの複製である要素疑似応答プログラムを複数生成して一つのサーバに同時に複数の要素疑似応答プログラムを実行させることにより試験環境を疑似的に構築することを特徴とする。この際、疑似応答プログラムを試験に必要な動作、すなわち応答のみを行うプログラムを構成すれば、一プログラムあたりのリソースの消費が少なくなるため、より多くの疑似応答プログラムを実行することが可能となる。
【００１２】
図１は本実施形態の通信プログラム試験システム及び通信プログラム試験方法が実施されるセンタサーバ及び試験サーバの概要を示したブロック図である。図１に示すように、通信負荷試験が実施される通信制御プログラムを実行するセンタサーバ２０と、通信制御プログラムの試験を行う試験サーバ１０と、を通信回線によって接続する。
【００１３】
試験サーバ１０は、演算装置であるＣＰＵ１１Ａと記憶装置であるメモリ１１Ｂとを有する試験サーバ制御部１１と、実行されるプログラムが使用するポート番号を含む固有情報を格納する固有情報テーブル１２と、入出力端末１３と、を備える。
【００１４】
試験サーバ１０には通信負荷試験を行う疑似応答プログラム及びこの疑似応答プログラムの複製である要素疑似応答プログラムの実行をオペレーティングシステムに登録する登録プログラムがインストールされている。
【００１５】
センタサーバ２０は、演算装置であるＣＰＵ２１Ａと記憶装置であるメモリ２１Ｂとを有するセンタサーバ制御部２１と、通信制御プログラムが使用するデータを格納する登録テーブル２２と、試験結果を格納する試験結果ファイル２３と、入出力端末２４と、を備える。
【００１６】
ここで、登録テーブル２２と試験結果ファイル２３は通信制御プログラムに固有のファイルであり、このため通信制御プログラムが変われば登録テーブル２２と試験結果ファイル２３の要否や構成が変わるものとする。
【００１７】
センタサーバ２０には通信負荷試験が実施される通信制御プログラムがインストールされている。
【００１８】
図２は固有情報テーブル１２の構造を示した図である。図２に示すように、固有情報テーブル１２は、例えば、要素疑似応答プログラムの名前である疑似応答名と、疑似応答名に一意に割り振られるコンピュータ名と、疑似応答名に一意に割り付けられるポートを示すポート番号と、試験サーバのＩＰアドレスと、疑似応答名に一意に割り付けられるサービス名と、を格納する。固有情報テーブル１２は、これらの項目以外の項目を格納してもよいし、これらの項目のうちいくつかを省略することもできる。
【００１９】
固有情報テーブル１２に格納されるデータの例は、疑似応答名が「Ｑ０００１」、コンピュータ名が「Ｃ０００１」、ポート番号が「１００１」、ＩＰアドレスが「１９６．６．０．１」、サービス名が「Ｓ０００１」である。
【００２０】
図３は登録テーブル２２の構造を示した図である。図３に示すように、登録テーブル２２は、例えば、コンピュータ名と、ＩＰアドレス、ポート番号と、を格納する。登録テーブル２２は、これらの項目以外の項目を格納してもよいし、これらの項目のうちいくつかを省略することもできる。格納する項目は通信制御プログラムによって定まる。
【００２１】
図４は登録プログラムに関するセンタサーバ制御部２１と試験サーバ制御部１１の動作を表したフローチャートである。
【００２２】
登録プログラムは試験サーバ１０において実行される。図４の試験サーバ制御部１１の動作は登録プログラムによるものである。
【００２３】
ステップＳ４０１において、試験サーバ制御部１１は入出力端末１３から通信負荷試験を行う台数の入力を受け入れる。この通信負荷試験を行う台数は、通信制御プログラムが通信する相手のサーバの台数に相当する。
【００２４】
ステップＳ４０２において、試験サーバ制御部１１は仮想プログラム名である疑似応答名Ｑｘ（ｘは１からｎの整数）を生成する。
【００２５】
ここで、疑似応答名Ｑｘの生成方法を説明する。試験サーバ制御部１１は、文字列「Ｑ００１」を初期値とし、この文字列の数字部分を１ずつ増加させて疑似応答名を作成する。
【００２６】
次に、試験サーバ制御部１１は、使用するポートを「１００１」を初期値として１ずつ増加させて疑似応答名Ｑｘに一意に割り当てられたポート番号を生成する。
【００２７】
次に、試験サーバ制御部１１は、通信制御プログラムの通信負荷試験を行うプログラムである疑似応答プログラムの複製である要素疑似応答プログラムをこの疑似応答名Ｑｘを使用して作成する。そして、試験サーバ制御部１１は疑似応答名Ｑｘのプログラムを、疑似応答名Ｑｘに割り当てられたポート番号をポートとして使用して実行させる。
【００２８】
ステップＳ４０３において、試験サーバ制御部１１は疑似応答名Ｑｘに一意にコンピュータ名を割り付ける。このコンピュータ名は通信制御プログラムが使用する、通信相手を識別する名称である。従って、通信制御プログラムによっては使用しないこともある。この場合ステップＳ４０３は省略できる。
【００２９】
ステップＳ４０４において、試験サーバ制御部１１は疑似応答名Ｑｘに一意に割りつけられたポート番号を関連付ける。また、このステップＳ４０４において、試験サーバ制御部１１はポート番号を疑似応答名Ｑｘに一意に割り付けるように構成してもよい。
【００３０】
ステップＳ４０５において、試験サーバ制御部１１は疑似応答名Ｑｘに一意にサービス名Ｓｘを割り付ける。このサービス名は疑似応答プログラムがサービスとして実行される場合に使用する。従って、通常のアプリケーションとして実行される場合はステップＳ４０５を省略できる。
【００３１】
ステップＳ４０６において、試験サーバ制御部１１は、Ｑｘ、Ｃｘ、Ｐｘ、Ｓｘを固有情報として固有情報テーブル１２に格納する。
【００３２】
ステップＳ４０７において、試験サーバ制御部１１は、Ｑｎまで格納が完了したか判定する。試験サーバ制御部１１は、Ｑｎまで格納が完了していない場合にはステップＳ４０２に戻り、Ｑｎまで格納が完了した場合にはステップ４０８に進む。
【００３３】
なお、ステップＳ４０２からＳ４０７において、あらかじめ登録プログラム内に固有情報を格納した固有情報テーブルを作成しておき、そこから試験台数分だけ情報を読み出すように構成してもよい。このように構成することにより、試験にかかる時間を短縮することが可能となる。
【００３４】
ステップＳ４０８において、試験サーバ制御部１１はＣｘ、Ｐｘ、ＩＰアドレスをセンタサーバ２０に送信する。
【００３５】
ステップＳ４０９において、センタサーバ制御部２１は、受信したＣｘ、Ｐｘ、ＩＰアドレスを登録テーブル２２に格納して処理を終了する。
【００３６】
図５は通信制御プログラムに関するセンタサーバ制御部２１と試験サーバ制御部１１の動作を表したフローチャートである。
【００３７】
通信制御プログラムはセンタサーバ２０において実行される。図５のセンタサーバ制御部２１の動作は通信制御プログラムによるものである。
【００３８】
ステップＳ５０１において、センタサーバ制御部２１は入出力端末２４から診断コマンドの入力を受け入れる。この診断コマンドは試験サーバ１０において実行されている疑似応答名Ｑｘの要素疑似応答プログラム（以下、疑似応答Ｑｘと呼ぶ。）との通信を行うように指示するコマンドを含む。
【００３９】
ステップＳ５０２において、センタサーバ制御部２１は登録テーブル２２から固有情報を読み込む。
【００４０】
ステップＳ５０３において、センタサーバ制御部２１は読み込んだポート番号Ｐｘを参照して診断コマンドを試験サーバ１０の疑似応答Ｑ１乃至Ｑｎにそれぞれ送信する。
【００４１】
ステップＳ５０４において、試験サーバ制御部１１は診断コマンドを受信する。ステップＳ５０５において、試験サーバ制御部１１は診断コマンドの実行結果、すなわち通信負荷試験の実行結果であるステータスとダミーデータをセンタサーバ２０に送信する。
【００４２】
ステップＳ５０６において、センタサーバ制御部２１はステータスとダミーデータを受信する。ステップＳ５０７において、センタサーバ制御部２１はステータスを疑似応答ごとに入出力端末２４に表示する。
【００４３】
ステップＳ５０８において、センタサーバ制御部２１は全ての疑似応答のステータスの受信を完了したか判定する。センタサーバ制御部２１は、全ての疑似応答のステータスの受信が完了していればステップＳ５０９に進み、完了していなければステップＳ５０６に戻る。
【００４４】
ステップＳ５０９において、センタサーバ制御部２１はステータスとダミーデータを試験結果ファイル２３に格納する。
【００４５】
ステップＳ５１０において、センタサーバ制御部２１はステータスがエラーである疑似応答があるか判定する。センタサーバ制御部２１は、ステータスにエラーがある疑似応答があると判定した場合、ステップＳ５１１において試験不合格を入出力端末２４に表示し、ステータスにエラーがある疑似応答がないと判定した場合、ステップＳ５１２において試験合格を入出力端末２４に表示し、処理を終了する。
【００４６】
図６はプログラム間のデータの授受を表した図である。図６に示すように、ステップＳ６０１において、試験サーバ制御部１１において実行されている登録プログラム６１の実体（以下、登録プログラム６１と呼ぶ。）は入出力端末１３から試験台数ｎの入力を受け入れる。
【００４７】
ステップＳ６０２において、登録プログラム６１は固有情報テーブル１２から疑似応答名を読み出す。ステップＳ６０３において、登録プログラム６１は要素疑似応答プログラムを実行して疑似応答Ｑｘを生成する。ステップＳ６０４において登録プログラム６１はセンタサーバ２１において実行されている通信制御プログラムの通信を行う部分である通信プログラムの実体（以下、通信プログラム６２と呼ぶ。）に固有情報を送信する。
【００４８】
ステップＳ６０５において、通信プログラム６２は受信した固有情報を登録テーブル２２に格納する。
【００４９】
ステップＳ６０６において、センタサーバ２１において実行されている通信制御プログラムのうち通信プログラム６２の監視を行う部分であるコンソールプログラムの実体（以下、コンソールプログラム６３と呼ぶ。）は、入出力端末２４から受け入れた診断コマンドを通信プログラム６２に発行する。
【００５０】
ステップＳ６０７において、通信プログラム６２は登録テーブル２２から固有情報を読み出し、この固有情報に従って疑似応答Ｑ１乃至疑似応答Ｑｎに診断コマンドを送信する。
【００５１】
ステップＳ６０８において、診断コマンドを受信した疑似応答Ｑ１乃至疑似応答Ｑｎはステータスとダミーデータとを通信プログラム６２に送信する。
【００５２】
ステップＳ６０９において、通信プログラム６２は受信したステータスとダミーデータとを試験結果ファイル２３に格納する。
【００５３】
ステップＳ６１０において、コンソールプログラム６３は試験結果ファイル２３内のステータスを定期的に読みだして監視する。
【００５４】
ステップＳ６１１において、コンソールプログラム６３は入出力端末２４に更新されたステータスを表示する。
【００５５】
なお、本実施形態においては疑似応答プログラムが通信制御プログラムの通信負荷試験のための通信手順のみを実行するように構成することもできる。すなわち、疑似応答プログラムは通信制御プログラムの通信負荷試験を行うため、その他の処理動作、例えば試験サーバのセキュリティのチェックの動作や、その他のファイル操作などを含んでいる必要はない。
【００５６】
通信負荷試験のための通信手順とは、上述の通信プログラム６２との通信及びデータの授受のための処理のほか、通信の確立と維持及び切断の手順が含まれる。
【００５７】
疑似応答プログラムが通信制御プログラムの通信負荷試験のための通信手順のみを実行するように構成することにより、より多くの疑似応答を生成することが可能となる。
【００５８】
＜本実施形態の効果＞
以上述べたように、本実施形態の疑似応答を利用した通信プログラム試験システム、通信プログラム試験方法及び疑似応答プログラム登録プログラムは、試験サーバ１０がオペレーティングシステムに複数の仮想プログラム名により複数の要素疑似応答プログラムの実行を登録させ、センタサーバ２０が通信制御プログラムにより疑似応答と通信を行うことにより通信負荷試験を行う。このため、本実施形態の疑似応答を利用した通信プログラム試験方法及び疑似応答プログラム登録プログラムは、通信相手が数百の規模であってもサーバのリソースの消費とオペレータの負担を最小限にしてプログラムの通信負荷試験を行うことが可能であるという効果がある。
【００５９】
＜本発明の具体化における可能性＞
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００６０】
【図１】本実施形態の通信プログラム試験方法が実施されるセンタサーバ及び試験サーバの概要を示したブロック図である。
【図２】固有情報テーブルの構造を示した図である。
【図３】登録テーブルの構造を示した図である。
【図４】登録プログラムに関するセンタサーバ制御部と試験サーバ制御部の動作を表したフローチャートである。
【図５】通信制御プログラムに関するセンタサーバ制御部と試験サーバ制御部の動作を表したフローチャートである。
【図６】プログラム間のデータの授受を表した図である。
【符号の説明】
【００６１】
１０：試験サーバ、
１１：試験サーバ制御部、
１２：固有情報テーブル、
１３：入出力端末、
２０：センタサーバ、
２１：センタサーバ制御部、
２２：登録テーブル、
２３：試験結果ファイル、
２４：入出力端末。
【図１】
0004512142.tif 000002
【図２】
0004512142.tif 000003
【図３】
0004512142.tif 000004
【図４】
0004512142.tif 000005
【図５】
0004512142.tif 000006
【図６】
0004512142.tif 000007