(57)【要約】【課題】本発明はパケットを受信して処理をして送信を行う試験対象装置にパケットの送信・受信を行うパケット負荷試験装置に関し，試験対象装置に対してパケットの送信を行って処理結果として出力されたパケットを受信するパケット負荷試験装置が受信処理に影響を与えることなく処理能力の限度まで試験を実行することを目的とする。【解決手段】ＣＰＵ使用率測定部と，複数の試験データを格納した管理情報テーブルを備えた制御監視部と，試験対象装置に対しパケットを送信する送信部及び受信を行う受信部とを備え，送信部は使用率判定部を備え，制御監視部は管理情報テーブルに設定された試験パラメータの送信条件を満たすと送信要求を発生し，送信部は送信要求を検出すると使用率判定部により現在のＣＰＵ使用率が予め設定された閾値未満であるか判定し，閾値未満であると試験のパケットを送信し，閾値を越えていると送信を停止するよう制御する。【選択図】図１
2008283239.tif 000002
【特許請求の範囲】
【請求項１】
パケットを受信して処理をして送信を行う試験対象装置の負荷試験のためにパケットの送信・受信を行うパケット負荷試験装置において，
ＣＰＵ使用率測定部と，複数の試験データを格納した管理情報テーブルを備えた制御監視部と，試験対象装置に対しパケットを送信する送信部及び受信を行う受信部とを備え，
前記送信部は使用率判定部を備え，
前記制御監視部は前記管理情報テーブルに設定された試験パラメータの送信条件を満たすと送信要求を発生し，前記送信部は前記送信要求を検出すると前記使用率判定部により現在のＣＰＵ使用率が予め設定された閾値未満であるか判定し，閾値未満であると試験のパケットを送信し，閾値を越えていると送信を停止することを特徴とするパケット負荷試験装置。
【請求項２】
請求項１において，
前記管理情報テーブルは複数の管理情報が格納され，各管理情報として送信経過時間，送信周期及びデータパターンを含む試験パラメータを備え，
各管理情報の前記送信経過時間が前記送信周期に達すると試験パラメータに基づく試験データを作成して送信することを特徴とするパケット負荷試験装置。
【請求項３】
請求項１において，
前記送信部は，前記使用率判定部において前記閾値を越えたことを検出して送信を停止すると，一定時間毎に前記使用率判定部による判定を行って，閾値未満になると，送信動作を実行することを特徴とするパケット負荷試験装置。
【請求項４】
請求項１において，
前記送信部においてＣＰＵ使用率が前記閾値を越えたことにより送信を停止すると，前記送信処理分のＣＰＵリソースを受信処理に割り当てることを特徴とするパケット負荷試験装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，ネットワークインタフェースカードを搭載してパケットの送受信を行うパケット交換機やルータ等のネットワーク装置に対する負荷生成及びチェックを行うパケット負荷試験装置に関する。
【背景技術】
【０００２】
ネットワークを介して多数の端末（またはクライアント）からのパケットの送受信の処理を行うサーバや，ルータ等のネットワーク装置がどの程度の負荷を処理する能力があるかの試験を行うことで，システムを安定して運用することが可能となる。
【０００３】
図７はパケット負荷試験の説明図である。図中，５０は試験対象装置であり，パケットを送信するサーバ等の処理装置からのパケットを受信して処理を行い，他の処理装置へパケットを送信する機能を備える試験対象装置であり，具体的にはルータや交換機等のネットワーク装置が該当する。５１は試験対象装置５０へ種々の速度や量のパケットを送信し，試験対象装置５０からの処理結果であるパケットを受信してチェックを行うパケット負荷試験装置である。
【０００４】
この構成において，パケット負荷試験装置５１は試験対象装置５０に対してパケットを送信し，試験対象装置５０による処理結果であるパケットが送信されると，そのパケットを受信してチェックすることにより試験対象装置５０が正常に動作しているかを識別することができる。試験を行う場合，パケット負荷試験装置５１から試験対象装置５０に送信するパケットの周期（速度）を変えて負荷を変えた時に試験対象装置５０の処理機能を確認することができる。ところが，パケット負荷試験装置５１から試験対象装置５０へパケットを送信する処理と受信する処理を行って，負荷を増大させることにより試験を行うと過負荷（輻輳状態）になって正確な試験ができなくなるという問題がある。
【０００５】
複数の端末からの呼制御情報の処理を行う構内交換機における輻輳制御の技術が知られており（特許文献１参照），その技術を図８に従来技術の説明図として示す。
【０００６】
図８において，６０は構内交換機，６１は呼制御部，６２はＰＳＴＮ（Public Switched Telephone Network)シグナリング部，６３は回線パッケージ，６４は回線，７０は端末制御装置，７１はＰＳＴＮシグナリング部，７２は端末に対応して設けられたアナログポート，７３は端末である。ＰＳＴＮシグナリング部６２は呼制御部６１から端末７３に送信される情報を時分割多重化すると共に端末７３から受信された時分割多重化情報を分離して呼制御部６１に送り，回線パッケージ６３はＰＳＴＮシグナリング部６２内で使用される信号形態と，端末７３のインタフェースで使用される信号形態との変換を行う。
【０００７】
構内交換機６０のＣＰＵ（図示せず）は呼制御部６１の常駐プロセスによって使用率が監視され，使用率が所定値以上になるとＣＰＵが過負荷であると判断して，ＰＳＴＮシグナリング部６２内の負荷状態データが，輻輳中を示す数値に書き換えられる。更に，使用率が所定値未満になった場合には，ＰＳＴＮシグナリング部６２内の負荷状態データが，輻輳中であることを示す数値に書き換えられる。更に使用率が所定値未満になった場合には，ＰＳＴＮシグナリング部６２内の負荷状態データが，輻輳解除を示す数値に書き換えられる。負荷状態データが輻輳中を示していると，新規な呼の受付が拒否され，この拒否はＰＳＴＮシグナリング部６２の信号パス確立メッセージを廃棄することによって実行される。これにより，呼制御以外の処理負担が増大した場合にＣＰＵの過負荷に起因する輻輳を抑制することができる。
【０００８】
また，パケット交換装置の技術において，自己内の中央処理装置の使用率が所定値以上に高い輻輳状態の発生を監視する輻輳監視手段を設け，この輻輳監視手段が輻輳を検出すると受信した少なくとも一部のフレームを廃棄する技術がある（特許文献２参照）。
【特許文献１】特開２００１−３０９０３７号公報
【特許文献２】特開平１０−２３３７７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
通常データ通信では速度やデータ量が異なる複数フローを混在して扱うため，必ずしも通信装置のＣＰＵ使用率は一定ではなく変動するため，一時的に輻輳状態が発生する場合がある。同様に通信を擬似するパケット負荷試験装置においても，ＣＰＵ使用率はパケット負荷生成及びチェック処理量により変動するため，一時的に輻輳状態が発生する場合がある。
【００１０】
しかし上記の特許文献１は外部からの新規の処理要求に対して受付拒否を行うことにより受付けによる輻輳を回避するものであり，既に受付済の処理に対しての輻輳には適用できない。パケット負荷試験機において輻輳が回避できない場合，パケット受信処理及びチェック処理の遅延等が発生し，最悪のケースではパケットが受信できずに廃棄されてしまう現象が発生する。このため，受信データチェックができないという試験装置の機能を果たせないと問題があるため，受付済の処理に対しての輻輳制御が必要となる。
【００１１】
また，特許文献２の技術は輻輳監視手段が輻輳を検出するとフレームを廃棄してしまうため，パケットを試験対象装置に送って，試験対象装置から送り返してきたパケットを受信してチェックをするとパケット負荷試験を行うという目的に応用することができない。
【００１２】
本発明はパケットの処理を行うルータや交換機等のパケット処理を行う試験対象装置に対してパケットの送信を行って，試験対象装置から処理結果として出力されたパケットを受信するパケット負荷試験装置が受信処理に影響を与えることなく処理能力の限度まで試験を実行することができるパケット負荷試験装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
図１は本発明の原理構成を示す図である。図中，１は試験のためのパケットデータを生成して試験対象装置２に送信し，試験対象装置２で処理されたデータを受信するパケット負荷試験装置であり，パケットの送信，受信を含むデータ処理を行うＣＰＵ（Central Processor Unit) を備える。 １０は制御監視部，１０ａは複数個の条件（周期，アドレス，データ等）の異なる試験管理情報が格納された管理情報テーブル，１１はＣＰＵの使用率を測定して保持するＣＰＵ使用率測定部，１２は送信部，１２ａは使用率判定部，１３は受信部，２はパケットを受信して処理をしてパケットを出力する試験対象装置である。
【００１４】
管理情報テーブル１０ａに予め試験対象装置２に対し加える負荷に対応した複数の条件の異なる試験管理情報を格納しておき，制御監視部１０に対して試験開始を指示すると，制御監視部１０は送信部１２に対して送信を指示すると，送信部１２は使用率判定部１２ａによりＣＰＵ使用率測定部１１で測定して保持するＣＰＵ使用率が予め設定された閾値を越えているか判定し，閾値未満と判定された場合に管理情報テーブル１０ａを参照して先頭の試験管理情報から取り出してその情報に設定されたアドレスに対して決められた周期毎に試験データ（パケット）に基づいてパケットを試験対象装置２へ送信する。管理情報テーブル１０ａの複数の試験データはそれぞれ決められた周期毎に繰り返して試験対象装置２に送信される一方で，試験対象装置２から送信されたパケットを受信部１３で受信してチェックの処理等が実行される。ＣＰＵ使用率測定部１１は，一定周期でＣＰＵの使用率を測定して保持するが，試験のためのパケット送信と試験対象装置２からのパケット受信のための負荷の変動に応じてＣＰＵ使用率も変化する。送信部１２の使用率判定部１２ａで予め設定された閾値を越えたことを検出すると，送信部１２は送信を一定時間停止し，この後，一定時間後に再度使用率判定部１２ａによる判定を行って，閾値未満になると，送信動作を実行する。閾値を越えた場合は，一定時間毎に同様の動作を繰り返す。
【発明の効果】
【００１５】
本発明によればパケット負荷試験装置のＣＰＵ使用率が高くなった場合に送信処理を停止することによりＣＰＵリソースを解放することで，パケット受信処理やチェック処理にＣＰＵリソースを使用することができ，ＣＰＵ使用率の高い状態でのパケット受信とチェック処理のパケット負荷試験機能の保証が可能となる。また，輻輳を回避することができてシステムの安定性を向上することができる。
【発明を実施するための最良の形態】
【００１６】
図２は実施例の構成を示す図である。図中，１はパケット負荷試験装置，１００はＣＰＵ使用率測定タスク（図１のＣＰＵ使用率測定部１１に対応），１０１はＣＰＵ使用率測定タスク１００により測定したＣＰＵ使用率を格納するＣＰＵ使用率格納部，１０２は送信タスク（図１の送信部１２に対応），１０２ａは送信要求キューを格納するバッファ，１０３は試験対象装置２からのパケットを受信する受信タスク（図１の受信部１３に対応），１０４は試験対象装置２との間でネットワークを介してパケットの送受信するためのインタフェースをとるネットワークインタフェース，１０５はユーザからの負荷生成／停止指示を受け付ける負荷制御受付タスク，１０６はパケット負荷生成とチェックのための負荷管理情報を格納する負荷管理情報テーブル（図１の管理情報テーブル１０ａに対応），１０７は制御・監視タスク（図１の制御監視部１０に対応），１０８は制御・監視タスク１０７に対して起動トリガを与える周期タイマ，２は試験対象装置である。
【００１７】
図２に示す実施例のパケット負荷試験装置の送信動作を説明する。最初にユーザによる入力（図示省略されたキーボード等の入力装置）により負荷生成指示が発生すると，負荷制御受付タスク１０５で受け付けが行われる。負荷制御受付タスク１０５は受け付けを行ったフローに対応する負荷生成パラメータ情報を負荷管理情報テーブル１０６（図３）に書き込んで，該当のフローのディスクリプタのステータスを有効（負荷生成中）にする。また，ユーザにより負荷停止指示があった場合は，該当のフローのディスクリプタのステータスを無効（停止中）にする。
【００１８】
図３は負荷管理情報テーブルの構成を示す。負荷管理情報テーブル１０６は，各インデックス値毎に負荷管理情報ディスクリプタ♯１〜♯Ｎが設定され，各負荷管理情報ディスクリプタ♯１〜♯Ｎは，それぞれ先頭に当該ディスクリプタが有効か無効かを表すステータス１０６ａ，フローＩＤ（識別情報）１０６ｂ，送信経過時間（前回のパケット送信時間から現在までの経過時間）１０６ｃ，最後のパケットを受信してからの時間である受信経過時間１０６ｄ，パケットの送信タイミングを保持する送信周期１０６ｅ，受信タイムアウト値１０６ｆ，試験パラメータ（アドレスやパケットデータパターン等）１０６ｇ等のデータにより構成される。
【００１９】
図４はパケット負荷試験装置の送信動作のフローチャートを示す。最初に図２の制御・監視タスク１０７は周期タイマ１０８からの周期タイミングにより起動すると，負荷管理情報テーブル１０６の負荷管理情報のディスクリプタ（最初は＃１で，順に＃２，＃３，・・・の処理が行われる）のステータス１０６ａを判定する（図４のＳ１）。ここで無効と判定されると，次のディスクリプタを参照し，全てのディスクリプタを参照したか判定し（図４のＳ６），全てを参照した後，制御・監視タスク１０７は休止（Sleep)する。ディスクリプタのステータスが有効の場合は，休止時間の換算（現時間−前回起動時間）をして（図４のＳ２），送信経過時間の更新（前回の送信経過時間＋休止時間）をし（同Ｓ３），送信経過時間≧送信周期（１０６ｄ）が成立するか判定する（同Ｓ４）。前記の式が成立する場合は，送信可能と判断し，送信タスク１０２に送信要求キューを設定する（図４のＳ５）。具体的には，送信要求をディスクリプタ１０６の識別情報（♯１〜♯Ｎの一つを表す）と共に送信要求キューのバッフア１０２ａ（図２）に格納する。上記ステータスＳ４において，送信経過時間＜送信周期であると判定すると，ステップＳ６に移行して次のディスクリプタを参照し，全ディスクリプタについて終了するまでＳ１〜Ｓ５の処理が繰り返される。
【００２０】
図５は送信タスク（図２の１０２）のフローチャートである。最初は上記図４に示す制御・監視部の動作により送信要求キューを格納するバッファ１０２ａ（図２）に送信要求が格納されて送信指示が発生するのを待機し（図５のＳ１），送信指示が発生すると送信タスクが起動して送信要求キューから先頭の送信要求を取得する（図５のＳ２）。次にＣＰＵ使用率測定タスク１０１により測定されてＣＰＵ使用率格納部１０１に格納されたＣＰＵ使用率の判定を行う（図５のＳ３）。この判定でＣＰＵの現在の使用率が予め設定された閾値以上であると判定されると，送信タスクを一定期間休止させ（図５のＳ４），一定期間後に後再度起動してＣＰＵの使用率の判定を行う（図５のＳ３）。この動作はＣＰＵ使用率が閾値未満になるまで繰り返される。ステップＳ３においてＣＰＵの使用率が閾値未満と判定されると，上記ステップＳ２で取得した送信要求のディスクリプタの識別情報により該当するディスクリプタを参照し，そこに格納された試験パラメータから送信パケットを作成してパケットを作成し，ネットワークインタフェースに対し送信要求を行いパケット送信を行う（図５のＳ５）。
【００２１】
上記の図５の動作は，１パケット送信毎に実行され，この送信制御によりＣＰＵ使用率が高い場合は，送信タスクを休止させることにより輻輳を回避し，かつ送信処理分のＣＰＵリソースを受信処理に割り当てることで受信性能を向上させることができる。
【００２２】
図６は本発明による送信制御を行った場合と行わない場合のＣＰＵ使用率の変化を示す。図６のＡ．はＣＰＵ使用率によって送信制御をしない（本発明を適用しない）場合の変化を示し，Ｂ．は本発明による送信制御を行った場合の変化を示す。何れの場合も，送信処理によるＣＰＵ使用率（送信スループット）が一定であるのに対し受信によるＣＰＵ使用率（受信スループット）が大きく揺らいでいる例である。
【００２３】
Ａ．の場合パケット受信によるＣＰＵ使用率が閾値を越えて使用率が高い状態であると，パケット受信処理及びチェック処理の負荷試験機能が保証されなくなる。これに対し，Ｂ．に示すように本発明によりＣＰＵ使用率が閾値を越えた場合，送信処理を一時的に強制的に停止させることでＣＰＵリソースが解放され，全体の使用率が下がる。これにより，空きのリソース部分が受信処理に回されることで受信性能が向上し，負荷試験機能の保証が可能となる。また，輻輳を回避することができてシステムの安定性を向上することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の原理構成を示す図である。
【図２】実施例の構成を示す図である。
【図３】負荷管理情報テーブルの構成を示す図である。
【図４】パケット負荷試験装置の送信動作のフローチャートを示す図である。
【図５】送信タスクのフローチャートを示す図である。
【図６】本発明によらない場合とよる場合のＣＰＵ使用率の変化を示す図である。
【図７】パケット負荷試験の説明図である。
【図８】従来技術の説明図である。
【符号の説明】
【００２５】
１        パケット負荷試験装置
１０      制御監視部
１０ａ    管理情報テーブル
１１      ＣＰＵ使用率測定部
１２      送信部
１２ａ    使用率判定部
１３      受信部
２        試験対象装置
【図１】
2008283239.tif 000003
【図２】
2008283239.tif 000004
【図３】
2008283239.tif 000005
【図４】
2008283239.tif 000006
【図５】
2008283239.tif 000007
【図６】
2008283239.tif 000008
【図７】
2008283239.tif 000009
【図８】
2008283239.tif 000010