(57)【要約】【課題】アプリケーションの性能が劣化した場合に、劣化原因を特定する。【解決手段】仮想アプリケーション型ファイアウォール（ｖＡＦ）３１０ａは、監視対象のＷｅｂアプリケーションシステム（Ｗｅｂシステム）３８０の通信データを取得し、仮想パケットキャプチャ（ｖＰＣａｐ）３２０ａに送信する。ｖＰＣａｐ３２０ａは、Ｗｅｂシステム３８０のアクセスの応答時間を測定して、性能監視マネージャ２１０に送信する。性能監視マネージャ２１０は、通常時の応答時間と比較することで、Ｗｅｂシステム３８０または通信経路の性能劣化を検知する。性能監視マネージャ２１０は、ｖＰＣａｐ３２０ｄにおいて応答時間が通常時より増加していれば、Ｗｅｂシステム３８０の性能劣化と判断し、ｖＰＣａｐ３２０ａとｖＰＣａｐ３２０ｄとでの応答時間の差が通常時の応答時間の差より増加していれば、通信経路の性能劣化と判断する。【選択図】図８
2018206121.tif 000002
【特許請求の範囲】
【請求項１】
サービスを提供するサービス提供システム、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワーク、前記サービス提供システムと前記利用者ネットワークとの間の通信経路の両端に設置され、前記アクセスの応答時間を測定する測定装置、および、前記サービスネットワークと前記サービス提供システムとの性能を監視するアプリケーション性能監視装置を備えるアプリケーション性能監視システムであって、
前記測定装置は、
前記アクセスの応答時間を所定のタイミングで測定しており、
前記アプリケーション性能監視装置は、
前記利用者ネットワーク側の前記通信経路の端点に設置された前記測定装置を示すユーザ側測定装置での前記アクセスの応答時間を示すユーザ側応答時間を取得し、
取得した前記ユーザ側応答時間が、記憶部に記憶された通常時の前記ユーザ側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断し、
前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での前記アクセスの応答時間を示すサービス提供システム側応答時間を取得し、
取得した前記サービス提供システム側応答時間が、前記記憶部に記憶された通常時の前記サービス提供システム側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能が劣化したと判断し、
取得した前記ユーザ側応答時間と取得した前記サービス提供システム側応答時間との差である前記通信経路の通信時間が、前記記憶部に記憶された通常時の前記ユーザ側応答時間と前記記憶部に記憶された通常時の前記サービス提供システム側応答時間との差である前記通信経路の通常時の通信時間と比較して、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するインフラマネージャ部を備える
ことを特徴とするアプリケーション性能監視システム。
【請求項２】
前記測定装置は、
前記サービスネットワークを介して利用されるアプリケーションの通信データの通信量をさらに測定するとともに、前記アプリケーションに関する通信を抑制する通信制限部を備えており、
前記インフラマネージャ部は、
前記通信経路の通信性能が劣化したと判断した場合に、通信優先度の低いアプリケーションに関する通信量を前記測定装置から取得し、取得した当該通信量が所定の値より大きいときには、前記測定装置に前記通信優先度の低いアプリケーションに関する通信を抑制するように指示する
ことを特徴とする請求項１に記載のアプリケーション性能監視システム。
【請求項３】
前記アプリケーション性能監視装置は、さらに、オーケストレータ部を備え、
前記オーケストレータ部は、
前記インフラマネージャ部が、前記通信経路の通信性能が劣化したと判断した場合には、前記通信経路の代替となる復旧通信経路で、前記通信経路を置き換え、
前記インフラマネージャ部が、前記サービス提供システムの性能が劣化したと判断した場合には、前記サービス提供システムのサーバを代替サーバで置き換える
ことを特徴とする請求項１または請求項２のいずれか１項に記載のアプリケーション性能監視システム。
【請求項４】
前記サービス提供システムは、
複数のサーバが直列にネットワーク接続される構成を含んでおり、
前記アプリケーション性能監視システムは、
前記サーバの間のネットワークに設置される測定装置をさらに備えており、
前記インフラマネージャ部は、
前記サーバに隣接して設置された前記測定装置であって、前記利用者ネットワーク側の前記測定装置を示す前側サーバ隣接測定装置での前記アクセスの応答時間を示す前側サーバ隣接応答時間を取得し、
前記サーバに隣接して設置された前記測定装置であって、前記利用者ネットワークと異なる側の前記測定装置を示す後側サーバ隣接測定装置での前記アクセスの応答時間を示す後側サーバ隣接応答時間を取得し、
取得した前記前側サーバ隣接応答時間と取得した前記後側サーバ隣接応答時間との差である前記サーバの処理時間が、前記記憶部に記憶された通常時の前記前側サーバ隣接応答時間と前記記憶部に記憶された通常時の前記後側サーバ隣接応答時間との差である前記サーバの通常時の処理時間と比較して、所定の値以上に大きいときには、前記サーバの性能が劣化したと判断する
ことを特徴とする請求項１または請求項２のいずれか１項に記載のアプリケーション性能監視システム。
【請求項５】
前記アプリケーション性能監視装置は、さらに、オーケストレータ部を備え、
前記オーケストレータ部は、
前記インフラマネージャ部が、前記通信経路の通信性能が劣化したと判断した場合には、前記通信経路の代替となる復旧通信経路で、前記通信経路を置き換え、
前記インフラマネージャ部が、前記サーバの性能が劣化したと判断した場合には、当該サーバを代替サーバで置き換える
ことを特徴とする請求項４に記載のアプリケーション性能監視システム。
【請求項６】
サービスを提供するサービス提供システム、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワーク、前記サービス提供システムと前記利用者ネットワークとの間の通信経路の両端に設置され、前記アクセスの通信量を測定する測定装置、および、前記サービスネットワークと前記サービス提供システムとの性能を監視するアプリケーション性能監視装置を備えるアプリケーション性能監視システムであって、
前記測定装置は、
前記アクセスの通信量を所定のタイミングで測定しており、
前記アプリケーション性能監視装置は、
前記利用者ネットワーク側の前記通信経路の端点に設置された前記測定装置を示すユーザ側測定装置での前記アクセスの通信量を示すユーザ側通信量を取得し、
取得した前記ユーザ側通信量が、記憶部に記憶された通常時の前記ユーザ側通信量と比較して所定の値以上に小さいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断し、
前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での前記アクセスの通信量を示すサービス提供システム側通信量を取得し、
取得した前記サービス提供システム側通信量が、前記記憶部に記憶された通常時の前記サービス提供システム側通信量と比較して所定の値以上に小さいときには、前記サービス提供システムの性能が劣化したと判断し、
取得した前記ユーザ側通信量と取得した前記サービス提供システム側通信量との差が、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するインフラマネージャ部を備える
ことを特徴とするアプリケーション性能監視システム。
【請求項７】
サービスを提供するサービス提供システム、および、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワークを監視するアプリケーション性能監視装置であって、
前記サービス提供システムと前記利用者ネットワークとの間の通信経路の前記利用者ネットワーク側の端点に設置され、前記アクセスの応答時間を測定する測定装置を示すユーザ側測定装置で、所定のタイミングで測定された、前記アクセスの応答時間を示すユーザ側応答時間を取得し、
取得した前記ユーザ側応答時間が、記憶部に記憶された通常時の前記ユーザ側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断し、
前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での、所定のタイミングで測定された、前記アクセスの応答時間を示すサービス提供システム側応答時間を取得し、
取得した前記サービス提供システム側応答時間が、前記記憶部に記憶された通常時の前記サービス提供システム側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能が劣化したと判断し、
取得した前記ユーザ側応答時間と取得した前記サービス提供システム側応答時間との差である前記通信経路の通信時間が、前記記憶部に記憶された通常時の前記ユーザ側応答時間と前記記憶部に記憶された通常時の前記サービス提供システム側応答時間との差である前記通信経路の通常時通信時間と比較して、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するインフラマネージャ部を備える
ことを特徴とするアプリケーション性能監視装置。
【請求項８】
サービスを提供するサービス提供システム、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワーク、前記サービス提供システムと前記利用者ネットワークとの間の通信経路の両端に設置され、前記アクセスの応答時間を測定する測定装置、および、前記サービスネットワークと前記サービス提供システムとの性能を監視するアプリケーション性能監視装置を備えるアプリケーション性能監視システムのアプリケーション性能監視方法であって、
前記測定装置は、
前記アクセスの応答時間を所定のタイミングで測定するステップを含み、
前記アプリケーション性能監視装置は、
前記利用者ネットワーク側の前記通信経路の端点に設置された前記測定装置を示すユーザ側測定装置での前記アクセスの応答時間を示すユーザ側応答時間を取得するステップと、
取得した前記ユーザ側応答時間が、記憶部に記憶された通常時の前記ユーザ側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断するステップと、
前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での前記アクセスの応答時間を示すサービス提供システム側応答時間を取得するステップと、
取得した前記サービス提供システム側応答時間が、前記記憶部に記憶された通常時の前記サービス提供システム側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能が劣化したと判断するステップと、
取得した前記ユーザ側応答時間と取得した前記サービス提供システム側応答時間との差である前記通信経路の通信時間が、前記記憶部に記憶された通常時の前記ユーザ側応答時間と前記記憶部に記憶された通常時の前記サービス提供システム側応答時間との差である前記通信経路の通常時の通信時間と比較して、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するステップと
を含むことを特徴とするアプリケーション性能監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションサービスの性能劣化を検知し、その原因を特定して、復旧措置を実行するアプリケーション性能監視システム、アプリケーション性能監視装置およびアプリケーション性能監視方法に関する。
【背景技術】
【０００２】
クラウド上のアプリケーション（以下、アプリケーションサービス、サービスとも記す。）の利用が拡大しており、ネットワークを経由して利用するアプリケーションの性能監視が重要になってきている。ネットワークの監視を含めたアプリケーションの性能監視手法としては、ユーザ端末での性能測定、パケットキャプチャを用いた性能測定、ゲートウェイでのトラフィック測定がある（非特許文献１）。
【０００３】
ユーザ端末での性能測定は、ユーザ端末にインストールされた性能測定ツールが、アプリケーションを実行するサーバ（アプリケーションサーバ）にアクセスする一連の操作を実行して、応答時間を実測する手法である。一連の操作とは、例えば、トップページからログインする操作、検索ページに移動する操作、検索を要求する操作、および、検索実行後にログアウトする操作であり、予め決められ操作である。定期的に操作ごとに応答時間を測定する。
【０００４】
パケットキャプチャを用いた性能測定は、ユーザ端末とアプリケーションサーバとの間にあるネットワーク装置がネットワークトラフィックを抽出して、内容を分析し、ユーザの操作ごとの応答時間を測定する手法である。
【０００５】
ゲートウェイでのトラフィック測定は、ユーザ端末とアプリケーションサーバとの通信を中継するプロキシサーバが、アプリケーションごとのトラフィックを測定する手法である。定められた閾値以上のトラフィックがあれば、ゲートウェイがサーバへのアクセスを制限したり、不要なトラフィックを遮断したりする（非特許文献２）。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】福田慎、アプリケーションパフォーマンスを測る4つの手法、[online]、2012年11月29日、ITmedia、[平成29年5月25日検索]、インターネット<URL:http://techtarget.itmedia.co.jp/tt/news/1211/29/news03.html>
【非特許文献２】三木泉、VeloCloudはアプリケーションパフォーマンス管理を指向するSD-WAN、[online]、2016年8月18日、ITmedia、[平成29年5月25日検索]、インターネット<URL:http://www.atmarkit.co.jp/ait/articles/1608/18/news038.html>
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ユーザ端末での性能測定、パケットキャプチャを用いた性能測定、および、ゲートウェイでのトラフィック測定は、応答時間が長く性能が劣化しているアプリケーションを検出することができるが、その原因が何であるかは特定できない。応答時間が長い場合、サーバまでの通信経路に原因（障害）があるのか、サーバ自体に原因があるのか、判定できない。また、サーバが、ＷｅｂアプリケーションシステムのようにＷｅｂサーバやデータベースサーバなどの複数のサーバから構成される場合には、どのサーバに原因があるのか特定することができない。また、原因が特定できないために、復旧措置を実行することができないという問題も発生する。
【０００８】
このような背景を鑑みて本発明がなされたのであり、本発明は、アプリケーションの性能が劣化した場合に、劣化原因を特定することを可能とするアプリケーション性能監視システム、アプリケーション性能監視装置およびアプリケーション性能監視方法を提供することを課題とする。
【課題を解決するための手段】
【０００９】
前記した課題を解決するため、請求項１に記載の発明は、サービスを提供するサービス提供システム、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワーク、前記サービス提供システムと前記利用者ネットワークとの間の通信経路の両端に設置され、前記アクセスの応答時間を測定する測定装置、および、前記サービスネットワークと前記サービス提供システムとの性能を監視するアプリケーション性能監視装置を備えるアプリケーション性能監視システムであって、前記測定装置が、前記アクセスの応答時間を所定のタイミングで測定しており、前記アプリケーション性能監視装置が、前記利用者ネットワーク側の前記通信経路の端点に設置された前記測定装置を示すユーザ側測定装置での前記アクセスの応答時間を示すユーザ側応答時間を取得し、取得した前記ユーザ側応答時間が、記憶部に記憶された通常時の前記ユーザ側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断し、前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での前記アクセスの応答時間を示すサービス提供システム側応答時間を取得し、取得した前記サービス提供システム側応答時間が、前記記憶部に記憶された通常時の前記サービス提供システム側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能が劣化したと判断し、取得した前記ユーザ側応答時間と取得した前記サービス提供システム側応答時間との差である前記通信経路の通信時間が、前記記憶部に記憶された通常時の前記ユーザ側応答時間と前記記憶部に記憶された通常時の前記サービス提供システム側応答時間との差である前記通信経路の通常時の通信時間と比較して、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するインフラマネージャ部を備えることを特徴とするアプリケーション性能監視システムとした。
【００１０】
また、請求項７に記載の発明は、サービスを提供するサービス提供システム、および、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワークを監視するアプリケーション性能監視装置であって、前記サービス提供システムと前記利用者ネットワークとの間の通信経路の前記利用者ネットワーク側の端点に設置され、前記アクセスの応答時間を測定する測定装置を示すユーザ側測定装置で、所定のタイミングで測定された、前記アクセスの応答時間を示すユーザ側応答時間を取得し、取得した前記ユーザ側応答時間が、記憶部に記憶された通常時の前記ユーザ側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断し、前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での、所定のタイミングで測定された、前記アクセスの応答時間を示すサービス提供システム側応答時間を取得し、取得した前記サービス提供システム側応答時間が、前記記憶部に記憶された通常時の前記サービス提供システム側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能が劣化したと判断し、取得した前記ユーザ側応答時間と取得した前記サービス提供システム側応答時間との差である前記通信経路の通信時間が、前記記憶部に記憶された通常時の前記ユーザ側応答時間と前記記憶部に記憶された通常時の前記サービス提供システム側応答時間との差である前記通信経路の通常時通信時間と比較して、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するインフラマネージャ部を備えることを特徴とするアプリケーション性能監視装置とした。
【００１１】
請求項８に記載の発明は、サービスを提供するサービス提供システム、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワーク、前記サービス提供システムと前記利用者ネットワークとの間の通信経路の両端に設置され、前記アクセスの応答時間を測定する測定装置、および、前記サービスネットワークと前記サービス提供システムとの性能を監視するアプリケーション性能監視装置を備えるアプリケーション性能監視システムのアプリケーション性能監視方法であって、前記測定装置が、前記アクセスの応答時間を所定のタイミングで測定するステップを含み、前記アプリケーション性能監視装置が、前記利用者ネットワーク側の前記通信経路の端点に設置された前記測定装置を示すユーザ側測定装置での前記アクセスの応答時間を示すユーザ側応答時間を取得するステップと、取得した前記ユーザ側応答時間が、記憶部に記憶された通常時の前記ユーザ側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断するステップと、前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での前記アクセスの応答時間を示すサービス提供システム側応答時間を取得するステップと、取得した前記サービス提供システム側応答時間が、前記記憶部に記憶された通常時の前記サービス提供システム側応答時間と比較して所定の値以上に大きいときには、前記サービス提供システムの性能が劣化したと判断するステップと、取得した前記ユーザ側応答時間と取得した前記サービス提供システム側応答時間との差である前記通信経路の通信時間が、前記記憶部に記憶された通常時の前記ユーザ側応答時間と前記記憶部に記憶された通常時の前記サービス提供システム側応答時間との差である前記通信経路の通常時の通信時間と比較して、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するステップとを含むことを特徴とするアプリケーション性能監視方法とした。
【００１２】
こうすることで、アプリケーション性能監視システムは、サービス提供システムが提供するサービスの性能劣化を検知できるようになる。さらに、アプリケーション性能監視システムは、その原因がサービス提供システムにあるのか、または、利用者ネットワークとサービス提供システムの間の通信経路にあるのかを特定することが可能となる。
【００１３】
請求項２に記載の発明は、前記測定装置が、前記サービスネットワークを介して利用されるアプリケーションの通信データの通信量をさらに測定するとともに、前記アプリケーションに関する通信を抑制する通信制限部を備えており、前記インフラマネージャ部が、前記通信経路の通信性能が劣化したと判断した場合に、通信優先度の低いアプリケーションに関する通信量を前記測定装置から取得し、取得した当該通信量が所定の値より大きいときには、前記測定装置に前記通信優先度の低いアプリケーションに関する通信を抑制するように指示することを特徴とする請求項１に記載のアプリケーション性能監視システムとした。
【００１４】
こうすることで、優先度の低いアプリケーションの通信量が大きいことによってサービス提供システムの性能が劣化した場合に、アプリケーション性能監視システムは、優先度の低いアプリケーションの通信を抑制することで、サービスを復旧させることが可能となる。
【００１５】
また、請求項３に記載の発明は、前記アプリケーション性能監視装置が、さらに、オーケストレータ部を備え、前記オーケストレータ部が、前記インフラマネージャ部が、前記通信経路の通信性能が劣化したと判断した場合には、前記通信経路の代替となる復旧通信経路で、前記通信経路を置き換え、前記インフラマネージャ部が、前記サービス提供システムの性能が劣化したと判断した場合には、前記サービス提供システムのサーバを代替サーバで置き換えることを特徴とする請求項１または請求項２のいずれか１項に記載のアプリケーション性能監視システムとした。
【００１６】
こうすることで、アプリケーション性能監視システムは、性能劣化原因に応じて復旧措置を実行し、サービスを復旧させることが可能となる。
【００１７】
請求項４に記載の発明は、前記サービス提供システムが、複数のサーバが直列にネットワーク接続される構成を含んでおり、前記アプリケーション性能監視システムが、前記サーバの間のネットワークに設置される測定装置をさらに備えており、前記インフラマネージャ部が、前記サーバに隣接して設置された前記測定装置であって、前記利用者ネットワーク側の前記測定装置を示す前側サーバ隣接測定装置での前記アクセスの応答時間を示す前側サーバ隣接応答時間を取得し、前記サーバに隣接して設置された前記測定装置であって、前記利用者ネットワークと異なる側の前記測定装置を示す後側サーバ隣接測定装置での前記アクセスの応答時間を示す後側サーバ隣接応答時間を取得し、取得した前記前側サーバ隣接応答時間と取得した前記後側サーバ隣接応答時間との差である前記サーバの処理時間が、前記記憶部に記憶された通常時の前記前側サーバ隣接応答時間と前記記憶部に記憶された通常時の前記後側サーバ隣接応答時間との差である前記サーバの通常時の処理時間と比較して、所定の値以上に大きいときには、前記サーバの性能が劣化したと判断することを特徴とする請求項１または請求項２のいずれか１項に記載のアプリケーション性能監視システムとした。
【００１８】
こうすることで、アプリケーション性能監視システムは、サービス提供システムが複数のサーバから構成される場合であっても、性能劣化原因となるサーバを特定することが可能となる。
【００１９】
また、請求項５に記載の発明は、前記アプリケーション性能監視装置が、さらに、オーケストレータ部を備え、前記オーケストレータ部が、前記インフラマネージャ部が、前記通信経路の通信性能が劣化したと判断した場合には、前記通信経路の代替となる復旧通信経路で、前記通信経路を置き換え、前記インフラマネージャ部が、前記サーバの性能が劣化したと判断した場合には、当該サーバを代替サーバで置き換えることを特徴とする請求項４に記載のアプリケーション性能監視システムとした。
【００２０】
こうすることで、アプリケーション性能監視システムは、性能劣化原因となっているサーバの復旧措置を実行し、サービスを復旧させることが可能となる。
【００２１】
また、請求項６に記載の発明は、サービスを提供するサービス提供システム、前記サービスにアクセスする端末を含む利用者ネットワークと前記サービス提供システムとを接続するサービスネットワーク、前記サービス提供システムと前記利用者ネットワークとの間の通信経路の両端に設置され、前記アクセスの通信量を測定する測定装置、および、前記サービスネットワークと前記サービス提供システムとの性能を監視するアプリケーション性能監視装置を備えるアプリケーション性能監視システムであって、前記測定装置が、前記アクセスの通信量を所定のタイミングで測定しており、前記アプリケーション性能監視装置が、前記利用者ネットワーク側の前記通信経路の端点に設置された前記測定装置を示すユーザ側測定装置での前記アクセスの通信量を示すユーザ側通信量を取得し、取得した前記ユーザ側通信量が、記憶部に記憶された通常時の前記ユーザ側通信量と比較して所定の値以上に小さいときには、前記サービス提供システムの性能または前記通信経路の通信性能が劣化したと判断し、前記サービス提供システム側の前記通信経路の端点に設置された前記測定装置を示すサービス提供システム側測定装置での前記アクセスの通信量を示すサービス提供システム側通信量を取得し、取得した前記サービス提供システム側通信量が、前記記憶部に記憶された通常時の前記サービス提供システム側通信量と比較して所定の値以上に小さいときには、前記サービス提供システムの性能が劣化したと判断し、取得した前記ユーザ側通信量と取得した前記サービス提供システム側通信量との差が、所定の値以上に大きいときには、前記通信経路の通信性能が劣化したと判断するインフラマネージャ部を備えることを特徴とするアプリケーション性能監視システムとした。
【００２２】
こうすることで、アプリケーション性能監視システムは、サービス提供システムが提供するサービスの通信量の減少を検知して性能劣化を検出することができるようになる。さらに、その原因がサービス提供システムにあるのか、または、利用者ネットワークとサービス提供システムの間の通信経路にあるのかを特定することが可能となる。
【発明の効果】
【００２３】
本発明によれば、アプリケーションの性能が劣化した場合に、劣化原因を特定することを可能とするアプリケーション性能監視システム、アプリケーション性能監視装置およびアプリケーション性能監視方法を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】本実施形態に係るアプリケーション性能監視システムの全体構成を例示する図である。
【図２】本実施形態に係る仮想アプリケーション型ファイアウォール（ｖＡＦ）の構成を例示する機能ブロック図である。
【図３】本実施形態に係る仮想パケットキャプチャ（ｖＰＣａｐ）の構成を例示する機能ブロック図である。
【図４】本実施形態に係る仮想ユーザの構成を例示する機能ブロック図である。
【図５】本実施形態に係る性能監視マネージャの構成を例示する機能ブロック図である。
【図６】本実施形態に係る性能監視マネージャが備える性能標準値データベースを例示するデータ構成図である。
【図７】本実施形態に係る性能監視マネージャが備える性能測定値データベースを例示するデータ構成図である。
【図８】本実施形態に係るアプリケーション性能監視装置の監視対象である広域ネットワークの構成を説明するための図である。
【図９】本実施形態に係るｖＡＦとｖＰＣａｐと性能監視マネージャとが連携して実行するアプリケーションの性能監視処理を例示するフローチャートである。
【図１０】本実施形態に係るｖＡＦとｖＰＣａｐと性能監視マネージャとが連携して実行するアプリケーションの性能劣化原因特定処理を例示するフローチャートである。
【図１１】本実施形態に係るｖＡＦとｖＰＣａｐと性能監視マネージャとが連携して実行する性能標準値データベースの更新処理を例示するフローチャートである。
【発明を実施するための形態】
【００２５】
以下、図面を参照しながら本発明を実施するための形態（以下、実施形態とも記す。）であるアプリケーション性能監視システムを説明する。
【００２６】
≪全体構成≫
図１は、本実施形態に係るアプリケーション性能監視システム１０の全体構成を例示する図である。アプリケーション性能監視システム１０は、オーケストレータ部１００とインフラマネージャ部２００とから構成されるアプリケーション性能監視装置１１と、広域ネットワーク３００とを含んで構成される。
【００２７】
広域ネットワーク３００は、仮想アプリケーション型ファイアウォール（以下ｖＡＦとも記す、後述する図２参照）３１０、仮想パケットキャプチャ（以下、ｖＰＣａｐとも記す、後述する図３参照）３２０、ルータ３３０、ＳＷ（Switch）３４０、仮想ユーザ（仮想ユーザエージェント）３５０（後述する図４参照）、および、ＤＣ（Data Center）３６０を含んで構成される。広域ネットワーク３００は、利用者に通信サービスを提供する。また、利用者には、アプリケーションサービスを提供する事業者（サービス事業者）も含まれる。なお、ｖＡＦ３１０、ｖＰＣａｐ３２０、ルータ３３０、ＳＷ３４０からなるネットワークをサービスネットワークとも記す。
【００２８】
ｖＡＦ３１０とｖＰＣａｐ３２０と仮想ユーザ３５０とは、コンピュータまたは仮想マシンで動作し、（仮想的な）通信インターフェイスで構成される入出力部（不図示）、（仮想的な）ハードディスクやメモリで構成される記憶部（不図示）、および、（仮想的な）ＣＰＵ（Central Processing Unit）で構成される制御部（不図示）を備える。制御部は、記憶部にあるプログラムを実行することにより、以下に説明するｖＡＦ３１０、ｖＰＣａｐ３２０、および、仮想ユーザ３５０のそれぞれの処理を実行する。
【００２９】
図２は、本実施形態に係るｖＡＦ３１０の構成を例示する機能ブロック図である。ｖＡＦ３１０は、フィルタ部３１１とフィルタルール３１２を含んで構成され、設定された条件を満たすアプリケーションの通信データ（アプリケーションデータ）をｖＰＣａｐ３２０に転送したり、アプリケーションの通信を制限したりする。
【００３０】
フィルタ部３１１は、ｖＡＦ３１０に接続されたネットワーク９０１とネットワーク９０２との間を流れるアプリケーションデータを取得して、ｖＰＣａｐ３２０に転送する機能やアプリケーションデータをフィルタリングしてアプリケーションの通信を制限する機能を有する機能部である。フィルタ部３１１は、フィルタルール３１２に設定されているルールに従って、アプリケーションデータを取得してｖＰＣａｐ３２０へ転送する処理、および、アプリケーションの通信を制限する処理を実行する。なお、特にアプリケーションの通信を制限する処理に着目した場合に、フィルタ部３１１を通信制限部とも記す。
【００３１】
フィルタルール３１２は、記憶部（不図示）に記憶されており、ｖＰＣａｐ３２０に転送したり、通信を制限したりするアプリケーションデータの条件を記述したルールである。ルールの条件には、アプリケーションデータの送信元アドレス、送信先アドレス、アプリケーション種別などに関する記述が含まれる。また、例えば、Ｗｅｂページのアドレスのようなアプリケーションレベルでのデータ識別情報、検索や登録などのアプリケーション機能の識別情報が、フィルタルール３１２の条件に含まれる場合もある。条件に合ったアプリケーションデータが、ｖＰＣａｐ３２０に転送されたり、送信先への通信（転送）が制限されたりする。通信の制限には、アプリケーションデータを破棄して通信を止める場合や、アプリケーションデータの転送を遅らせて通信量を削減する場合などがある。
【００３２】
図３は、本実施形態に係るｖＰＣａｐ３２０の構成を例示する機能ブロック図である。ｖＰＣａｐ３２０は、パケット記憶部３２２とパケット解析部３２１とを含んで構成され、ｖＡＦ３１０から転送されたアプリケーションデータを解析して、解析結果を後述する性能監視マネージャ２１０に送信する。
パケット記憶部３２２には、ｖＡＦ３１０から転送されたアプリケーションデータが蓄積される。
【００３３】
パケット解析部３２１は、パケット記憶部３２２に蓄積されているアプリケーションデータを解析し、結果を性能監視マネージャ２１０に送信する。解析する内容としては、アプリケーションごとの通信量（サーバへの要求データのサイズ、サーバからの応答データのサイズ、単位時間当たりの通信量など）、アプリケーションレベルのデータ（Ｗｅｂページ等）へのアクセスの通信量と応答時間、アプリケーション機能を利用するときの通信量と応答時間などがある。解析結果は性能監視マネージャ２１０に送られる。
【００３４】
図４は、本実施形態に係る仮想ユーザ（仮想ユーザエージェント）３５０の構成を例示する機能ブロック図である。仮想ユーザ３５０は、操作実行部３５１とシナリオ３５２とを含んで構成され、アプリケーションサーバにアクセスして、指定された操作を行い、操作の応答時間を測定する。
操作実行部３５１は、シナリオ３５２に指定された操作を行い、応答時間を測定し、測定結果を性能監視マネージャ２１０に送信する。
【００３５】
シナリオ３５２は、操作実行部３５１が実行する操作手順を記述したものである。操作には、ログインページにアクセスする操作、ログインを行う操作、検索ページに移動する操作、検索を要求する操作の他に、アプリケーションの機能を実行する操作、ファイルのアップロードの操作、ビデオプレゼンテーションの閲覧操作などがある。シナリオ３５２は、操作手順の他に、アクセス先のサーバやページのアドレス、入力するデータなどの記述を含む。
【００３６】
図１に戻り、ＤＣ３６０には、コンピュータ（汎用物理サーバ）または仮想マシン上で動作するＷｅｂサーバやデータベースサーバなどのサーバ３７０、ｖＡＦ３１０、ｖＰＣａｐ３２０が設置される。
【００３７】
オーケストレータ部１００とインフラマネージャ部２００とは、入出力用のインターフェイスなどで構成される入出力部（不図示）、ハードディスク、フラッシュメモリ、ＲＡＭ（Random Access Memory）などで構成される記憶部（不図示）、および、ＣＰＵで構成される制御部（不図示）を備えるコンピュータ上で動作する。制御部は、例えばハードディスクに記憶されているプログラム（アプリケーション性能監視プログラム）を記憶部の記憶領域に展開して実行することにより、性能監視処理（後述する図９参照）、性能劣化原因特定処理（後述する図１０参照）、性能標準値データベースの更新処理（後述する図１１参照）を実行する。
【００３８】
インフラマネージャ部２００は、性能監視マネージャ２１０、ＳＤＮ（Software-Defined Network）マネージャ２７０、および、ＶＮＦＭ（Virtual Network Function Manager）２８０を含んで構成される。
【００３９】
図５は、本実施形態に係る性能監視マネージャ２１０の構成を例示する機能ブロック図である。性能監視マネージャ２１０は、性能監視部２１１と、性能標準値データベース２１２と、性能測定値データベース２１３とを含んで構成される。性能監視マネージャ２１０は、アプリケーションの応答時間やデータ量（通信量）を取得してアプリケーションの性能を監視し、性能劣化を検出すると復旧措置を実行する。
【００４０】
性能監視部２１１は、ｖＰＣａｐ３２０よりアプリケーションの応答時間を取得し、性能標準値データベース２１２（後述する図６参照）に格納されている標準（通常時）の応答時間と比較することで、アプリケーションの性能劣化を検出する。性能劣化を検出すると、性能監視部２１１は、仮想ユーザ３５０に、アプリケーションの利用を指示して、操作ごとの応答時間を取得する。性能監視部２１１は、応答時間が劣化している操作を特定し、劣化の原因となっている通信経路やサーバを特定して、復旧措置を実行するように、ＳＤＮマネージャ２７０やオーケストレータ部１００に指示する。
【００４１】
図６は、本実施形態に係る性能監視マネージャ２１０が備える性能標準値データベース２１２を例示するデータ構成図である。性能標準値データベース２１２は、記憶部（不図示）に記憶される。この性能標準値データベース２１２は、例えば表形式のデータベースであり、１つの行（レコード）が、アプリケーションやアプリケーションの操作ごとの標準（障害が発生していない通常時）の性能情報を示し、測定地点２１２１、アクセス先２１２２、時間帯２１２３、データ量２１２４、および、応答時間２１２５の属性（列）を含んでいる。性能監視部２１１は、この情報を基準にして、アプリケーションの性能が劣化しているか否か判断する。
【００４２】
測定地点２１２１は、性能情報を測定するｖＰＣａｐ３２０を示す。
アクセス先２１２２は、アプリケーションやアプリケーションの操作を示す情報であり、アプリケーションのアクセス先（Ｗｅｂページのアドレスなど）やアプリケーションの操作（検索や登録などのアプリケーション機能の実行）の要求先アドレスで示される。
【００４３】
時間帯２１２３は、性能情報を測定する時間帯であり、時間区間や週日／休日の区別などを含む。
データ量２１２４は、操作の要求データと応答データの平均サイズ、単位時間当たりの通信量などを示す。
応答時間２１２５は、操作の応答時間を示す。
【００４４】
図６に記載のレコード２１２９は、測定地点が「ｖＰＣａｐ＃３」であり、操作の要求先アドレスが「http://x/y/z/」であって、時間帯が週日の１３時から１４時までであり、要求データの平均サイズが１２８バイトであって、応答データの平均サイズ３８４９４バイトであり、平均応答時間が０．８３秒であることを示している。性能標準値データベース２１２のレコードには、個々のアクセス先２１２２（操作）のレコードだけではなく、アプリケーションサービス全体としての性能（全ての操作の平均的な応答時間）を示すレコードが含まれる場合もある。
【００４５】
図７は、本実施形態に係る性能監視マネージャ２１０が備える性能測定値データベース２１３を例示するデータ構成図である。性能測定値データベース２１３は、記憶部（不図示）に記憶される。性能測定値データベース２１３は、例えば表形式のデータベースであり、１つの行（レコード）が、アプリケーションやアプリケーションの操作ごとの測定値を示し、測定地点２１３１、アクセス先２１３２、取得時刻２１３３、データ量２１３４、および、応答時間２１３５の属性（列）を含んでいる。
【００４６】
測定地点２１３１およびアクセス先２１３２は、測定地点２１２１（図６参照）およびアクセス先２１２２とそれぞれ同じである。
取得時刻２１３３は、当該性能情報が測定された時刻である。
データ量２１３４は、測定したアプリケーションの要求データと応答データのサイズ、単位時間当たりの通信量などを示す。
応答時間２１３５は、操作の応答時間を示す。
【００４７】
図７に記載のレコード２１３９は、測定地点が「ｖＰＣａｐ＃３」であり、操作の要求先アドレスが「http://w/y/z/」であって、取得時刻が「２０１７年４月３日１８時３４分２９秒」であり、要求データのサイズが４５６バイトであって、応答データのサイズ３４９４バイトであり、応答時間が０．７３秒であることを示している。
【００４８】
図１に戻り、ＳＤＮマネージャ２７０は、ルータ３３０やＳＷ３４０などから構成されるサービスネットワークを監視、制御する機能部である。ＶＮＦＭ２８０は、Ｗｅｂサーバなどのサーバ３７０を監視、制御する機能部である。
オーケストレータ部１００は、装置、ミドルウェア、アプリケーション、サービスの監視や制御を行う機能部である。
【００４９】
≪ネットワーク構成≫
図８は、本実施形態に係るアプリケーション性能監視装置１１の監視対象である広域ネットワーク３００の構成を説明するための図である。アプリケーションの利用者の端末３０９を含む利用者ネットワーク３０１と、アプリケーションサービスを提供するサービス事業者ＤＣ３０２と、ＤＣ（３６１，３６２）とは、ルータ（３３０ａ〜３３０ｉ）とｖＡＦ（３１０ａ〜３１０ｃ）を含むサービスネットワークを経由して相互に接続される。
【００５０】
利用者ネットワーク３０１は、利用者ネットワーク３０１と広域ネットワーク３００とを接続するルータ３３０ａ、および、利用者の端末３０９を含んで構成される。
ＤＣ３６１には、Ｗｅｂアプリケーションシステム３８０を構成するＷｅｂサーバ３８１と、ＡＰ（Application）サーバ３８２と、ＤＢ（Database）サーバ３８３とが設置される。Ｗｅｂアプリケーションシステム３８０内では、利用者ネットワーク３０１に近い方から順に、Ｗｅｂサーバ３８１とＡＰ（Application）サーバ３８２とＤＢ（Database）サーバ３８３とがｖＡＦ（３１０ｅ，３１０ｆ）を介して直列に接続されている。
Ｗｅｂアプリケーションシステム３８０は、ルータ３３０ｆとｖＡＦ３１０ｄを介してサービスネットワークと接続される。Ｗｅｂサーバ３８１とＡＰサーバ３８２とはｖＡＦ３１０ｅを介して接続され、ＡＰサーバ３８２とＤＢサーバ３８３とはｖＡＦ３１０ｆを介して接続される。
【００５１】
ＤＣ３６２も、ＤＣ３６１と同様の構成である。
ｖＡＦ３１０ａは、利用者ネットワーク３０１の近くに設置されており、利用者ネットワークが送受信する全ての通信データを取得することが可能である。ｖＡＦ３１０ｃは、サービス事業者ＤＣ３０２の近くに設置されており、サービス事業者ＤＣ３０２が送受信する全てのデータを取得することが可能である。
【００５２】
ｖＡＦ（３１０ａ〜３１０ｆ）には、それぞれｖＰＣａｐ（３２０ａ〜３２０ｆ）が接続されている。なお、対となるｖＡＦ３１０とｖＰＣａｐ３２０とを合わせて測定装置とも記す。
利用者ネットワーク３０１および仮想ユーザ３５０と、ＤＣ３６１との間で送受信されるアプリケーションデータは、ｖＡＦ３１０ａとｖＡＦ３１０ｄとでそれぞれ取得可能であり、ｖＰＣａｐ３２０ａとｖＰＣａｐ３２０ｄとでそれぞれアプリケーションの応答時間やデータ量が測定可能である。よって、ｖＰＣａｐ３２０ａとｖＰＣａｐ３２０ｄとでの応答時間の差から、性能監視マネージャ２１０は、ｖＡＦ３１０ａとｖＡＦ３１０ｄとの間のアプリケーションデータの転送時間を取得することができる。
【００５３】
同様にして、性能監視マネージャ２１０は、ｖＰＣａｐ３２０ｄとｖＰＣａｐ３２０ｅとでの応答時間の差から、Ｗｅｂサーバ３８１の処理時間を取得することでき、ｖＰＣａｐ３２０ｅとｖＰＣａｐ３２０ｆとでの応答時間の差から、ＡＰサーバ３８２の処理時間を取得することでき、ｖＰＣａｐ３２０ｆでの応答時間から、ＤＢサーバ３８３の処理時間を取得することできる。
【００５４】
≪性能監視処理≫
図９は、本実施形態に係るｖＡＦ３１０ａとｖＰＣａｐ３２０ａと性能監視マネージャ２１０とが連携して実行するアプリケーションの性能監視処理を例示するフローチャートである。利用者ネットワーク３０１に近いｖＰＣａｐ３２０ａでアプリケーションの応答時間を測定することで、アプリケーションの性能を測定して、性能劣化を検出する処理を説明する。性能監視処理は所定のタイミング、例えば定期的に、実行される。
【００５５】
ステップＳ１１において、ｖＡＦ３１０ａは、監視対象のアプリケーションの通信データを取得し、ｖＰＣａｐ３２０ａに送信する。監視対象のアプリケーションは、フィルタルール３１２（図２参照）に設定されている。
ステップＳ１２において、ｖＰＣａｐ３２０ａは、ｖＡＦ３１０ａが送信したアプリケーションの通信データを解析して、サーバへの要求データのサイズ、サーバからの応答データサイズ、応答時間などを測定して、測定結果を性能監視マネージャ２１０に送信する。アプリケーションの種別（例えば、ストリーミング系のアプリケーション）によっては、単位時間当たりの通信量を測定して、性能監視マネージャ２１０に送信する。
【００５６】
ステップＳ１３において、性能監視マネージャ２１０は、ｖＰＣａｐ３２０ａから受信した測定結果と、性能標準値データベース２１２（図６参照）に記憶されるアプリケーションの標準（通常時）の性能情報とを比較して、アプリケーションの性能劣化の有無を判断する。判断の手法としては、操作の場合に応答時間が性能標準値データベース２１２の応答時間２１２５よりも大きいときには劣化と判断する手法、ストリーミング系アプリケーションの場合に単位時間当たりの通信量がデータ量２１２４よりも小さいときには劣化と判断する手法などがある。測定結果の応答時間が、性能標準値データベース２１２の応答時間２１２５より所定の値以上に大きい場合に、性能監視マネージャ２１０は、劣化と判断してもよい。
【００５７】
以上の処理により、性能監視マネージャ２１０は、アプリケーションの性能劣化を検知することができる。性能劣化を検知した性能監視マネージャ２１０は、次に説明する性能劣化原因特定処理を実行して、劣化した原因を特定し、復旧措置をＳＤＮマネージャ２７０とオーケストレータ部１００に指示する。
【００５８】
≪性能劣化原因特定処理≫
図１０は、本実施形態に係るｖＡＦ３１０とｖＰＣａｐ３２０と性能監視マネージャ２１０とが連携して実行するアプリケーションの性能劣化原因特定処理を例示するフローチャートである。ここでは、Ｗｅｂサーバ３８１とＡＰサーバ３８２とＤＢサーバ３８３とで構成されるＷｅｂアプリケーションシステム３８０が提供するサービスの性能が劣化したとして説明する。
【００５９】
性能監視マネージャ２１０は、観測地点としてｖＡＦ３１０ａに加えて、劣化したサービスの通信データが流れるｖＡＦ３１０ｄ、ｖＡＦ３１０ｅおよびｖＡＦ３１０ｆでも性能を測定することで、性能劣化の原因（被疑箇所）が、ｖＡＦ３１０ａ〜ｖＡＦ３１０ｄ間のサービスネットワーク（通信経路）、Ｗｅｂサーバ３８１、ＡＰサーバ３８２、および、ＤＢサーバのいずれにあるのか特定する。
【００６０】
ステップＳ２１において、性能監視マネージャ２１０が、性能が劣化したアプリケーションの通信データが流れるｖＡＦ３１０、および、そのｖＡＦ３１０と対となるｖＰＣａｐ３２０に、仮想ユーザ３５０が利用するアプリケーションの通信データを取得して、アプリケーションの操作ごとの応答時間を取得するように指示する。ここでは、ｖＡＦ（３１０ａ、３１０ｄ〜３１０ｆ）とｖＰＣａｐ（３２０ａ、３２０ｄ〜３２０ｆ）とに指示する。
【００６１】
ステップＳ２２において、性能監視マネージャ２１０が、仮想ユーザ３５０にアプリケーション（Ｗｅｂアプリケーションシステム３８０）の利用を指示する。
ステップＳ２３において、仮想ユーザ３５０が、アプリケーションを利用する操作を実行する。詳しくは、仮想ユーザ３５０は、Ｗｅｂアプリケーションシステム３８０の操作を含むシナリオ３５２（図４参照）を実行する。
【００６２】
ステップＳ２４において、ｖＡＦ（３１０ａ、３１０ｄ〜３１０ｆ）は、仮想ユーザ３５０が利用するアプリケーション操作の通信データを取得して、ｖＰＣａｐ（３２０ａ、３２０ｄ〜３２０ｆ）に送信する。
ステップＳ２５において、ｖＰＣａｐ（３２０ａ、３２０ｄ〜３２０ｆ）は、ｖＡＦ（３１０ａ、３１０ｄ〜３１０ｆ）が送信したデータを解析して、操作ごとの応答時間を測定して、測定結果を性能監視マネージャ２１０に送信する。
【００６３】
ステップＳ２６において、性能監視マネージャ２１０は、操作ごとに、ｖＰＣａｐから受信した測定結果と性能標準値データベース２１２（図６参照）にある標準の性能情報と比較して、被疑箇所（性能劣化の原因）を特定する。詳しくは、操作ごとに、性能監視マネージャ２１０は、以下に示す手順で判断する。
【００６４】
（１）性能監視マネージャ２１０は、ｖＰＣａｐ３２０ａ〜ｖＰＣａｐ３２０ｄ間の通信経路の通信時間であるｖＰＣａｐ３２０ａとｖＰＣａｐ３２０ｄとでの応答時間の差を求め、標準の通信時間（応答時間の差）と比較する。ｖＰＣａｐ３２０ａでの標準の応答時間は、性能標準値データベース２１２から取得する。詳しくは、ｖＰＣａｐ３２０ａでの標準の応答時間は、性能標準値データベース２１２のレコードにおいて、測定地点２１２１がｖＰＣａｐ３２０ａであり、アクセス先２１２２が当該操作の要求先アドレスであって、時間帯２１２３が、現時刻が含まれる時間帯であるレコードの応答時間２１２５から得られる。ｖＰＣａｐ３２０ｄについても同様に標準応答時間を取得する。取得した２つの応答時間の差がｖＡＦ３１０ａ〜ｖＡＦ３１０ｄの通信経路における標準の通信時間である。ｖＰＣａｐ（３２０ａ、３２０ｄ）の測定結果から得た現在の通信時間が、標準の通信時間より所定の値以上長いならば、性能監視マネージャ２１０は、ｖＡＦ３１０ａ〜ｖＡＦ３１０ｄの通信経路が被疑箇所であると判断する。
【００６５】
（２）（１）と同様にして、性能監視マネージャ２１０は、ｖＰＣａｐ３２０ｄとｖＰＣａｐ３２０ｅとの応答時間の差から、Ｗｅｂサーバ３８１の処理時間を求め、Ｗｅｂサーバ３８１が被疑箇所か判断する。
（３）（１）と同様にして、性能監視マネージャ２１０は、ｖＰＣａｐ３２０ｅとｖＰＣａｐ３２０ｆとの応答時間の差から、ＡＰサーバ３８２の処理時間を求め、ＡＰサーバ３８２が被疑箇所か判断する。
（４）ｖＰＣａｐ３２０ｆの応答時間がＤＢサーバ３８３の処理時間であり、性能標準値データベース２１２にある標準の応答時間と比較して、性能監視マネージャ２１０は、ＤＢサーバ３８３が被疑箇所か判断する。
【００６６】
ステップＳ２７において、性能監視マネージャ２１０は、被疑箇所がｖＡＦ３１０ａ〜ｖＡＦ３１０ｄの通信経路であるならば、ＳＤＮマネージャ２７０に、この通信経路の代替経路を探索して通信経路を切り替えるように指示する。なお、性能監視マネージャ２１０は、オーケストレータ部１００を経由してＳＤＮマネージャ２７０に指示してもよい。
Ｗｅｂサーバ３８１が被疑箇所であるならば、性能監視マネージャ２１０は、オーケストレータ部１００に、Ｗｅｂサーバ３８１を置き換えるか、台数を増やすように指示する。指示を受けたオーケストレータ部１００は、ＶＮＦＭ２８０に指示を転送し、ＶＮＦＭ２８０は、Ｗｅｂサーバ３８１を置き換えたり、台数を増やしたりして、Ｗｅｂサーバ３８１の復旧措置を実行する。ＡＰサーバ３８２やＤＢサーバ３８３が被疑箇所であった場合も、Ｗｅｂサーバ３８１の場合と同様である。
【００６７】
以上の処理により、性能監視マネージャ２１０は、ｖＡＰ３１０とｖＰＣａｐ３２０と連携して、性能劣化の原因を特定することができる。また、性能監視マネージャ２１０は、ＳＤＮマネージャ２７０とオーケストレータ部１００と連携して、復旧措置を実行することができる。
【００６８】
≪性能標準値データベースの更新処理≫
図１１は、本実施形態に係るｖＡＦ３１０ａとｖＰＣａｐ３２０ａと性能監視マネージャ２１０とが連携して実行する性能標準値データベース２１２（図６参照）の更新処理を例示するフローチャートである。図１１を参照して、性能監視対象に設定されているＷｅｂサーバ３８１へのアクセスについて、所定の閾値以上のアクセス回数があったＷｅｂページや操作などの新たなアクセス先を性能標準値データベース２１２に追加する更新処理を説明する。なお、この更新処理は、性能劣化が発生していない、通常時に実行される。
【００６９】
ステップＳ３１において、ｖＡＦ３１０ａが、監視対象であるＷｅｂサーバ３８１が送受信する通信データを取得して、ｖＰＣａｐ３２０ａに送信する。
ステップＳ３２において、ｖＰＣａｐ３２０ａが、ｖＡＦ３１０ａが送信したデータを解析して、アクセスごとのＷｅｂサーバ３８１向けに送信される要求データのサイズ、Ｗｅｂサーバ３８１が送信した応答データのサイズ、応答時間を測定して、測定結果を性能監視マネージャ２１０に送信する。測定結果には、測定された時刻が含まれる。
【００７０】
ステップＳ３３において、性能監視マネージャ２１０は、ｖＰＣａｐ３２０ａが送信した測定結果を性能測定値データベース２１３（図７参照）に格納する。詳しくは、性能監視マネージャ２１０は、測定地点２１３１がｖＰＣａｐ３２０ａ、アクセス先２１３２が測定結果のアクセス先、取得時刻２１３３が測定結果を測定した時刻、データ量２１３４が測定結果の要求データと応答データのサイズ、応答時間２１３５が測定結果の応答時間であるレコードを性能測定値データベース２１３に追加する。
【００７１】
ステップＳ３４において、性能監視マネージャ２１０が、性能測定値データベース２１３のレコードをアクセス先２１３２ごとに検索する。結果として、性能監視マネージャ２１０は、アクセス先２１３２が同じレコードの集合を得る。
ステップＳ３５において、性能監視マネージャ２１０が、ステップＳ３４で得たアクセス先２１３２の検索結果（アクセス先２１３２が同じレコードの集合）ごとにステップＳ３６〜Ｓ４１を繰り返す。
【００７２】
ステップＳ３６において、性能監視マネージャ２１０が、当該アクセス先のアクセス回数を示す当該検索結果のレコード数が、所定の閾値以上か判断する。
ステップＳ３７において、性能監視マネージャ２１０は、アクセス回数（レコード数）が閾値以上ならば、ステップＳ３８に進み、アクセス回数が閾値未満ならば、ステップＳ４２に進む。
【００７３】
ステップＳ３８において、性能監視マネージャ２１０は、検索結果の測定地点２１３１およびアクセス先２１３２と、測定地点２１２１およびアクセス先２１２２とがそれぞれ一致するレコードが性能標準値データベース２１２（図６参照）に存在するか判断する。
【００７４】
ステップＳ３９において、性能監視マネージャ２１０は、ステップＳ３８における性能標準値データベース２１２のレコードが存在しなければ、ステップＳ４０に進み、存在すれば、ステップＳ４２に進む。
ステップＳ４０において、性能監視マネージャ２１０は、検索結果の測定結果を性能標準値データベース２１２に追加する。詳しくは、性能監視マネージャ２１０は、測定地点２１２１が検索結果の測定地点２１３１、アクセス先２１２２が検索結果のアクセス先２１３２、時間帯２１２３が検索結果の取得時刻２１３３を含む時間帯、データ量２１２４（要求データのサイズ、応答データのサイズ）が検索結果のデータ量２１３４の平均値であるデータ量、応答時間２１２５が検索結果の応答時間２１３５の平均値であるレコードを性能標準値データベース２１２に追加する。
【００７５】
ステップＳ４１において、性能監視マネージャ２１０は、検索結果のアクセス先２１３２を仮想ユーザ３５０のシナリオ３５２（図４参照）に追加する。詳しくは、性能監視マネージャ２１０は、Ｗｅｂサーバ３８１に関する操作手順にアクセス先２１３２にアクセスする操作を追加する。
【００７６】
ステップＳ４２において、性能監視マネージャ２１０が、ステップＳ３４で得た全てのアクセス先の検索結果ごとにステップＳ３６〜Ｓ４１を繰り返したか判断し、未処理の検索結果があれば、ステップＳ３６に戻る。全ての検索結果の処理が終われば、性能標準値データベース更新処理を終了する。
以上、説明した更新処理では、ｖＰＣａｐ３２０ａで測定される結果を追加していたが、同様の処理をｖＰＣａｐ（３２０ｄ〜３２０ｆ）でも実行する。
【００７７】
性能監視マネージャ２１０は、この更新処理を所定のタイミング、例えば定期的に、実行することで、監視対象のＷｅｂサーバ３８１にアクセス回数が多い新たなページや機能が追加された場合に、当該ページや機能を新たなアクセス先として性能標準値データベース２１２に追加することができる。また、性能劣化が検出された場合には、仮想ユーザ３５０は、当該ページにアクセスし、性能監視マネージャ２１０が、その応答時間を今回追加された性能標準値データベース２１２の応答時間２１２５と比較して原因分析する。より多くのページのアクセスや機能の実行について応答時間を比較して原因分析することで、性能監視マネージャ２１０は、より正確に被疑箇所を特定することができる。
【００７８】
≪変形例≫
図１０で説明した性能劣化原因特定処理は、広域ネットワーク３００の内部にあるＤＣ３６１から提供されるアプリケーションサービスの性能劣化の原因を特定する処理であった。これと同様に、広域ネットワーク３００に接続されるサービス事業者ＤＣ３０２から提供されるサービスについても、性能劣化の原因が特定できる。詳しくは、ｖＡＦ３１０ａとｖＡＦ３１０ｃにおいて、応答時間を比較することで、性能監視マネージャ２１０は、（１）ｖＡＦ３１０ａ〜ｖＡＦ３１０ｃの通信経路、（２）ｖＡＦ３１０ｃ〜サービス事業者ＤＣ３０２の通信経路またはサービス事業者ＤＣ３０２の提供するサービスの、（１）か（２）のいずれに性能劣化の原因があるのかが特定できるようになる。
【００７９】
図１０で説明した性能劣化原因特定処理は、ｖＰＣａｐ３２０が測定したアプリケーションの応答時間と、性能標準値データベース２１２（図６参照）に格納されている応答時間２１２５とを比較して、応答時間が増加していることで性能劣化を検知していた。これに対して、映像などのコンテンツを扱うアプリケーションや大量のデータ転送を伴うアプリケーションでは、１つのアクセス（例えば、１つの映像コンテンツ）の単位時間当たりの通信量と、性能標準値データベース２１２に格納されているデータ量２１２４に格納される単位時間当たりの通信量とを比較して、通信量が減少していることで性能劣化を検出するようにしてもよい。また、２つの測定地点（ｖＡＦ）における通信量を測定し比較して、通信量の差または比が所定の値より大きければ、２つの測定地点間の通信経路に性能劣化の原因があると判断してもよい。
【００８０】
図８では、Ｗｅｂアプリケーションシステム３８０内での性能監視を実現するために、Ｗｅｂサーバ３８１とＡＰサーバ３８２との間、および、ＡＰサーバ３８２とＤＢサーバ３８３との間の２箇所にｖＡＦを設置した。これに対して、サーバ間の通信経路の両端にｖＡＦを設置して、サーバ間の通信経路の性能劣化を特定できるようにしてもよい。この場合、Ｗｅｂサーバ３８１とＡＰサーバ３８２との間に２つのｖＡＦが設置され、ＡＰサーバ３８２とＤＢサーバ３８３との間に２つのｖＡＦが設置される。こうすることで、Ｗｅｂアプリケーションシステム３８０に性能劣化があった場合に、原因が、Ｗｅｂサーバ３８１、Ｗｅｂサーバ３８１とＡＰサーバ３８２との間の通信経路、ＡＰサーバ３８２、ＡＰサーバ３８２とＤＢサーバ３８３との間の通信経路、および、ＤＢサーバ３８３のいずれにあるのかが特定できるようになる。
【００８１】
ステップＳ２７（図１０参照）の復旧措置に関して、性能劣化の原因がｖＡＦ３１０ａ〜ｖＡＦ３１０ｄの通信経路にあり、さらにｖＡＦ３１０ａで優先度の低いアプリケーションの通信量が多い場合には、性能監視マネージャ２１０は、この優先度の低いアプリケーションの通信量を制限するように、ｖＡＦ３１０ａに指示するようにしてもよい。指示を受けたｖＡＦ３１０ａは、フィルタ部３１１（通信制限部、図２参照）において、この優先度の低いアプリケーションの通信量を制限する。
【００８２】
また、ｖＡＦ３１０ａ〜ｖＡＦ３１０ｄの通信経路の別の復旧措置として、仮想ネットワークを利用する復旧措置がある。詳しくは、性能監視マネージャ２１０が、ＳＤＮマネージャ２７０に指示して、Ｗｅｂアプリケーションシステム３８０の通信データのみが流れる仮想ネットワーク（ネットワークスライス）を生成し、既存のｖＡＦ３１０ａ〜ｖＡＦ３１０ｄの通信経路を流れていたＷｅｂアプリケーションシステム３８０の通信データが、生成した仮想ネットワークに流れるようにして、復旧措置を実行してもよい。
【００８３】
ステップＳ２７（図１０参照）の復旧措置に関して、性能劣化の原因が複数のサーバにある場合やＤＣ３６１への通信経路にある場合には、性能監視マネージャ２１０は、ＤＣ３６２でＤＣ３６１と同じＷｅｂアプリケーションシステム３８０を構成するＷｅｂサーバとＡＰサーバとＤＢサーバとを起動させるようにオーケストレータ部１００に指示し、ｖＡＦ３１０ａ〜ＤＣ３６１の通信経路をｖＡＦ３１０ａ〜ＤＣ３６２の通信経路に切り換えるようにＳＤＮマネージャ２７０に指示するようにしてもよい。
【００８４】
ステップＳ２６（図１０参照）の被疑箇所特定において、性能監視マネージャ２１０は、２つのｖＰＣａｐにおける応答時間の差から、被疑箇所となるサーバを特定していた。これとは異なる特定方法として、応答時間が劣化しているアクセス先２１２２（図６参照）から、性能劣化が発生しているＷｅｂアプリケーションシステム３８０のサービス（機能）を特定して、当該サービスを提供しているサーバが被疑箇所であると判断してもよい。
【００８５】
上記実施形態では、Ｗｅｂサーバ３８１やＡＰサーバ３８２、ＤＢサーバ３８３は、それぞれ１つのサーバとして説明してきたが、例えば、ＡＰサーバ３８２が複数のサーバ（クラスタ）であってもよい。ｖＰＣａｐ３２０ｅは、それぞれのＡＰサーバ３８２の応答時間を測定して、ＤＢサーバ３８３の応答時間との差を計算することで、それぞれのＡＰサーバ３８２の処理時間が測定でき、どのＡＰサーバ３８２に性能劣化が生じているか、性能監視マネージャ２１０は特定できる。
【００８６】
≪効果≫
アプリケーション性能監視システム１０は、アプリケーションの通信データを取得して応答時間や通信量を解析するｖＡＦ３１０とｖＰＣａｐ３２０とを、利用者ネットワークとアプリケーションサービスを提供するシステムとの通信経路の両端に設置して応答時間や通信量を測定することで、性能劣化を検知することができる。また、アプリケーション性能監視システム１０は、性能劣化の原因が、通信経路にあるのかサービスを提供するシステムにあるのか特定できるようになる。
【００８７】
アプリケーション性能監視システム１０は、アプリケーションサービスを提供するシステムを構成するサーバ間にｖＡＦ３１０とｖＰＣａｐ３２０を設置して応答時間や通信量を測定することで、性能劣化の原因が、どのサーバにあるのか特定できるようになる。
アプリケーション性能監視システム１０は、仮想ユーザがアプリケーションを利用して、アプリケーションのアクセス先や操作ごとの応答時間や通信量を、性能標準値データベース２１２の応答時間２１２５やデータ量２１２４と比較することで、どのＷｅｂページのアクセスやアプリケーションのどの機能で性能劣化が発生しているか特定することができる。
【００８８】
さらに、アプリケーション性能監視システム１０は、どのサーバ（Ｗｅｂサーバ、ＡＰサーバ、ＤＢサーバ）で性能劣化が発生しているか特定することができる。詳しくは、サーバ間にｖＡＦ３１０とｖＰＣａｐ３２０のペアが設置され、利用者ネットワーク３０１側の、サーバに隣接して設置されたｖＡＦ３１０とｖＰＣａｐ３２０のペア（前側サーバ隣接測定装置とも記す。）と、他の側の、サーバに隣接して設置されたｖＡＦ３１０とｖＰＣａｐ３２０のペア（後側サーバ隣接測定装置とも記す。）とでの応答時間の差から、サーバの処理時間を取得することで、アプリケーション性能監視システム１０は、サーバの性能劣化の有無を判断できる。例えば、ＡＰサーバ３８２（図８参照）については、前側サーバ隣接測定装置であるｖＡＦ３１０ｅとｖＰＣａｐ３２０ｅとの対での応答時間（前側サーバ隣接応答時間）、および、後側サーバ隣接測定装置であるｖＡＦ３１０ｆとｖＰＣａｐ３２０ｆとの対での応答時間（後側サーバ隣接応答時間）の差から、ＡＰサーバ３８２の処理時間が取得でき、アプリケーション性能監視システム１０は、性能劣化が判定できる。
【００８９】
アプリケーション性能監視システム１０は、性能劣化の原因となっている通信経路またはサーバを代替することで、性能劣化から復旧することができる。
アプリケーション性能監視システム１０は、アクセス件数が増加したＷｅｂページやアプリケーション機能の標準応答時間(データ量)を示すレコードを性能標準値データベース２１２に追加する。このため、アプリケーション性能監視システム１０は、利用頻度の高いアクセス先を含んだアクセスでの応答時間や通信量を比較するので、より正確な、利用者感覚に近い性能劣化の判断することができる。
【００９０】
以上の測定は、広域ネットワーク３００に設置されているｖＡＦとｖＰＣａｐが行う。このため、利用者は測定ツールや装置を導入する必要がなく、コストが発生しない。また、利用者ネットワークでは、装置導入によるネットワークの性能劣化も発生しない。
【符号の説明】
【００９１】
１０  アプリケーション性能監視システム
１１  アプリケーション性能監視装置
１００  オーケストレータ部
２００  インフラマネージャ部
２１０  性能監視マネージャ
２１１  性能監視部
２１２  性能標準値データベース
２１３  性能測定値データベース
２７０  ＳＤＮマネージャ
２８０  ＶＮＦＭ
３００  広域ネットワーク
３１０，３１０ａ〜３１０ｆ  ｖＡＦ（仮想アプリケーション型ファイアウォール）
３１１  フィルタ部（通信制限部）
３１２  フィルタルール
３２０，３２０ａ〜３２０ｆ  ｖＰＣａｐ（仮想パケットキャプチャ）
３２１  パケット解析部
３２２  パケット記憶部
３５０  仮想ユーザ（仮想ユーザエージェント）
３５１  操作実行部
３５２  シナリオ
３６０〜３６２  ＤＣ
【図１】
2018206121.tif 000003
【図２】
2018206121.tif 000004
【図３】
2018206121.tif 000005
【図４】
2018206121.tif 000006
【図５】
2018206121.tif 000007
【図６】
2018206121.tif 000008
【図７】
2018206121.tif 000009
【図８】
2018206121.tif 000010
【図９】
2018206121.tif 000011
【図１０】
2018206121.tif 000012
【図１１】
2018206121.tif 000013