(57)【要約】【課題】  取得条件を満たすデータを記憶装置から取得する複数の取得方式の中からデータを効率よく取得する取得方式を選択するための指標を設定する。【解決手段】  所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する情報処理装置において、測定部は、データの取得条件毎に、取得条件を満たす取得対象のデータをオブジェクト単位で記憶装置から取得するのに掛かる取得時間と、取得対象のデータをセッション単位での記憶装置から取得するのに掛かる取得時間とを測定する。設定部は、測定部が測定した取得時間に基づいて、データの取得要求に含まれる取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで記憶装置から取得するかを判定する判定条件を設定する。【選択図】    図１
2019086966.tif 000002
【特許請求の範囲】
【請求項１】
所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する情報処理装置において、
データの取得条件毎に、前記取得条件を満たす取得対象のデータをオブジェクト単位で前記記憶装置から取得するのに掛かる取得時間と、前記取得対象のデータをセッション単位での前記記憶装置から取得するのに掛かる取得時間とを測定する測定部と、
前記測定部が測定した取得時間に基づいて、データの取得要求に含まれる前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する判定条件を設定する設定部と
を備えることを特徴とする情報処理装置。
【請求項２】
前記設定部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数であるセッション数を、データの取得方式をオブジェクト単位またはセッション単位に切り替える閾値として前記判定条件に設定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記設定部は、
前記測定部が測定した取得時間に基づいて、オブジェクト単位およびセッション単位でのデータの取得方式のうち取得時間が短い取得方式を複数の前記セッション数毎に特定し、
前記セッション数の各々を仮の判定条件に設定し、前記セッション数のそれぞれについて前記仮の判定条件に基づいて判定される取得方式が、特定した取得方式と一致するかを判定し、
一致した割合が最も高いセッション数を前記閾値に設定する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記設定部は、オブジェクト内において前記取得対象のデータが占める割合を、データの取得方式をオブジェクト単位またはセッション単位に切り替える閾値として前記判定条件に設定することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記取得条件を含む取得要求に基づいて、前記取得対象のデータを含むオブジェクトを検索し、検索により見つけたオブジェクト毎に、前記判定条件に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得する取得部を備えることを特徴とする請求項１ないし請求項４のいずれか１項に記載の情報処理装置。
【請求項６】
前記設定部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数であるセッション数を、データの取得方式をオブジェクト単位またはセッション単位に切り替える第１の閾値として前記判定条件に設定し、オブジェクト内において前記取得対象のデータが占める割合を、データの取得方式をオブジェクト単位またはセッション単位に切り替える第２の閾値として前記判定条件に設定し、
前記情報処理装置はさらに、
前記取得条件に基づいて、前記取得対象のデータを含むオブジェクトを検索し、検索により見つけたオブジェクト毎に、前記第１の閾値および前記第２の閾値に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得する取得部を備えることを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記取得部は、前記設定部が前記判定条件を設定するまで、データをオブジェクト単位で取得する頻度とデータをセッション単位で取得する頻度とを互いに同じに設定し、
前記測定部は、前記取得部によるデータの取得時間を測定し、
前記設定部は、データが所定回数取得された後、前記測定部が測定した取得時間に基づいて前記判定条件を設定し、
前記取得部は、前記判定条件が設定された後、前記判定条件に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得することを特徴とする請求項５または請求項６に記載の情報処理装置。
【請求項８】
前記取得部は、前記判定条件が設定された後、前記判定条件に基づいて決定した取得方式と逆の取得方式でのデータの取得を所定の頻度で実行し、
前記設定部は、前記判定条件が設定された後、データが所定回数取得される毎に、前記測定部が測定した取得時間に基づいて前記判定条件を更新することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記設定部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数であるセッション数とオブジェクト内において前記取得対象のデータが占める割合とのペアと、前記ペアに対応して前記測定部が測定したオブジェクト単位でのデータの取得時間とセッション単位でのデータの取得時間とに基づいて、前記セッション数と前記データが占める割合との二次元分布において前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する境界線を示す情報を前記判定条件として設定し、
前記情報処理装置はさらに、
前記取得条件を含む取得要求に基づいて、前記取得対象のデータを含むオブジェクトを検索し、検索により見つけたオブジェクト毎の前記セッション数と前記データが占める割合との二次元分布上の位置と前記境界線との位置関係に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得する取得部を備えることを特徴とする請求項１に記載の情報処理装置。
【請求項１０】
所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する第１の情報処理装置と、データの取得条件を含む取得要求を前記第１の情報処理装置に発行する第２の情報処理装置とを有する情報処理システムにおいて、
前記第１の情報処理装置は、
データの取得条件毎に、前記取得条件を満たす取得対象のデータをオブジェクト単位で前記記憶装置から取得するのに掛かる取得時間と、前記取得対象のデータをセッション単位での前記記憶装置から取得するのに掛かる取得時間とを測定する測定部と、
前記測定部が測定した取得時間に基づいて、データの取得要求に含まれる前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する判定条件を設定する設定部と
を備えることを特徴とする情報処理システム。
【請求項１１】
所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する情報処理装置に、
データの取得条件毎に、前記取得条件を満たす取得対象のデータをオブジェクト単位で前記記憶装置から取得するのに掛かる取得時間と、前記取得対象のデータをセッション単位での前記記憶装置から取得するのに掛かる取得時間とを測定させ、
測定した取得時間に基づいて、データの取得要求に含まれる前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する判定条件を設定させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システムおよびプログラムに関する。
【背景技術】
【０００２】
オンラインサービスに各種情報を発行する発行者は、発行する内容とは別にトピック、場所、人物等のストーリー特性による検索のための問い合わせを定義し、データセンターに発行する。データセンターの情報検索サーバは、所定の内容を見つけるサーチオブジェクトをパーズしてインデックス化する。これにより、複数の発行者がいるオンラインサービスにおいて、オンラインサービスを利用する顧客に高い検索能力が提供される（例えば、特許文献１参照）。
【０００３】
クラウド解析・提示サービスは、クラウドサービスを利用するユーザが入力するデータセンターの仕様と、費用、性能等のデータセンターの要件とに基づいて決定したデータセンターの候補の中から、ユーザが利用するデータセンターを選択する。データセンターがアップデートされた場合、新たなデータセンターへの移行がユーザの利益となるかが判定される（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平９−３２５９６８号公報
【特許文献２】特表２０１７−５０９０４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、通信装置間で伝送されるデータをミラーリング等の手法により取得するキャプチャ装置が知られている。この種のキャプチャ装置は、取得したデータを記憶装置に順次格納し、データの取得条件を含む取得要求を受信した場合、取得条件を満たすデータを記憶装置から取得し、取得したデータを取得要求の発行元に転送する。
【０００６】
１つの側面では、本発明は、取得条件を満たすデータを記憶装置から取得する複数の取得方式の中からデータを効率よく取得する取得方式を選択するための指標を設定することを目的とする。
【課題を解決するための手段】
【０００７】
一つの実施態様では、所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する情報処理装置において、データの取得条件毎に、取得条件を満たす取得対象のデータをオブジェクト単位で記憶装置から取得するのに掛かる取得時間と、取得対象のデータをセッション単位での記憶装置から取得するのに掛かる取得時間とを測定する測定部と、測定部が測定した取得時間に基づいて、データの取得要求に含まれる取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで記憶装置から取得するかを判定する判定条件を設定する設定部とを有する。
【発明の効果】
【０００８】
１つの側面では、本発明は、取得条件を満たすデータを記憶装置から取得する複数の取得方式の中からデータを効率よく取得する取得方式を選択するための指標を設定することができる。
【図面の簡単な説明】
【０００９】
【図１】情報処理装置、情報処理システムおよびプログラムの一実施形態を示す図である。
【図２】図１に示す測定部が測定する取得時間と、図１に示す設定部が設定する判定条件の一例を示す図である。
【図３】情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す図である。
【図４】図３に示すセッション情報テーブルおよびオブジェクト情報テーブルの一例を示す図である。
【図５】図３に示す診断情報テーブルに格納される情報の一例を示す図である。
【図６】図３に示すキャプチャ制御部の動作の一例を示す図である。
【図７】図３に示すセッション取得部の動作の一例を示す図である。
【図８】図３に示すキャプチャサーバの非キャプチャモードでの動作の一例を示す図である。
【図９】図３に示すオフライン診断部の動作の一例を示す図である。
【図１０】図９に示すステップＳ２００の処理の一例を示す図である。
【図１１】図９に示すステップＳ２００による閾値の算出方法の一例を示す図である。
【図１２】図３に示すセッション取得部の動作の一例を示す図である。
【図１３】情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す図である。
【図１４】図１３に示す診断情報テーブルに格納される情報の一例を示す図である。
【図１５】図１３に示すキャプチャサーバのキャプチャモードでの動作の一例を示す図である。
【図１６】図１３に示すセッション取得部によるセッションの取得方式を切り替える動作の一例を示す図である。
【図１７】図１３に示すオンライン診断部およびセッション取得部の動作の一例を示す図である。
【図１８】図１７に示すステップＳ２００Ａの処理の一例を示す図である。
【図１９】情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す図である。
【図２０】図１９に示す診断情報テーブルに格納される情報の一例を示す図である。
【図２１】情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す図である。
【図２２】図２１に示す診断情報テーブルに格納される情報の一例を示す図である。
【図２３】図２１に示すオフライン診断部の動作の一例を示す図である。
【図２４】図２３に示すステップＳ２００Ｄの処理の一例を示す図である。
【図２５】図２１に示すセッション取得部の動作の一例を示す図である。
【図２６】図２１に示すセッション取得部の動作の別の例を示す図である。
【図２７】情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す図である。
【図２８】図２７に示すオフライン診断部が算出する境界線の概要を示す図である。
【図２９】図２８に示す境界線を使用するセッション取得部の動作の一例を示す図である。
【図３０】情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す図である。
【図３１】図１、図３、図１３、図１９、図２１、図２７および図３０に示すキャプチャサーバのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を用いて実施形態を説明する。
【００１１】
図１は、情報処理装置、情報処理システムおよびプログラムの一実施形態を示す。図１に示す情報処理システム１００は、情報処理装置１０、情報処理装置１０に接続された記憶装置２０および情報処理装置１０を管理する管理装置３０を有する。
【００１２】
管理装置３０は、データの取得条件を含む取得要求を情報処理装置１０に発行し、取得条件を満たす取得対象のデータを情報処理装置１０を介して記憶装置２０から取得する。情報処理装置１０は、取得要求を管理装置３０から受信した場合、取得条件を満たす取得対象のデータを記憶装置２０から取得する。この際、情報処理装置１０は、後述するように、記憶装置２０からの取得時間が最も短いと想定される取得手法を使用して取得対象のデータを取得する。そして、情報処理装置１０は、取得したデータを管理装置３０に送信する。情報処理装置１０は、第１の情報処理装置の一例であり、管理装置３０は、第２の情報処理装置の一例である。
【００１３】
情報処理装置１０は、測定部１１、設定部１２、取得部１３およびメモリ１４を有する。例えば、測定部１１、設定部１２および取得部１３の機能は、メモリ１４に格納されたプログラムを情報処理装置１０が実行することで実現される。なお、測定部１１、設定部１２および取得部１３の機能は、情報処理装置１０が有するＦＰＧＡ（Field-Programmable Gate Array）等のハードウェアにより実現されてもよい。
【００１４】
メモリ１４は、セッション数と、取得対象のデータのオブジェクト単位での記憶装置２０からの取得時間と、取得対象のデータのセッション単位での記憶装置２０からの取得時間とを記憶する記憶領域１５を有する。セッション数の記憶領域には、データの取得条件を満たす取得対象のデータが属するセッションＳＳＮの数が格納される。また、メモリ１４は、判定条件を記憶する記憶領域１６とプログラムを記憶する記憶領域１７とを有する。
【００１５】
記憶装置２０には、所定数のセッションＳＳＮに属するデータを含むオブジェクトＯＢＪが格納される。以下では、セッションＳＳＮに属するデータは、セッションＳＳＮとも称される。例えば、セッションＳＳＮは、図示しない他の情報処理装置間での通信セッションに対応し、データ（パケット）の送信元と宛先との組み合わせ毎に異なる。例えば、図示しないキャプチャ装置は、通信装置等の他の情報処理装置間で伝送されるデータをキャプチャし、キャプチャしたデータを、所定数のセッションＳＳＮの各々に属するデータを含むオブジェクトＯＢＪにまとめて記憶装置２０に格納する。なお、キャプチャ装置は、情報処理装置１０内に設けられてもよい。
【００１６】
測定部１１は、取得要求に含まれる取得条件毎に、取得対象のデータをオブジェクト単位で記憶装置２０から取得するのに掛かる取得時間と、取得対象のデータをセッション単位での記憶装置２０から取得するのに掛かる取得時間とを測定する。例えば、測定部１１は、記憶装置２０に格納されたオブジェクトＯＢＪの中から取得条件を満たすデータを含むオブジェクトＯＢＪを検索する。そして、測定部１１は、検索により得たオブジェクトＯＢＪの各々について、取得対象のデータのオブジェクト単位での取得時間と、取得対象のデータのセッション単位での取得時間とを測定する。
【００１７】
測定部１１は、測定したオブジェクト単位での取得時間とセッション単位での取得時間とを、各オブジェクトＯＢＪに含まれる取得対象のデータが属するセッションＳＳＮの数とともに記憶領域１５に格納する。なお、測定部１１は、取得対象のデータを含むオブジェクトＯＢＪ内において取得対象のデータが占める割合（オブジェクトＯＢＪのデータ量に対する取得対象のデータ量の割合）をセッション数の代わりに記憶領域１５に格納してもよい。
【００１８】
設定部１２は、記憶領域１５に格納された情報に基づいて、データをオブジェクト単位またはセッション単位のいずれで記憶装置から取得するかを判定する判定条件を設定する。例えば、設定部１２は、オブジェクト単位での取得時間とセッション単位での取得時間とのどちらが短いかをセッション数毎に判定する。そして、設定部１２は、オブジェクト単位での取得時間とセッション単位での取得時間との長短の関係が逆転するセッション数を求め、求めたセッション数を判定条件（閾値）に設定する。これにより、記憶装置２０に格納されたデータを取得する場合、オブジェクト単位での取得方式とセッション単位での取得方式とのいずれが効率よくデータを取得できるかの指標である判定条件を求めることができる。なお、取得時間の長短の関係が逆転するセッション数は、統計的手法を用いて求められてもよい。
【００１９】
取得部１３は、例えば、取得条件を含む取得要求を管理装置３０から受信したことに基づいて動作する。取得部１３は、取得条件を満たす取得対象のデータを含むオブジェクトＯＢＪ毎に、判定条件１６（閾値）に基づいて、データをオブジェクト単位またはセッション単位で記憶装置２０から取得し、取得したデータを管理装置３０に送信する。
【００２０】
例えば、取得条件に”データの送信元の情報処理装置”が指定される場合、取得部１３は、取得条件を満たす情報処理装置から送信されたデータ（パケット）を含むオブジェクトＯＢＪを選択する。そして、取得部１３は、設定部１２が設定した判定条件１６に基づいて、取得対象のデータをオブジェクト単位で取得するかセッション単位で取得するかをオブジェクトＯＢＪ毎に決定し、決定した取得方式でデータを記憶装置２０から取得する。取得対象のデータの取得方式を判定条件に基づいてオブジェクトＯＢＪ毎に選択することで、取得方式を選択せずに１つの選択方式に設定する場合に比べて、取得対象のデータを効率よく取得することができる。
【００２１】
図２は、図１に示す測定部１１が測定する取得時間と、図１に示す設定部１２が設定する判定条件の一例を示す。図２において、測定部１１が取得対象のデータをオブジェクト単位で取得する場合のセッション数別の取得時間は、黒丸で示される。また、測定部１１が取得対象のデータをセッション単位で取得する場合のセッション数別の取得時間は、白丸で示される。設定部１２は、オブジェクト単位での取得時間とセッション単位での取得時間との分布に基づいて、取得時間が逆転するセッション数を判定条件（閾値）に設定する。
【００２２】
例えば、図１に示す取得部１３は、取得条件を満たすデータを含む各オブジェクトＯＢＪにおいて、取得条件を満たすデータが属するセッションＳＳＮの数が判定条件（閾値）で示されるセッション数を超える場合、データをオブジェクト単位で取得する。一方、取得部１３は、取得条件を満たすデータを含む各オブジェクトＯＢＪにおいて、取得条件を満たすデータが属するセッションＳＳＮの数が判定条件（閾値）で示されるセッション数以下の場合、データをセッション単位で取得する。すなわち、取得部１３は、判定条件に基づいてオブジェクトＯＢＪ毎にデータの取得方式を切り替える。これにより、データをオブジェクト単位のみで取得する場合、または、データをセッション単位のみで取得する場合に比べて、記憶装置２０からのデータの取得効率を向上することができる。
【００２３】
以上、図１および図２に示す実施形態では、以下に示す効果を得ることができる。設定部１２は、取得条件を満たすデータをオブジェクト単位での取得方式とセッション単位での取得方式とのいずれで取得する方がデータを効率よく取得できるかの指標である判定条件を設定できる。この際、設定部１２は、測定部１１が測定した取得時間の実測値に基づいて判定条件を設定することで、計算または予測による得られる取得時間に基づいて判定条件を設定する場合に比べて、高い精度で判定条件を設定できる。取得部１３は、設定部１２が設定した判定条件に基づいて、オブジェクトＯＢＪ毎にデータの取得方式を切り替えることで、取得方式を切り替えない場合に比べて、記憶装置２０からのデータの取得効率を向上することができる。この結果、情報処理システム１００の処理性能を向上することができる。
【００２４】
図３は、情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す。図３に示す情報処理システム１００Ａは、ネットワークスイッチ２に接続されたキャプチャサーバ４０と、キャプチャサーバ４０に接続されたストレージ装置７０と、キャプチャサーバ４０に接続された管理装置８０とを有する。例えば、管理装置８０は、ネットワークＮＷを管理する管理者により使用される。なお、管理装置８０は、ネットワークスイッチを介してキャプチャサーバ４０に接続されてもよい。
【００２５】
キャプチャサーバ４０は、情報処理装置および第１の情報処理装置の一例であり、管理装置８０は、第２の情報処理装置の一例である。ストレージ装置７０は、記憶装置の一例である。
【００２６】
ネットワークスイッチ２は、ネットワークＮＷに接続された端末装置１（１ａ、１ｂ、１ｃ）と、ウェブサーバ３（３ａ、３ｂ）との間で送受信されるパケットの経路を切り替える。例えば、各端末装置１は、ウェブサーバ３を利用するユーザが使用するコンピュータである。端末装置１およびウェブサーバ３は、他の情報処理装置の一例である。
【００２７】
ネットワークＮＷは、ネットワークスイッチ２のポート２ａに接続され、ウェブサーバ３ａ、３ｂの各々は、ネットワークスイッチ２のポート２ｂ、２ｃのいずれかに接続される。キャプチャサーバ４０は、ポート２ｂに伝送されるパケットを、ミラーポート２ｄを介して受信し、ポート２ｃに伝送されるパケットを、ミラーポート２ｅを介して受信する。
【００２８】
なお、情報処理システム１００Ａは、ネットワークスイッチ２およびウェブサーバ３を含んでもよい。キャプチャサーバ４０は、ミラーポート２ｄ、２ｅでなく、ネットワークＮＷとウェブサーバ３ａ、３ｂとの間に配置されるタップに接続されてもよい。この場合、キャプチャサーバ４０は、端末装置１とウェブサーバ３との間で送受信されるパケットを、タップを介してキャプチャする。また、キャプチャサーバ４０は、端末装置１およびウェブサーバ３以外の装置間で送受信されるデータ等の情報をキャプチャしてもよい。例えば、ウェブサーバ３の代わりに計算サーバが配置されてもよい。あるいは、端末装置１の代わりにウェブサーバが配置され、ウェブサーバ３の代わりにストレージサーバまたはデータベースシステム等が配置されてもよい、
キャプチャサーバ４０は、キャプチャ制御部４２、セッション取得部４４、オフライン診断部４６およびメモリ５０を有する。キャプチャ制御部４２は、パケットをキャプチャするキャプチャモード中に動作し、端末装置１とウェブサーバ３との間で送受信されるパケットを、ミラーポート２を介してキャプチャし、キャプチャしたパケットをストレージ装置７０に格納する。ストレージ装置７０に格納されるパケットは、データの一例である。キャプチャ制御部４２の動作の例は、図６に示される。
【００２９】
セッション取得部４４は、例えば、送信元および宛先が共通のパケットを含むセッションを取得する取得要求を、管理装置８０から受信した場合、取得要求に含まれる取得条件を満たすセッションに含まれるパケットをストレージ装置７０から取得する。例えば、取得条件は、送信元を示す情報および宛先を示す情報の少なくともいずれかを含む。ここで、セッション取得部４４は、後述する閾値を用いて、ストレージ装置７０からのセッションに含まれる取得対象のパケットの取得時間が最も短くなると予想される取得方式でパケットを取得する。セッション取得部４４は、取得したパケットを管理装置８０に送信する。セッション取得部４４の動作の例は、図７および図１２に示される。セッション取得部４４は、セッションに含まれるパケット（データ）をオブジェクト単位またはセッション単位でストレージ装置７０から取得する取得部の一例である。以下の説明では、セッションに含まれるパケットは、単にセッションとも称され、セッション取得部４４がパケットを取得することは、セッションを取得するとも称される。
【００３０】
オフライン診断部４６は、キャプチャサーバ４０がミラーポート２（２ｄ、２ｅ）からパケットをキャプチャしない非キャプチャモード中に動作し、ストレージ装置７０に予め格納されたパケット（セッション）を利用して閾値を算出する。閾値は、判定条件の一例である。オフライン診断部４６の動作の例は、図８から図１１に示される。なお、オフライン診断部４６は、管理装置８０が取得要求を発行しない非取得モード中に動作してもよい。
【００３１】
メモリ５０は、例えば、複数のＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）を含むメモリモジュールを有する。なお、メモリ５０は、ＳＲＡＭ（Static Random Access Memory）を有してもよく、フラッシュメモリまたはＭＲＡＭ（Magnetoresistive Random Access Memory）等の不揮発性メモリを有してもよい。
【００３２】
メモリ５０は、セッション情報テーブル５２、オブジェクト情報テーブル５４、診断情報テーブル５６、閾値保持部５８およびパケットバッファ６０が割り当てられる記憶領域と、データ取得制御プログラム６２が格納される記憶領域とを有する。セッション情報テーブル５２およびオブジェクト情報テーブル５４の例は、図４に示される。診断情報テーブル５６の例は、図５に示される。閾値保持部５８には、後述する閾値が保持される。なお、閾値は、閾値保持部５８の代わりに、キャプチャサーバ４０に含まれる図示しないプロセッサが有するレジスタに保持されてもよい。パケットバッファ６０には、ミラーポート２ｄ、２ｅを介して受信するパケットであって、ストレージ装置７０に格納する前のパケットが保持される。
【００３３】
キャプチャ制御部４２、セッション取得部４４およびオフライン診断部４６の機能は、キャプチャサーバ４０がデータ取得制御プログラム６２を実行することで実現される。なお、キャプチャ制御部４２、セッション取得部４４およびオフライン診断部４６は、キャプチャサーバ４０が有するＦＰＧＡ等のハードウェアにより実現されてもよい。
【００３４】
ストレージ装置７０は、ＨＤＤ（Hard Disk Drive）またはＳＳＤ（Solid State Drive）等を有し、キャプチャサーバ４０によりキャプチャされたパケットを記憶する。管理装置８０は、取得条件を満たすセッションを取得するための取得要求を取得条件とともにキャプチャサーバ４０に送信し、キャプチャサーバ４０から受信したセッションに含まれるパケットを解析する。そして、パケットの解析結果に応じて、ネットワークＮＷとウェブサーバ３間の通信経路で発生した通信障害等の原因が究明される。
【００３５】
図４は、図３に示すセッション情報テーブル５２およびオブジェクト情報テーブル５４の一例を示す。セッション情報テーブル５２は、送信元および宛先が共通の所定数のパケットを含むセッションに関する情報を保持する。図４において、セッション情報テーブル５２の各行が、１つのセッションに対応する。セッション情報テーブル５２は、時刻、送信元アドレス、送信元ポート、宛先アドレス、宛先ポート、通信タイプ、オブジェクト名、オフセットおよびサイズが格納される複数の領域（以下、行領域とも称する）を有する。セッション情報テーブル５２の各行領域は、１つのセッションに対応する。
【００３６】
時刻の領域には、例えば、セッションに含まれるパケットのいずれか（例えば、最初のパケット）をキャプチャサーバ４０が受信した時刻が格納される。なお、各パケットが、パケットの送信時刻を示す情報を含む場合、時刻の領域には、送信時刻が格納されてもよい。送信元アドレスの領域には、セッションに含まれるパケットの送信元の装置のＩＰ（Internet Protocol）アドレスが格納され、送信元ポートの領域には、セッションに含まれるパケットの送信元のアプリケーションを識別するポート番号が格納される。
【００３７】
宛先アドレスの領域には、セッションに含まれるパケットの宛先の装置のＩＰアドレスが格納され、宛先ポートの領域には、セッションに含まれるパケットの宛先のアプリケーションを識別するポート番号が格納される。通信タイプの領域には、セッションに含まれるパケットの通信プロトコルを示す情報が格納される。送信元アドレス、送信元ポート、宛先アドレス、宛先ポートおよび通信タイプは、セッションを識別するセッション情報である。
【００３８】
オブジェクト名の領域には、ストレージ装置７０が保持する複数のオブジェクトのうち、セッションを含むオブジェクトを識別する情報が格納される。オフセットの領域には、オブジェクト名で示されるオブジェクト内でのセッションの位置を示すアドレス等の情報が格納される。サイズの領域には、セッションのサイズが格納される。
【００３９】
オブジェクト情報テーブル５４は、キャプチャサーバ４０がパケット群をストレージ装置７０に格納する単位であるオブジェクト（所定数のセッションを含む）に関する情報を保持する。オブジェクト情報テーブル５４は、オブジェクト名、オフセットおよびサイズが格納される複数の領域（以下、行領域とも称する）を有する。オブジェクト情報テーブル５４の各行領域は、１つのオブジェクトに対応する。
【００４０】
オブジェクト名は、セッション情報テーブル５２に格納されるオブジェクト名と同じである。例えば、オブジェクトに３つのセッションが含まれる場合、セッション情報テーブル５２において、３つのセッションに対応する３つの行領域に同じオブジェクト名が格納される。オフセットの領域には、オブジェクトを格納するためにストレージ装置７０に割り当てられた記憶領域内でのオブジェクトの位置を示すアドレス等の情報が格納される。サイズの領域には、オブジェクトのサイズが格納される。
【００４１】
キャプチャ制御部４２は、キャプチャしたパケット（セッション）を含むオブジェクトを生成した場合、生成したオブジェクトに関する情報をオブジェクト情報テーブル５４の行領域に格納する。また、キャプチャ制御部４２は、オブジェクトに含まれるセッションに関する情報をセッション情報テーブル５２の行領域に格納する。ここで、行領域に格納される送信元アドレス、送信元ポート、宛先アドレス、宛先ポートおよび通信タイプは、パケットに含まれる情報である。キャプチャ制御部４２がオブジェクトを生成する例は、図６に示される。
【００４２】
図５は、図３に示す診断情報テーブル５６に格納される情報の一例を示す。診断情報テーブル５６は、”取得条件を満たすセッション数”、”オブジェクト単位での取得時間”および”セッション単位での取得時間”が格納される複数の領域（以下、行領域とも称する）を有する。診断情報テーブル５６が保持する情報は、オフライン診断部４６により格納される。オフライン診断部４６が診断情報テーブル５６に情報を格納する例は、図９に示される。
【００４３】
”取得条件を満たすセッション数”の領域には、管理装置８０からの取得要求に含まれる取得条件を満たすセッションを含む所定数のオブジェクトの各々に含まれるセッションの数が格納される。”オブジェクト単位での取得時間”の領域には、”取得条件を満たすセッション数”で示されるセッションをストレージ装置７０からオブジェクト単位で読み出した場合の取得時間が格納される。”セッション単位での取得時間”の領域には、”取得条件を満たすセッション数”で示されるセッションをストレージ装置７０からセッション単位で読み出した場合の取得時間が格納される。
【００４４】
図５に示す例では、あるオブジェクトから１０個のセッションを取得する場合、オブジェクト単位での取得時間は２秒であり、セッション単位での取得時間は０．７秒である。また、あるオブジェクトから５０個のセッションを取得する場合、オブジェクト単位での取得時間は３秒であり、セッション単位での取得時間は４秒である。図５では、説明のために、各行領域において取得時間が短い側に下線を付している。なお、診断情報テーブル５６に格納される取得時間は、セッション数で示されるセッションの取得時間の一例であり、取得するセッションのサイズにより異なる。このため、図５において、セッション数が”２０”の場合、２通りの取得時間が診断情報テーブル５６に格納されている。
【００４５】
図６は、図３に示すキャプチャ制御部４２の動作の一例を示す。図６では、説明を分かりやすくするため、パケットバッファ６０が保持可能なパケットＰＣＫＴの数は６個であるとする。各パケットＰＣＫＴの末尾に付けた数字は、パケットＰＣＫＴのキャプチャ順を示す。各パケットＰＣＫＴの括弧内に示す矢印の左側の符号は、パケットＰＣＫＴの送信元の装置を示し、各パケットＰＣＫＴの括弧内に示す矢印の右側の符号は、パケットＰＣＫＴの宛先の装置を示す。図６では、説明を分かりやすくするために、端末装置１からウェブサーバ３に伝送されるパケットＰＣＫＴがキャプチャされるとする。
【００４６】
まず、キャプチャ制御部４２は、キャプチャしたパケットＰＣＫＴ（ＰＣＫＴ１−ＰＣＫＴ６）を、パケットバッファ６０に順次格納する（図６（ａ））。キャプチャ制御部４２は、パケットバッファ６０に６個のパケットＰＣＫＴが保持された場合、送信元と宛先のペアが同じパケットＰＣＫＴをセッションＳＳＮ（ＳＳＮ１、ＳＳＮ２）としてまとめる（図６（ｂ））。そして、セッションＳＳＮ１、ＳＳＮ２を含むオブジェクトＯＢＪ１をストレージ装置７０に格納する（図６（ｃ））。
【００４７】
キャプチャ制御部４２は、オブジェクトＯＢＪ１に関する情報を図４に示すオブジェクト情報テーブル５４に格納する。また、キャプチャ制御部４２は、オブジェクトＯＢＪ１に含まれるセッションＳＳＮ１、ＳＳＮ２に関する情報を図４に示すセッション情報テーブル５２に格納する。
【００４８】
キャプチャ制御部４２は、ストレージ装置７０に格納されたパケットＰＣＫＴを、パケットバッファ６０から削除する。例えば、キャプチャ制御部４２は、送信元と宛先のペアが同じ他のパケットＰＣＫＴがパケットバッファ６０に保持されていないパケットＰＣＫＴ５を、セッションＳＳＮとしてまとめない。このため、パケットＰＣＫＴ５は、パケットバッファ６０に残される。
【００４９】
この後、キャプチャ制御部４２は、新たにキャプチャしたパケットＰＣＫＴ（ＰＣＫＴ６−ＰＣＫＴ１１）を、パケットバッファ６０に順次格納する（図６（ｄ））。キャプチャ制御部４２は、パケットバッファ６０に６個のパケットＰＣＫＴが保持されたため、送信元と宛先のペアが同じパケットＰＣＫＴをセッションＳＳＮ（ＳＳＮ３、ＳＳＮ４、ＳＳＮ５）としてまとめる（図６（ｅ））。そして、セッションＳＳＮ３、ＳＳＮ４、ＳＳＮ５を含むオブジェクトＯＢＪ２をストレージ装置７０に格納する（図６（ｆ））。
【００５０】
キャプチャ制御部４２は、オブジェクトＯＢＪ２に関する情報をオブジェクト情報テーブル５４に格納し、オブジェクトＯＢＪ２に含まれるセッションＳＳＮ３、ＳＳＮ４、ＳＳＮ５に関する情報をセッション情報テーブル５２に格納する。また、キャプチャ制御部４２は、ストレージ装置７０に格納されたパケットＰＣＫＴを、パケットバッファ６０から削除する。
【００５１】
このようにして、キャプチャ制御部４２は、ミラーポート２を介してキャプチャしたパケットＰＣＫＴを、所定数のセッションＳＳＮを含むオブジェクト単位でストレージ装置７０に格納する。なお、キャプチャ制御部４２は、パケットバッファ６０が保持するパケットＰＣＫＴを所定の時間毎（例えば、１０秒毎）にセッションＳＳＮとしてまとめてオブジェクトＯＢＪを生成し、生成したオブジェクトＯＢＪをストレージ装置７０に格納してもよい。
【００５２】
図７は、図３に示すセッション取得部４４の動作の一例を示す。図７では、ストレージ装置７０には、複数のオブジェクトＯＢＪ３、ＯＢＪ４が格納されている。例えば、セッション取得部４４は、管理装置８０から受信した取得要求に含まれる取得条件に基づいて、セッション情報テーブル５２を参照してストレージ装置７０を検索し、取得対象のセッションＳＳＮを含むオブジェクトＯＢＪを見つける。図７において、取得条件を満たすセッションＳＳＮは、太枠で示される。
【００５３】
セッション取得部４４は、検索により見つけたオブジェクトＯＢＪ毎に、取得対象のセッションＳＳＮをオブジェクト単位またはセッション単位のいずれでストレージ装置７０から取得するかを、閾値保持部５８に保持された閾値に基づいて決定する。例えば、各オブジェクトＯＢＪにおいて、取得条件を満たすセッションＳＳＮの数が閾値で示されるセッション数を超える場合、セッション取得部４４は、セッションＳＳＮをオブジェクト単位で取得し、メモリ５０に格納する。一方、各オブジェクトＯＢＪにおいて、取得条件を満たすセッションＳＳＮの数が閾値で示されるセッション数以下の場合、セッション取得部４４は、セッションＳＳＮをセッション単位で取得し、メモリ５０に格納する。
【００５４】
ストレージ装置７０からデータを読み出す場合、ストレージ装置７０へのアクセス毎に、データを読み出すための準備の時間であるアクセスペナルティがストレージ装置７０内で発生する。例えば、ストレージ装置７０が有するＨＤＤからデータを読み出す場合、シーク時間および回転待ち時間等のアクセスペナルティが発生する。オブジェクトＯＢＪに読み出し対象の複数のセッションＳＳＮが含まれる場合、複数のセッションＳＳＮをオブジェクト単位で読み出す場合のアクセスペナルティは、複数のセッションＳＳＮをセッション単位で読み出す場合のアクセスペナルティに比べて小さい。
【００５５】
一方、ストレージ装置７０からデータの転送時間は、読み出すデータのデータ量に比例して長くなる。したがって、ストレージ装置７０に記憶されたオブジェクトＯＢＪから複数のセッションＳＳＮを読み出す場合、データの転送時間とアクセスペナルティの合計であるアクセス時間は、セッションＳＳＮを取得する取得方式により異なる。セッション取得部４４は、アクセス時間がより短くなると推定される取得方式を選択するために閾値（セッション数）を使用する。オフライン診断部４６が閾値を算出する手法は、図８から図１１に示される。
【００５６】
図７に示す例では、閾値は”３”である。このため、セッション取得部４４は、オブジェクトＯＢＪ３に含まれる４つのセッションＳＳＮをストレージ装置７０から取得する場合、オブジェクトＯＢＪ３を読み出し、読み出したオブジェクトＯＢＪ３からセッションＳＳＮを抽出する。すなわち、取得対象のセッションＳＳＮは、オブジェクト単位でストレージ装置７０から読み出される。また、セッション取得部４４は、オブジェクトＯＢＪ４に含まれる３つのセッションＳＳＮをストレージ装置７０から取得する場合、取得対象のセッションＳＳＮをセッション毎にストレージ装置７０から読み出す。そして、セッション取得部４４は、取得条件を満たすセッションＳＳＮを管理装置８０に送信する。
【００５７】
なお、メモリ５０に転送されたオブジェクトＯＢＪからセッションＳＳＮを抽出する時間（メモリアクセス時間）は、ストレージ装置７０からセッションＳＳＮを取得する時間（例えば、ディスクアクセス時間）に対して無視できる程度に短い。このため、オブジェクト単位でセッションＳＳＮを取得する場合において、メモリ５０内でのセッションＳＳＮの抽出に掛かる時間的なペナルティはない。
【００５８】
図８は、図３に示すキャプチャサーバ４０の非キャプチャモードでの動作の一例を示す。上述したように、非キャプチャモードでは、キャプチャサーバ４０は、ネットワークスイッチ２のミラーポート２からパケットをキャプチャしない。なお、図８は、管理装置８０が取得要求を発行しない非取得モードの動作の例も示している。
【００５９】
オフライン診断部４６は、閾値の診断を開始する診断開始指示を管理装置８０から受信したことに基づいて動作を開始する。オフライン診断部４６は、診断開始指示に基づいて、メモリ５０内のセッション情報テーブル５２（図４）を参照し、ストレージ装置７０にアクセスして診断開始指示に含まれる取得条件を満たすセッションＳＳＮを検索する（図８（ａ）、（ｂ））。オフライン診断部４６は、取得条件を満たすセッションＳＳＮの数であるセッション数をオブジェクトＯＢＪ毎に算出し、算出したセッション数のそれぞれを図５に示す診断情報テーブル５６の”取得条件を満たすセッション数”の領域に格納する（図８（ｃ））。
【００６０】
なお、ストレージ装置７０には、オブジェクトＯＢＪが予め格納されており、図４に示すセッション情報テーブル５２およびオブジェクト情報テーブル５４は、ストレージ装置７０が保持するオブジェクトＯＢＪに対応する情報を保持している。例えば、オフライン診断部４６は、診断開始指示を受信した日の前日にキャプチャされてストレージ装置７０に格納されたパケットＰＣＫＴを含むセッションＳＳＮを検索する。
【００６１】
なお、管理装置８０は、キャプチャサーバ４０の初回の起動時であって、閾値保持部５８に閾値が保持されていない場合、または、閾値保持部５８に保持された閾値を更新する場合、診断開始指示をキャプチャサーバ４０に発行する。例えば、管理装置８０は、”宛先ポートが８０のセッションＳＳＮ”の取得条件を含む診断開始指示をオフライン診断部４６に発行する。
【００６２】
オフライン診断部４６は、オブジェクト情報テーブル５４を参照し、取得条件を満たすセッションＳＳＮをそれぞれ含む全てのオブジェクトＯＢＪのストレージ装置７０内での格納位置を算出する。そして、オフライン診断部４６は、取得条件を満たすセッションＳＳＮを含む全てのオブジェクトＯＢＪをストレージ装置７０から順次取得し、取得に掛かる取得時間を測定する（図８（ｄ）、（ｅ））。オフライン診断部４６は、診断情報テーブル５６においてセッション数に対応する行領域の”オブジェクト単位での取得時間”の領域に、測定した取得時間を格納する（図８（ｆ）、（ｇ））。例えば、取得したオブジェクトＯＢＪは、メモリ５０等に保持されることなく廃棄される。
【００６３】
次に、オフライン診断部４６は、オブジェクト情報テーブル５４およびセッション情報テーブル５２を参照し、取得条件を満たす全てのセッションＳＳＮのストレージ装置７０内での格納位置を算出する。そして、オフライン診断部４６は、取得条件を満たすセッションＳＳＮのそれぞれをストレージ装置７０から順次取得し、取得に掛かる取得時間を測定する（図８（ｈ）、（ｉ））。オフライン診断部４６は、診断情報テーブル５６においてセッション数に対応する行領域の”セッション単位での取得時間”の領域に、測定した取得時間を格納する（図８（ｊ）、（ｋ））。例えば、取得したセッションＳＳＮは、メモリ５０等に保持されることなく廃棄される。
【００６４】
この後、オフライン診断部４６は、診断情報テーブル５６に格納した情報に基づいて閾値を算出し、算出した閾値を閾値保持部５８に格納する（図８（ｌ）、（ｍ））。閾値を算出する動作の例は、図１０に示される。
【００６５】
図９は、図３に示すオフライン診断部４６の動作の一例を示す。すなわち、図９は、図３に示すキャプチャサーバ４０が実行するデータ取得制御プログラム６２の一例を示す。図９に示す動作は、診断開始指示を管理装置８０から受信したことに基づいて開始される。ステップＳ１０２からステップＳ１１２までの処理を実行するオフライン診断部４６は、測定部の一例であり、ステップＳ２００の処理を実行するオフライン診断部４６は、設定部の一例である。
【００６６】
まず、ステップＳ１０２において、オフライン診断部４６は、セッション情報テーブル５２を用いて取得条件を満たすセッションＳＳＮを検索し、取得条件を満たすセッションＳＳＮの数であるセッション数をオブジェクトＯＢＪ毎に算出する。次に、ステップＳ１０４において、オフライン診断部４６は、オブジェクトＯＢＪ毎に算出したセッション数のそれぞれを診断情報テーブル５６に格納し、処理をステップＳ１０６に移行する。
【００６７】
ステップＳ１０６からステップＳ１１２は、取得条件を満たすセッションＳＳＮを含む全てのオブジェクトＯＢＪについて実行される。ステップＳ１０６において、オフライン診断部４６は、オブジェクト情報テーブル５４を用いて、取得条件を満たすセッションＳＳＮを含むオブジェクトＯＢＪの１つをストレージ装置７０から取得する。次に、ステップＳ１０８において、オフライン診断部４６は、ステップＳ１０６で取得したオブジェクトＯＢＪの取得時間を診断情報テーブル５６に格納する。
【００６８】
次に、ステップＳ１１０において、オフライン診断部４６は、取得条件を満たすセッションＳＳＮを含むオブジェクトＯＢＪの１つに含まれる所定数のセッションＳＳＮをストレージ装置７０から順次取得する。セッションＳＳＮのストレージ装置７０からの取得は、オブジェクト情報テーブル５４およびセッション情報テーブル５２を用いて実行される。次に、ステップＳ１１２において、オフライン診断部４６は、セッションＳＳＮの取得時間の合計を診断情報テーブル５６に格納する。
【００６９】
取得条件を満たすセッションＳＳＮを含む全てのオブジェクトＯＢＪについて、ステップＳ１０６からステップＳ１１２の処理が実行された場合、ステップＳ２００の処理が実行される。ステップＳ２００において、オフライン診断部４６は、診断情報テーブル５６に格納した情報に基づいて、閾値を算出し、算出した閾値を閾値保持部５８に格納し、図９に示す処理を終了する。ステップＳ２００の例は、図１０に示される。
【００７０】
図１０は、図９に示すステップＳ２００の処理の一例を示す。ステップＳ２００において、オフライン診断部４６は、閾値の算出に使用する最大値を”０”に設定し、処理をステップＳ２０４に移行する。
【００７１】
ステップＳ２０４からステップＳ２１２は、診断情報テーブル５６に格納された”取得条件を満たすセッション数”のそれぞれについて実行される。ステップＳ２０４において、オフライン診断部４６は、診断情報テーブル５６に格納された”取得条件を満たすセッション数”を仮の閾値とする。次に、ステップＳ２０６において、オフライン診断部４６は、”取得条件を満たすセッション数”に対応するセッションＳＳＮの取得方式を仮の閾値に基づいて選択する。
【００７２】
次に、ステップＳ２０８において、オフライン診断部４６は、ステップＳ２０６で選択した取得方式でのセッションＳＳＮの取得時間が、選択しなかった取得方式でのセッションＳＳＮの取得時間より短いか否かを判定する。次に、ステップＳ２１０において、オフライン診断部４６は、ステップＳ２０６で選択した取得方式の方が、選択しなかった取得方式に比べて取得時間が短くなる割合（正解率）を算出する。
【００７３】
次に、ステップＳ２１２において、オフライン診断部４６は、ステップＳ２１０で算出した割合（正解率）が最大値を超えた場合、処理をステップＳ２１４に移行する。オフライン診断部４６は、ステップＳ２１０で算出した割合（正解率）が最大値以下の場合、処理をステップＳ２０４に戻す。
【００７４】
ステップＳ２１４において、オフライン診断部４６は、ステップＳ２０４で設定した仮の閾値を最大値にし、処理をステップＳ２０４に戻す。診断情報テーブル５６に格納された”取得条件を満たすセッション数”のそれぞれについて、ステップＳ２０４からステップＳ２１２の処理が完了した場合、ステップＳ２１６の処理に移行される。診断情報テーブル５６に格納された”取得条件を満たすセッション数”を仮の閾値に順次設定し、ステップＳ２０４からステップＳ２１４の処理を実行することで、正解率が最も高い仮の閾値を求めることができる。ステップＳ２１６において、オフライン診断部４６は、正解率が最も高い仮の閾値である最大値を、閾値として閾値保持部５８（図３）に格納し、図１０に示す処理を終了する。
【００７５】
図１１は、図９に示すステップＳ２００による閾値の算出方法の一例を示す。図１１において、”取得条件を満たすセッション数”の欄に格納されたセッション数は、図５に示す診断情報テーブル５６の”取得条件を満たすセッション数”に格納されたセッション数と同じである。
【００７６】
図１１において、”取得時間が短い取得方法”の欄には、図５に示す診断情報テーブル５６に格納されたオブジェクト単位での取得時間およびセッション単位での取得時間のうち、取得時間が短い取得方式を符号”Ｏ”または符号”Ｓ”で示す。符号”Ｏ”は、オブジェクト単位での取得時間がセッション単位での取得時間に比べて短いことを示し、以下では取得方式Ｏとも称される。符号”Ｓ”は、セッション単位での取得時間がオブジェクト単位での取得時間に比べて短いことを示し、以下では、取得方式Ｓとも称される。換言すれば、図５に示す診断情報テーブル５６において、下線を付した取得時間の取得方式が、符号”Ｏ”または符号”Ｓ”で示される。
【００７７】
また、図１１において、仮の閾値に対応する領域は、図１０のステップＳ２０４で設定した仮の閾値の各々に基づき、”取得条件を満たすセッション数”のセッションＳＳＮを取得方式Ｏまたは取得方式Ｓのいずれで取得するかが示される。そして、丸印を付けた取得方式は、”取得時間が短い取得方法”の欄の取得方式と一致することを示す。仮の閾値の各々に対応する正解率は、”取得条件を満たすセッション数”の種類の数（行数）に対する丸印を付けた取得方式の数の比率を示す。そして、図１１に示す例では、正解率が最も高い仮の閾値（＝２５）が閾値に設定される。
【００７８】
図１２は、図３に示すセッション取得部４４の動作の一例を示す。すなわち、図１２は、図３に示すキャプチャサーバ４０が実行するデータ取得制御プログラム６２の一例を示す。セッション取得部４４は、管理装置８０からセッションＳＳＮの取得要求を受信したことに基づいて図１２に示す処理を開始する。ステップＳ４０２からステップＳ４０８は、取得要求に含まれる取得条件を満たすセッションＳＳＮを含むオブジェクトＯＢＪのそれぞれについて実行される。なお、セッション取得部４４は、ステップＳ４０２の処理を開始する前に、セッション情報テーブル５２およびオブジェクト情報テーブル５４を参照し、取得対象のセッションＳＳＮおよび取得対象のセッションＳＳＮを含むオブジェクトＯＢＪを検索する。
【００７９】
ステップＳ４０２において、セッション取得部４４は、取得対象のセッションＳＳＮを含むオブジェクトＯＢＪにおいて、取得するセッションＳＳＮの数が閾値を超えているか否かを判定する。セッションＳＳＮの数が閾値を超えている場合、処理はステップＳ４０４に移行され、セッションＳＳＮの数が閾値以下の場合、処理はステップＳ４０８に移行される。
【００８０】
ステップＳ４０４において、セッション取得部４４は、オブジェクトＯＢＪの全体をストレージ装置７０から取得する。次に、ステップＳ４０６において、セッション取得部４４は、取得したオブジェクトＯＢＪから取得条件を満たすセッションＳＳＮを抽出し、処理をステップＳ４０２に戻す。一方、ステップＳ４０８において、セッション取得部４４は、セッション単位でセッションＳＳＮをストレージ装置７０から取得し、処理をステップＳ４０２に戻す。
【００８１】
取得条件を満たすセッションＳＳＮを含むオブジェクトＯＢＪのそれぞれについて、ステップＳ４０２からステップＳ４０８の処理が実行された場合、処理はステップＳ４１０に移行される。ステップＳ４１０において、セッション取得部４４は、取得したセッションＳＳＮを管理装置８０に送信し、図１２に示す処理を終了する。なお、セッション取得部４４は、オブジェクト単位でセッションＳＳＮを取得する毎、またはセッション単位でセッションＳＳＮを取得する毎に、取得したセッションＳＳＮを管理装置８０に送信してもよい。
【００８２】
以上、図３から図１２に示す実施形態においても、図１および図２に示す実施形態と同様に、取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで取得するかの指標である閾値を判定条件として設定することができる。オブジェクトＯＢＪ毎に閾値に基づいてデータの取得方式を切り替えることで、取得方式を切り替えない場合に比べて、ストレージ装置７０からのデータの取得効率を向上することができ、情報処理システム１００Ａの処理性能を向上することができる。
【００８３】
さらに、図３から図１２に示す実施形態では、以下に示す効果を得ることができる。診断情報テーブル５６に格納されたセッション数の各々を仮の閾値に設定し、取得方式の正解率が最も高い仮の閾値を閾値に設定することで、セッション数の変化に対して取得時間の変化の傾向がばらつく場合にも、閾値を統計的に求めることができる。ミラーポート２からパケットをキャプチャしない非キャプチャモード中にオフライン診断部４６を動作させることで、キャプチャ制御部４２によるパケットのキャプチャ動作の影響を受けることなく閾値を求めることができる。管理装置８０が取得要求を発行しない非取得モード中にオフライン診断部４６を動作させることで、セッション取得部４４によるセッションＳＳＮの取得動作の影響を受けることなく閾値を求めることができる。
【００８４】
図１３は、情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す。図３と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。図１３に示す情報処理システム１００Ｂは、図３に示す情報処理システム１００Ａと同様に、管理装置８０およびストレージ装置７０に接続されたキャプチャサーバ４０を有する。そして、キャプチャサーバ４０は、端末装置１とウェブサーバ３との間で送受信されるパケットを、ミラーポート２を介してキャプチャし、キャプチャしたパケットをストレージ装置７０に格納する。
【００８５】
キャプチャサーバ４０は、図３に示すセッション取得部４４の代わりにセッション取得部４４Ｂを有し、図３に示すオフライン診断部４６の代わりにオンライン診断部４８Ｂを有する。キャプチャサーバ４０のメモリ５０には、キャプチャ制御部４２、セッション取得部４４Ｂおよびオンライン診断部４８Ｂの機能を実現するデータ取得制御プログラム６２Ｂが格納される。なお、キャプチャ制御部４２、セッション取得部４４Ｂおよびオンライン診断部４８Ｂの機能は、ハードウェアにより実現されてもよい。
【００８６】
セッション取得部４４Ｂは、図３に示すセッション取得部４４の機能に加えて、オブジェクトＯＢＪから取得したセッションＳＳＮの数と、ストレージ装置７０からの取得時間とをオンライン診断部４８Ｂに通知する機能を有する。オンライン診断部４８Ｂは、キャプチャ制御部４２がパケットをキャプチャするキャプチャモード中、かつ、管理装置８０が取得要求を発行する取得モード中に動作し、セッションＳＳＮの取得時間等を診断情報テーブル５６に格納する。なお、オンライン診断部４８Ｂは、キャプチャ制御部４２がパケットをキャプチャしない非キャプチャモード中、かつ、管理装置８０が取得要求を発行する取得モード中に動作してもよい。オンライン診断部４８Ｂの動作の例は、図１５から図１８に示される。
【００８７】
図１４は、図１３に示す診断情報テーブル５６に格納される情報の一例を示す。診断情報テーブル５６は、図５に示す診断情報テーブル５６と同様に、”取得条件を満たすセッション数”、”オブジェクト単位での取得時間”および”セッション単位での取得時間”が格納される複数の行領域を有する。但し、図１４に示す診断情報テーブル５６では、”取得条件を満たすセッション数”の行毎に、オブジェクト単位での取得時間またはセッション単位での取得時間のいずれかが格納される。
【００８８】
図１５は、図１３に示すキャプチャサーバ４０のキャプチャモードでの動作の一例を示す。キャプチャモード中、キャプチャサーバ４０のキャプチャ制御部４２は、端末装置１とウェブサーバ３との間で送受信されるパケットを、ミラーポート２を介してキャプチャし、キャプチャしたパケットをストレージ装置７０に格納する（図１５（ａ）、（ｂ））。キャプチャ制御部４２は、図６で説明したように、受信したパケットをセッションＳＳＮとしてまとめ、所定数のセッションＳＳＮを含むオブジェクトＯＢＪをストレージ装置７０に格納する。
【００８９】
セッション取得部４４Ｂは、管理装置８０からセッションＳＳＮの取得要求を受信する毎に、取得要求に含まれる取得条件を満たすセッションＳＳＮを、オブジェクト単位またはセッション単位でストレージ装置７０から取得する（図１５（ｃ）、（ｄ））。そして、セッション取得部４４Ｂは、セッションＳＳＮの取得に掛かった取得時間を測定する。セッション取得部４４Ｂは、取得したセッションＳＳＮを管理装置８０に送信する（図１５（ｅ））。セッション取得部４４Ｂは、取得対象のセッションＳＳＮを含むオブジェクトＯＢＪにおける取得対象のセッション数に対応付けて、オブジェクト単位またはセッション単位でのセッションＳＳＮの取得時間を診断情報テーブル５６に格納する（図１５（ｆ））。セッション取得部４４Ｂが、取得対象のセッションＳＳＮをオブジェクト単位またはセッション単位のいずれでストレージ装置７０から取得するかは、図１７で説明する。
【００９０】
オンライン診断部４８Ｂは、セッションＳＳＮの取得要求をセッション取得部４４Ｂが所定回数受信する毎に、診断情報テーブル５６に格納された情報に基づいて閾値を算出し、算出した閾値を閾値保持部５８に格納する（図１５（ｇ）、（ｈ））。例えば、セッション取得部４４Ｂは、取得要求の回数をカウントし、カウント値が所定回数に達したことに基づいて、閾値の算出要求をオンライン診断部４８Ｂに発行する。オンライン診断部４８Ｂは、セッション取得部４４Ｂからの算出要求に基づいて、閾値を算出する。
【００９１】
このように、キャプチャサーバ４０は、端末装置１とウェブサーバ３との間で送受信されるパケットを、ミラーポート２を介してキャプチャするキャプチャモード中に、閾値を算出し、更新することができる。換言すれば、キャプチャサーバ４０は、ネットワークスイッチ２を介してリアルタイムでキャプチャするパケットの情報を、閾値に反映させることができる。また、キャプチャサーバ４０は、管理装置８０が取得要求を発行する取得モード中に、閾値を算出し、更新することができる。したがって、キャプチャサーバ４０の本来の機能であるキャプチャ動作と取得対象のセッションの取得動作を停止することなく、閾値を算出することができる。
【００９２】
図１６は、図１３に示すセッション取得部４４ＢによるセッションＳＳＮの取得方式を切り替える動作の一例を示す。セッション取得部４４Ｂは、閾値保持部５８が閾値を保持していない場合、所定回数の取得要求に基づいて、オブジェクト単位での取得方式とセッション単位での取得方式との頻度を互いに同じに設定する（図１６（ａ））。すなわち、セッション取得部４４Ｂは、オンライン診断部４８Ｂが閾値を一度も算出していない場合、オブジェクト単位での取得方式とセッション単位での取得方式との頻度を互いに同じに設定する。そして、オンライン診断部４８Ｂは、セッションＳＳＮの取得に掛かった取得時間を診断情報テーブル５６に格納する。
【００９３】
オンライン診断部４８Ｂは、所定回数の取得要求に対応してセッション取得部４４ＢがセッションＳＳＮを取得したことに基づいて、診断情報テーブル５６に保持された情報に基づいて閾値を算出し、算出した閾値を閾値保持部５８に格納する。
【００９４】
この後、セッション取得部４４Ｂは、閾値保持部５８が保持する閾値により取得方式を判定し、判定した閾値を用いてセッションＳＳＮを取得する（図１６（ｂ）、（ｃ））。但し、セッション取得部４４Ｂは、所定の頻度で、閾値により判定した取得方式と異なる取得方式でセッションＳＳＮを取得する。そして、オンライン診断部４８Ｂは、セッションＳＳＮの取得に掛かった取得時間を診断情報テーブル５６に格納する。
【００９５】
図１７は、図１３に示すオンライン診断部４８Ｂおよびセッション取得部４４Ｂの動作の一例を示す。すなわち、図１７は、図１３に示すキャプチャサーバ４０が実行するデータ取得制御プログラム６２Ｂの一例を示す。図１７に示す処理は、管理装置８０からセッションＳＳＮの取得要求を受信したことに基づいて開始される。
【００９６】
ステップＳ３０２において、セッション取得部４４Ｂは、所定回数の取得要求を受信した場合、オンライン診断部４８ＢにステップＳ２００Ａの処理を実行させ、所定回数の取得要求を受信していない場合、処理をステップＳ３０４に移行する。なお、セッション取得部４４Ｂは、所定回数の取得要求を受信した場合、取得要求の回数を計数するカウンタの値を”０”にリセットする。ステップＳ２００Ａにおいて、オンライン診断部４８Ｂは、閾値を算出し、算出した閾値を閾値保持部５８に格納し、セッション取得部４４ＢにステップＳ３０４の処理を実行させる。ステップＳ２００Ａの処理の例は、図１８に示される。
【００９７】
ステップＳ３０４において、セッション取得部４４Ｂは、閾値保持部５８に閾値が保持されている場合、処理をステップＳ３１４に移行し、閾値保持部５８に閾値が保持されていない場合、処理をステップＳ３０６に移行する。ステップＳ３０６において、セッション取得部４４Ｂは、０から１の乱数を生成する。
【００９８】
次に、ステップＳ３０８において、セッション取得部４４Ｂは、生成した乱数が０．５以上の場合、処理をステップＳ３１０に移行し、生成した乱数が０．５未満の場合、処理をステップＳ３１２に移行する。ステップＳ３１０において、セッション取得部４４Ｂは、オブジェクト単位でセッションＳＳＮを取得し、取得したセッションＳＳＮを管理装置８０に送信する。また、セッション取得部４４Ｂは、取得したセッションＳＳＮの数に対応して、取得時間を診断情報テーブル５６に格納し、処理を終了する。ステップＳ３１２において、セッション取得部４４Ｂは、セッション単位でセッションＳＳＮを取得し、取得したセッションＳＳＮを管理装置８０に送信する。また、セッション取得部４４Ｂは、取得したセッションＳＳＮの数に対応して、取得時間を診断情報テーブル５６に格納し、処理を終了する。以上より、閾値保持部５８に閾値が保持されていない場合、オブジェクト単位でのセッションＳＳＮの取得と、セッション単位でのセッションＳＳＮの取得とが、互いに同じ頻度で実施される。
【００９９】
一方、ステップＳ３１４において、セッション取得部４４Ｂは、０から１の乱数を生成する。次に、ステップＳ３１６において、セッション取得部４４Ｂは、例えば、生成した乱数が０．９９以上の場合、処理をステップＳ３１８に移行し、生成した乱数が０．９９未満の場合、処理をステップＳ３２０に移行する。なお、ステップＳ３１４で判定する乱数は、０．９９以外の値でもよい。
【０１００】
ステップＳ３１８において、セッション取得部４４Ｂは、閾値により判定した取得方式と異なる取得方式でセッションＳＳＮを取得し、取得したセッションＳＳＮを管理装置８０に送信する。また、セッション取得部４４Ｂは、取得したセッションＳＳＮの数に対応して、取得時間を診断情報テーブル５６に格納し、処理を終了する。ステップＳ３２０において、オンライン診断部４８Ｂは、閾値により判定した取得方式でセッションＳＳＮを取得し、取得したセッションＳＳＮを管理装置８０に送信する。また、セッション取得部４４Ｂは、取得したセッションＳＳＮの数に対応して、取得時間を診断情報テーブル５６に格納し、処理を終了する。
【０１０１】
以上より、閾値保持部５８に閾値が保持されている場合、閾値により判定した取得方式と異なる取得方式でセッションＳＳＮの取得が１％の頻度で実施される。これにより、図１４の診断情報テーブル５６に示すように、”取得条件を満たすセッション数”（例えば、”１０”、”２０”、”４０”）において、オブジェクト単位での取得時間とセッション単位での取得時間との両方を得ることができる。この結果、オブジェクト単位での取得時間とセッション単位での取得時間とを使用して、オンライン診断部４８Ｂにより閾値を算出することができる。なお、閾値により判定した取得方式と異なる取得方式でセッションＳＳＮを取得する確率は１％であるため、セッションＳＳＮの取得効率の低下の影響を最小限にすることができる。ステップＳ２００Ａの処理を実行するオンライン診断部４８Ｂは、設定部の一例であり、ステップＳ３１０、Ｓ３１２、Ｓ３１８、Ｓ３２０の処理を実行するセッション取得部４４Ｂは、測定部および取得部の一例である。
【０１０２】
図１８は、図１７に示すステップＳ２００Ａの処理の一例を示す。図１８は、ステップＳ２０２の後にステップＳ２０３が追加されることを除き、図１０に示す処理と同様である。ステップＳ２０３において、オンライン診断部４８Ｂは、オブジェクト単位での取得方式とセッション単位での取得時間との両方が格納された”取得条件を満たすセッション数”を抽出する。そして、ステップＳ２０３で抽出した”取得条件を満たすセッション数”を用いて、図１０と同様に、ステップＳ２０４からステップＳ２１４の処理が実行される。
【０１０３】
なお、図１３に示すキャプチャサーバ４０は、オンライン診断部４８Ｂとともに、図３に示すオフライン診断部４６を有してもよい。この場合、キャプチャサーバ４０は、管理装置８０からの指示に基づいて、オンライン診断部４８Ｂまたはオフライン診断部４６の一方を選択的に動作させて、閾値を算出する。これにより、パケットをキャプチャするキャプチャモードと、パケットをキャプチャしない非キャプチャモードとの両方において閾値を算出することができる。また、管理装置８０が取得要求を発行する取得モードと、取得要求を発行しない非取得モードとの両方において閾値を算出することができる。
【０１０４】
以上、図１３から図１８に示す実施形態においても、図１から図１２に示す実施形態と同様に、取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで取得するかの指標である閾値を判定条件として設定することができる。これにより、ストレージ装置７０からのデータの取得効率を向上することができ、情報処理システム１００Ｂの処理性能を向上することができる。仮の閾値に基づいて閾値を設定することで、セッション数の変化に対して取得時間の変化の傾向がばらつく場合にも、閾値を統計的に求めることができる。
【０１０５】
さらに、図１３から図１８に示す実施形態では、ミラーポート２からパケットをキャプチャするキャプチャモード中に閾値を算出することができ、また、管理装置８０が取得要求を発行する取得モード中に閾値を算出することができる。この結果、キャプチャサーバ４０の本来の機能であるキャプチャ動作と取得対象のセッションの取得動作を停止することなく、閾値を算出し、さらに閾値を更新することができる。
【０１０６】
キャプチャサーバ４０に閾値が設定されていない場合、取得要求に基づくオブジェクト単位とセッション単位でのセッションＳＳＮの取得を互いに同じ頻度で行うことで、閾値を設定するための情報を診断情報テーブル５６Ｃに格納することができる。また、キャプチャサーバ４０の初期状態において閾値が設定されていない場合にも、管理装置８０からの取得要求に基づいて取得対象のセッションＳＳＮを取得することができる。
【０１０７】
閾値の設定後、閾値による判定と異なる取得方式を所定の頻度で選択することで、セッション数毎にオブジェクト単位とセッション単位の両方でのセッションＳＳＮの取得時間を測定する確率を、閾値にしたがって取得方式を選択する場合に比べて向上できる。この結果、閾値にしたがって選択された取得方式のみで取得時間を測定する場合に比べて、閾値の算出に使用するセッション数（すなわち、図１８に示すステップＳ２０４の仮の閾値）を増やすことができ、閾値の算出精度を向上することができる。
【０１０８】
図１９は、情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す。図３と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。図１９に示す情報処理システム１００Ｃは、図３に示す情報処理システム１００Ａと同様に、管理装置８０およびストレージ装置７０に接続されたキャプチャサーバ４０を有する。そして、キャプチャサーバ４０は、端末装置１とウェブサーバ３との間で送受信されるパケットを、ミラーポート２を介してキャプチャし、キャプチャしたパケットをストレージ装置７０に格納する。
【０１０９】
キャプチャサーバ４０は、図３に示すオフライン診断部４６の代わりにオフライン診断部４６Ｃを有し、図３に示す診断情報テーブル５６の代わりに診断情報テーブル５６Ｃを有する。診断情報テーブル５６Ｃの例は、図２０に示される。メモリ５０には、キャプチャ制御部４２、セッション取得部４４およびオフライン診断部４６Ｃの機能を実現するデータ取得制御プログラム６２Ｃが格納される。なお、キャプチャ制御部４２、セッション取得部４４およびオフライン診断部４６Ｃの機能は、ハードウェアにより実現されてもよい。
【０１１０】
オフライン診断部４６Ｃは、管理装置８０からの診断開始指示に基づいて、取得条件を満たすセッションＳＳＮのデータ量の割合をオブジェクトＯＢＪ毎に算出し、算出したデータ量の割合のそれぞれを診断情報テーブル５６Ｃに格納する。また、オフライン診断部４６Ｃは、取得条件を満たすセッションＳＳＮを、オブジェクト単位でストレージ装置７０から取得するために掛かる取得時間と、セッション単位でストレージ装置７０から取得するために掛かる取得時間とを測定する。そして、オフライン診断部４６Ｃは、算出したデータ量の割合毎に、オブジェクト単位での取得時間とセッション単位での取得時間とを診断情報テーブル５６Ｃに格納する。取得対象のセッションＳＳＮのオブジェクト単位での取得時間とセッション単位での取得時間とを測定するオフライン診断部４６Ｃは、測定部の一例である。オフライン診断部４６Ｃの動作は、図９および図１０において、”セッション数”を”データ量の割合”に置き換えることで実現される。図９のステップＳ２００の処理を実行するオフライン診断部４６Ｃは、設定部の一例である。
【０１１１】
なお、図１９に示すキャプチャサーバ４０は、管理装置８０からの取得要求に対応して診断情報テーブル５６Ｃに格納される情報に基づいて閾値を算出するオンライン診断部を有してもよい。オンライン診断部の機能は、図１７に示すステップＳ２００Ａにおいて、データ量の割合に基づいて閾値を算出することを除き、図１３に示すオンライン診断部４８Ｂの機能と同様である。図１９に示すセッション取得部４４は、管理装置８０からの取得要求に基づいてストレージ装置７０から取得したセッションＳＳＮに関する情報（データ量の割合、取得時間）を診断情報テーブル５６Ｃに格納する機能を有する。セッション取得部４４は、図１７に示すステップＳ３０４からステップＳ３２０の機能を有する。但し、セッション取得部４４は、ステップＳ３１０、Ｓ３１２、Ｓ３１８、Ｓ３２０において、取得したセッションＳＳＮのデータ量の割合に対応して、取得時間を診断情報テーブル５６Ｃに格納する。そして、キャプチャサーバ４０は、管理装置８０からの指示に基づいて、オフライン診断部４６Ｃまたはオンライン診断部の一方を選択的に動作させて閾値を算出する。
【０１１２】
図２０は、図１９に示す診断情報テーブル５６Ｃに格納される情報の一例を示す。図５に示す診断情報テーブル５６と同じ要素については、詳細な説明は省略する。診断情報テーブル５６Ｃは、図５の診断情報テーブル５６の”取得条件を満たすセッション数”の領域の代わりに、”取得条件を満たすセッションのデータ量の割合”の領域を有する。例えば、データの割合の”０．１”は、取得対象のセッションＳＳＮを含む１つのオブジェクトＯＢＪ全体のデータ量に対して取得対象のセッションＳＳＮのデータ量の割合が１０％であることを示す。
【０１１３】
なお、図１３に示した情報処理システム１００Ｂに図２０に示す診断情報テーブル５６Ｃを設けてもよい。この場合、図１５において、セッション取得部４４Ｂは、セッション数の代わりに、データ量の割合に対応付けて、オブジェクト単位またはセッション単位でのセッションＳＳＮの取得時間を診断情報テーブル５６Ｃに格納する。そして、オンライン診断部４８Ｂは、診断情報テーブル５６Ｃに格納された情報に基づいて閾値を算出する。
【０１１４】
以上、図１９および図２０に示す実施形態においても、図１から図１２に示す実施形態と同様に、取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで取得するかの指標である閾値を判定条件として設定することができる。仮の閾値に基づいて閾値を設定することで、セッション数の変化に対して取得時間の変化の傾向がばらつく場合にも、閾値を統計的に求めることができる。さらに、図１９および図２０に示す実施形態では、取得条件を満たすセッションＳＳＮのデータ量の割合に基づいて閾値を算出することができる。
【０１１５】
図２１は、情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す。図３と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。図２１に示す情報処理システム１００Ｄは、図３に示す情報処理システム１００Ａと同様に、管理装置８０およびストレージ装置７０に接続されたキャプチャサーバ４０を有する。そして、キャプチャサーバ４０は、端末装置１とウェブサーバ３との間で送受信されるパケットを、ミラーポート２を介してキャプチャし、キャプチャしたパケットをストレージ装置７０に格納する。
【０１１６】
キャプチャサーバ４０は、図３に示すセッション取得部４４の代わりにセッション取得部４４Ｄを有し、オフライン診断部４６の代わりにオフライン診断部４６Ｄを有する。また、キャプチャサーバ４０は、図３に示す診断情報テーブル５６の代わりに診断情報テーブル５６Ｄを有し、閾値保持部５８の代わりに閾値保持部５８Ｄを有する。診断情報テーブル５６Ｄの例は、図２２に示される。閾値保持部５８Ｄは、第１の閾値と第２の閾値とを保持する。キャプチャサーバ４０のメモリ５０には、キャプチャ制御部４２、セッション取得部４４Ｄおよびオフライン診断部４６Ｄの機能を実現するデータ取得制御プログラム６２Ｄが格納される。なお、キャプチャ制御部４２、セッション取得部４４Ｄおよびオフライン診断部４６Ｄの機能は、ハードウェアにより実現されてもよい。
【０１１７】
セッション取得部４４Ｄは、管理装置８０からのセッションＳＳＮの取得要求に基づいて、取得要求に含まれる取得条件を満たすセッションＳＳＮをストレージ装置７０から取得する。ここで、セッション取得部４４Ｄは、オブジェクトＯＢＪ毎に、取得条件を満たすセッション数を第１の閾値と比較し、取得条件を満たすセッションＳＳＮのデータ量を第２の閾値と比較する。そして、セッション取得部４４Ｄは、比較結果に基づいて、各オブジェクトＯＢＪに含まれるセッションＳＳＮを、オブジェクト単位またはセッション単位でストレージ装置７０から取得し、取得したセッションＳＳＮを管理装置８０に送信する。セッション取得部４４Ｄの動作の例は、図２５および図２６に示される。セッション取得部４４Ｄは、取得部の一例である。
【０１１８】
オフライン診断部４６Ｄは、図３に示すオフライン診断部４６と同様に、診断開始指示に基づいて、取得条件を満たすセッションＳＳＮの数であるセッション数をオブジェクトＯＢＪ毎に算出し、算出したセッション数を診断情報テーブル５６Ｄに格納する。また、オフライン診断部４６Ｄは、図１９に示すオフライン診断部４６Ｃと同様に、診断開始指示に基づいて、取得条件を満たすセッションＳＳＮのデータ量の割合をオブジェクトＯＢＪ毎に算出し、算出したデータ量の割合を診断情報テーブル５６Ｄに格納する。さらに、オフライン診断部４６Ｄは、取得条件を満たすセッションＳＳＮのオブジェクト単位での取得時間とセッション単位での取得時間とを測定し、測定した取得時間を診断情報テーブル５６Ｄに格納する。
【０１１９】
また、オフライン診断部４６Ｄは、診断情報テーブル５６Ｄに格納した情報に基づいて、第１の閾値および第２の閾値を算出する。第１の閾値は、図５に示す診断情報テーブル５６の”取得条件を満たすセッション数”の領域に格納されたセッション数に基づいて算出される閾値と同じである。すなわち、第１の閾値は、オブジェクトＯＢＪ毎のセッション数に対応するセッションＳＳＮのストレージ装置７０からの取得時間に基づいて、オフライン診断部４６Ｄにより算出される。第２の閾値は、図２０に示す診断情報テーブル５６Ｃの”取得条件を満たすセッションのデータ量の割合”の領域に格納されたデータ量の割合に基づいて算出される閾値と同じである。すなわち、第２の閾値は、オブジェクトＯＢＪ毎のセッションＳＳＮのデータ量の割合に対応するセッションＳＳＮのストレージ装置７０からの取得時間に基づいて、オフライン診断部４６Ｄにより算出される。第１の閾値は、第１の判定条件の一例であり、第２の閾値は、第２の判定条件の一例である。オフライン診断部４６Ｄの動作の例は、図２３および図２４に示される。
【０１２０】
なお、図２１に示すキャプチャサーバ４０は、管理装置８０からの取得要求に対応して診断情報テーブル５６Ｄに格納される情報に基づいて閾値を算出するオンライン診断部を有してもよい。オンライン診断部の機能は、図１７に示すステップＳ２００Ａにおいて、セッション数に基づいて第１の閾値を算出し、データ量の割合に基づいて第２の閾値を算出することを除き、図１３に示すオンライン診断部４８Ｂの機能と同様である。図２１に示すセッション取得部４４Ｄは、管理装置８０からの取得要求に基づいてストレージ装置７０から取得したセッションＳＳＮに関する情報（セッション数、データ量の割合、取得時間）を診断情報テーブル５６Ｄに格納する機能を有する。セッション取得部４４Ｄは、図１７に示すステップＳ３０４からステップＳ３２０の機能を有する。但し、セッション取得部４４Ｄは、ステップＳ３１０、Ｓ３１２、Ｓ３１８、Ｓ３２０において、取得したセッションＳＳＮの数とデータ量の割合とに対応して、取得時間を診断情報テーブル５６Ｄに格納する。そして、キャプチャサーバ４０は、管理装置８０からの指示に基づいて、オフライン診断部４６Ｄまたはオンライン診断部の一方を選択的に動作させて閾値を算出する。
【０１２１】
図２２は、図２１に示す診断情報テーブル５６Ｄに格納される情報の一例を示す。診断情報テーブル５６Ｄは、図５の診断情報テーブル５６に示す”取得条件を満たすセッション数”の領域と、図２０の診断情報テーブル５６Ｃに示す”取得条件を満たすセッションのデータ量の割合”の領域とを有する。また、診断情報テーブル５６Ｄは、”セッション数”と”データ量の割合”とのペアの各々に対応して、”オブジェクト単位での取得時間”の領域と”セッション単位での取得時間”の領域とを有する。
【０１２２】
図２３は、図２１に示すオフライン診断部４６Ｄの動作の一例を示す。すなわち、図２３は、図２１に示すキャプチャサーバ４０が実行するデータ取得制御プログラム６２Ｄの一例を示す。図９と同一または同様の処理については、詳細な説明は省略する。図２３に示すステップＳ１００Ｄの処理のうち、ステップＳ１０２ＤからステップＳ１１２までの処理を実行するオフライン診断部４６Ｄは、測定部の一例であり、ステップＳ２００Ｄを処理するオフライン診断部４６Ｄは、設定部の一例である。
【０１２３】
まず、ステップＳ１０２Ｄにおいて、オフライン診断部４６Ｄは、セッション情報テーブル５２を用いて取得条件を満たすセッションＳＳＮを検索し、取得条件を満たすセッションＳＳＮの数であるセッション数をオブジェクトＯＢＪ毎に算出する。また、オフライン診断部４６Ｄは、取得条件を満たすセッションＳＳＮのサイズ（データ量）をセッション情報テーブル５２（図４）から読み出す。さらに、オフライン診断部４６Ｄは、取得条件を満たすセッションＳＳＮを含むオブジェクトＯＢＪのサイズ（データ量）をオブジェクト情報テーブル５４（図４）から読み出す。そして、オフライン診断部４６Ｄは、オブジェクトＯＢＪ毎に、取得条件を満たすセッションＳＳＮを含むオブジェクトＯＢＪのデータ量に対する取得条件を満たすセッションＳＳＮのデータ量の割合を算出する。
【０１２４】
次に、ステップＳ１０４Ｄにおいて、オフライン診断部４６Ｄは、オブジェクトＯＢＪ毎に算出したセッション数とセッションＳＳＮのデータ量の割合とを診断情報テーブル５６Ｄに格納する。この後に繰り返し実行されるステップＳ１０６からステップＳ１１２間での処理は、図９と同じである。すなわち、オフライン診断部４６Ｄは、取得条件を満たすセッションＳＳＮをオブジェクト単位とセッション単位でそれぞれ取得し、取得に掛かった取得時間を測定し、測定した取得時間を診断情報テーブル５６Ｄに格納する。
【０１２５】
取得条件を満たすセッションＳＳＮを含む全てのオブジェクトＯＢＪについて、ステップＳ１０６からステップＳ１１２の処理が完了した場合、ステップＳ２００Ｄの処理が実行される。ステップＳ２００Ｄにおいて、オフライン診断部４６Ｄは、診断情報テーブル５６Ｄに格納した情報に基づいて、第１の閾値および第２の閾値を算出し、算出した第１の閾値および第２の閾値を閾値保持部５８Ｄに格納する。ステップＳ２００Ｄの例は、図２４に示される。
【０１２６】
図２４は、図２３に示すステップＳ２００Ｄの処理の一例を示す。図１０と同一または同様の処理については詳細な説明は省略する。まず、ステップＳ２００において、オフライン診断部４６Ｄは、図１０に示すステップＳ２００と同じ処理を実行し、第１の閾値を算出する。次に、ステップＳ２０２Ｄにおいて、オフライン診断部４６Ｄは、第２の閾値の算出に使用する最大値を”０”に設定し、処理をステップＳ２０４Ｄに移行する。
【０１２７】
ステップＳ２０４ＤからステップＳ２１４の処理は、診断情報テーブル５６に格納された”取得条件を満たすセッションのデータ量の割合”の行領域のそれぞれについて実行される。ステップＳ２０４Ｄにおいて、オフライン診断部４６Ｄは、診断情報テーブル５６に格納された”取得条件を満たすセッションのデータ量の割合”を仮の第２の閾値とする。次に、ステップＳ２０６Ｄにおいて、オフライン診断部４６Ｄは、”取得条件を満たすセッションのデータ量の割合”に対応するセッションＳＳＮの取得方式を仮の第２の閾値に基づいて選択する。
【０１２８】
次に、ステップＳ２０８Ｄにおいて、オフライン診断部４６Ｄは、ステップＳ２０６Ｄで選択した取得方式でのセッションＳＳＮの取得時間が、選択しなかった取得方式でのセッションＳＳＮの取得時間より短いか否かを判定する。次に、ステップＳ２１０Ｄにおいて、オフライン診断部４６は、ステップＳ２０６Ｄで選択した取得方式の方が、選択しなかった取得方式に比べて取得時間が短くなる割合（正解率）を算出する。
【０１２９】
次に、ステップＳ２１２Ｄにおいて、オフライン診断部４６Ｄは、ステップＳ２１０Ｄで算出した割合（正解率）が最大値を超えた場合、処理をステップＳ２１４Ｄに移行する。オフライン診断部４６Ｄは、ステップＳ２１０Ｄで算出した割合（正解率）が最大値以下の場合、処理をステップＳ２０４Ｄに戻す。
【０１３０】
ステップＳ２１４Ｄにおいて、オフライン診断部４６Ｄは、ステップＳ２０４Ｄで設定した仮の第２の閾値を最大値にし、処理をステップＳ２０４Ｄに戻す。診断情報テーブル５６に格納された”取得条件を満たすセッションのデータ量の割合”のそれぞれについて、ステップＳ２０４ＤからステップＳ２１４の処理が完了した場合、ステップＳ２１６Ｄの処理が実行される。診断情報テーブル５６Ｄに格納された”取得条件を満たすセッションのデータ量の割合”を仮の第２の閾値に順次設定し、ステップＳ２０４ＤからステップＳ２１４Ｄの処理を実行することで、正解率が最も高い仮の第２の閾値を求めることができる。
【０１３１】
ステップＳ２１６Ｄにおいて、オフライン診断部４６Ｄは、正解率が最も高い仮の第２の閾値である最大値を、第２の閾値として閾値保持部５８Ｄに格納し、処理を終了する。
【０１３２】
図２５は、図２１に示すセッション取得部４４Ｄの動作の一例を示す。すなわち、図２５は、図２１に示すキャプチャサーバ４０が実行するデータ取得制御プログラム６２Ｄの一例を示す。図１２と同一または同様の処理については詳細な説明は省略する。図２５は、図１２に示すステップＳ４０２の代わりに、ステップＳ４０２Ｄ、Ｓ４０３Ｄが実行されることを除き、図１２と同じである。
【０１３３】
ステップＳ４０２Ｄにおいて、セッション取得部４４Ｄは、取得対象のセッションＳＳＮを含むオブジェクトＯＢＪにおいて、取得するセッションＳＳＮの数が第１の閾値を超えているか否かを判定する。セッションＳＳＮの数が第１の閾値を超えている場合、処理はステップＳ４０４に移行され、セッションＳＳＮの数が第１の閾値以下の場合、処理はステップＳ４０３Ｄに移行される。
【０１３４】
ステップＳ４０３Ｄにおいて、セッション取得部４４Ｄは、取得対象のセッションＳＳＮを含むオブジェクトＯＢＪにおいて、取得するセッションＳＳＮのデータ量の割合が第２の閾値を超えているか否かを判定する。セッションＳＳＮのデータ量の割合が第２の閾値を超えている場合、処理はステップＳ４０４に移行され、セッションＳＳＮのデータ量の割合が第２の閾値以下の場合、処理はステップＳ４０８に移行される。
【０１３５】
すなわち、セッション取得部４４Ｄは、第１の閾値による第１の判定条件と第２の閾値による第２の判定条件とのいずれかを満足する場合、セッションＳＳＮをオブジェクト単位で取得する。一方、セッション取得部４４Ｄは、第１の閾値による第１の判定条件と第２の閾値による第２の判定条件との両方を満足しない場合、セッションＳＳＮをセッション単位で取得する。
【０１３６】
図２６は、図２１に示すセッション取得部４４Ｄの動作の別の例を示す。すなわち、図２６は、図２１に示すキャプチャサーバ４０が実行するデータ取得制御プログラム６２Ｄの別の例を示す。図１２および図２５と同一または同様の処理については詳細な説明は省略する。図２５は、図１２に示すステップＳ４０２の代わりに、ステップＳ４０２Ｄ、Ｓ４０３Ｄが実行されることを除き、図１２と同じである。ステップＳ４０２Ｄ、Ｓ４０３Ｄの処理は、図２５に示すステップＳ４０２Ｄ、Ｓ４０３Ｄの処理と同様である。
【０１３７】
ステップＳ４０２Ｄにおいて、セッション取得部４４Ｄは、取得対象のセッションＳＳＮを含むオブジェクトＯＢＪにおいて、取得するセッションＳＳＮの数が第１の閾値を超えている場合、処理をステップＳ４０３Ｄに移行する。セッション取得部４４Ｄは、セッションＳＳＮの数が第１の閾値以下の場合、処理をステップＳ４０８に移行する。
【０１３８】
ステップＳ４０３Ｄにおいて、セッション取得部４４Ｄは、取得対象のセッションＳＳＮを含むオブジェクトＯＢＪにおいて、取得するセッションＳＳＮのデータ量の割合が第２の閾値を超えている場合、処理をステップＳ４０４に移行する。セッション取得部４４Ｄは、セッションＳＳＮのデータ量の割合が第２の閾値以下の場合、処理をステップＳ４０８に移行する。
【０１３９】
すなわち、セッション取得部４４Ｄは、第１の閾値による第１の判定条件と第２の閾値による第２の判定条件との両方を満足する場合、セッションＳＳＮをオブジェクト単位で取得する。一方、セッション取得部４４Ｄは、第１の閾値による第１の判定条件と第２の閾値による第２の判定条件との少なくともいずれかを満足しない場合、セッションＳＳＮをセッション単位で取得する。なお、図２５および図２６に示すフローの代わりに、図１２のステップＳ４０２をステップＳ４０２Ｄに変更したフローと、図１２のステップＳ４０２をステップＳ４０３Ｄに変更したフローとを切り替え可能に使用してもよい。
【０１４０】
以上、図２１から図２６に示す実施形態においても、図１から図１２に示す実施形態と同様に、取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで取得するかの指標である閾値を判定条件として設定することができる。仮の第１の閾値に基づいて第１の閾値を設定し、仮の第２の閾値に基づいて第２の閾値を設定することで、セッション数の変化に対して取得時間の変化の傾向がばらつく場合にも、第１の閾値および第２の閾値を統計的に求めることができる。
【０１４１】
さらに、図２１から図２６に示す実施形態では、セッション数とデータ量の割合との２つのパラメータから２つの閾値を算出することで、閾値の複数種の組み合わせに基づいてセッションＳＳＮの取得方式を判定することができる。すなわち、取得対象のセッションＳＳＮを取得する場合に、複数種の判定条件を使い分けることができる。
【０１４２】
図２７は、情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す。図３または図２１と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。図２７に示す情報処理システム１００Ｅは、図３に示す情報処理システム１００Ａと同様に、管理装置８０とストレージ装置７０とに接続されたキャプチャサーバ４０を有する。そして、キャプチャサーバ４０は、端末装置１とウェブサーバ３との間で送受信されるパケットを、ミラーポート２を介してキャプチャし、キャプチャしたパケットをストレージ装置７０に格納する。
【０１４３】
キャプチャサーバ４０は、図３に示すセッション取得部４４の代わりにセッション取得部４４Ｅを有し、オフライン診断部４６の代わりにオフライン診断部４６Ｅを有する。また、キャプチャサーバ４０は、図３に示す診断情報テーブル５６の代わりに図２１に示す診断情報テーブル５６Ｄを有し、図３に示す閾値保持部５８の代わりに判定条件保持部５８Ｅを有する。すなわち、キャプチャサーバ４０は、”セッション数”と”データ量の割合”とのペアの各々に対応して、”オブジェクト単位での取得時間”の領域と”セッション単位での取得時間”の領域とが格納される診断情報テーブル５６Ｄを有する。キャプチャサーバ４０のメモリ５０には、キャプチャ制御部４２、セッション取得部４４Ｅおよびオフライン診断部４６Ｅの機能を実現するデータ取得制御プログラム６２Ｅが格納される。なお、キャプチャ制御部４２、セッション取得部４４Ｅおよびオフライン診断部４６Ｅの機能は、ハードウェアにより実現されてもよい。
【０１４４】
セッション取得部４４Ｅは、管理装置８０からのセッションＳＳＮの取得要求に基づいて、取得要求に含まれる取得条件を満たすセッションＳＳＮをストレージ装置７０から取得する。ここで、セッション取得部４４Ｅは、オブジェクトＯＢＪ毎に、判定条件保持部５８Ｅに保持された判定条件に基づいて、各オブジェクトＯＢＪに含まれるセッションＳＳＮのストレージ装置７０からの取得方式を決定する。そして、セッション取得部４４Ｅは、決定した取得方式でセッションＳＳＮを取得し、取得したセッションＳＳＮを管理装置８０に送信する。セッション取得部４４Ｅの動作の例は、図２９に示される。セッション取得部４４Ｅは、取得部の一例である。
【０１４５】
オフライン診断部４６Ｅは、図３に示すオフライン診断部４６と同様に、診断開始指示に基づいて、取得条件を満たすセッションＳＳＮの数であるセッション数をオブジェクトＯＢＪ毎に算出し、算出したセッション数を診断情報テーブル５６Ｄに格納する。また、オフライン診断部４６Ｅは、図１９に示すオフライン診断部４６Ｃと同様に、診断開始指示に基づいて、取得条件を満たすセッションＳＳＮのデータ量の割合をオブジェクトＯＢＪ毎に算出し、算出したデータ量の割合を診断情報テーブル５６Ｄに格納する。
【０１４６】
さらに、オフライン診断部４６Ｅは、取得条件を満たすセッションＳＳＮのオブジェクト単位での取得時間とセッション単位での取得時間とを測定し、測定した取得時間を診断情報テーブル５６Ｄに格納する。オフライン診断部４６Ｅは、診断情報テーブル５６Ｄに格納された情報に基づいて、セッション数とデータ量の割合との二次元分布において、セッションＳＳＮを取得する取得方式を判定する境界線（分離線）を示す判定式の係数等の情報を判定条件として算出する。そして、オフライン診断部４６Ｅは、算出した境界線を示す判定条件を判定条件保持部５８Ｅに格納する。オフライン診断部４６Ｅが算出する境界線の例は、図２８に示される。取得対象のセッションＳＳＮのオブジェクト単位での取得時間とセッション単位での取得時間とを測定するオフライン診断部４６Ｅは、測定部の一例である。境界線を示す判定式の係数等の情報を算出し、算出した情報を判定条件として判定条件保持部５８Ｅに格納するオフライン診断部４６Ｅは、設定部の一例である。
【０１４７】
なお、図２７に示すキャプチャサーバ４０は、管理装置８０からの取得要求に対応して診断情報テーブル５６Ｄに格納される情報に基づいて閾値を算出するオンライン診断部を有してもよい。オンライン診断部の機能は、図１７に示すステップＳ２００Ａにおいて、セッション数に基づいて第１の閾値を算出し、データ量の割合に基づいて第２の閾値を算出することを除き、図１３に示すオンライン診断部４８Ｂの機能と同様である。図２７に示すセッション取得部４４Ｅは、管理装置８０からの取得要求に基づいてストレージ装置７０から取得したセッションＳＳＮに関する情報（セッション数、データ量の割合、取得時間）を診断情報テーブル５６Ｄに格納する機能を有する。セッション取得部４４Ｅは、図１７に示すステップＳ３０４からステップＳ３２０の機能を有する。但し、セッション取得部４４Ｅは、ステップＳ３１０、Ｓ３１２、Ｓ３１８、Ｓ３２０において、取得したセッションＳＳＮの数とデータ量の割合とに対応して、取得時間を診断情報テーブル５６Ｄに格納する。そして、キャプチャサーバ４０は、管理装置８０からの指示に基づいて、オフライン診断部４６Ｅまたはオンライン診断部の一方を選択的に動作させて閾値を算出する。
【０１４８】
図２８は、図２７に示すオフライン診断部４６Ｅが算出する境界線の概要を示す。図２８（Ａ）は、境界線（分離線）が直線の場合の例を示し、図２８（Ｂ）は、境界線（分離線）が曲線の場合の例を示す。
【０１４９】
図２８（Ａ）では、オフライン診断部４６Ｅは、図２２に示す診断情報テーブル５６Ｄに格納された情報を参照する。そして、オフライン診断部４６Ｅは、取得条件を満たすセッションＳＳＮの数であるセッション数と取得条件を満たすセッションＳＳＮのデータ量の割合との二次元分布に、セッションＳＳＮの取得時間を対応させる。これにより、”オブジェクト単位での取得時間がセッション単位での取得時間より短いもの（白い四角印）”および”セッション単位での取得時間がオブジェクト単位での取得時間より短いもの（黒い丸印）”の二次元分布が得られる。オフライン診断部４６Ｅは、得られた分布に基づいて、セッション数とデータ量の割合とが与えられた場合に、オブジェクト単位での取得方式とセッション単位での取得方式のどちらの取得時間が短いかを切り分ける境界線を示す判定式の係数等の情報を算出する。図２８（Ｂ）では、求める境界線が曲線であることを除き、オフライン診断部４６Ｅは、図２８（Ａ）と同様に、境界線を示す判定式の係数等の情報を算出する。
【０１５０】
セッション取得部４４Ｅは、図２８（Ａ）または図２８（Ｂ）に示す境界線を使用して、セッション数とデータ量の割合とに基づいて判定した取得方式でセッションＳＳＮを取得する。セッション取得部４４Ｅは、取得対象のセッション数とデータ量の割合とが、境界線の右上側の分布に含まれる場合、オブジェクト単位での取得方式を選択する。一方、セッション取得部４４Ｅは、取得対象のセッション数とデータ量の割合とが、境界線の左下側の分布に含まれる場合、セッション単位での取得方式を選択する。境界線を使用することで、閾値を使用する場合に比べて、取得時間が短い取得方式を選択する可能性を高くすることができる。
【０１５１】
例えば、オフライン診断部４６Ｅは、ニューラルネットワークを使用して、セッション数とデータ量の割合とに基づいて境界線を示す判定式の係数等を算出する。なお、オフライン診断部４６Ｅが算出する判定条件は、境界線を示す判定式の係数等に限定されず、例えば、決定木またはロジスティック回帰等の手法を用いて判定条件が決められてもよい。
【０１５２】
決定木による手法では、オフライン診断部４６Ｅは、セッション数とデータ量の割合とを独立変数に設定し、独立変数の組み合わせ毎に、オブジェクト単位でセッションＳＳＮを取得するか否かを示す従属変数を求め、決定木を生成する。ロジスティック回帰による手法では、オフライン診断部４６Ｅは、セッション数とデータ量の割合とを説明変数に設定し、説明変数の組み合わせ毎に、オブジェクト単位でセッションＳＳＮを取得するか否かを示す目的変数を求め、関係式を生成する。セッション取得部４４Ｅは、管理装置８０からの取得要求に含まれる取得条件を満たすオブジェクトＯＢＪ毎のセッションＳＳＮの数とデータ量の割合と決定木またはロジスティック回帰の関係式に当てはめる。そして、セッション取得部４４Ｅは、決定木またはロジスティック回帰の関係式に基づいてセッションＳＳＮを取得する取得方式を決定し、セッションＳＳＮを取得する。
【０１５３】
図２９は、図２８に示す境界線を使用するセッション取得部４４Ｅの動作の一例を示す。すなわち、図２９は、図２７に示すキャプチャサーバ４０が実行するデータ取得制御プログラム６２Ｅの一例を示す。図１２と同一または同様の処理については詳細な説明は省略する。図２９は、図１２に示すステップＳ４０２の代わりに、ステップＳ４０２Ｅが実行され、ステップＳ４０２Ｅの前にステップＳ４０１Ｅの処理が実行されることを除き、図１２と同様である。ステップＳ４０１ＥからステップＳ４０８は、取得要求に含まれる取得条件を満たすセッションＳＳＮを含むオブジェクトＯＢＪのそれぞれについて実行される。
【０１５４】
まず、ステップＳ４０１Ｅにおいて、セッション取得部４４Ｅは、取得条件を満たすセッションＳＳＮの数とデータ量の割合との二次元分布上の位置と、境界線との位置関係に基づいて、取得時間が他より短い取得方式を決定する。次に、ステップＳ４０２Ｅにおいて、セッション取得部４４Ｅは、オブジェクト単位での取得方式を決定した場合、ステップＳ４０４の処理に移行し、セッション単位での取得方式を決定した場合、ステップＳ４０８の処理に移行する。
【０１５５】
以上、図２７から図２９に示す実施形態においても、図１から図１２に示す実施形態と同様に、取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで取得するかの指標である判定条件を設定することができる。さらに、図２７から図２９に示す実施形態では、セッション数とデータ量の割合との二次元分布上に描かれる境界線を使用してセッションＳＳＮの取得方式を決定する。これにより、取得方式を閾値で判定する場合に比べて、取得時間が短い取得方式を選択する可能性を高くすることができる。
【０１５６】
図３０は、情報処理装置、情報処理システムおよびプログラムの別の実施形態を示す。図３０に示す情報処理システム１００Ｆは、ネットワークスイッチ７２を介してキャプチャサーバ４０に接続される複数のストレージサーバ７４と、ストレージサーバ７４の各々に接続されるストレージ装置７０とを有する。例えば、端末装置１とウェブサーバ３との間でのネットワーク流量が、図３に比べて高い場合、キャプチャサーバ４０は、キャプチャしたパケットを失わないために、図３０に示すように、複数のストレージ装置７０に並列に格納することが望ましい。なお、図３０に示すキャプチャサーバ４０と同様に、図１３、図１９、図２１および図２７に示すキャプチャサーバ４０が、ネットワークスイッチ７２とストレージサーバ７４とを介して複数のストレージ装置７０に接続されてもよい。
【０１５７】
図３１は、図１、図３、図１３、図１９、図２１、図２７および図３０に示すキャプチャサーバ４０のハードウェア構成の一例を示す。キャプチャサーバ４０は、マザーボード２００、光学ドライブ装置３００、ハードディスク装置３２０、入力装置３４０および出力装置３６０等を有する。マザーボード２００には、プロセッサ２１０、主記憶装置２２０、光学ドライブコントローラ２３０、ハードディスクコントローラ２４０、入力インタフェース２５０、出力インタフェース２６０およびネットワークインタフェース２７０等の各種部品が搭載される。例えば、プロセッサ２１０は、ＣＰＵ（Central Processing Unit）またはＧＰＵ（Graphics Processing Unit）等である。プロセッサ２１０、主記憶装置２２０、光学ドライブコントローラ２３０、ハードディスクコントローラ２４０、入力インタフェース２５０、出力インタフェース２６０およびネットワークインタフェース２７０は、システムバスＳＢＵＳに接続される。主記憶装置２２０は、図１に示すメモリ１４および図３等に示すメモリ５０に対応する。なお、プロセッサ２１０、光学ドライブコントローラ２３０、ハードディスクコントローラ２４０、入力インタフェース２５０、出力インタフェース２６０およびネットワークインタフェース２７０は、共通の半導体チップに含まれてもよい。
【０１５８】
プロセッサ２１０は、主記憶装置２２０に格納されたプログラム（図１に示した記憶領域１７に格納されるプログラムおよび図３に示すデータ取得制御プログラム６２等）を実行することで、キャプチャサーバ４０の機能を実現する。
【０１５９】
光学ドライブコントローラ２３０は、光学ドライブ装置３００に接続され、光学ドライブ装置３００に装着される記録媒体３８０にアクセス可能である。記録媒体３８０は、ＣＤ（Compact Disc：登録商標）またはＤＶＤ（Digital Versatile Disc：登録商標）等であり、例えば、プロセッサ２１０が実行するプログラムが格納される。プロセッサ２１０が実行するプログラム等は、光学ドライブ装置３００を介して記録媒体３８０からハードディスク装置３２０にダウンロードされ、主記憶装置２２０に転送される。なお、プロセッサ２１０は、ハードディスク装置３２０を介することなく、記録媒体３８０から主記憶装置２２０にプログラムをダウンロードしてもよい。
【０１６０】
ハードディスクコントローラ２４０は、ハードディスク装置３２０に接続される。例えば、キャプチャサーバ４０の電源が起動されたときに、プロセッサ２１０は、ハードディスク装置３２０に格納されているプログラムを主記憶装置２２０に転送し、主記憶装置２２０に転送されたプログラムを実行することで動作する。
【０１６１】
入力インタフェース２５０は、キーボードやマウス等の入力装置３４０に接続される。出力インタフェース２６０は、ディスプレイやプリンタ等の出力装置３６０に接続される。ネットワークインタフェース２７０は、図３に示すネットワークスイッチ２等に接続される。なお、プロセッサ２１０は、ネットワークスイッチ２等を介して接続されるネットワーク上の装置に格納されたプログラムを、ネットワークを介してハードディスク装置３２０や主記憶装置２２０にダウンロードしてもよい。
【０１６２】
以上の図１から図３１に示す実施形態に関し、さらに以下の付記を開示する。
（付記１）
所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する情報処理装置において、
データの取得条件毎に、前記取得条件を満たす取得対象のデータをオブジェクト単位で前記記憶装置から取得するのに掛かる取得時間と、前記取得対象のデータをセッション単位での前記記憶装置から取得するのに掛かる取得時間とを測定する測定部と、
前記測定部が測定した取得時間に基づいて、データの取得要求に含まれる前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する判定条件を設定する設定部と
を備えることを特徴とする情報処理装置。
（付記２）
前記設定部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数であるセッション数を、データの取得方式をオブジェクト単位またはセッション単位に切り替える閾値として前記判定条件に設定することを特徴とする付記１に記載の情報処理装置。
（付記３）
前記設定部は、
前記測定部が測定した取得時間に基づいて、オブジェクト単位およびセッション単位でのデータの取得方式のうち取得時間が短い取得方式を複数の前記セッション数毎に特定し、
前記セッション数の各々を仮の判定条件に設定し、前記セッション数のそれぞれについて前記仮の判定条件に基づいて判定される取得方式が、特定した取得方式と一致するかを判定し、
一致した割合が最も高いセッション数を前記閾値に設定する
ことを特徴とする付記２に記載の情報処理装置。
（付記４）
前記設定部は、オブジェクト内において前記取得対象のデータが占める割合を、データの取得方式をオブジェクト単位またはセッション単位に切り替える閾値として前記判定条件に設定することを特徴とする付記１に記載の情報処理装置。
（付記５）
前記取得条件を含む取得要求に基づいて、前記取得対象のデータを含むオブジェクトを検索し、検索により見つけたオブジェクト毎に、前記判定条件に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得する取得部を備えることを特徴とする付記１ないし付記４のいずれか１項に記載の情報処理装置。
（付記６）
前記設定部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数であるセッション数を、データの取得方式をオブジェクト単位またはセッション単位に切り替える第１の閾値として前記判定条件に設定し、オブジェクト内において前記取得対象のデータが占める割合を、データの取得方式をオブジェクト単位またはセッション単位に切り替える第２の閾値として前記判定条件に設定し、
前記情報処理装置はさらに、
前記取得条件に基づいて、前記取得対象のデータを含むオブジェクトを検索し、検索により見つけたオブジェクト毎に、前記第１の閾値および前記第２の閾値に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得する取得部を備えることを特徴とする付記１に記載の情報処理装置。
（付記７）
前記取得部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数が前記第１の閾値を超え、またはオブジェクト内において前記取得対象のデータが占める割合が前記第２の閾値を超える場合、データをオブジェクト単位で前記記憶装置から取得することを決定することを特徴とする付記６に記載の情報処理装置。
（付記８）
前記取得部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数が前記第１の閾値を超え、かつオブジェクト内において前記取得対象のデータが占める割合が前記第２の閾値を超える場合、データをオブジェクト単位で前記記憶装置から取得することを決定することを特徴とする付記６に記載の情報処理装置。
（付記９）
前記取得部は、前記設定部が前記判定条件を設定するまで、データをオブジェクト単位で取得する頻度とデータをセッション単位で取得する頻度とを互いに同じに設定し、
前記測定部は、前記取得部によるデータの取得時間を測定し、
前記設定部は、データが所定回数取得された後、前記測定部が測定した取得時間に基づいて前記判定条件を設定し、
前記取得部は、前記判定条件が設定された後、前記判定条件に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得することを特徴とする付記５ないし付記８のいずれか１項に記載の情報処理装置。
（付記１０）
前記取得部は、前記判定条件が設定された後、前記判定条件に基づいて決定した取得方式と逆の取得方式でのデータの取得を所定の頻度で実行し、
前記設定部は、前記判定条件が設定された後、データが所定回数取得される毎に、前記測定部が測定した取得時間に基づいて前記判定条件を更新することを特徴とする付記９に記載の情報処理装置。
（付記１１）
前記設定部は、オブジェクトに含まれる前記取得対象のデータが属するセッションの数であるセッション数とオブジェクト内において前記取得対象のデータが占める割合とのペアと、前記ペアに対応して前記測定部が測定したオブジェクト単位でのデータの取得時間とセッション単位でのデータの取得時間とに基づいて、前記セッション数と前記データが占める割合との二次元分布において前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する境界線を示す情報を前記判定条件として設定し、
前記情報処理装置はさらに、
前記取得条件を含む取得要求に基づいて、前記取得対象のデータを含むオブジェクトを検索し、検索により見つけたオブジェクト毎の前記セッション数と前記データが占める割合との二次元分布上の位置と前記境界線との位置関係に基づいてデータをオブジェクト単位またはセッション単位で前記記憶装置から取得する取得部を備えることを特徴とする付記１に記載の情報処理装置。
（付記１２）
他の情報処理装置間で伝送されるデータをキャプチャし、キャプチャしたデータを、所定数のセッションの各々に属するデータを含むオブジェクトにまとめて前記記憶装置に格納するキャプチャ制御部を備えることを特徴とする付記１ないし付記１１のいずれか１項に記載の情報処理装置。
（付記１３）
所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する第１の情報処理装置と、データの取得条件を含む取得要求を前記第１の情報処理装置に発行する第２の情報処理装置とを有する情報処理システムにおいて、
前記第１の情報処理装置は、
データの取得条件毎に、前記取得条件を満たす取得対象のデータをオブジェクト単位で前記記憶装置から取得するのに掛かる取得時間と、前記取得対象のデータをセッション単位での前記記憶装置から取得するのに掛かる取得時間とを測定する測定部と、
前記測定部が測定した取得時間に基づいて、データの取得要求に含まれる前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する判定条件を設定する設定部と
を備えることを特徴とする情報処理システム。
（付記１４）
所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する情報処理装置に、
データの取得条件毎に、前記取得条件を満たす取得対象のデータをオブジェクト単位で前記記憶装置から取得するのに掛かる取得時間と、前記取得対象のデータをセッション単位での前記記憶装置から取得するのに掛かる取得時間とを測定させ、
測定した取得時間に基づいて、データの取得要求に含まれる前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する判定条件を設定させることを特徴とするプログラム。
（付記１５）
所定数のセッションの各々に属するデータを含むオブジェクトが格納される記憶装置からデータを取得する情報処理装置に、
データの取得条件毎に、前記取得条件を満たす取得対象のデータをオブジェクト単位で前記記憶装置から取得するのに掛かる取得時間と、前記取得対象のデータをセッション単位での前記記憶装置から取得するのに掛かる取得時間とを測定させ、
測定した取得時間に基づいて、データの取得要求に含まれる前記取得条件を満たすデータをオブジェクト単位またはセッション単位のいずれで前記記憶装置から取得するかを判定する判定条件を設定させるプログラムを記録したことを特徴とする記録媒体。
【０１６３】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０１６４】
１（１ａ、１ｂ、１ｃ）…端末装置；２…ネットワークスイッチ；２ａ、２ｂ、２ｃ…ポート；２ｄ、２ｅ…ミラーポート；３（３ａ、３ｂ）…ウェブサーバ；１０…情報処理装置；１１…測定部；１２…設定部；１３…取得部；１４…メモリ；１５、１６、１７…記憶領域；２０…記憶装置；３０…管理装置；４０…キャプチャサーバ；４２…キャプチャ制御部；４４、４４Ｂ、４４Ｄ、４４Ｅ…セッション取得部；４６、４６Ｃ、４６Ｄ、４６Ｅ…オフライン診断部；４８Ｂ…オンライン診断部；５０…メモリ；５２…セッション情報テーブル；５４…オブジェクト情報テーブル；５６、５６Ｃ、５６Ｄ…診断情報テーブル；５８、５８Ｄ…閾値保持部；５８Ｅ…判定条件保持部；６０…パケットバッファ；６２、６２Ｂ、６２Ｃ、６２Ｄ、６２Ｅ…データ取得制御プログラム；７０…ストレージ装置；７２…ネットワークスイッチ；７４…ストレージサーバ；８０…管理装置；１００、１００Ａ、１００Ｂ、１００Ｃ、１００Ｄ、１００Ｅ、１００Ｆ…情報処理システム；ＮＷ…ネットワーク；ＯＢＪ…オブジェクト；ＳＳＮ…セッション
【図１】
2019086966.tif 000003
【図２】
2019086966.tif 000004
【図３】
2019086966.tif 000005
【図４】
2019086966.tif 000006
【図５】
2019086966.tif 000007
【図６】
2019086966.tif 000008
【図７】
2019086966.tif 000009
【図８】
2019086966.tif 000010
【図９】
2019086966.tif 000011
【図１０】
2019086966.tif 000012
【図１１】
2019086966.tif 000013
【図１２】
2019086966.tif 000014
【図１３】
2019086966.tif 000015
【図１４】
2019086966.tif 000016
【図１５】
2019086966.tif 000017
【図１６】
2019086966.tif 000018
【図１７】
2019086966.tif 000019
【図１８】
2019086966.tif 000020
【図１９】
2019086966.tif 000021
【図２０】
2019086966.tif 000022
【図２１】
2019086966.tif 000023
【図２２】
2019086966.tif 000024
【図２３】
2019086966.tif 000025
【図２４】
2019086966.tif 000026
【図２５】
2019086966.tif 000027
【図２６】
2019086966.tif 000028
【図２７】
2019086966.tif 000029
【図２８】
2019086966.tif 000030
【図２９】
2019086966.tif 000031
【図３０】
2019086966.tif 000032
【図３１】
2019086966.tif 000033