(57)【特許請求の範囲】
【請求項１】
装置間で送受信され且つセッション情報を含むパケットを記憶装置に記憶し、
前記記憶装置に記憶されたパケットの送受信により実現される複数のセッションの各々が、検証試験を実施する複数のマシンのうち少なくともいずれかのマシンにおいて開始から終了まで実現されるように、前記記憶装置に記憶されたパケットの振り分け先のマシンを前記セッション情報に基づき決定し、
前記複数のマシンの各々に、当該マシンに振り分けられたパケットを用いた検証試験を実施させる
処理をコンピュータに実行させるためのプログラム。
【請求項２】
パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す処理と、
前記第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出された前記パケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットがｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、前記第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類処理と、
前記Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する処理と、
をコンピュータに実行させるためのプログラム。
【請求項３】
前記パケットに含まれるセッション情報には、セッションのＩＤと当該セッションの開始又は終了を特定するためのデータとが含まれ、
前記分類処理が、
前記セッションの開始又は終了を特定するためのデータを用いて、ｍ番目の時間帯に取得した、セッションの終了を表すパケット又はセッションの開始を表すパケットを特定し、特定された当該パケットに含まれるセッションのＩＤを特定する処理と、
特定された前記セッションのＩＤを含むパケットを、ｍ番目のグループに分類する処理と、
を含む請求項２記載のプログラム。
【請求項４】
前記分類処理が、
１番目の時間帯に取得したパケットを１番目のグループに分類し且つｌ（ｌは２≦ｌ≦Ｎを満たす自然数）番目の時間帯の開始時刻より最長のセッションの時間Ｔ前の時刻から当該ｌ番目の時間帯の終了時刻までの時間に取得したパケットをｌ番目のグループに分類し、又はｋ（ｋは１≦ｋ≦（Ｎ−１）を満たす自然数）番目の時間帯の開始時刻から当該ｋ番目の時間帯の終了時刻より前記Ｔ後の時刻までの時間に取得したパケットをｋ番目のグループに分類し且つＮ番目の時間帯に取得したパケットをＮ番目のグループに分類する処理
を含む請求項２記載のプログラム。
【請求項５】
検証時間の入力を受け付けた場合、前記第１の時刻から第２の時刻までの時間をＪ（Ｊは２以上の自然数）で除した時間に前記Ｔを加えた時間が前記検証時間よりも短くなるという条件を満たすＪのうち最小の値であるＮを算出する処理
をさらに実行させ、
前記分類処理において、前記第１の時刻から第２の時刻までの時間をＮ個の同じ長さの時間帯に分割する
請求項４記載のプログラム。
【請求項６】
検証時間及び前記マシンの数の最大値の入力を受け付けた場合、前記第１の時刻から第２の時刻までの時間をＪ（Ｊは２以上の自然数）で除した時間に前記Ｔを加えた時間が前記検証時間よりも短くなるという条件を満たすＪのうち最小の値と、前記マシンの数の最大値とのうち小さい方の値であるＮを算出する処理
をさらに実行させ、
前記分類処理において、前記第１の時刻から第２の時刻までの時間をＮ個の同じ長さの時間帯に分割する
請求項４記載のプログラム。
【請求項７】
装置間で送受信され且つセッション情報を含むパケットを記憶装置に記憶し、
前記記憶装置に記憶されたパケットの送受信により実現される複数のセッションの各々が、検証試験を実施する複数のマシンのうち少なくともいずれかのマシンにおいて開始から終了まで実現されるように、前記記憶装置に記憶されたパケットの振り分け先のマシンを前記セッション情報に基づき決定し、
前記複数のマシンの各々に、当該マシンに振り分けられたパケットを用いた検証試験を実施させる
処理をコンピュータが実行する情報処理方法。
【請求項８】
装置間で送受信され且つセッション情報を含むパケットが記憶されている記憶装置と、
前記記憶装置に記憶されたパケットの送受信により実現される複数のセッションの各々が、検証試験を実施する複数のマシンのうち少なくともいずれかのマシンにおいて開始から終了まで実現されるように、前記記憶装置に記憶されたパケットの振り分け先のマシンを前記セッション情報に基づき決定する決定部と、
前記複数のマシンの各々に、当該マシンに振り分けられたパケットを用いた検証試験を実施させる実施部と
有する情報処理装置。
【請求項９】
パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す処理と、
前記第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出された前記パケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、前記第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類処理と、
前記Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する処理と、
をコンピュータが実行する情報処理方法。
【請求項１０】
パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す読み出し部と、
前記第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出された前記パケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットがｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、前記第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類部と、
前記Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する出力部と、
を有する情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、検証試験の実施技術に関する。
【背景技術】
【０００２】
サーバに対してパッチを適用したり、ファームウェアの更新を行ったり、またサーバを物理サーバから仮想サーバに変更する作業等を行った場合に、サーバが作業前と同様に動作するかを試験することがある。このような試験は検証試験（Verification Test）と呼ばれる。検証試験を綿密に実施すると長い時間がかかることがあり、検証試験を短時間で実施する技術が求められている。
【０００３】
従来、検証試験を短時間で実施するための技術が存在する。具体的には、制御部が、リアルタイムクロックに基づき受信データにタイムスタンプを付したデータ（すなわちキャプチャデータ）を、記憶部に時系列に記憶していく。システム時刻の起点時刻を任意に設定可能とし、起点時刻が設定されると、リアルタイムクロックに基づき定期的にシステム時刻を更新する。シミュレーション送信の指示があると、システム時刻に一致するタイムスタンプが付されたデータを順次下位システムに送信する。また、システム時刻が進められる方向で新たな起点時刻が設定された場合には、新たな起点時刻よりも古い時刻のタイムスタンプが付された未送信のデータを抽出して、短い電文間隔で高速送信する。これにより、実際の配信間隔と同じタイミングで再送を行って、障害発生の再現テストを実施できると共に、忠実に再現する必要がない部分については短い電文間隔で高速再送して、効率的にシミュレーションを行う。
【０００４】
しかし、上で述べたような技術を用いると、データの送信間隔が実際の送信間隔よりも短くなるため、検証試験を実施するシステムの負荷が高くなるという問題がある。また、送信間隔を狭めることができる部分は限られているため、検証時間の短縮には限界がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−８１１９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従って、本技術の目的は、一側面では、検証試験の時間を短縮するための技術を提供することである。
【課題を解決するための手段】
【０００７】
本技術の一側面に係る情報処理方法は、（Ａ）パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す処理と、（Ｂ）第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出されたパケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットがｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類処理と、（Ｃ）Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する処理とを含む。
【発明の効果】
【０００８】
検証試験の時間を短縮できるようになる。
【図面の簡単な説明】
【０００９】
【図１】図１は、キャプチャデータを用いた検証試験について説明するための図である。
【図２】図２は、検証試験を並列で実施する例について説明するための図である。
【図３】図３は、検証試験を並列で実施する際の問題点について説明するための図である。
【図４】図４は、第１の実施の形態におけるシステム概要を示す図である。
【図５】図５は、実動系データ格納部に格納されているデータの一例を示す図である。
【図６】図６は、第１の実施の形態におけるメインの処理の処理フローを示す図である。
【図７】図７は、第１の実施の形態における分類処理の処理フローを示す図である。
【図８】図８は、第１の実施の形態における分類処理の考え方について説明するための図である。
【図９】図９は、第２の実施の形態における分類処理の処理フローを示す図である。
【図１０】図１０は、第２の実施の形態における分類処理の考え方について説明するための図である。
【図１１】図１１は、第３の実施の形態における分類処理の処理フローを示す図である。
【図１２】図１２は、セッションデータ格納部に格納されているデータの一例を示す図である。
【図１３】図１３は、第３の実施の形態における分類処理の考え方について説明するための図である。
【図１４】図１４は、第４の実施の形態における分類処理の処理フローを示す図である。
【図１５】図１５は、第４の実施の形態における分類処理の考え方について説明するための図である。
【図１６】図１６は、第５の実施の形態における分類処理の処理フローを示す図である。
【図１７】図１７は、第６の実施の形態における分類処理の処理フローを示す図である。
【図１８】図１８は、第７の実施の形態における分割数Ｎの算出処理の処理フローを示す図である。
【図１９】図１９は、第８の実施の形態における分割数Ｎの算出処理の処理フローを示す図である。
【図２０】図２０は、第９の実施の形態における分類処理の処理フローを示す図である。
【図２１】図２１は、コンピュータの機能ブロックを示す図である。
【発明を実施するための形態】
【００１０】
図１を用いて、キャプチャデータを用いた検証試験について説明する。図１の上段に示したシステムにおいては、クライアント端末がサーバＡと接続されており、クライアント端末とサーバＡとの間でパケットが交換されるようになっている。このシステムは、例えばウェブのシステムであり、クライアント端末とサーバＡとは図示しないインターネット等のネットワークを介して接続されている。ここで、新たにサーバＢを設け、サーバＢに対して検証試験を実施することを考える。
【００１１】
キャプチャデータを用いた検証試験においては、クライアント端末とサーバＡとの間で実際に交換されるパケットをキャプチャし、キャプチャした時刻を付して蓄積しておく。また、図１の下段に示したように、検証試験装置と新たに設けるサーバＢとが接続されたシステムを構築する。検証試験装置は、蓄積されたキャプチャデータに含まれるパケットに対して所定の変換（例えば、送信元及び宛先アドレスの変換）をしたうえで、サーバＢに対してパケットを送信する。サーバＢは、検証試験装置から受信した要求パケットに応じて処理を行い、処理結果を含む応答パケットを検証試験装置に送信する。そして、検証試験装置とサーバＢとの間で交換されるパケットをキャプチャして蓄積し、図１の上段に示したシステムから得られたキャプチャデータと比較することで、サーバＢが正常に稼働しているかを確認する。
【００１２】
例えば図１の上段に示したシステムから１日分のキャプチャデータを取得した場合、単純に検証試験を実施すると１日かかることになる。そこで、例えば図２に示すように、複数のシステムで検証試験を並列で実施することが考えられる。図２の例においては、２４時間を１時間の長さを持つ２４個の時間帯に分割し、また検証試験を実施するシステムを２４セット用意し、１の時間帯に対応するキャプチャデータを１のシステムに割り当てている。このようにすれば、１時間で検証試験を実施することができるようになる。
【００１３】
しかし、この方法では、図３に示すような問題がある。図３においては、４時間を１時間の長さを持つ４個の時間帯１乃至４に分割した例を示している。両端に丸が付された線分は、キャプチャデータに含まれるパケットによって実現されるセッションを表しており、線分の左端の丸はセッションの開始を表し、線分の右端の丸はセッションの終了を表している。
【００１４】
図３の例では、セッション２、４、５及び７のパケットは、複数の時間帯に割り当てられることになる。すなわち、セッション２のパケットは時間帯１及び２に割り当てられ、セッション４及び５のパケットは時間帯２及び３に割り当てられ、セッション７のパケットは時間帯３及び４に割り当てられることになる。この場合、例えばセッション７のうち時間帯４に割り当てられた部分のように、後の時間帯に割り当てられた部分については、セッションの開始が含まれていないため、セッションを確立することができない。そのため、セッション２、４、５及び７については検証試験において開始から終了まで再現することはできず、開始から終了まで再現できるのはセッション１、３、６及び８だけになってしまう。よって、図２に示した方法だと、漏れなく検証試験を行ったとは言えない。
【００１５】
そこで、以下で述べる実施の形態においては、並列で検証試験を実施する場合でも、キャプチャデータに含まれる各セッションをいずれかのシステムにおいて開始から終了まで通しで実行できるようにする方法を説明する。
【００１６】
［実施の形態１］
図４に、第１の実施の形態に係るシステム概要を示す。第１の実施の形態に係るシステムにおいては、検証試験装置１が、実動系環境３における通信装置３３と接続されている。通信装置３３は、例えばスイッチ又はタップ装置であり、クライアント端末３１とサーバ３５との間で交換されるパケットを、例えばポートミラーリングによって検証試験装置１に送信する。検証試験装置１は、通信装置３３から受信したパケットを用いて、検証試験を実施する。
【００１７】
検証試験装置１は、キャプチャ部１０１と、実動系データ格納部１０２と、分類部１０３と、セッションデータ格納部１０４と、算出部１０５と、配備部１０６と、収集部１１６と、出力部１１７とを含む管理ＶＭ（Virtual Machine）１１８を含む。また、検証試験装置１には、配備部１０６によって複数の検証系環境１０７が配備される。
【００１８】
キャプチャ部１０１は、実動系環境３における通信装置３３からパケットを取得し、取得したパケットのデータと取得時刻とを実動系データ格納部１０２に格納する。分類部１０３は、実動系データ格納部１０２に格納されているデータ及びセッションデータ格納部１０４に格納されているデータを用いて、後で説明する分類処理を実施し、処理結果を配備部１０６に出力する。算出部１０５は、配備する検証系環境の数を算出する処理を行い、処理結果を分類部１０３に出力する。配備部１０６は、予め定められた定義に従って、検証試験装置１のハードウェアリソースを用いて検証系環境１０７を配備する。収集部１１６は、各検証系環境から検証試験の結果を収集し、収集した検証試験の結果に基づき、最終的な検証試験の結果を含む表示データを生成し、出力部１１７に出力する。出力部１１７は、表示データを表示装置に表示させる。
【００１９】
検証系環境１０７には、仮想マシンである要求ＶＭ（Virtual Machine）１１５と、仮想マシンである応答ＶＭ１１０とが実現されている。分類後データ格納部１０８には配備部１０６によって割り当てられたキャプチャデータが格納されている。送信部１０９は、分類後データ格納部１０８に格納されているパケットのデータを用いて、応答ＶＭ１１０に対して送信する要求パケットを生成し、応答ＶＭ１１０に送信する。なお、送信部１０９は、例えばパケットの送信元及び宛先のＩＰアドレス、ＴＣＰ（Transmission Control Protocol）のシーケンス番号及びＨＴＴＰ（HyperText Transfer Protocol）ヘッダ内の情報等を変換したうえで、パケットを応答ＶＭ１１０に送信する。応答ＶＭ１１０は、検証試験の対象となる仮想マシンであり、送信部１０９からの要求パケットに応じて処理を行い、処理結果を含む応答パケットをキャプチャ部１１１に送信する。
【００２０】
キャプチャ部１１１は、応答ＶＭ１１０からパケットを取得し、検証系データ格納部１１２に格納する。解析部１１３は、検証系データ格納部１１２に格納されているデータ及び分類後データ格納部１０８に格納されているデータを用いて、要求ＶＭ１１５と応答ＶＭ１１０との間のパケットの交換（リクエスト及びレスポンス）が問題なく行われているかを判断する。例えば、要求ＶＭ１１５と応答ＶＭ１１０との間のパケットの交換が、クライアント端末３１とサーバ３５との間のパケットの交換と同様に行われているかを判断する。そして、解析部１１３は、検証試験の結果が「ＯＫ」又は「ＮＧ」のいずれであるかを示すデータを解析結果格納部１１４に格納する。なお、検証試験については特開２０１１−１６４７５５号公報にも記載されており、本実施の形態における主要な部分ではないため、これ以上の説明は省略する。
【００２１】
図５に、実動系データ格納部１０２に格納されているキャプチャデータの一例を示す。図５の例では、通し番号と、パケットの取得時刻と、送信元の情報（例えば送信元のＩＰアドレス）と、宛先の情報（例えば宛先のＩＰアドレス）と、通信プロトコルの情報と、宛先ポートの情報と、セッションＩＤと、パケットについてのその他の情報とが格納されている。図５の例のように、キャプチャデータには、少なくともパケットについての情報（例えば、セッションに関する情報）とパケットの取得時刻とが含まれる。セッションＩＤは、例えば、ＨＴＴＰのＣｏｏｋｉｅの情報に含まれる。本実施の形態においては、「Ｇｅｔ／ｌｏｇｉｎ」の情報を含むパケットはセッションの開始を表すパケットであり、「Ｇｅｔ／Ｌｏｇｏｕｔ」の情報を含むパケットはセッションの終了を表すパケットである。
【００２２】
次に、図６乃至図８を用いて、図４に示した検証試験装置１において行われる処理について説明する。なお、検証試験装置１におけるキャプチャ部１０１は、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのキャプチャデータを予め実動系環境３から取得し、実動系データ格納部１０２に格納しているものとする。
【００２３】
まず、検証試験装置１における分類部１０３は、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのキャプチャデータを実動系データ格納部１０２から読み出す（図６：ステップＳ１）。そして、分類部１０３は、分類処理を実施する（ステップＳ３）。分類処理については、図７を用いて説明する。
【００２４】
分類部１０３は、検証試験装置１のユーザから最長セッション時間Ｓ＿ｍａｘの入力を受け付ける（図７：ステップＳ１１）。最長セッション時間Ｓ＿ｍａｘは、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでの間に存在しえる最長のセッションの時間である。ステップＳ１１においては、ユーザから入力を受け付けるようにしているが、予めデータ格納部（図示せず）等に記憶されているデータを読み出すようにしてもよい。
【００２５】
分類部１０３は、Ｔ＿ａｌｌ／Ｎ（Ｎは２以上の自然数）によって１個の時間帯の長さＴ＿ｄｉｖを求めることで、各時間帯の開始時刻及び終了時刻を特定する（ステップＳ１３）。Ｔ＿ａｌｌとは、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでの時間である。基本時間Ｔ＿ｄｉｖとは、Ｔ＿ａｌｌをＮ個の同じ長さの時間帯に分割した場合における１個の時間帯の長さである。
【００２６】
分類部１０３は、時間帯の数をカウントするための変数Ｍ（Ｍは１≦Ｍ≦Ｎを満たす自然数）をＭ＝０に設定する（ステップＳ１５）。また、分類部１０３は、Ｍの値を１増やす（ステップＳ１７）。
【００２７】
分類部１０３は、ＭがＭ＝１を満たすか判断する（ステップＳ１９）。ＭがＭ＝１を満たす場合（ステップＳ１９：Ｙｅｓルート）、分類部１０３は、１番目の時間帯の開始時刻から終了時刻までのキャプチャデータを１番目のグループに分類し、記憶装置に格納する（ステップＳ２１）。そしてステップＳ１７の処理に戻る。
【００２８】
一方、ＭがＭ＝１を満たさない場合（ステップＳ１９：Ｎｏルート）、分類部１０３は、ＭがＭ＞Ｎを満たすか判断する（ステップＳ２３）。ＭがＭ＞Ｎを満たさない場合（ステップＳ２３：Ｎｏルート）、分類部１０３は、Ｍ番目の時間帯の開始時刻よりＳ＿ｍａｘ前の時刻からＭ番目の時間帯の終了時刻までのキャプチャデータをＭ番目のグループに分類し、記憶装置に格納する（ステップＳ２５）。そして、ステップＳ１７の処理に戻る。
【００２９】
ステップＳ２３において、ＭがＭ＞Ｎを満たすと判断された場合（ステップＳ２３：Ｙｅｓルート）、第１番目から第Ｎ番目の時間帯について処理を終えたので、元の処理に戻る。
【００３０】
図８を用いて、上で述べた分類処理の考え方について詳しく説明する。図８は、Ｎ＝４、Ｔ＿ａｌｌ＝４（時間）及びＳ＿ｍａｘ＝０．５（時間）のときに上で述べた分類処理を行った場合の結果を示している。上で述べた分類処理によれば、１番目の時間帯の開始時刻から終了時刻までのキャプチャデータが１番目のグループに分類される。２番目の時間帯の開始時刻より０．５時間前の時刻から２番目の時間帯の終了時刻までのキャプチャデータが２番目のグループに分類される。３番目の時間帯の開始時刻より０．５時間前の時刻から３番目の時間帯の終了時刻までのキャプチャデータが３番目のグループに分類される。４番目の時間帯の開始時刻より０．５時間前の時刻から４番目の時間帯の終了時刻までのキャプチャデータが４番目のグループに分類される。
【００３１】
そして、１番目の時間帯に終了するセッションは、１番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。２番目の時間帯に終了するセッションは、２番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。３番目の時間帯に終了するセッションは、３番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。４番目の時間帯に終了するセッションは、４番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。よって、上で述べた分類処理によれば、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのセッションを一通り再現することができる。
【００３２】
なお、上で述べた分類処理によれば、セッションの開始が存在しない不完全なセッションについてのキャプチャデータが各グループに分類されることがある。このようなキャプチャデータは取り除くようにしてもよい。
【００３３】
図６の説明に戻り、配備部１０６は、Ｎ個の検証系環境を配備し、各検証系環境にキャプチャデータを割り当てる（ステップＳ５）。ステップＳ５においては、Ｎ個の検証系環境の各々に対して１のグループに対応するキャプチャデータを割り当てる。キャプチャデータは分類後データ格納部１１１に格納される。
【００３４】
そして、各検証系環境における要求ＶＭ１１５及び応答ＶＭ１１０は、検証試験を実施し、検証試験の結果を解析結果格納部１１４に格納する（ステップＳ７）。例えば、検証試験の結果が「ＯＫ」又は「ＮＧ」のいずれであるかを示すデータを解析結果格納部１１４に格納する。なお、具体的な検証試験の内容は、上で説明したとおりである。
【００３５】
収集部１１６は、各検証系環境における検証試験の結果を収集する（ステップＳ９）。また、収集部１１６は、各検証系環境における検証試験の結果に基づき、最終的な検証試験の結果を含む出力データを生成し（ステップＳ１０）、出力部１１７に出力する。出力部１１７は、表示装置に出力データを表示させる。そして処理を終了する。
【００３６】
ステップＳ１１においては、例えば、各検証系環境から収集した検証試験の結果がいずれも「ＯＫ」を示している場合に、最終的な検証試験の結果を「ＯＫ」とし、いずれかの検証試験の結果が「ＮＧ」を示している場合に、最終的な検証試験の結果を「ＮＧ」とする。但し、このような方法に限られるわけではない。
【００３７】
以上のような処理によれば、単純に並列で検証試験を実施する場合と比較して、不完全なセッションが発生することを抑制し、セッションをより忠実に再現できるので、適切に検証試験を実施できるようになる。また、最長のセッションの時間Ｓ＿ｍａｘを利用しており、セッションの持続時間について解析しなくてもよいので、実装が簡単である。また、各グループに割り当てられたキャプチャデータの開始時刻（及び終了時刻）が規則的に決定されるため、検証試験を開始する際にキャプチャデータのバックアップをする場合には、そのバックアップを容易に行うことができる。また、キャプチャデータの開始時刻から終了時刻までの時間はいずれのグループも同じであるので、検証試験に要する時間を容易に見積もることができる。
【００３８】
さらに、各検証系環境においては、並列で検証試験を行わずに単純に実施した場合と同等の負荷で検証試験を行うことができる。
【００３９】
［実施の形態２］
第２の実施の形態においては、図９及び図１０を用いて、第１の実施の形態における分類処理の変形例について説明する。
【００４０】
図９に、第２の実施の形態における分類処理の処理フローを示す。ステップＳ３１乃至Ｓ３７の処理は、ステップＳ１１乃至Ｓ１７の処理と同じであるので、説明を省略する。
【００４１】
ステップＳ３９において、分類部１０３は、ＭがＭ＝Ｎを満たすか判断する（図９：ステップＳ３９）。ＭがＭ＝Ｎを満たさない場合（ステップＳ３９：Ｎｏルート）、分類部１０３は、Ｍ番目の時間帯の開始時刻からＭ番目の時間帯の終了時刻よりＳ＿ｍａｘ後の時刻までのキャプチャデータをＭ番目のグループに分類する（ステップＳ４１）。そしてステップＳ３７の処理に戻る。
【００４２】
一方、ＭがＭ＝Ｎを満たすと判断された場合（ステップＳ３９：Ｙｅｓルート）、分類部１０３は、Ｎ番目の時間帯の開始時刻から終了時刻までのキャプチャデータをＮ番目のグループに分類する（ステップＳ４３）。そして、第１番目から第Ｎ番目の時間帯について処理を終えたので、元の処理に戻る。
【００４３】
図１０を用いて、上で述べた分類処理の考え方について詳しく説明する。図１０は、図８と同様に、Ｎ＝４、Ｔ＿ａｌｌ＝４（時間）及びＳ＿ｍａｘ＝０．５（時間）のときに上で述べた分類処理を行った場合の結果を示している。上で述べた分類処理によれば、１番目の時間帯の開始時刻から１番目の時間帯の終了時刻より０．５時間後の時刻までのキャプチャデータが１番目のグループに分類される。２番目の時間帯の開始時刻から２番目の時間帯の終了時刻より０．５時間後の時刻までのキャプチャデータが２番目のグループに分類される。３番目の時間帯の開始時刻から３番目の時間帯の終了時刻より０．５時間後の時刻までのキャプチャデータが３番目のグループに分類される。４番目の時間帯の開始時刻から終了時刻までのキャプチャデータが４番目のグループに分類される。
【００４４】
そして、１番目の時間帯に開始するセッションは、１番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。２番目の時間帯に開始するセッションは、２番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。３番目の時間帯に開始するセッションは、３番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。４番目の時間帯に開始するセッションは、４番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。よって、上で述べた分類処理によれば、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのセッションを一通り再現することができる。
【００４５】
なお、上で述べた分類処理によれば、セッションの開始が存在しない不完全なセッションについてのキャプチャデータが各グループに分類されることがある。このようなキャプチャデータは取り除くようにしてもよい。
【００４６】
そして、第２の実施の形態の処理を実施すれば、第１の実施の形態と同様の効果を奏する。
【００４７】
［実施の形態３］
第３の実施の形態においては、図１１乃至図１３を用いて、分類処理の他の例について説明する。
【００４８】
図１１に、第３の実施の形態における分類処理の処理フローを示す。なお、検証試験装置１におけるキャプチャ部１０１は、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのキャプチャデータを予め実動系環境３から取得し、実動系データ格納部１０２に格納しているものとする。
【００４９】
分類部１０３は、ステップＳ１において読み出したキャプチャデータから、セッション毎に開始及び終了時刻を抽出し、セッションデータ格納部１０４に格納する（図１１：ステップＳ５１）。
【００５０】
図１２に、セッションデータ格納部１０４に格納されているデータの一例を示す。図１２の例では、セッションＩＤと、開始時刻と、終了時刻とが格納されている。上で述べたように、本実施の形態においては、「Ｇｅｔ／ｌｏｇｉｎ」の情報を含むパケットをセッションの開始を表すパケットであるとし、「Ｇｅｔ／ｌｏｇｏｕｔ」の情報を含むパケットはセッションの終了を表すパケットであるとする。
【００５１】
分類部１０３は、Ｔ＿ａｌｌ／Ｎ（Ｎは２以上の自然数）によって１個の時間帯の長さＴ＿ｄｉｖを求めることで、各時間帯の開始時刻及び終了時刻を特定する（ステップＳ５３）。
【００５２】
分類部１０３は、時間帯の数をカウントするための変数Ｍ（Ｍは１≦Ｍ≦Ｎを満たす自然数）をＭ＝０に設定する（ステップＳ５５）。また、分類部１０３は、Ｍの値を１増やす（ステップＳ５７）。
【００５３】
分類部１０３は、ＭがＭ＝１を満たすか判断する（ステップＳ５９）。ＭがＭ＝１を満たす場合（ステップＳ５９：Ｙｅｓルート）、分類部１０３は、１番目の時間帯の開始時刻から終了時刻までのキャプチャデータを１番目のグループに分類し、記憶装置に格納する（ステップＳ６１）。すなわち、１番目の時間帯に対応するキャプチャデータを１番目のグループに分類する。そしてステップＳ５７の処理に戻る。
【００５４】
一方、ＭがＭ＝１を満たさない場合（ステップＳ５９：Ｎｏルート）、分類部１０３は、ＭがＭ＞Ｎを満たすか判断する（ステップＳ６３）。ＭがＭ＞Ｎを満たさない場合（ステップＳ６３：Ｎｏルート）、分類部１０３は、Ｍ番目の時間帯の開始時刻から終了時刻までの間に終了するセッションのＩＤをセッションデータ格納部１０４から特定する（ステップＳ６５）。ステップＳ６５においては、「Ｇｅｔ／ｌｏｇｏｕｔ」の情報を含むパケットはセッションの終了を表すパケットをキャプチャデータから特定し、特定されたパケットのキャプチャデータに含まれるセッションＩＤを特定する。なお、本実施の形態においてはセッションの終了を識別できることを前提としているが、セッションの終了を識別困難である場合もある。そこで、セッションの終了を識別できない場合には、上記期間内に一部でもセッションが行われている場合に、そのセッションのＩＤを特定するようにしてもよい。
【００５５】
分類部１０３は、ステップＳ６５において特定されたセッションのＩＤに係るセッションの開始時刻のうち最も早い開始時刻から、Ｍ番目の時間帯の終了時刻までのキャプチャデータをＭ番目のグループに分類する（ステップＳ６７）。そして、次のＭについて処理するため、ステップＳ５７の処理に戻る。
【００５６】
ステップＳ６３において、ＭがＭ＞Ｎを満たすと判断された場合（ステップＳ６３：Ｙｅｓルート）、第１番目から第Ｎ番目の時間帯について処理を終えたので、元の処理に戻る。
【００５７】
図１３を用いて、上で述べた分類処理の考え方について詳しく説明する。図１３は、Ｎ＝４及びＴ＿ａｌｌ＝４（時間）のときに上で述べた分類処理を行った場合の結果を示している。上で述べた分類処理によれば、１番目の時間帯の開始時刻から終了時刻までの間に終了するセッションについてのキャプチャデータが１番目のグループ（時間の長さは１時間）に分類される。また、２番目の時間帯の開始時刻から終了時刻までの間に終了するセッションについてのキャプチャデータが２番目のグループ（時間の長さは１時間＋α１）に分類される。また、３番目の時間帯の開始時刻から終了時刻までの間に終了するセッションについてのキャプチャデータが３番目のグループ（時間の長さは１時間＋α２）に分類される。また、４番目の時間帯の開始時刻から終了時刻までの間に終了するセッションについてのキャプチャデータが４番目のグループ（時間の長さは１時間＋α３）に分類される。ここで、時間α１乃至α３は同じ長さであるとは限らない。
【００５８】
従って、１番目の時間帯に終了するセッションであるセッション１は、１番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。２番目の時間帯に終了するセッションであるセッション２及びセッション３は、２番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。３番目の時間帯に終了するセッションであるセッション４、セッション５及びセッション６は、３番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。４番目の時間帯に終了するセッションであるセッション７及びセッション８は、４番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。よって、上で述べた分類処理によれば、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのセッションを一通り再現することができる。
【００５９】
なお、上で述べた分類処理によれば、セッションの開始が存在しない不完全なセッションについてのキャプチャデータが各グループに分類されることがある。例えば、３番目のグループにおいて、セッション２及びセッション３は不完全なセッションとなる。このような不完全なセッションのキャプチャデータは取り除くようにしてもよい。
【００６０】
また、第３の実施の形態においては、最長のセッションの時間を見積もることができない場合であっても、キャプチャデータの分類を行うことができる。また、セッションの持続時間を厳密に求めた上で処理を行っているので、第１及び第２の実施の形態の場合と比較して、検証試験に要する時間を短くできる場合がある。さらに、上で述べたように、セッションの終了はセッションの開始と比較して識別が困難である場合があるが、ステップＳ６５の説明で述べたように、本実施の形態であればセッションの終了を識別できない場合であっても適用可能である。
【００６１】
［実施の形態４］
第４の実施の形態においては、図１４及び図１５を用いて、第３の実施の形態における分類処理の変形例について説明する。
【００６２】
図１４に、第４の実施の形態における分類処理の処理フローを示す。ステップＳ７１乃至Ｓ７７の処理は、ステップＳ５１乃至Ｓ５７の処理と同じであるので、説明を省略する。
【００６３】
ステップＳ７９において、分類部１０３は、ＭがＭ＝Ｎを満たすか判断する（ステップＳ７９）。ＭがＭ＝Ｎを満たさない場合（ステップＳ７９：Ｎｏルート）、分類部１０３は、Ｍ番目の時間帯の開始時刻から終了時刻までの間に開始するセッションのＩＤをセッションデータ格納部１０４から特定する（ステップＳ８１）。
【００６４】
分類部１０３は、Ｍ番目の時間帯の開始時刻から、特定されたセッションのＩＤに係るセッションの終了時刻のうち最も遅い終了時刻までのキャプチャデータをＭ番目のグループに分類する（ステップＳ８３）。そして、次のＭについて処理するため、ステップＳ７７の処理に戻る。
【００６５】
一方、ＭがＭ＝Ｎを満たす場合（ステップＳ７９：Ｙｅｓルート）、分類部１０３は、Ｎ番目の時間帯の開始時刻から終了時刻までのキャプチャデータをＮ番目のグループに分類する（ステップＳ８５）。そして、第１番目から第Ｎ番目の時間帯について処理を終えたので、元の処理に戻る。
【００６６】
図１５を用いて、上で述べた分類処理の考え方について詳しく説明する。図１５は、Ｎ＝４及びＴ＿ａｌｌ＝４（時間）のときに上で述べた分類処理を行った場合の結果を示している。上で述べた分類処理によれば、１番目の時間帯の開始時刻から終了時刻までの間に開始するセッションについてのキャプチャデータが１番目のグループ（時間の長さは１時間＋α１）に分類される。また、２番目の時間帯の開始時刻から終了時刻までの間に開始するセッションについてのキャプチャデータが２番目のグループ（時間の長さは１時間＋α２）に分類される。また、３番目の時間帯の開始時刻から終了時刻までの間に開始するセッションについてのキャプチャデータが３番目のグループ（時間の長さは１時間＋α３）に分類される。また、４番目の時間帯の開始時刻から終了時刻までの間に開始するセッションについてのキャプチャデータが４番目のグループ（時間の長さは１時間）に分類される。ここで、時間α１乃至α３は同じ長さであるとは限らない。
【００６７】
従って、１番目の時間帯に開始するセッションであるセッション１及びセッション２は、１番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。２番目の時間帯に開始するセッションであるセッション３、セッション４及びセッション５は、２番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。３番目の時間帯に終了するセッションであるセッション６及びセッション７は、３番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。４番目の時間帯に開始するセッションであるセッション８は、４番目のグループに対応するキャプチャデータについて検証試験を実施した際に再現されるようになる。よって、上で述べた分類処理によれば、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのセッションを一通り再現することができる。
【００６８】
なお、上で述べた分類処理によれば、セッションの開始が存在しない不完全なセッションについてのキャプチャデータが各グループに分類されることがある。例えば、３番目のグループにおいて、セッション４及びセッション５は不完全なセッションとなる。このような不完全なセッションのキャプチャデータは取り除くようにしてもよい。
【００６９】
また、第４の実施の形態においては、最長のセッションの時間を見積もることができない場合であっても、キャプチャデータの分類を行うことができる。また、セッションの持続時間を厳密に求めた上で処理を行っているので、第１及び第２の実施の形態の場合と比較して、検証試験に要する時間を短くできる場合がある。さらに、各グループに割り当てられたキャプチャデータの開始時刻が規則的に決定されるため、検証試験を開始する際にキャプチャデータのバックアップをする場合には、そのバックアップを容易に行うことができる。
【００７０】
［実施の形態５］
第５の実施の形態においては、図１６を用いて、分類処理の他の例について説明する。
【００７１】
図１６に、第５の実施の形態における分類処理の処理フローを示す。なお、検証試験装置１におけるキャプチャ部１０１は、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのキャプチャデータを予め実動系環境３から取得し、実動系データ格納部１０２に格納しているものとする。ステップＳ９１乃至Ｓ９７の処理は、ステップＳ５１乃至Ｓ５７の処理と同じであるので、説明を省略する。
【００７２】
分類部１０３は、ＭがＭ＞Ｎを満たすか判断する（ステップＳ９９）。ＭがＭ＞Ｎを満たさない場合（ステップＳ９９：Ｎｏルート）、分類部１０３は、Ｍ番目の時間帯の開始時刻から終了時刻までの間に終了するセッションのＩＤをセッションデータ格納部１０４から特定する（ステップＳ１０１）。ステップＳ１０１においては、「Ｇｅｔ／ｌｏｇｏｕｔ」の情報を含むパケットはセッションの終了を表すパケットをキャプチャデータから特定し、特定されたパケットのキャプチャデータに含まれるセッションＩＤを特定する。なお、本実施の形態においてはセッションの終了を識別できることを前提としているが、セッションの終了を識別困難である場合もある。そこで、セッションの終了を識別できない場合には、Ｍ番目の時間帯の開始時刻から終了時刻までの間に一部でもセッションが行われている場合に、そのセッションのＩＤを特定するようにしてもよい。
【００７３】
分類部１０３は、ステップＳ１０１において特定されたセッションのＩＤを含むキャプチャデータをＭ番目のグループに分類する（ステップＳ１０３）。そして、次のＭについて処理するため、ステップＳ９７の処理に戻る。
【００７４】
ステップＳ９９において、ＭがＭ＞Ｎを満たすと判断された場合（ステップＳ９９：Ｙｅｓルート）、第１番目から第Ｎ番目の時間帯について処理を終えたので、元の処理に戻る。
【００７５】
このような処理を実施すれば、各グループにおいて不完全なセッションについてのキャプチャデータが含まれないようにしつつ、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのセッションを漏れなく再現することができるようになる。
【００７６】
［実施の形態６］
第６の実施の形態においては、図１７を用いて、第５の実施の形態における分類処理の変形例について説明する。
【００７７】
図１７に、第６の実施の形態における分類処理の処理フローを示す。なお、ステップＳ１１３乃至Ｓ１２１の処理は、ステップＳ９１乃至Ｓ９９の処理と同じであるので、説明を省略する。
【００７８】
ステップＳ１２１において、ＭがＭ＞Ｎを満たさないと判断された場合（ステップＳ１２１：Ｎｏルート）、分類部１０３は、Ｍ番目の時間帯の開始時刻から終了時刻までの間に開始するセッションのＩＤを特定する（ステップＳ１２３）。また、分類部１０３は、ステップＳ１２３において特定されたセッションのＩＤを含むキャプチャデータをＭ番目のグループに分類する（ステップＳ１２５）。そして、次のＭについて処理するため、ステップＳ１１９の処理に戻る。
【００７９】
ステップＳ１２１において、ＭがＭ＞Ｎを満たすと判断された場合（ステップＳ１２１：Ｙｅｓルート）、第１番目から第Ｎ番目の時間帯について処理を終えたので、元の処理に戻る。
【００８０】
このような処理を実施すれば、各グループにおいて不完全なセッションについてのキャプチャデータが含まれないようにしつつ、時刻Ｔ＿ｓｔａから時刻Ｔ＿ｅｎｄまでのセッションを漏れなく再現することができるようになる。
【００８１】
［実施の形態７］
第７の実施の形態においては、図１８を用いて、入力された検証時間を満たすような分割数Ｎを算出する方法について説明する。
【００８２】
図１８に、分割数Ｎの算出処理を示すフローチャートを示す。まず、算出部１０５は、最長検証時間Ｔ＿ｍａｘの入力を検証試験装置１のユーザから受け付ける（図１８：ステップＳ１３１）。最長検証時間Ｔ＿ｍａｘは、検証試験装置１のユーザが許容する最長の検証時間である。また、算出部１０５は、追加時間αの入力を受け付ける（ステップＳ１３３）。追加時間αは、ユーザが見積もった、最長のセッションの時間である。
【００８３】
算出部１０５は、ＮをＮ＝１に設定する（ステップＳ１３５）。そして、算出部１０５は、Ｔ＿ａｌｌ／Ｎ＋α＜Ｔ＿ｍａｘを満たすか判断する（ステップＳ１３７）。すなわち、各グループに割り当てられるキャプチャデータの開始時刻から終了時刻までの時間が、最長検証時間よりも短いか判断する。
【００８４】
Ｔ＿ａｌｌ／Ｎ＋α＜Ｔ＿ｍａｘを満たさない場合（ステップＳ１３７：Ｎｏルート）、算出部１０５は、Ｎの値を１増やす（ステップＳ１３９）。そしてステップＳ１３７の処理に戻る。一方、Ｔ＿ａｌｌ／Ｎ＋α＜Ｔ＿ｍａｘを満たす場合（ステップＳ１３７：Ｙｅｓルート）、算出部１０５は、算出されたＮの値を分類部１０３に出力する（ステップＳ１４１）。そして処理を終了する。
【００８５】
以上のような処理を実施することにより、入力された最長検証時間を満たすような分割数Ｎを算出することができるようになる。なお、本実施の形態の処理を実施する場合には、第１及び第２の実施の形態においてＳ＿ｍａｘとして追加時間αを用いる。
【００８６】
［実施の形態８］
第８の実施の形態においては、図１９を用いて、分割数Ｎ（すなわち、配備する検証系環境の数）に制限がある場合において、分割数Ｎを算出する方法について説明する。
【００８７】
図１９に、分割数Ｎの算出処理を示すフローチャートを示す。まず、算出部１０５は、最大システム数Ｎ＿ｍａｘ及び要求検証時間Ｔ＿ｒｅｑの入力を検証試験装置１のユーザから受け付ける（図１９：ステップＳ１５１）。最大システム数Ｎ＿ｍａｘは、配備可能な検証系環境の数の最大値である。要求検証時間Ｔ＿ｒｅｑは、検証試験装置１のユーザが要求する検証時間であり、本実施の形態においては、要求検証時間の条件を満たすようなＮを算出できない場合もある。
【００８８】
算出部１０５は、追加時間αの入力を受け付ける（ステップＳ１５３）。追加時間αは、ユーザが見積もった、最長のセッションの時間である。
【００８９】
算出部１０５は、ＮをＮ＝１に設定する（ステップＳ１５５）。そして、算出部１０５は、Ｔ＿ａｌｌ／Ｎ＋α＜Ｔ＿ｒｅｑ又はＮ＝Ｎ＿ｍａｘを満たすか判断する（ステップＳ１５７）。
【００９０】
Ｔ＿ａｌｌ／Ｎ＋α＜Ｔ＿ｒｅｑ及びＮ＝Ｎ＿ｍａｘのいずれも満たさない場合（ステップＳ１５７：Ｎｏルート）、算出部１０５は、Ｎの値を１増やす（ステップＳ１５９）。そしてステップＳ１５７の処理に戻る。一方、Ｔ＿ａｌｌ／Ｎ＋α＜Ｔ＿ｒｅｑ又はＮ＝Ｎ＿ｍａｘのいずれかを満たす場合（ステップＳ１５７：Ｙｅｓルート）、算出部１０５は、算出されたＮの値を分類部１０３に出力する（ステップＳ１６１）。そして処理を終了する。
【００９１】
以上のような処理を実施することにより、最大システム数の上限を超えない限りにおいて、入力された要求検証時間を満たすような分割数Ｎを算出することができるようになる。なお、本実施の形態の処理を実施する場合には、第１及び第２の実施の形態においてＳ＿ｍａｘとして追加時間αを用いる。
【００９２】
［実施の形態９］
第９の実施の形態においては、図２０を用いて、第９の実施の形態における分類処理の変形例について説明する。
【００９３】
まず、分類部１０３は、ステップＳ１において読み出したキャプチャデータから、未処理のパケットを１つ特定する（図２０：ステップＳ１７１）。ステップＳ１７１においては、例えば、取得時刻が早いパケットから順に未処理のパケットを特定する。
【００９４】
分類部１０３は、ステップＳ１７１において特定されたパケットが、セッションの開始を表すパケットであるか判断する（ステップＳ１７３）。ステップＳ１７３においては、例えば「Ｇｅｔ／ｌｏｇｉｎ」の情報を含むパケットであれば、セッションの開始を表すパケットであるとする。なお、セッションの開始ではなく、セッションの終了を表すパケットであるかを判断するようにしてもよい。
【００９５】
セッションの開始を表すパケットではない場合（ステップＳ１７３：Ｎｏルート）、ステップＳ１７７の処理に移行する。一方、セッションの開始を表すパケットである場合（ステップＳ１７３：Ｙｅｓルート）、分類部１０３は、Ｎ（Ｎは２以上の自然数）個のグループの中から、キャプチャデータを分類すべきグループを決定する（ステップＳ１７５）。ステップＳ１７５において、例えばラウンドロビンによって決定する。また、分類部１０３は、ステップＳ１７１において特定されたパケットのキャプチャデータに含まれるセッションＩＤと同一のセッションＩＤを含むキャプチャデータを、ステップＳ１７５において決定されたグループに分類する（ステップＳ１７７）。
【００９６】
分類部１０３は、ステップＳ１において読み出したキャプチャデータに未処理のパケットが有るか判断する（ステップＳ１７９）。未処理のパケットが有る場合（ステップＳ１７９：Ｙｅｓルート）、次のパケットについて処理するため、ステップＳ１７１の処理に戻る。一方、未処理のパケットが無い場合（ステップＳ１７９：Ｎｏルート）、元の処理に戻る。
【００９７】
以上のような処理を実施すれば、時間帯を利用した処理を行わなくてもキャプチャデータを複数のグループに分類できるので、検証試験を並列で実施することができるようになる。
【００９８】
以上本技術の一実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明した検証試験装置１の機能ブロック構成は必ずしも実際のプログラムモジュール構成に対応するものではない。
【００９９】
また、上で説明した各テーブルの構成は一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【０１００】
なお、実動系環境３は、検証試験装置１内において仮想的に実現してもよいし、検証試験装置１とは別の装置内において仮想的に実現してもよい。また、検証系環境１０７を検証試験装置１とは別の装置内において仮想的に実現してもよいし、検証系環境１０７を物理サーバ等を用いて実現してもよい。
【０１０１】
また、第１及び第２の実施の形態においては、実動系データ格納部１０２に格納されているキャプチャデータを用いて、最長セッション時間Ｓ＿ｍａｘを算出するようにしてもよい。
【０１０２】
また、上で述べたような方法によって並列で検証試験を実施すると、一通りセッションを再現することはできても、関連のある複数のセッションが別々の検証系環境において再現されることによって問題が発生する可能性がある。しかし、このような場合には、問題が発生した部分から所定範囲内におけるキャプチャデータのみ検証試験を実施し直すことで、サーバの動作に本当に問題が有るかを短時間で確認することができる。
【０１０３】
なお、上で述べた検証試験装置１、クライアント端末３１及びサーバ３５は、コンピュータ装置であって、図２１に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【０１０４】
以上述べた本技術の実施の形態をまとめると、以下のようになる。
【０１０５】
本実施の形態に係る情報処理方法は、（Ａ）パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す処理と、（Ｂ）第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出されたパケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットがｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類処理と、（Ｃ）Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する処理とを含む。
【０１０６】
このようにすれば、並列処理によって検証試験の時間を短縮する場合において、不完全なセッションの発生を抑制し、第１の時刻から第２の時刻までのセッションをより忠実に再現できるので、適切な検証試験を実施できるようになる。
【０１０７】
また、上で述べたパケットに含まれるセッション情報には、セッションのＩＤと当該セッションの開始又は終了を特定するためのデータとが含まれるようにしてもよい。そして、上で述べた分類処理が、（ｂ１）セッションの開始又は終了を特定するためのデータを用いて、ｍ番目の時間帯に取得した、セッションの終了を表すパケット又はセッションの開始を表すパケットを特定し、特定された当該パケットのデータに含まれるセッションのＩＤを特定する処理と、（ｂ２）特定されたセッションのＩＤを含むパケットのデータを、ｍ番目のグループに分類する処理とを含むようにしてもよい。このようにすれば、セッションの長さを予め把握できていない場合であっても、分類を適切に行うことができるようになる。
【０１０８】
また、上で述べた分類処理が、（ｂ３）１番目の時間帯に取得したパケットのデータを１番目のグループに分類し且つｌ（ｌは２≦ｌ≦Ｎを満たす自然数）番目の時間帯の開始時刻より最長のセッションの時間Ｔ前の時刻から当該ｌ番目の時間帯の終了時刻までの時間に取得したパケットのデータをｌ番目のグループに分類し、又はｋ（ｋは１≦ｋ≦（Ｎ−１）を満たす自然数）番目の時間帯の開始時刻から当該ｋ番目の時間帯の終了時刻よりＴ後の時刻までの時間に取得したパケットのデータをｋ番目のグループに分類し且つＮ番目の時間帯に取得したパケットのデータをＮ番目のグループに分類する処理を含むようにしてもよい。このようにすると、ｍ番目の時間帯に終了（又は開始）したセッションに含まれるパケットのデータは複数のグループに分類されることがあるが、ｍ番目のグループにおいては、セッションの開始から終了までのパケットのデータが含まれるようになる。これにより、第１の時刻から第２の時刻までのセッションを漏れなく再現することができるようになる。
【０１０９】
また、上で述べた本情報処理方法が、（Ｄ）検証時間の入力を受け付けた場合、第１の時刻から第２の時刻までの時間をＪ（Ｊは２以上の自然数）で除した時間にＴを加えた時間が検証時間よりも短くなるという条件を満たすＪのうち最小の値であるＮを算出する処理をさらに含むようにしてもよい。そして、上で述べた分類処理において、第１の時刻から第２の時刻までの時間をＮ個の同じ長さの時間帯に分割するようにしてもよい。このようにすれば、検証時間内に検証試験を完了できるようになる。
【０１１０】
また、上で述べた本情報処理方法が、（Ｅ）検証時間及びマシンの数の最大値の入力を受け付けた場合、第１の時刻から第２の時刻までの時間をＪ（Ｊは２以上の自然数）で除した時間にＴを加えた時間が検証時間よりも短くなるという条件を満たすＪのうち最小の値と、マシンの数の最大値とのうち小さい方の値であるＮを算出する処理をさらに含むようにしてもよい。そして、上で述べた分類処理において、第１の時刻から第２の時刻までの時間をＮ個の同じ長さの時間帯に分割するようにしてもよい。このようにすれば、マシンの数が最大値を超えない限りにおいて、検証時間内に検証試験を完了できるようになる。
【０１１１】
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【０１１２】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１１３】
（付記１）
装置間で送受信され且つセッション情報を含むパケットを記憶装置に記憶し、
前記記憶装置に記憶されたパケットの送受信により実現される複数のセッションの各々が、検証試験を実施する複数のマシンのうち少なくともいずれかのマシンにおいて開始から終了まで実現されるように、前記記憶装置に記憶されたパケットの振り分け先のマシンを前記セッション情報に基づき決定し、
前記複数のマシンの各々に、当該マシンに振り分けられたパケットを用いた検証試験を実施させる
処理をコンピュータに実行させるためのプログラム。
【０１１４】
（付記２）
パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す処理と、
前記第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出された前記パケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットがｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、前記第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類処理と、
前記Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する処理と、
をコンピュータに実行させるためのプログラム。
【０１１５】
（付記３）
前記パケットに含まれるセッション情報には、セッションのＩＤと当該セッションの開始又は終了を特定するためのデータとが含まれ、
前記分類処理が、
前記セッションの開始又は終了を特定するためのデータを用いて、ｍ番目の時間帯に取得した、セッションの終了を表すパケット又はセッションの開始を表すパケットを特定し、特定された当該パケットに含まれるセッションのＩＤを特定する処理と、
特定された前記セッションのＩＤを含むパケットを、ｍ番目のグループに分類する処理と、
を含む付記２記載のプログラム。
【０１１６】
（付記４）
前記分類処理が、
１番目の時間帯に取得したパケットを１番目のグループに分類し且つｌ（ｌは２≦ｌ≦Ｎを満たす自然数）番目の時間帯の開始時刻より最長のセッションの時間Ｔ前の時刻から当該ｌ番目の時間帯の終了時刻までの時間に取得したパケットをｌ番目のグループに分類し、又はｋ（ｋは１≦ｋ≦（Ｎ−１）を満たす自然数）番目の時間帯の開始時刻から当該ｋ番目の時間帯の終了時刻より前記Ｔ後の時刻までの時間に取得したパケットをｋ番目のグループに分類し且つＮ番目の時間帯に取得したパケットをＮ番目のグループに分類する処理
を含む付記２記載のプログラム。
【０１１７】
（付記５）
検証時間の入力を受け付けた場合、前記第１の時刻から第２の時刻までの時間をＪ（Ｊは２以上の自然数）で除した時間に前記Ｔを加えた時間が前記検証時間よりも短くなるという条件を満たすＪのうち最小の値であるＮを算出する処理
をさらに実行させ、
前記分類処理において、前記第１の時刻から第２の時刻までの時間をＮ個の同じ長さの時間帯に分割する
付記４記載のプログラム。
【０１１８】
（付記６）
検証時間及び前記マシンの数の最大値の入力を受け付けた場合、前記第１の時刻から第２の時刻までの時間をＪ（Ｊは２以上の自然数）で除した時間に前記Ｔを加えた時間が前記検証時間よりも短くなるという条件を満たすＪのうち最小の値と、前記マシンの数の最大値とのうち小さい方の値であるＮを算出する処理
をさらに実行させ、
前記分類処理において、前記第１の時刻から第２の時刻までの時間をＮ個の同じ長さの時間帯に分割する
付記４記載のプログラム。
【０１１９】
（付記７）
装置間で送受信され且つセッション情報を含むパケットを記憶装置に記憶し、
前記記憶装置に記憶されたパケットの送受信により実現される複数のセッションの各々が、検証試験を実施する複数のマシンのうち少なくともいずれかのマシンにおいて開始から終了まで実現されるように、前記記憶装置に記憶されたパケットの振り分け先のマシンを前記セッション情報に基づき決定し、
前記複数のマシンの各々に、当該マシンに振り分けられたパケットを用いた検証試験を実施させる
処理をコンピュータが実行する情報処理方法。
【０１２０】
（付記８）
装置間で送受信され且つセッション情報を含むパケットが記憶されている記憶装置と、
前記記憶装置に記憶されたパケットの送受信により実現される複数のセッションの各々が、検証試験を実施する複数のマシンのうち少なくともいずれかのマシンにおいて開始から終了まで実現されるように、前記記憶装置に記憶されたパケットの振り分け先のマシンを前記セッション情報に基づき決定する決定部と、
前記複数のマシンの各々に、当該マシンに振り分けられたパケットを用いた検証試験を実施させる実施部と
有する情報処理装置。
【０１２１】
（付記９）
パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す処理と、
前記第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出された前記パケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、前記第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類処理と、
前記Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する処理と、
をコンピュータが実行する情報処理方法。
【０１２２】
（付記１０）
パケットと当該パケットの取得時刻とを対応付けて格納するデータ格納部から、第１の時刻から第２の時刻までの時間に取得したパケットと当該パケットの取得時刻とを読み出す読み出し部と、
前記第１の時刻から第２の時刻までの時間をＮ（Ｎは２以上の自然数）個の時間帯に分割し、読み出された前記パケットに含まれるセッション情報及び当該パケットの取得時刻に基づき、ｍ（ｍは１≦ｍ≦Ｎを満たす自然数）番目の時間帯に終了したセッションに含まれるパケットがｍ番目のグループに分類されるように又はｍ番目の時間帯に開始したセッションに含まれるパケットがｍ番目のグループに分類されるように、前記第１の時刻から第２の時刻までの時間に取得したパケットをＮ個のグループに分類する分類部と、
前記Ｎ個のグループの各々に分類されたパケットを、パケットによる要求及び応答についての検証試験を実施するためのＮ個のマシンのうち対応するマシンに出力する出力部と、
を有する情報処理装置。
【符号の説明】
【０１２３】
１  検証試験装置    １０１  キャプチャ部
１０２  実動系データ格納部    １０３  分類部
１０４  セッションデータ格納部    １０５  算出部
１０６  配備部    １０７  検証系環境
１０８  分類後データ格納部    １０９  送信部
１１０  応答ＶＭ    １１１  キャプチャ部
１１２  検証系データ格納部    １１３  解析部
１１４  解析結果格納部    １１５  要求ＶＭ
１１６  収集部  １１７  出力部
１１８  管理ＶＭ
３  実動系環境    ３１  クライアント端末
３３  通信装置    ３５  サーバ
【図１】
0005768722.tif 000002
【図２】
0005768722.tif 000003
【図３】
0005768722.tif 000004
【図４】
0005768722.tif 000005
【図５】
0005768722.tif 000006
【図６】
0005768722.tif 000007
【図７】
0005768722.tif 000008
【図８】
0005768722.tif 000009
【図９】
0005768722.tif 000010
【図１０】
0005768722.tif 000011
【図１１】
0005768722.tif 000012
【図１２】
0005768722.tif 000013
【図１３】
0005768722.tif 000014
【図１４】
0005768722.tif 000015
【図１５】
0005768722.tif 000016
【図１６】
0005768722.tif 000017
【図１７】
0005768722.tif 000018
【図１８】
0005768722.tif 000019
【図１９】
0005768722.tif 000020
【図２０】
0005768722.tif 000021
【図２１】
0005768722.tif 000022