(57)【要約】【課題】  従来の因果関係の時間順序を用いることなく、観測変数間の因果を推定し、品質劣化発生時における要因を特定する。【解決手段】  本発明は、ネットワークサービスの品質、トラヒック、サーバ負荷を観測し、観測された観測値を記憶手段に格納し、観測値が予め定められた品質閾値より劣化した場合、および時系列変化を検出した場合を、品質劣化発生として検出し、品質劣化を検出した場合、観測値のペアに対して互いに回帰分析残差の独立性検定を行い、残差が独立となる回帰が因果関係であると推定し、該因果関係の最も上位に推論された観測値を、品質劣化要因として推定する。【選択図】  図１
2014049921.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークサービス品質劣化時にその要因を推定する品質劣化要因推定装置であって、
ネットワークサービスの品質、トラヒック、サーバ負荷を観測し、観測された観測値を記憶手段に格納する観測変数測定手段と、
前記記憶手段から前記観測変数測定手段で得られた前記観測値が予め定められた品質閾値より劣化した場合、および時系列変化を検出した場合を、品質劣化発生として検出する品質劣化検出手段と、
前記品質劣化検出手段で品質劣化を検出した場合、前記観測変数測定手段で得られた前記観測値のペアに対して互いに回帰分析残差の独立性検定を行い、残差が独立となる回帰が因果関係であると推定し、該因果関係の最も上位に推論された観測値を、品質劣化要因として推定する因果推論手段と、
を有することを特徴とする品質劣化要因推定装置。
【請求項２】
前記因果推論手段は、
前記観測値すべてを対象に因果関係を推定するのではなく、品質劣化発生時における観測値との相関係数が、予め定められた閾値を上回る観測値群を相関クラスタとして抽出し、当該相関クラスタを対象に因果関係を推定する手段を含む
請求項1記載の品質劣化要因推定装置。
【請求項３】
前記因果推論手段は、
観測期間すべての観測値を対象に因果関係を推定するのではなく、品質劣化期間の観測値を対象に因果関係を推定する手段を含む
請求項２記載の品質劣化要因推定装置。
【請求項４】
前記因果推論手段は、
パラメータを前記観測値から推定可能な非線形関数を用いて非線形回帰分析を実行することにより因果推論を行う手段を含む
請求項1記載の品質劣化要因推定装置。
【請求項５】
ネットワークサービス品質劣化時にその要因を推定する品質劣化要因推定方法であって、
記憶手段、観測変数測定手段、品質劣化検出手段、因果推論手段を有する装置において、
前記観測変数測定手段が、ネットワークサービスの品質、トラヒック、サーバ負荷を観測し、観測された観測値を記憶手段に格納する観測変数測定ステップと、
前記品質劣化検出手段が、前記記憶手段から前記観測変数測定ステップで得られた前記観測値が予め定められた品質閾値より劣化した場合、および時系列変化を検出した場合を、品質劣化発生として検出する品質劣化検出ステップと、
前記因果推論手段が、前記品質劣化検出ステップで品質劣化を検出した場合、前記観測変数測定ステップで得られた前記観測値のペアに対して互いに回帰分析残差の独立性検定を行い、残差が独立となる回帰が因果関係であると推定し、該因果関係の最も上位に推論された観測値を、品質劣化要因として推定する因果推論ステップと、
を行うことを特徴とする品質劣化要因推定方法。
【請求項６】
前記因果推論ステップにおいて、
前記観測値すべてを対象に因果関係を推定するのではなく、品質劣化発生時における観測値との相関係数が、予め定められた閾値を上回る観測値群を相関クラスタとして抽出し、当該相関クラスタを対象に因果関係を推定する
請求項５記載の品質劣化要因推定方法。
【請求項７】
前記因果推論ステップにおいて、
観測期間すべての観測値を対象に因果関係を推定するのではなく、品質劣化期間の観測値を対象に因果関係を推定する
請求項６記載の品質劣化要因推定方法。
【請求項８】
前記因果推論ステップにおいて、
パラメータを前記観測値から推定可能な非線形関数を用いて非線形回帰分析を実行することにより因果推論を行う
請求項５記載の品質劣化要因推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、品質劣化要因推定装置及び方法に係り、特に、ネットワークサービスの品質が劣化した場合にその要因を特定するための品質劣化要因推定装置及び方法に関する。
【背景技術】
【０００２】
近年、ネットワークサービスに対する信頼性の要求が高まっている一方で、ネットワークサービスを提供するネットワーク、サービスの大規模化、構成の複雑化のため、一旦障害、品質劣化が発生した場合の要因特定および復旧が困難となっており、品質劣化要因特定の自動化による障害対応迅速化が求められている。
【０００３】
このような課題に対し、ネットワークサービス品質劣化時の自動要因特定として、予めサーバ、ネットワークの構成情報を取得し、機器からの観測変数間の因果関係を手動で生成しておき、いったん品質劣化が発生した場合は予め生成された因果関係をさかのぼって要因を特定する手法（以下、第1の従来技術と記す）が提案されている（例えば、非特許文献1参照）。
【０００４】
構成情報によらず，複数サーバの依存関係を同一時間ウィンドウ内のトラヒック同時生起関係によってイベント相関モデルとしてあらかじめ生成しておき，品質劣化発生イベント発生時に同モデルによって要因特定する手法（以下、第2の従来技術と記す）が提案されている（例えば、非特許文献2，3参照）。
【０００５】
一般的に因果関係を特定するためには、イベントの時間順序関係によって判断することが一般的である。すなわち品質劣化の発生時刻以前に通常と異なる挙動を示す観測変数を要因として特徴とする方式（以下、第3の従来技術と記す）が提案されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】He Yan, Lee Breslau, Zihui Ge, Daniel Massey, Dan Pei, Jennifer Yates: G-RCA: a generic root cause analysis platform for service quality management in large IP networks. CoNEXT 2010: 5
【非特許文献２】Haifeng Chen, Guofei Jiang, Kenji Yoshihira: Monitoring High-Dimensional Data for Failure Detection and Localization in Large-Scale Computing Systems. IEEE Trans. Knowl. Data Eng. 20(1): 13-25 (2008)
【非特許文献３】Paramvir Bahl, Ranveer Chandra, Albert G. Greenberg, Srikanth Kandula, David A. Maltz, Ming Zhang: Towards highly reliable enterprise network services via inference of multi-level dependencies. SIGCOMM 2007: 13-24
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上記の第1の従来技術では、大規模・複雑化したネットワークに対して，すべてのサービスの因果関係を事前に生成することは事実上不可能であるという課題があった。
【０００８】
また、上記第２の従来技術は、あくまで相関モデルであり、因果モデルでない。従って相関があるイベントのどちらが要因かを本モデルから特定することはできず、要因として発生イベントを最も少ない変数で説明できる変数群を要因として推定するという経験的な法則に依存していた。
【０００９】
また、上記第３の従来技術は、トラヒック増大による過負荷による品質劣化など、要因と品質劣化がほぼ同時に発生する場合、観測データのみから時間順序を同定できず、因果を推定することができない。
【００１０】
本発明は、上記の点に鑑みなされたもので、原因と結果が同時に生起した場合でも（時間順序を同定しなくても）、観測値間の因果を推定することによって品質劣化発生時における要因を特定することが可能な品質劣化要因推定装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の課題を解決するため、本発明（請求項１）は、ネットワークサービス品質劣化時にその要因を推定する品質劣化要因推定装置であって、
ネットワークサービスの品質、トラヒック、サーバ負荷を観測し、観測された観測値を記憶手段に格納する観測変数測定手段と、
前記記憶手段から前記観測変数測定手段で得られた前記観測値が予め定められた品質閾値より劣化した場合、および時系列変化を検出した場合を、品質劣化発生として検出する品質劣化検出手段と、
前記品質劣化検出手段で品質劣化を検出した場合、前記観測変数測定手段で得られた前記観測値のペアに対して互いに回帰分析残差の独立性検定を行い、残差が独立となる回帰が因果関係であると推定し、該因果関係の最も上位に推論された観測値を、品質劣化要因として推定する因果推論手段と、を有する。
【００１２】
また、本発明（請求項２）は、前記因果推論手段において、
前記観測値すべてを対象に因果関係を推定するのではなく、品質劣化発生時における観測値との相関係数が、予め定められた閾値を上回る観測値群を相関クラスタとして抽出し、当該相関クラスタを対象に因果関係を推定する手段を含む。
【００１３】
また、本発明（請求項３）は、前記因果推論手段において、
観測期間すべての観測値を対象に因果関係を推定するのではなく、品質劣化期間の観測値を対象に因果関係を推定する手段を含む。
【００１４】
また、本発明（請求項４）は、前記因果推論手段において、
パラメータを前記観測値から推定可能な非線形関数を用いて非線形回帰分析を実行することにより因果推論を行う手段を含む。
【発明の効果】
【００１５】
上述のように、本発明によれば、時間順序を用いることなく、観測変数間の因果を推定することによって品質劣化発生時における要因を特定することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施の形態における品質劣化容易印推定装置の構成図である。
【図２】本発明の一実施の形態における因果推定の概念図である。
【図３】本発明の一実施の形態における相関クラスタ観測変数の概念図である。
【発明を実施するための形態】
【００１７】
以下、図面と共に本発明の実施の形態を説明する。
【００１８】
図１は、本発明の一実施の形態における品質劣化要因推定装置の構成を示す。
【００１９】
同図に示す品質劣化要因推定装置１００は、観測変数測定部１１０、品質劣化検出部１２０、因果推論部１３０から構成され、それぞれメモリ（図示せず）を有するものとする。
【００２０】
観測変数測定部１１０は、ネットワークサービスに関わる各種数値（観測値）を計測する。具体的にはネットワークサービスのレスポンス時間やスループット等の品質、ネットワークのトラヒック量、CPUサーバやメモリ使用量、ディスク使用量などのネットワーク、サーバ機器負荷を計測し、メモリ（図示せず）に格納する。品質計測においては疑似クライアント端末３からサービスを試験的に利用して品質を計測してもよいし、トラヒックを観測して実際のユーザのクライアント端末群２におけるサービス利用状況から計測してもよい。観測トラヒックからの品質計測については、例えば特開2012-39324号公報に示される技術が適用可能である。トラヒックについては実際にネットワークを転送されるパケットを取得し、トラヒック量を算出してもよいし、ネットワーク機器が具備するSNMP(Simple Network Management Protocol)、NetFlow、sFlow等のトラヒック情報出力機能を利用してもよい。ネットワークサービス提供サーバ群１やネットワーク機器の負荷は、それら機器が具備するSNMPなどの負荷情報出力機能を利用する。さらに観測変数測定部１１０は、これら得られた観測値を一定時間間隔毎の時系列データとしてメモリ（図示せず）に格納する。
【００２１】
品質劣化検出部１２０は、上記観測変数測定部１１０で得られた観測値から品質の劣化を検出し、検出データをメモリ（図示せず）に格納する。品質劣化検出部１２０は、予め定められた品質閾値より劣化した、すなわちレスポンス時間が閾値を上回った、もしくはスループットが閾値を下回ったという事象を品質劣化として検出してもよいし、また、観測変数測定部１１０で得られた時系列データから統計的に正常範囲を学習しておき、当該範囲を逸脱した場合に品質劣化を検出して検出してもよい。統計的な異常検出手法については、例えば、文献１「原田薫明，川原亮一，森達哉，上山憲昭，廣川裕，山本公洋，"異常トラヒック発生検出および終了判定手法，"信学技報，Vol.106, no．420,IN2006‐133, pp.115‐120,  2006年12月．」の手法が適用可能である。
【００２２】
因果推論部１３０は、上記品質劣化検出部１２０で検出された品質時系列データとその他観測変数群の因果関係を、上記観測変数測定部１１０のメモリ（図示せず）のデータから推定する。因果関係の推定にあたっては、文献２「S. Shimizu, T. Inazumi, Y. Sogawa, A. Hyv¨arinen, Y. Kawahara, T. Washio, P. O. Hoyer, and K. Bollen. DirectLiNGAM: A direct  method for learning a linear non-Gaussian structural equation model.  Journal of Machine Learning Research, 12:1225-1248, April 2011.」に記載の方式を用いる。
【００２３】
以下、同方式に基づく因果推定を相関クラスタの観測値がX,Yの二つの場合で概説する。図２に因果推定の概念図を示す。X,Yは例えば、トラヒック観測量の時系列データ、品質観測量の時系列データを示す。 3変数以上の場合は、それらから2変数のペアを抽出し、2変数間の因果推定を繰り返し、他のすべての変数に対して原因となる変数を要因として特定すればよい。
【００２４】
ここで、Xが原因であり、Yが結果であるとし、Y は式（１）に従って生成されているものとする(以下、説明を簡単にするため、 X、Yの分散が1に基準化されているとする)。
【００２５】
Y=aX+e                                式（１）
ここでaは係数であり、eは外乱ノイズである。本方式ではeに非ガウス性(ガウス分布に従わないこと)、かつXと独立であることを要請する。このとき、YをXで式（２）によって線形回帰したとする。
【００２６】
Y=cov(X，Y)/var(X)*X                    式（２）
このとき、corr(X，Y) ≒ aであり、回帰残差であるX-a*Y = (1-a^2) x - a*eはXとYの関係が通常は決定論的でないため、つまりa=corr(X，Y)=1 or -1でないため、必ずXを含む。そして、式（１）でわかる通り、 XはYの生成変数であるため、回帰残差はYと独立でない。このように、回帰残差と説明変数の独立性を比較することによって、回帰の方向と因果の方向が一致しているか否かの検定が可能であり、従って因果順序の推定が可能となる。独立性の検定方法は種々あるが、文献２では相互情報量を用いた検定方法を提案している。
【００２７】
上記因果推論技術を用いた品質劣化要因手法は、品質劣化発生した観測値を含む他のすべての変数に対して原因となる変数を品質劣化要因として特定する。
【００２８】
以下に、因果推論部１３０の上記以外の因果関係推定手法について説明する。
【００２９】
観測値の数が膨大な場合、上記因果推定をすべての観測変数ペアに対して実施すると計算時間がかかるために実施困難となる場合があり得る。因果関係が存在する場合、一般的には相関関係が存在し、かつ相関係数の計算は簡易に行えるため、因果推論部１３０では、まず相関関係の有無によって因果関係の可能性がある観測変数を洗い出すことによって計算時間を短縮する。具体的には上記品質劣化検出部１２０が検出した変数と他の観測変数の相関係数を、予め定められた時間区間の観測値を用いて計算し、相関係数が予め定められた閾値以上となる観測変数群を相関クラスタとして抽出し、抽出した観測値のみを対象に因果推定を実施する（請求項２，６）。図３に相関クラスタ観測変数の概念図を示す。
【００３０】
また、品質劣化期間の観測品質観測変数値を対象に因果関係を推定する方法がある。
【００３１】
変数ペアによっては式（１）で示される線形関係ではなく、非線形の関係になっている可能性もある。例えば、サーバに対する入力トラヒック量とレスポンス時間の関係は線形でなく、入力トラヒック量がサーバ処理能力に近づくにつれて急激にレスポンス時間が劣化する非線形関係となっている。因果推論部１３０では、そのような場合に対応して、非線形回帰分析による因果推定を行う（請求項４，８）。具体的な非線形関数としては、例えば式（３）で示されるシグモイド関数がある。
【００３２】
f(x) = L +M/(1+exp(-ax))                    式（３）
シグモイド関数を用いた非線形回帰分析は下記の通りである。
【００３３】
Yを従属変数、Xを説明変数とすると、シグモイド関数の逆関数
【００３４】
【数１】
2014049921.tif 000003
によって従属変数Yを
【００３５】
【数２】
2014049921.tif 000004
変換し、その上でY'とXに関して線形回帰分析を行う。ここでMはYの絶対値の最大値、LはYの最小値によって推定する。その後線形回帰分析と同様に残差と説明変数の独立性検定によって因果推論を行えばよい。
【００３６】
なお、上記の図1に示す品質劣化要因推定装置の各構成要素の動作をプログラムとして構築し、品質劣化推定装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００３７】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００３８】
１  ネットワークサービス提供サーバ群
２  クライアント端末群
３  擬似クライアント端末群
１００  品質劣化要因推定装置
１１０  観測変数測定部
１２０  品質劣化検出部
１３０  因果推論部
【図１】
2014049921.tif 000005
【図２】
2014049921.tif 000006
【図３】
2014049921.tif 000007