(57)【特許請求の範囲】
【請求項１】
ネットワークのログを収集するログ収集装置の収集した前記ログから前記ネットワークの所定期間の定常状態に対応する特徴量であるｎ次元（ｎは１以上の整数）の複数の定常状態特徴量を期間の異なる複数の定常状態のそれぞれについて抽出するとともに、前記ログに含まれるデータであって前記ネットワークの状態の判定に使用される所定期間のデータであり、かつ、前記複数の定常状態のうちの最新の定常状態の期間よりも後の期間のデータである判定対象データに対応する特徴量である判定対象データ特徴量をｎ次元の点を示す座標として抽出する抽出部と、
前記抽出部が前記複数の定常状態のそれぞれについて抽出した前記複数の定常状態特徴量から前記複数の定常状態特徴量の分布する領域を示すｎ次元の特徴量領域を前記複数の定常状態のそれぞれについて生成する特徴量領域生成部と、
前記特徴量領域生成部が生成した前記複数の定常状態のそれぞれについての前記特徴量領域のうち最新の期間の定常状態に対応する前記特徴量領域と前記抽出部が抽出した前記判定対象データ特徴量との距離を算出する特徴間距離算出部と、
前記特徴間距離算出部が算出した距離に基づいて、最新の期間の定常状態に対応する前記特徴量領域と前記抽出部が抽出した前記判定対象データ特徴量とが乖離しているかどうかを判定する判定部と
を備え、
前記特徴間距離算出部は、
前記判定部が最新の期間の定常状態に対応する前記特徴量領域と前記判定対象データ特徴量とが乖離していると判定した場合には、最新の期間の定常状態に対応する前記特徴量領域以外の他の全ての前記特徴量領域と前記判定対象データ特徴量との距離をそれぞれ算出し、
前記判定部は、
前記特徴間距離算出部が算出した最新の期間の定常状態に対応する前記特徴量領域以外の他の全ての前記特徴量領域と前記判定対象データ特徴量とのそれぞれの距離に基づいて、前記ネットワークの状態を判定することを特徴とするネットワーク状態判定装置。
【請求項２】
前記抽出部は、
特異値分解を用いることにより前記定常状態特徴量と前記判定対象データ特徴量とを抽出することを特徴とする請求項１記載のネットワーク状態判定装置。
【請求項３】
コンピュータを、
ネットワークのログを収集するログ収集装置の収集した前記ログから前記ネットワークの所定期間の定常状態に対応する特徴量であるｎ次元（ｎは１以上の整数）の複数の定常状態特徴量を期間の異なる複数の定常状態のそれぞれについて抽出するとともに、前記ログに含まれるデータであって前記ネットワークの状態の判定に使用される所定期間のデータであり、かつ、前記複数の定常状態のうちの最新の定常状態の期間よりも後の期間のデータである判定対象データに対応する特徴量である判定対象データ特徴量をｎ次元の点を示す座標として抽出する抽出部、
前記抽出部が前記複数の定常状態のそれぞれについて抽出した前記複数の定常状態特徴量から前記複数の定常状態特徴量の分布する領域を示すｎ次元の特徴量領域を前記複数の定常状態のそれぞれについて生成する特徴量領域生成部、
前記特徴量領域生成部が生成した前記複数の定常状態のそれぞれについての前記特徴量領域のうち最新の期間の定常状態に対応する前記特徴量領域と前記抽出部が抽出した前記判定対象データ特徴量との距離を算出する特徴間距離算出部、
前記特徴間距離算出部が算出した距離に基づいて、最新の期間の定常状態に対応する前記特徴量領域と前記抽出部が抽出した前記判定対象データ特徴量とが乖離しているかどうかを判定する判定部
として機能させるためのプログラムであって、
前記特徴間距離算出部は、
前記判定部が最新の期間の定常状態に対応する前記特徴量領域と前記判定対象データ特徴量とが乖離していると判定した場合には、最新の期間の定常状態に対応する前記特徴量領域以外の他の全ての前記特徴量領域と前記判定対象データ特徴量との距離をそれぞれ算出し、
前記判定部は、
前記特徴間距離算出部が算出した最新の期間の定常状態に対応する前記特徴量領域以外の他の全ての前記特徴量領域と前記判定対象データ特徴量とのそれぞれの距離に基づいて、前記ネットワークの状態を判定することを特徴とするネットワーク状態判定プログラム。
【請求項４】
ネットワーク状態判定装置が行うネットワーク状態判定方法において、
抽出部が、ネットワークのログを収集するログ収集装置の収集した前記ログから前記ネットワークの所定期間の定常状態に対応する特徴量であるｎ次元（ｎは１以上の整数）の複数の定常状態特徴量を期間の異なる複数の定常状態のそれぞれについて抽出するとともに、前記ログに含まれるデータであって前記ネットワークの状態の判定に使用される所定期間のデータであり、かつ、前記複数の定常状態のうちの最新の定常状態の期間よりも後の期間のデータである判定対象データに対応する特徴量である判定対象データ特徴量をｎ次元の点を示す座標として抽出し、
特徴量領域生成部が、前記抽出部が前記複数の定常状態のそれぞれについて抽出した前記複数の定常状態特徴量から前記複数の定常状態特徴量の分布する領域を示すｎ次元の特徴量領域を前記複数の定常状態のそれぞれについて生成し、
特徴間距離算出部が、前記特徴量領域生成部が生成した前記複数の定常状態のそれぞれについての前記特徴量領域のうち最新の期間の定常状態に対応する前記特徴量領域と前記抽出部が抽出した前記判定対象データ特徴量との距離を算出し、
判定部が、前記特徴間距離算出部が算出した距離に基づいて、最新の期間の定常状態に対応する前記特徴量領域と前記抽出部が抽出した前記判定対象データ特徴量とが乖離しているかどうかを判定し、
前記特徴間距離算出部は、
前記判定部が最新の期間の定常状態に対応する前記特徴量領域と前記判定対象データ特徴量とが乖離していると判定した場合には、最新の期間の定常状態に対応する前記特徴量領域以外の他の全ての前記特徴量領域と前記判定対象データ特徴量との距離をそれぞれ算出し、
前記判定部は、
前記特徴間距離算出部が算出した最新の期間の定常状態に対応する前記特徴量領域以外の他の全ての前記特徴量領域と前記判定対象データ特徴量とのそれぞれの距離に基づいて、前記ネットワークの状態を判定することを特徴とするネットワーク状態判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークの異常を検出するネットワーク状態判定装置及びネットワーク状態判定方法及びネットワーク状態判定プログラムに関する。
【背景技術】
【０００２】
従来のネットワークの異常検出手段は、ネットワークログ＝時系列データを分析し異常を検出するが、過去のある期間の比較パラメータの総記録数に対する割合、平均値、標準偏差、相関度、頻度との比較によって分析対象の異常を判定していた（例えば、特許文献１）。
【０００３】
また、ネットワークの通常状態におけるイベントを観測し分布データを作成し、ネットワークの運用時に作成した分布パターンとを比較し、この比較結果から異常を検出していた（例えば、特許文献２）。
【０００４】
このように従来のネットワークの異常検出手段は、通常状態との分析対象パラメータ値との比較で異常検出を行っているが、通常状態のログを入力として算出した閾値との比較であり、その閾値次第で異常検出精度が異なる課題があった。
【０００５】
また、ネットワークの状況は変化し続けており、通常状態を定義し直し続ける必要がある。通常状態を定義し直し、閾値を算出し直しても、異常の影響がバッググラウンドで長引いた場合などを考えると、その一定期間のデータの変動は落ち着いていても、通常＝正常とは限らなくなる。この場合に異常状態が収束していったときのデータは通常とした状態のものとは異なるデータとなり異常と検出され、異常検出精度が低下するという課題があった。
【特許文献１】特開２００５−２３６８６２号公報
【特許文献２】特開２００５−２４４４２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
この発明は、ネットワークの異常検出を精度高く行うことを目的とする。
【課題を解決するための手段】
【０００７】
この発明のネットワーク状態判定装置は、
ネットワークのログを収集するログ収集装置の収集した前記ログから前記ネットワークの所定期間の定常状態に対応する特徴量であるｎ次元（ｎは１以上の整数）の定常状態特徴量を複数抽出するとともに、前記ログに含まれるデータであって前記ネットワークの状態の判定に使用され、かつ前記定常状態の期間よりも後の所定期間のデータである判定対象データに対応する特徴量である判定対象データ特徴量をｎ次元の点を示す座標として抽出する抽出部と、
前記抽出部が抽出した複数の定常状態特徴量から前記複数の定常状態特徴量の分布する領域を示すｎ次元の特徴量領域を生成する特徴量領域生成部と、
前記特徴量領域生成部が生成した前記特徴量領域と前記抽出部が抽出した前記判定対象データ特徴量との距離を算出する特徴間距離算出部と、
前記特徴間距離算出部が算出した距離に基づいて、前記ネットワークの状態を判定する判定部と
を備えたことを特徴とする。
【発明の効果】
【０００８】
この発明により、精度の高いネットワーク異常検出を実現することができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
図１は、コンピュータであるログ分析装置１０（ネットワーク状態判定装置）の外観の一例を示す図である。図１において、ログ分析装置１０は、システムユニット８３０、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）やＬＣＤ（液晶）の表示画面を有する表示装置８１３、キーボード８１４（Ｋｅｙ  Ｂｏａｒｄ：Ｋ／Ｂ）、マウス８１５、ＦＤＤ８１７（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ    Ｄｒｉｖｅ）、コンパクトディスク装置８１８（ＣＤＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｄｒｉｖｅ）、プリンタ装置８１９などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
【００１０】
システムユニット８３０は、コンピュータであり、また、ネットワークに接続されている。ネットワークには、ログ収集装置２０が接続されている。ログ分析装置１０は、ネットワークを介してログ収集装置２０と通信可能である。ログ分析装置１０は、ログ収集装置２０からログデータを取得する。
【００１１】
図２は、実施の形態１におけるログ分析装置１０のハードウェア資源の一例を示す図である。図２において、ログ分析装置１０は、プログラムを実行するＣＰＵ８１０（中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ８１０は、バス８２５を介してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）８１１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８１２、表示装置８１３、キーボード８１４、マウス８１５、通信ボード８１６、ＦＤＤ８１７、ＣＤＤ８１８、プリンタ装置８１９、磁気ディスク装置８２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置８２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
【００１２】
ＲＡＭ８１２は、揮発性メモリの一例である。ＲＯＭ８１１、ＦＤＤ８１７、ＣＤＤ８１８、磁気ディスク装置８２０等の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部、格納部の一例である。通信ボード８１６、キーボード８１４、ＦＤＤ８１７などは、入力部、入力装置の一例である。また、通信ボード８１６、表示装置８１３、プリンタ装置８１９などは、出力部、出力装置の一例である。
【００１３】
通信ボード８１６は、ネットワーク（ＬＡＮ等）に接続されている。通信ボード８１６は、ＬＡＮに限らず、インターネット、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。
【００１４】
磁気ディスク装置８２０には、オペレーティングシステム８２１（ＯＳ）、ウィンドウシステム８２２、プログラム群８２３、ファイル群８２４が記憶されている。プログラム群８２３のプログラムは、ＣＰＵ８１０、オペレーティングシステム８２１、ウィンドウシステム８２２により実行される。
【００１５】
上記プログラム群８２３には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ８１０により読み出され実行される。
【００１６】
ファイル群８２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の算出結果」、「〜の抽出結果」、「〜の生成結果」、「〜の処理結果」として説明する情報や、データや信号値や変数値やパラメータなどが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ８１０によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００１７】
また、以下に述べる実施の形態の説明においては、データや信号値は、ＲＡＭ８１２のメモリ、ＦＤＤ８１７のフレキシブルディスク、ＣＤＤ８１８のコンパクトディスク、磁気ディスク装置８２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等の記録媒体に記録される。また、データや信号は、バス８２５や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１８】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ８１１に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ８１０により読み出され、ＣＰＵ８１０により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【００１９】
図３は、実施の形態１におけるログ分析装置１０の構成図ブロックである。ログ分析装置１０は、前述のようにネットワークを介してログ収集装置２０と通信可能に接続している。また、ログ分析装置１０は指示部３０と接続している。
【００２０】
図３において、ログ収集装置２０は、ネットワークを監視してログを収集して出力する。ログ収集装置２０が収集するログは、例えば、ネットワーク状態に関するログであり、「アクセスログ」「エラーログ」等である。さらに具体的には、パケットログ、ファイアウォールログ、ＩＤＳ（Ｉｎｔｒｕｓｉｏｎ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ）アラートログなどであるが、これらに限定するものではない。ログ分析装置１０は、ログ収集装置２０が出力するログをネットワークを介して読み込み、読み込んだログを分析し、分析結果を表示装置やプリンタ装置などを介して通知する。
【００２１】
ログ分析装置１０は、ログ記憶部１０１、ログ集計部１０２、特徴量算出部１０３、特徴量域定義部１０４（特徴量領域生成部）、特徴量域記憶部１０５、特徴間距離算出部１０６、判定部１０７、通知部１０８を備える。また、ログ集計部１０２と特徴量算出部１０３とは、特徴量を抽出する抽出部１１０を構成する。
【００２２】
（１）ログ記憶部１０１は、ログ収集装置２０から出力されたログを保存する。
【００２３】
（２）ログ集計部１０２は、ログ記憶部１０１に蓄積されたデータから時系列データを作成し、数値行列を作成する。そして特徴量算出部１０３が、この行列に対して特異値分解処理を実行する。
時系列データを、
「ｘ１，ｘ２，ｘ３，ｘ４，・・・，ｘｍ−５，ｘｍ−４，ｘｍ−３，ｘｍ−２，ｘｍ−１，ｘｍ」
とすると、
ｘｎ（ｎ＝１〜ｍ）は、
例えば、ログが「パケットログ」であれば、ポート１３５で受けた１０分毎のパケット数や、１時間毎のＳＹＮフラグの立ったパケット数などである。あるいは、ログが「ファイアウォールログ」であれば、ｘｎ（ｎ＝１〜ｍ）は、ポート４４５宛にきて廃棄された単位時間当たりのパケット数などとなる。
【００２４】
ログ集計部１０２が生成する「数値行列」の成分は、上記に示した時系列データの数値である。ログ集計部１０２により作成される「数値行列」は、その分析視点によって異なるが、２つ例を以下に述べる。
【００２５】
図４〜図６を用いて、ログ集計部１０２による「数値行列」の作成の例を示す。
【００２６】
（数値行列作成の第１の例）
図４は、数値行列作成の第１の例を示す図である。図４では、時系列データ列を、
時系列データ列：
「ｘ１，ｘ２，ｘ３，ｘ４，・・・，ｘｍ−５，ｘｍ−４，ｘｍ−３，ｘｍ−２，ｘｍ−１，ｘｍ」
とする。
ｘｎ（ｎ＝１〜ｍ）は、例えば、ポート１３５の１０分毎に集計されたパケット数とする。１０分ごとの時点１〜時点６の６時点（１時間）を１つの時データ（各行）とする。そして、各行のｉｄ１〜ｉｄｍ−５において開始点を１時点（図４の例では１０分）づつずらし、「ｍ−５」行×６列の行列を生成する。これにより、１時間の期間の値の動きの変化を分析することができる。
【００２７】
（数値行列作成の第２の例）
図５、図６は、数値行列の作成の第２の例を示す図である。図５は、第２の例における時系列データを示す。図６は、特異値分解の対象期間と作成される数値行列（ｍ行×６列）を示す。例えば、ａｎ（ｎ＝１〜ｍ）は、地域１からの１時間毎に集計されたパケット数の時系列データであり、ｂｎ（ｎ＝１〜ｍ）は、地域２からの１時間毎に集計されたパケット数の時系列データであるとする。図６に示すように各時系列データ（行列では地域１〜地域６の６つの地域の時系列データを想定している）を各列に並べて行列を生成する。これにより、地域毎のパケット数のバランスの変化を分析することができる。
【００２８】
（３）特徴量算出部１０３は、ログ集計部１０２が出力した行列に対し特異値分解を行い、対象とする時系列データの特徴量を算出（抽出）する。なお、一つ時系列データでも、行列の作り方によって抽出される特徴量は違うものとなる。
【００２９】
（４）特徴量域定義部１０４は、任意の期間に対応する「特徴量域」を定義する。「特徴量域」（特徴量領域）とは、特徴量の集まった領域を意味する。以下の実施の形態では、分析手法として、「主成分分析」の一つの手法として「特異値分解」を用いている。主成分分析は、多くの変数のデータを、できるだけ情報の損失なしに少数個（ｍ個）の総合的指標（主成分）で表現する手法である。ｐ次元のデータを、ｍ次元（ｍ≦ｐ）のデータに縮約するという意味で、次元圧縮を行う手法として用いることもできる。特異値分解は、主成分分析に使う“値”を求める行列演算といえる。実施の形態１及び実施の形態２では、特異値分解を用いているが、主成分分析に使う“値”を求めるのには、固有値分解を用いても構わない。行列を特異値分解することによって、例えば、図４に示し行た列におけるｉｄ１，ｉｄ２，ｉｄ３，・・・それぞれの行に対する、第一主成分得点、第二主成分得点、第三主成分得点、・・・・が求まる。これらは、例えば、グラフにしたときの波の大きさであったりするが、何を表しているかは、データに拠る。なお、その主成分がどの程度元のデータの情報を保持しているかは、特異値分解の結果として主成分得点とは別に求まるが、第一主成分は一番特徴を現す指標、第二主成分は二番目に特徴を現す指標、・・・・といえる。通常、全体の８０％以上の特徴を現すところまで主成分を参照する。第ｎ主成分まで参照する場合、ｉｄ１の「特徴量」は、ｉｄ１の（第一主成分得点，二主成分得点，・・・，第ｎ主成分得点）からなる。図上にプロットする場合、特徴量はｎ次元の１点で表される。これが図３（ｄ）に示す“点”（黒丸）である（図３（ｄ）では、例示として２次元で示している）。上記「特徴量域」は、この複数の「特徴量」の点の集合を示す領域である。また、特徴量の点は、似た特徴を持つものは、ある一定の値の範囲に集約する。このため後述する「定常期間Ｐ」に対応する各点は、ある一定の範囲に集約する。特徴量域定義部１０４は、この集まり（領域）を、定常期間Ｐに対応する「定常域」と定義する。
【００３０】
（５）特徴量域記憶部１０５は、特徴量域を記憶する。
【００３１】
（６）特徴間距離算出部１０６は、特徴量域と判定対象データに対応する特徴量との距離を算出する。
【００３２】
（７）判定部１０７は、特徴間距離算出部１０６の結果を使い、判定対象データの状態を判定する。
【００３３】
（８）通知部１０８は、判定（分析）結果を通知する。
【００３４】
（動作の説明）
次に、図７、図８を参照してログ分析装置１０の動作を説明する。図７は、ログ分析装置１０の動作を説明するフローチャートである。図８は、特徴量（定常状態特徴量）と行列との対応関係を説明するため図である。
【００３５】
異常の判定対象となる観測データ（判定対象データ）がログ収集装置２０から出力されると、指示部３０は、定常期間を定義する「指示情報」をログ集計部１０２に送信する。この「指示情報」とは、定常期間Ｐの範囲の指定（予め所定の範囲が指定される。図３（ｂ）の定常期間Ｐ０）、ログから抽出するべきデータのデータ抽出条件（例えば、ＴＣＰパケットのどのフラグがたっているか、ポート番号など）である。ログ集計部１０２は、この「指示情報」を指示部３０から受信すると、受信した「指示情報」に従って、ログ記憶部１０１が記憶しているログのうち指定期間（定常状態の所定期間および異常の判定対象となる観測データが含まれる所定期間）のデータを取り出す（Ｓ１１）。
【００３６】
（行列の作成）
そして、抽出部１１０のログ集計部１０２は、指示された単位時間でデータを集計して時系列データを作成し、その時系列データから「数値行列」を作成する。図３（ｃ）が行列を示す。「指示された単位時間」とは、図４の行列に示したように１０分毎のような単位である。図３（ｂ）の時系列データは、時間ｔ２〜ｔｎ＋１が対象（定常期間Ｐ０と判定対象である観測データ）である。図３（ｃ）の行列において、例えば、「ａ＿ｔ２」は、時間ｔ２に対応する値を示している。なお、図３（ｃ）の行列は、図４に示した「第１の例」の方法で作成した行列である。
【００３７】
（定常状態特徴量の抽出）
抽出部１１０の特徴量算出部１０３は、ログ集計部１０２から出力された行列を受け取り、特異値分解処理を行い、その算出結果から特徴量（定常状態特徴量と判定対象データ特徴量）を算出（抽出）する。すなわち、特徴量算出部１０３は、ログ収集装置２０の収集したログからネットワークの定常期間Ｐ０（所定期間の定常状態）に対応する特徴量であるｎ次元（ｎは１以上の整数）の定常状態特徴量を複数抽出する。図３（ｄ）において定常域ＲＰを示す破線に囲まれた複数の黒丸のそれぞれが、「特徴量」（定常状態特徴量）である。複数の黒丸のそれぞれが、図３（ｃ）に示す行列の最後の１行を除く各行に対応する「特徴量」（定常状態特徴量）である。図８は、特徴量（定常状態特徴量）と行列との対応関係を説明するための図である。図８は、例えば、定常期間が時間ｔ１１〜ｔ２０、それぞれに対応する値（例えばパケット数）をａ１１（ｔ１１）〜ａ２０（ｔ２０）とする。また、次のａ２１が、新しい観測データであり、異常かの判定対象としている。この例では、行列の作り方は、図４に示した第１の例により作成してある。図８に示すように、特異値分解の結果算出される各行に対応する特徴量（定常状態特徴量）が、図３（ｄ）の定常域ＲＰ中の黒丸で表される。図３（ｃ）では対象となる行列において定常期間Ｐに対応する行は複数ある。よって、図３（ｄ）に示すように定常域ＲＰの中には複数の黒丸（定常状態特徴量）が存在することとなる。このように行列を特異値分解（行列演算）した結果、各行に対して、特徴量が求まり、各行に対応する特徴量を図示したものが図３（ｄ）に示す定常域ＲＰの中の複数の黒丸（定常状態特徴量）である。さらに、抽出部は、判定対象となる観測データに対する特徴量Ｆ１を抽出する。このように観測データでは、図８の行列において、ａ２１が入った最後の行が、異常かどうかの判定対象である。この行に対応する特徴量が、図３（ｄ）に示す「観測データ特徴量Ｆ１」の黒丸である。観測データ（判定対象データ）は、ログに含まれるデータであってネットワークの状態の判定に使用され、かつ定常期間Ｐ（定常状態の期間）よりも後の所定期間のデータである。以上のように「判定対象データ」に対応する特徴量である判定対象データ特徴量は、特徴量算出部１０３により、ｎ次元の点を示す座標として抽出される。（Ｓ１２）
【００３８】
特徴量域定義部１０４（特徴量領域生成部）は、定常期間Ｐ（定常状態における所定期間）に対応する特徴量域を定常域ＲＰ（特徴量領域）と定義する（Ｓ１３）。定義された定常域ＲＰは、特徴量域記憶部１０５に保存される。すなわち、特徴量域定義部１０４（特徴量領域生成部）は、特徴量算出部１０３が抽出した複数の特徴量（定常状態特徴量）から、複数の定常状態特徴量の分布する領域を示すｎ次元の定常域ＲＰ（特徴量領域）を生成する。
【００３９】
特徴間距離算出部１０６は、特徴量域定義部１０４が生成した定常域ＲＰと特徴量算出部１０３が抽出した「観測データ特徴量Ｆ１」（判定対象データ特徴量）との距離を算出する（Ｓ１４）。距離の算出には、定常域ＲＰの重心からの距離などを使う。
【００４０】
判定部１０７は、算出された距離を用い、観測データ特徴量Ｆ１が定常域ＲＰから乖離しているか否かにより、観測データが異常か否かを判定する（Ｓ１５）。異常の検知の判定結果（分析結果）は、通知部１０８を介して通知される。「乖離している」、「乖離していない」の判断条件は、図３（ｄ）において、「観測データ特徴量Ｆ１」が定常域ＲＰに含まれるか、含まれない、とうい条件である。例えば一例として、定常域ＲＰがあって、そこに含まれる点は、重心からの距離がある値以下であるといえる。その値を超えたか否かで、乖離しているか、否かを判定することができる。そして、判定部１０７は、乖離しているか、否かによりネットワークの状態（異常か否か）を判定する。
【００４１】
以上のように、実施の形態１のログ分析装置は、多次元のデータを最小の誤差で要約する（次元を削減する）ことが知られている特異値分解により得る特徴量を使って、ネットワークログの異常を検知するようにしているので、精度の高い異常検出を行うことができる。また、実施の形態１のログ分析装置は、定常域ＲＰと観測データ特徴量Ｆ１との距離に基づいてネットワークの状態を判定するので、精度の高い異常検出を行うことができる。
【００４２】
実施の形態２．
次に図９、図１０を用いて実施の形態２を説明する。以上の実施形態１では、比較対象となる定常期間Ｐに対する定常域ＲＰが固定（１つ）の場合について述べた。実施の形態２では、ネットワークの状況の変化に追随して、比較対象となる特徴量域を再定義していく実施形態を示す。
【００４３】
図９は、「定常期間Ｐ０と定常域ＲＰ０」、「定常期間Ｐ１と定常域ＲＰ１」、及び異常の判定対象となる観測データ（判定対象データ）の特徴量の関係を示している。
【００４４】
（動作の説明）
ネットワークの状況が変化すると、異常の判定対象となる観測データがログ収集装置２０から出力されたとき、指示部３０が、ログ集計部１０２に、比較対象の特徴量域（定常域）の再定義を指示する指示情報を送信する。ログ集計部１０２は、その指示情報に従って、実施の形態１の場合と同様に、図９に示す定常期間Ｐ０および定常期間Ｐ１および異常の判定対象となる観測データが含まれる所定期間のデータをログ記憶部１０１から取り出し、指示された単位時間でデータを集計し時系列データを作成し、その時系列データから数値行列を作成する。このとき、ログ集計部１０２に渡される指示情報のログからのデータ抽出条件は、ネットワークの状況が変化する前に定常域ＲＰ０を定義したときと同じ条件（ただし指定期間が定常期間Ｐ１である点は異なる）である。
【００４５】
抽出部１１０は、特徴量算出部１０３で、実施の形態１と同様に、ログ集計部１０２から出力された行列を受け取り、特異値分解処理を行い、その算出結果から定常期間Ｐ０に対応する特徴量（定常状態特徴量）、定常期間Ｐ１に対応する特徴量（定常状態特徴量）、および観測データに対する「観測データ特徴量Ｆ２」を算出する。図９では、ログの状態が実線に遷移した場合の観測データ特徴量を「観測データ特徴量Ｆ２−１」（丸に×印の記号）で示し、ログの状態が破線に遷移した場合の観測データ特徴量を「観測データ特徴量Ｆ２−２」（四角に×印の記号）で示している。ネットワークの状態は、「観測データ特徴量Ｆ２−１」と「観測データ特徴量Ｆ２−２」とのいずれかに遷移するものとする。すなわち、図９のグラフにおいて、実線と破線とは、定常期間Ｐ１の後、ネットワークの状態が実線のように値が変化する、あるいは、破線のように変化するという別個の２つのケースを想定している。そして、図９には、この２つのケースに対応する観測データ特徴量を示す点「Ｆ２−１」と「Ｆ２−２」とを記載している。
【００４６】
特徴量域定義部１０４は、実施の形態１と同様にして、定常期間Ｐ０に対応する特徴量域を定常域ＲＰ０、定常期間Ｐ１に対応する特徴量域を定常域ＲＰ１と定義する。定義された定常域ＲＰ０および定常域ＲＰ１は、特徴量域記憶部１０５に保存される。
【００４７】
特徴間距離算出部１０６は、実施の形態１と同様に、定常域ＲＰ１と「観測データ特徴量Ｆ２−１」（あるいは「観測データ特徴量Ｆ２−２」）との距離を算出する。算出方法は、実施の形態１と同様である。
【００４８】
判定部１０７は、実施の形態１と同様に、特徴間距離算出部１０６が算出した距離を用いて定常域ＲＰ１から観測データ特徴量Ｆ２が乖離しているかを見る。
【００４９】
次に、本実施の形態２の特徴点として、判定部１０７は、乖離していると判定した場合、その状態での観測データ特徴量Ｆ２（Ｆ２−１あるいはＦ２−２）と定常域ＲＰ０との距離関係を同時に算出する。そして、判定部１０７は、観測データ特徴量Ｆ２が、定常域ＲＰ１から離れていくと同時に、さらに、定常域ＲＰ０から離れていっているのか（Ｆ２−２が該当）、あるいは定常域ＲＰ０に近づくように定常域ＲＰ１から離れていっているのか（Ｆ２−１が該当）を見る。これにより、どのように定常域ＲＰ１から離れていっているのかで、新たな異常か、異常の収束が判定可能となる。このように、判定部１０７は、定常域ＲＰ０に接近するような動きで定常域ＲＰ１から観測データ特徴量Ｆ２が乖離した場合（Ｆ２−１）は、ネットワーク異常が収束状態にあると判定する。一方、さらに定常域ＲＰ０から乖離するような場合（Ｆ２−２）には、判定部１０７は、新たなネットワーク異常の検知であると判定する。異常の検知の判定結果（分析結果）は、通知部１０８を介して通知される。
【００５０】
図９では、比較対象の定常域が２つの場合について述べたが、次に３つ以上の定常域を記憶し、判定に使用する場合を説明する。図１０は、判定に使用する定常域が定常域ＲＰ０〜定常域ＲＰＮの「Ｎ＋１」個ある場合を示す図である。ログ分析装置１０の動作は図９の場合と同様であるので、簡単に説明する。
また、図１０に示す「観測データ特徴量Ｆ３−１」、「観測データ特徴量Ｆ３−２」
は図９に示した「観測データ特徴量Ｆ２−１」等と同様に、２通りの遷移を想定する場合の特徴量である。
【００５１】
（動作の説明）
異常の判定対象となる観測データ（最新の定常期間ＰＮよりも新しい期間のデータ）がログ収集装置２０から出力されると、定常期間Ｐ０、および定常期間Ｐ１、定常期間Ｐ２、・・・・、定常期間ＰＮ、および異常の判定対象となる観測データが含まれる所定期間のデータをログ記憶部１０１から取り出し、実施の形態１の方法で、定常期間Ｐ０に対応する特徴量域を定常域ＲＰ０と定義し、特徴量域記憶部１０５に保存する。
【００５２】
同様に実施の形態１の方法で、定常期間Ｐ１に対応する特徴量域を定常域ＲＰ１と定義し、特徴量域記憶部１０５に保存する。
【００５３】
同様に実施の形態１の方法で、定常期間Ｐ２、定常期間Ｐ３、・・・、定常期間ＰＮに対応する特徴量域を定常域ＲＰ２、定常域ＲＰ３、・・・、定常域ＲＰＮと定義し、特徴量域記憶部１０５に保存する。
【００５４】
さらに、実施の形態１の方法で、観測データに対する「観測データ特徴量Ｆ３」を抽出する。
【００５５】
以下の動作が特徴点である。特徴間距離算出部１０６は、最新の定常域ＲＰＮと「観測データ特徴量Ｆ３」との距離を算出する。判定部１０７は、算出された距離を用い、最新の定常域ＲＰＮから、「観測データ特徴量Ｆ３」が乖離しているかを見る。乖離していた場合、特徴量域記憶部１０５に保存されている他の特徴量域ＲＰ０、ＲＰ１、・・、ＲＰＮ−１との距離関係を同時に見て、どの定常域に近づいていっているかを判定し、図９で説明したのと同様に、観測データが、特徴量域ＲＰＦが期間が示すネットワークの状態から、どの状態へ向かって変化をしているかを見る。
【００５６】
この判定結果（分析結果）は、通知部１０８を介して通知される。
【００５７】
以上のように、ログ分析装置１０は、複数の過去の特徴量域との関係を見ることにより、異常検知だけでなく、ネットワークの状態の変化の方向を得ることができる。
【００５８】
以上の実施の形態で説明したログ分析装置１０は、ネットワークログから得た時系列データから抽出した特徴量を使いネットワーク上の異常検出を行なう。また、ネットワークの状況の変化に対応した定常域を再定義し、正常域に近づく形で剥離したか否かで、長期の異常状態の収束か、新たな異常かを判定する。よって、閾値を使用することなく、実データをもとに作成した基準でネットワークの状態を判断することができる。
【００５９】
実施の形態３．
実施の形態３は、実施の形態１及び実施の形態２のログ分析装置１０をネットワーク状態判定方法及びネットワーク状態判定プログラムとして把握した実施形態である。
【００６０】
図３に示したログ分析装置１０の抽出部１１０、特徴量域定義部１０４（特徴量領域生成部）、特徴間距離算出部１０６、判定部１０７等の一連の動作は互いに関連しており、これらの一連の動作をネットワーク状態判定方法として把握することができる。
【００６１】
図１１は、抽出部１１０等の一連の動作をネットワーク状態判定方法として把握した場合のフローチャートを示す。
（１）Ｓ１０１は、抽出部１１０が、ログ収集装置の収集したログからネットワークの所定期間の定常状態に対応する特徴量であるｎ次元（ｎは１以上の整数）の特徴量（定常状態特徴量）を複数抽出するとともに、ログに含まれるデータであってネットワークの状態の判定に使用され、かつ、定常状態の期間よりも後の所定期間のデータである観測データ（判定対象データ）に対応する特徴量である判定対象データ特徴量をｎ次元の点を示す座標として抽出するステップである。
（２）Ｓ１０２は、特徴量域定義部１０４（特徴量領域生成部）が、抽出部１１０が抽出した複数の特徴量（定常状態特徴量）から複数の定常状態特徴量の分布する領域を示すｎ次元の定常域（特徴量領域）を生成するステップである。
（３）Ｓ１０３は、特徴間距離算出部１０６が、特徴量域定義部１０４が生成した定常域と抽出部１１０が抽出した判定対象データ特徴量との距離を算出するステップである。
（４）Ｓ１０４は、判定部１０７が、特徴間距離算出部１０６が算出した距離に基づいてネットワークの状態を判定するステップである。
【００６２】
また、図３に示した抽出部１１０等の一連の動作は、一連の処理に置き換えることにより、ネットワーク状態判定プログラムの実施形態として把握することができる。
【００６３】
図１２は、抽出部１１０等の動作を、コンピュータであるログ分析装置に実行させる
ネットワーク状態判定プログラムの処理を示すフローチャートである。
（１）Ｓ２０１は、ログ収集装置の収集したログからネットワークの所定期間の定常状態に対応する特徴量であるｎ次元（ｎは１以上の整数）の特徴量（定常状態特徴量）を複数抽出するとともに、ログに含まれるデータであってネットワークの状態の判定に使用され、かつ、定常状態の期間よりも後の所定期間のデータである観測データ（判定対象データ）に対応する特徴量である判定対象データ特徴量をｎ次元の点を示す座標として抽出する処理である。
（２）Ｓ２０２は、抽出した複数の特徴量（定常状態特徴量）から複数の定常状態特徴量の分布する領域を示すｎ次元の定常域（特徴量領域）を生成する処理である。
（３）Ｓ２０３は、生成した定常域と抽出した判定対象データ特徴量との距離を算出する処理である。
（４）Ｓ２０４は、算出した距離に基づいて、ネットワークの状態を判定する処理である。
【００６４】
実施の形態３のネットワーク状態判定方法は、定常域と判定対象データ特徴量との距離に基づいてネットワークの状態を判定するので、精度の高い異常検出を行うことができる。
【００６５】
実施の形態３のネットワーク状態判定プログラムは、定常域と判定対象データ特徴量との距離に基づいてネットワークの状態を判定するので、精度の高い異常検出を行うことができる。
【００６６】
以上の実施の形態では、以下の手段を備えたネットワーク異常検出装置を説明した。
（ａ）ネットワークログを収集する手段
（ｂ）収集したログを記憶する手段
（ｃ）記憶手段によって保存されたログから時間軸に沿って変化する時系列データを生成し、その時系列データから特徴量を算出するための行列を作成する手段
（ｄ）行列に対し特異値分解を実施し、解から得た主成分得点より特徴量を算出する手段
（ｅ）定常時の期間の時系列データに対する特徴量を算出し、この特徴量域を定常域と定義する手段
（ｆ）特徴量域を記憶する手段
（ｇ）正常時の特徴量は一定の範囲に集約することを利用し、観測データの特徴量がこの範囲から乖離したことを検知することにより、ネットワークの異常を検知する手段。
（ｈ）観測データの特徴量と、定常域との距離を算出する手段
（ｉ）検知した結果を通知する通知手段
【００６７】
以上の実施の形態では、以下の手段を備えたネットワーク異常検出装置を説明した。
（ａ）ネットワークの特性は変化し続けるため、特性の変化に追随するために、定常域の特徴量域を算出し定常域とし、検知対象との比較対象の特徴量域を定義し直す手段
（ｂ）観測データの特徴量を、この定義し直した定常域の範囲から乖離したことを検知することにより、ネットワークの異常を検知する手段
【００６８】
以上の実施の形態では、以下の手段を備えたネットワーク異常検出装置を説明した。
（ａ）定常期間Ｐ０を元に抽出した特徴量域を定常域ＲＰ０とし、変化する定常期間Ｐ１をもとに抽出した特徴量域を定常域ＲＰ１とする手段
（ｂ）観測されたデータに対する特徴量が、定常域ＲＰ１からの乖離により異常を検知することに対し、定常域ＲＰ１から乖離した場合にその状態での定常域ＲＰ０との距離関係を同時に見て、定常域ＲＰ０に接近するような動きで定常域ＲＰから乖離した場合は収束状態にあると判定する。一方、定常域ＲＰ０からさらに乖離するような場合は、新たな不正アクセスを検知したと判定する手段
【００６９】
以上の実施の形態では、以下の手段を備えたネットワーク異常検出装置を説明した。
（ａ）ネットワークの特性は変化し続けるため、特性の変化に追随するために、定常域の特徴量域を算出し定常域とし、検知対象との比較対象の特徴量域を定義し直す手段
（ｂ）定常域を複数記憶する手段
（ｃ）観測データの特徴量を、最新の定常域の範囲から乖離したことを検知することにより、ネットワークの状態の変化を検知する手段
（ｄ）観測されたデータに対する特徴量が、最新の定常域から乖離した場合に、記憶された複数の定常域のうち、どの定常域に接近するかを判定する手段
【図面の簡単な説明】
【００７０】
【図１】実施の形態１におけるログ分析装置の外観を示す図。
【図２】実施の形態１におけるログ分析装置のハードウェア構成を示す図。
【図３】実施の形態１におけるログ分析装置のブロック図。
【図４】実施の形態１における数値行列作成の第１の例を示す図。
【図５】実施の形態１における数値行列作成の第２の例を示す図。
【図６】実施の形態１における数値行列作成の第２の例を示す図。
【図７】実施の形態１におけるログ分析装置の動作を示すフローチャート。
【図８】実施の形態１における特徴量と行列との対応関係を説明する図。
【図９】実施の形態２における「定常期間Ｐ０と定常域ＲＰ０」、「定常期間Ｐ１と定常域ＲＰ１」、及び異常の判定対象となる観測データの特徴量の関係を示す図。
【図１０】実施の形態２における判定に使用する定常域が定常域ＲＰ０〜定常域ＲＰＮの「Ｎ＋１」個ある場合を示す図。
【図１１】実施の形態３におけるネットワーク状態判定方法を示すフローチャート。
【図１２】実施の形態３におけるネットワーク状態判定プログラムを示すフローチャート。
【符号の説明】
【００７１】
１０  ログ分析装置、２０  ログ収集装置、３０  指示部、１０１  ログ記憶部、１０２  ログ集計部、１０３  特徴量算出部、１０４  特徴量域定義部、１０５  特徴量域記憶部、１０６  特徴間距離算出部、１０７  判定部、１０８  通知部、８００  コンピュータシステム、８１０  ＣＰＵ、８１１  ＲＯＭ、８１２  ＲＡＭ、８１３  表示装置、８１４  Ｋ／Ｂ、８１５  マウス、８１６  通信ボード、８１７  ＦＤＤ、８１８  ＣＤＤ、８１９  プリンタ装置、８２０  磁気ディスク装置、８２１  ＯＳ、８２２  ウィンドウシステム、８２３  プログラム群、８２４  ファイル群、８２５  バス、８３０  システムユニット。
【図１】
0004745881.tif 000002
【図２】
0004745881.tif 000003
【図３】
0004745881.tif 000004
【図４】
0004745881.tif 000005
【図５】
0004745881.tif 000006
【図６】
0004745881.tif 000007
【図７】
0004745881.tif 000008
【図８】
0004745881.tif 000009
【図９】
0004745881.tif 000010
【図１０】
0004745881.tif 000011
【図１１】
0004745881.tif 000012
【図１２】
0004745881.tif 000013