JP2010128673A - コンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラム - Google Patents

コンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラム Download PDF

Info

Publication number
JP2010128673A
JP2010128673A JP2008301043A JP2008301043A JP2010128673A JP 2010128673 A JP2010128673 A JP 2010128673A JP 2008301043 A JP2008301043 A JP 2008301043A JP 2008301043 A JP2008301043 A JP 2008301043A JP 2010128673 A JP2010128673 A JP 2010128673A
Authority
JP
Japan
Prior art keywords
abnormality
abnormality detection
feature amount
processing unit
score
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2008301043A
Other languages
English (en)
Inventor
Toshiaki Hirose
俊亮 広瀬
Kenji Yamanishi
健司 山西
Takayuki Nakada
貴之 中田
Ryohei Fujimaki
遼平 藤巻
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2008301043A priority Critical patent/JP2010128673A/ja
Publication of JP2010128673A publication Critical patent/JP2010128673A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】要素間の相関の存在および要素間の関係の時間変化を考慮しつつシステムの異常を検出し、その異常が発生した要素を特定することを可能とするコンピュータネットワーク等を提供する。
【解決手段】複数台のコンピュータが相互に接続されてなるコンピュータネットワーク1にあって、そのうち少なくとも1台が異常検出特定部116を有する異常検出特定装置11であり、この異常検出特定部が、他のコンピュータで取得された特徴量から入力データを作成するデータ入力処理部201と、入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する特徴量分割・圧縮処理部203と、圧縮データに基づいていずれの要素で異常が発生したかを特定する異常検出特定手段とを有する。
【選択図】図1

Description

本発明は、要素が相互に関連して動作するシステムにおける異常の検出およびその発生場所の特定に関し、特にコンピュータネットワークにおけるワーム、ウイルス、マルウェアなどのような不正プログラム、および特定のコンピュータの故障などに起因する異常の検出およびその発生場所の特定に関する。
たとえばコンピュータネットワークなどのように、接続された多数の要素が相互に関連して動作するシステムでは、その動作において発生した異常を早急に検出し、かつその異常の発生した要素を特定する必要がある。
その一つの例が、コンピュータネットワークにおいてワーム、ウイルス、マルウェアなどのような不正プログラム、あるいは特定のコンピュータの故障などに起因する異常の検出である。これらのような異常が発生した場合、該ネットワーク内の通信トラフィックの状況が急激に変化する。そのため、該ネットワークのノードであるコンピュータおよび各種ネットワーク機器間でのデータ送信量を時刻と共に記録し、そのデータを入力として通信トラフィックの変化から異常の発生を検出し、かつその異常の発生した要素(コンピュータ)を特定することを考える。
上記に関連する技術文献として、次に示すものがある。特許文献1には、データベースに格納された全ての特徴量から、類似した特徴量を検索するという技術が記載されている。特許文献2には、特徴ベクトルをより少ない次元のベクトルに変換してパターン認識を行うという技術が記載されている。特許文献3には、ネットワークの特徴量を成分に持つ行列の最大固有ベクトルを入力としてベクトルの通常の状態を学習し、通常のベクトルと大きく異なるものを異常として検出するという技術が記載されている。特許文献4には、高圧ガス圧力調整器の振動スペクトルの解析で、スペクトル全体の形状を学習して、差異を見出すという技術が記載されている。
また非特許文献1〜2には、行列演算で元の行列の性質をできるだけ保存したまま高次元行列を低次元行列へと圧縮する手法が記載されている。非特許文献1には密度行列くりこみ群(Density Matrix Renormalization Group)の方法、非特許文献2にはランチョス(Lanczos)法と呼ばれる方法が、それぞれ記載されている。いずれも、行列の固有値問題を数値計算で高速に解くために有用な方法である。
特開2001−052024号公報 特開2001−052115号公報 特開2005−216066号公報 特開2008−065393号公報 Steven R. White, ‘Density Matrix Formulation for Quantum Renormalization Groups.’, Physical Review Letters 69, 1992. Gene H. Golub and Charles F. Van Loan Matrix computations (3 rd ed.). 1996.
上述のように、ネットワーク上のコンピュータを要素として、各要素の異常度を算出することによってワームや故障などに起因する通信トラフィックの異常を検出し、その異常が発生した要素を特定するということにおいて、考慮すべきネットワークの性質として次に示す二点が挙げられる。
一つは、要素間に強い相関があり、その相関の結果として現れる構造があるという性質である。どの要素も均一に作用している場合もあれば、少数の特定の要素が重点的に作用しているという場合もある。これらの要素間の相関の結果現れる構造は、個々の要素に着目して観測するだけでは、発見することは困難である。
たとえば、あるコンピュータが故障したために、他のコンピュータがその故障したコンピュータを回避して通信を行うようになり、その結果としてその故障したコンピュータとその周囲のコンピュータとの間のトラフィックが一斉に減少する場合がある。このとき、各々のトラフィックが減少することは異常ではないが、一斉に減少することは特定のコンピュータの故障を示唆する異常である。従って、各々のトラフィックが異常であるか否かのみの判断では、この異常を検出することはできない。これを検出するには、トラフィックの一斉減少という複数の要素が関連した現象を捉える必要がある。
もう一つは、ネットワーク上のトラフィック量等は時刻と共に変化し、またネットワークの構造も時間と共に変化するという性質である。そのため、異常として検出されるべき状態も、時間によって異なる。たとえば、同一のトラフィック量であっても、深夜もしくは休日中の時間帯に観測されれば異常に多いトラフィック量であり、平日昼間であれば通常のトラフィック量であるという場合も存在する。
これらの2つの性質を考慮しつつ、各要素の異常度を見積もることは、従来技術では不可能である。特許文献3などのように、上記2つの性質を考慮に入れてネットワークの異常を検出する技術は存在する。しかしながら、この技術はネットワーク全体の異常度を見積もるものであり、要素毎の異常度を算出することはできない。他の特許文献1、2、4に記載の技術は、そもそも上記の目的に適用できるものではない。
要素間の相関を考慮しつつ各要素の異常度を算出するには、ネットワーク全体を表す特徴量から各要素の特徴を表す量を引き出す必要がある。この特徴量として、各成分がコンピュータ間のトラフィック量を表す行列などを利用することを考えた場合、そこから各要素の異常度を算出するには、各要素の特徴を表す量をこの行列を入力として構成する必要がある。これは数学的には元の高次元行列から低次元行列を作ること、即ち高次元行列を低次元行列へと圧縮するということである。
非特許文献1および2の技術は、元の行列の性質を保存したまま高次元行列を低次元行列へと圧縮する技術である。しかしながらこれらの文献に記載の技術は、いずれも行列の固有値問題を数値計算で高速に解く手法について述べているだけであり、一つの要素の性質をできるだけ反映して圧縮行列を作るという目的には適用できない。
本発明の目的は、要素間の相関の存在および要素間の関係の時間変化を考慮しつつシステムの異常を検出し、その異常が発生した要素を的確に特定することを可能とするコンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラムを提供することにある。
上記目的を達成するため、本発明に係るコンピュータネットワークは、複数台のコンピュータが相互に接続されてなるコンピュータネットワークであって、複数台のコンピュータのうち少なくとも1台が、ネットワーク全体の通信トラフィックを特徴量として検出する第1の特徴量取得部と、特徴量から異常の検出および特定に係る計算を行う異常検出特定部とを有する異常検出特定装置であり、複数台のコンピュータのうち異常検出特定装置でない他の全てのものが、特徴量を検出して異常検出特定部に転送する第2の特徴量取得部を有し、異常検出特定装置の異常検出特定部が、複数台のコンピュータを要素とし、第1および第2の特徴量取得部で取得された特徴量を行列もしくはテンソルとして入力データを作成するデータ入力処理部と、入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する特徴量分割・圧縮処理部と、圧縮データに基づいていずれの要素で異常が発生したかを特定する異常検出特定手段とを有することを特徴とする。
上記目的を達成するため、本発明に係る異常検出特定装置は、コンピュータネットワークに接続されたコンピュータからなる異常検出特定装置であって、コンピュータネットワークに接続された複数台のコンピュータを要素とし、コンピュータネットワークに接続された他のコンピュータで取得された通信トラフィックを行列もしくはテンソルとして入力データを作成するデータ入力処理部と、入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する特徴量分割・圧縮処理部と、圧縮データに基づいていずれの要素で異常が発生したかを特定する異常検出特定手段とを有することを特徴とする。
上記目的を達成するため、本発明に係る異常検出特定方法は、複数台のコンピュータが相互に接続されてなるコンピュータネットワークにあって、コンピュータネットワークに接続されたコンピュータで発生した異常を検出し、該異常の発生したコンピュータを特定する方法であって、複数台のコンピュータの特徴量取得部が、通信トラフィックを特徴量として取得し、特徴量取得部が、取得した特徴量をコンピュータネットワークに接続された異常検出特定装置に転送し、異常検出特定装置のデータ入力処理部が、複数台のコンピュータを要素とし、転送された特徴量を行列もしくはテンソルとして入力データを作成し、異常検出特定装置の特徴量分割・圧縮処理部が、入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割し、異常検出特定装置の異常検出特定手段が、圧縮データに基づいていずれの要素で異常が発生したかを特定することを特徴とする。
上記目的を達成するため、本発明に係る異常検出特定プログラムは、コンピュータネットワークに接続された異常検出特定装置が備えるコンピュータに、コンピュータネットワークに接続された複数台のコンピュータを要素とし、複数台のコンピュータで取得された通信トラフィックを行列もしくはテンソルとして入力データを作成する手順と、入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する手順と、圧縮データに基づいていずれの要素で異常が発生したかを特定する手順とを実行させることを特徴とする。
本発明は、上述したように入力データを、要素間の相関などを考慮しつつより次元数の少ない複数の圧縮データに分割するように構成したので、いずれの要素で異常が発生したかを特定する処理を迅速かつ的確に行うことが可能である。これによって、要素間の相関の存在および要素間の関係の時間変化を考慮しつつシステムの異常を検出し、その異常が発生した要素を的確に特定することを可能とするという、従来にない優れたコンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラムを提供することができる。
(第1の実施形態)
以下、本発明の実施形態の構成について添付図1〜4に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係るコンピュータネットワーク1は、要素同士が相関を持つシステムの一例であり、複数台のコンピュータ11〜1mが相互に接続されてなる。そのうちの1台であるコンピュータ11が、ネットワーク全体の通信トラフィック等の特徴量を検出する第1の特徴量取得部115と、特徴量から異常の検出および特定に係る計算を行う異常検出特定部116とを有する異常検出特定装置であり、異常検出特定装置でない他の全てのコンピュータ12〜1mが、特徴量を検出して異常検出特定部に転送する第2の特徴量取得部125を有し、異常検出特定装置(コンピュータ11)の異常検出特定部116が、複数台のコンピュータを要素とし、第1および第2の特徴量取得部で取得された特徴量を行列もしくはテンソルとして入力データを作成するデータ入力処理部201と、入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する特徴量分割・圧縮処理部203と、圧縮データに基づいていずれの要素で異常が発生したかを特定する異常検出特定手段とを有する。
ここでいう異常検出手段は、圧縮データに含まれる特徴量の分布を学習する特徴量分布学習処理部204a〜204nと、特徴量の分布から異常度スコアを算出するスコア計算処理部205a〜205nと、異常度スコアを用いていずれの要素で異常が発生したかを特定する異常検出特定処理部206とを有する。
また特徴量分割・圧縮処理部203は、入力データを複数のグループに分割するグラフ分割処理部211と、複数のグループに分割された入力データの特徴量の重みつきの和を取って特徴量を圧縮する行列圧縮処理部212a〜212nとを含む。ここで、グラフ分割処理部211が入力データを複数のグループに分割する処理は、異常検出特定部116が予め備える構造情報格納処理部202に格納されたコンピュータネットワークの構造に関する構造情報を利用して行ってもよいし、それ以外の情報を利用して行ってもよい。
そしてコンピュータ11〜1nの特徴量取得部115および125は、これらのコンピュータの相互間の通信トラフィックを特徴量として取得して異常検出部に転送するトラフィック取得部115および125である。
この構成を備えることにより、本実施形態は、要素間の相関の存在および要素間の関係の時間変化を考慮しつつシステムの異常を検出することが可能となる。
以下、これをより詳細に説明する。
図2は、本発明の実施形態に係るコンピュータネットワーク1の構成について示す説明図である。コンピュータネットワーク1には、m台(mは2以上の整数)のコンピュータ11〜1mが相互に接続されている。本実施形態では、これらのコンピュータ11〜1mをノード、そして各ノード間の通信トラフィックをリンクとしている。そして、それらのノードの中の任意の1つであるコンピュータ11に、他のコンピュータ12〜1mから通信トラフィックに関する情報が転送され、コンピュータ11上で後述する異常の検出および特定に係る計算が行われる。このため、コンピュータ11を異常検出特定装置ともいう。
図1は、図2で示したコンピュータ11および12〜1m内部の構成を示す説明図である。異常検出特定装置であるコンピュータ11は、プログラムを実行する主体であるCPU(Central Processing Unit)111と、CPU111が実行するプログラムが読み込まれて記憶されるRAM(Random Access Memory)112と、プログラムおよびデータが記憶される不揮発性の大容量記憶装置であるHDD(Hard Disk Unit)113と、コンピュータネットワーク1に接続して他のコンピュータ等とのデータ通信を行うネットワークアダプタ114とを備える通常のコンピュータ装置である。
またCPU111は、本実施形態に係るコンピュータプログラムであるトラフィック取得部115と、異常検出特定部116とを実行する。いずれも、HDD113からRAM112に読み出され、CPU111によって実行される。トラフィック取得部115は、ネットワークアダプタ114で行われる他のコンピュータとの通信トラフィックを検出し、異常検出特定部116はトラフィック取得部115によって取得された通信トラフィックから異常の検出および特定に係る計算を行う。
異常検出特定装置ではないコンピュータ12〜1mも、コンピュータ11と同じく、CPU121と、RAM122と、HDD123と、ネットワークアダプタ124とを備える通常のコンピュータ装置である。これら各部の機能は、コンピュータ11の同名の構成部と等しい。図1にはコンピュータ12のみを示しているが、図1に示していないコンピュータ13〜1mの構成もコンピュータ12と同一である。
CPU121は、本実施形態に係るコンピュータプログラムであるトラフィック取得部125を実行する。トラフィック取得部125は、HDD123からRAM112に読み出され、CPU121によって実行される。トラフィック取得部125は、ネットワークアダプタ124で行われる他のコンピュータとの通信トラフィックを検出し、検出された通信トラフィックについての情報をコンピュータ11の異常検出特定部116に転送する。
コンピュータ11の異常検出特定部116は、コンピュータ12〜1mのトラフィック取得部125から転送された通信トラフィックに係る情報を、自らのトラフィック取得部115が取得した情報と共に利用して、異常の検出および特定に係る計算を行うのである。
コンピュータ12〜1mは、各々サーバであってもクライアントであってもよい。トラフィック取得部125は、該コンピュータで行われる他の処理と並行して、通信トラフィックの検出および検出された通信トラフィックについての情報の転送を行う。異常検出特定装置であるコンピュータ11もまた、サーバであってもクライアントであってもよいし、ネットワーク管理専門の機器としてもよい。またトラフィック取得部115および異常検出特定部116による処理をコンピュータ11で行われる他の処理と並行して行うものとしてもよい。
(異常度スコアの算出と異常の検出・特定)
図3は、図1に示した異常検出特定部116の構成をより詳しく説明する説明図である。異常検出特定部116は、システム全体の特徴量から入力データを作成するデータ入力処理部201と、システムの構造に関する情報を格納する構造情報格納処理部202と、システム全体の特徴量と各頂点の重要度とを用いて各要素に関する特徴量を計算する特徴量分割・圧縮処理部203と、計算された特徴量および更新された確率密度から第1の異常度スコアを算出する特徴量分布学習処理部204a〜204nと、要素毎に学習された第1のスコアの分布と圧縮された特徴量とから第2の異常度スコアを算出するスコア計算処理部205a〜205nと、計算された第2の異常度スコアが異常であるか否かを判別する異常検出特定処理部206とからなる。
特徴量分割・圧縮処理部203は、入力データを後述のようにn個に分割して計算し、入力データを計算して得られたn個の圧縮データを特徴量分布学習処理部204a〜204nへと送る。特徴量分布学習処理部204a〜204nおよびスコア計算処理部205a〜205nは、いずれも特徴量分割・圧縮処理部203で分割されて得られた圧縮データの数であるn個存在する。
図3に示すデータ入力処理部201は、トラフィック取得部115および125で取得されたシステム全体の特徴量、システムの構造、および要素毎の重要度から入力データを作成する。ここでいうシステム全体の特徴量とは、例えば、ノード(ここではコンピュータ11〜1n)間のトラフィック量(ノードペアの数だけ存在する)の集合や、ノード間の接続の有無を二進数で表したもの(これもノードペアの数だけ存在する)の集合である。
システムの構造に関する情報とは、各コンピュータから見て各々のコンピュータが物理的に近いか遠いか、あるいは各コンピュータがどのコンピュータとリンクされていてどのコンピュータとリンクされていないのか、などのような情報である。そして、要素毎の重要度とは、各々のコンピュータが故障した場合の被害の大きさなどのような情報である。
それらの情報から作成される入力データは、時刻と共に逐次的に入力されるものでもよいし、もしくはそのデータが発生した時刻に関する情報が付与されているものでもよい。以後、データ入力処理部201で作成される入力データは、システムの構造に関する情報および要素毎の重要度に関する情報を含まず、システム全体の特徴量のみによって構成されるものとする。また、作成される入力データは行列型でなくてもよい(たとえばテンソル型でもよい)が、以下では入力データが行列型であるものとして説明する。
なお、データ入力処理部201で作成された入力データがシステムの構造に関する情報および要素毎の重要度に関する情報を含む場合、それらの情報は図3に示す構造情報格納処理部202に記憶される。
図3に示す特徴量分割・圧縮処理部203は、データ入力処理部201が作成した入力データに含まれるシステム全体の特徴量と各頂点の重要度とを用いて各要素に関する特徴量を計算し、この入力データを複数のグループに分割し、分割毎に各要素の重要度を重みとして重みつきの和を取る。分割は各要素の特徴が反映されるような分割法で行う。
特徴量分割・圧縮処理部203は、入力データをn個に分割して計算し、その結果として得られた重みつきの和の組(圧縮データ)をその要素を表す特徴量として特徴量分布学習処理部204a〜204nへと送る。なお、特徴量分布学習処理部204a〜204nも、特徴量分割・圧縮処理部203で分割されて得られた圧縮データの数(n個)と同数に、特徴量をグループに分割して処理する。
ここで計算される要素毎の特徴量は、システム全体の特徴量を用いて算出されるので、要素間の相関が考慮される。また、要素の特徴を考慮した分割をするので、要素を表す量になっている。従って、要素間の相関を考慮に入れた各要素の特徴量になっている。
コンピュータネットワーク1の異常検出特定で、一つの要素が一つのコンピュータを表し、コンピュータ間のトラフィックを成分に持つ行列がネットワーク全体の特徴量として与えられている場合を考える。ここで、時刻tに入力された行列(システム全体の特徴量=ネットワーク全体の特徴量)をA(t)、行列の次元(要素の数=コンピュータの数)をn、A(t)のij成分をAij(t)とする。
図4は、図3に示した特徴量分割・圧縮処理部203の内部構成をより詳しく示した説明図である。特徴量分割・圧縮処理部203は、グラフ分割処理部211と、行列圧縮処理部212a〜212nとを有する。
グラフ分割処理部211は、要素(コンピュータ)を幾つかのグループに分割する。分割の際にはある一つの要素の性質が反映されるような分割法を用いる。これを要素の数だけ(n回)実行する。グループの数をNc(n=Nc)とし、要素iの性質を反映させた分割の結果できた要素集合を下式で表す。
Figure 2010128673
ここでいう「要素iの性質を反映させた分割」とは、具体的には例えば以下に説明する分割法を用いることができる。
構造情報格納処理部202に記憶されたシステムの構造の情報を利用可能である場合は、それを用いることができる。例えば、コンピュータ間の物理的な距離の情報から、Nc=3として、下式で示される3群に分割することができる。
Figure 2010128673
構造情報格納処理部202に記憶されたシステムの構造の情報を利用できない場合は、システム全体の特徴量A(t)を用いて分割できる。例えば、Aij(t)の値に応じて、Nc=3として、下式で示される3群に分割することができる。b1およびb2は、ユーザが任意に決定することのできる値であり、分割のしかたを決めるパラメータである。この分割は、コンピュータiとのトラフィックが多い順にコンピュータをグループ分けすることに相当する。
Figure 2010128673
上記で示した二つの例では何れもNc=3となっているが、Ncは必ずしも3である必要はない。
行列圧縮処理部212a〜212nは、グラフ分割処理部211で求められた要素の分割結果と頂要素毎の重要度とを用いて、それらの要素ごとにシステム全体の特徴量の重みつきの和を取る。ここで要素iの重要度をψi(t)、重要度を並べたベクトルψ(t)を下式で定義する。
Figure 2010128673
要素毎の重要度が与えられている場合には、それをそのまま数4に当てはめてψ(t)を求めるとよい。要素毎の重要度が与えられていない場合には、システム全体の特徴量A(t)を用いて、重要度を算出する。例えば、下式にあるように固有方程式から求めることができる。ただし、λ(t)はA(t)の最大固有値であり、ψ(t)はそれに対応する固有ベクトルである。
Figure 2010128673
行列圧縮処理部212a〜212nは、以上で得られた要素毎の重要度と要素の分割結果とを用いて、要素毎にシステム全体の特徴量の重み付きの和を計算する。具体的には、例えば下式にあるようにして計算することができる。
Figure 2010128673
上式で計算される重みつきの特徴量は要素毎に分割の数に応じた数だけある。上記の例ではNcの2乗個の数が要素毎に計算され、第kl成分が数6の左辺で示されるaikl(t)である行列ai(t)が、要素iに関して計算されたということになる。行列ai(t)は行列A(t)の特徴に基いて作られた低次元行列なので、行列A(t)を圧縮して作った行列であるともいえる。そこで、行列ai(t)を圧縮された特徴量ということにする。こうして算出された圧縮された特徴量ai(t)は、圧縮された特徴量分布学習処理部204a〜204nに送られる。
圧縮された特徴量分布学習処理部204a〜204nでは、圧縮された特徴量ai(t)の分布を学習する。分布の学習は要素毎に別々に行う。圧縮された特徴量ai(t)が行列の場合、例えば時刻tにおいてaiの確率密度分布として下式に示す行列変数の正規分布を用いることができる。
Figure 2010128673
ここでΣi,tとψi,tはaiの分散を表す行列型のパラメータで、Mi,tはaiの平均を表す行列型のパラメータである。これらのパラメータをまとめてθi,tと書く。圧縮された特徴量分布学習処理部204a〜204nは、このような確率分布をai(t)が入力される度に逐次的に更新する。
スコア計算処理部205a〜205nは、圧縮された特徴量分布学習処理部204a〜204nで要素毎に学習されたaiの分布と、圧縮された特徴量ai(t)とから、時刻tにおける要素iの異常度スコアSi(t)を例えば下式によって計算する。
Figure 2010128673
異常検出特定処理部206は、スコア計算処理部205a〜205nで算出された各要素の異常度スコアを基にしてシステム異常を検出する。異常度スコアの情報を基にシステムの異常を検出する方法としては、例えば異常度スコアが予め設定された閾値を超えた要素をユーザに提示するようにしてもよい。また、異常度スコアが予め設定された閾値を超えた要素の数が一定数を超えたら、システム全体が異常になったと判断してその旨をユーザに提示するようにしてもよい。
(第1の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本実施形態に係る動作は、複数台のコンピュータ11〜1mが相互に接続されてなるコンピュータネットワーク1にあって、コンピュータネットワーク1に接続されたコンピュータ11〜1mで発生した異常を検出し、該異常の発生したコンピュータを特定する方法であって、複数台のコンピュータ11〜1mの特徴量取得部(トラフィック取得部115および125)が、通信トラフィック等の特徴量を取得し、この特徴量取得部が取得した特徴量をコンピュータネットワークに接続された異常検出特定装置(コンピュータ11)に転送し、異常検出特定装置のデータ入力処理部201が、複数台のコンピュータを要素とし、転送された特徴量を行列もしくはテンソルとして入力データを作成し、異常検出特定装置の特徴量分割・圧縮処理部203が、入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割し、異常検出特定装置の異常検出特定手段204〜206が、圧縮データに基づいていずれの要素で異常が発生したかを特定する。
異常検出特定手段204〜206が圧縮データに基づいていずれの要素で異常が発生したかを特定する手順が、異常検出特定装置の特徴量分布学習処理部204a〜204nが、圧縮データに含まれる特徴量の分布を学習する手順と、異常検出特定装置のスコア計算処理部205a〜205nが、特徴量の分布から異常度スコアを算出する手順とを設け、これによって異常検出特定装置の異常検出特定処理部206が異常度スコアを用いていずれの要素で異常が発生したかを特定する。
さらに異常検出特定装置11のグラフ分割処理部211が、入力データを複数のグループに分割する手順と、異常検出特定装置11の行列圧縮処理部212a〜212nが、複数のグループに分割された入力データの特徴量の重みつきの和を取って特徴量を圧縮する手順とが設けられている。
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するコンピュータ11〜1nに実行させるようにしてもよい。
この動作により、本実施形態は以下のような効果を奏する。
数8で示した異常度スコアSi(t)は入力データが通常のデータとどれだけ異なっているかを表す量で、値が大きい程通常は現れない異常なデータであることに対応する。例えば、入力をネットワークのコンピュータ間の通信量、分割をコンピュータ間の物理的な距離に基づいて行った場合、ai(t)の異常度スコアが高いということは、要素i(コンピュータ)の近くのコンピュータのトラフィックが同時に異常に多くなった等といった通常の状態とは異なった状態が要素iを中心として現れたにことに対応する。
従って、上記の例で異常度スコアSi(t)を異常検出特定処理部206によって監視すれば、ネットワーク上の通信の状態の異常の発生原因と見られるコンピュータを特定することが可能となる。
(第2の実施形態)
本発明の第2の実施形態は、ネットワークおよびハードウェアの構成、さらにソフトウェアの大まかな構成は前述の図1〜4と同一である。第2の実施形態が前述の第1の実施形態と異なる点は、特徴量分布学習処理部204a〜204nが圧縮データに含まれる特徴量の時間遷移に対する確率密度分布を学習する特徴量分布学習機能部301a〜301nと、学習された確率密度分布から圧縮データに含まれる特徴量が通常の出現パターンからどの程度外れているかを外れ値スコアとして算出する移動平均計算機能部302a〜302nと、外れ値スコアの時間遷移に対する確率密度を学習する移動平均分布学習機能部303a〜303nとを含み、スコア計算処理部304a〜304nが外れ値スコアの時間遷移に対する確率密度から異常度スコアを算出するという点にある。
この構成を備えることにより、本実施形態は、特徴量の急激な変化をより的確に検出することが可能となる。
以下、これをより詳細に説明する。
本発明の第1の実施形態では、圧縮された特徴量ai(t)がそれまで学習された通常のパターンからどれだけ外れているかの度合いで要素iの異常度を定義した。それに対して、以下で説明する第2の実施形態では、圧縮された特徴量ai(t)がどれだけ急激に変化したかで要素iの異常度を定義している。
図5は、本発明の第2の実施形態における、図1に示した異常検出特定部116の構成をより詳しく説明する説明図である。本実施形態では、圧縮された特徴量分布学習処理部204a〜204nはさらに、圧縮された特徴量ai(t)の時間遷移の確率密度分布を学習する特徴量分布学習機能部301a〜301n、学習された確率密度分布から圧縮された特徴量ai(t)が通常の出現パターンからどの程度外れているかを示す外れ値スコアの移動平均を計算する移動平均計算機能部302a〜302n、外れ値スコアの移動平均の時間遷移に対する確率密度を学習する移動平均分布学習機能部303a〜303nといった各機能部に分かれる。
また、スコア計算処理部304a〜304nの機能も、後述のように第1の実施形態の同名の処理部とは若干異なるので、第1の実施形態とは異なる参照番号を付けている。それら以外の各処理部は、図3〜4で示した第1の実施形態と同一の構成および動作を行うので、名称および参照番号は全て同一とする。
特徴量分布学習機能部301a〜301nは、下式で示す圧縮された特徴量ai(t)の時間遷移の確率密度分布を学習する。
Figure 2010128673
移動平均計算機能部302a〜302nは、特徴量分布学習機能部301a〜301nで学習された確率密度分布から、圧縮された特徴量ai(t)が通常の出現パターンからどれだけ外れているかを表す外れ値スコアを計算する。外れ値スコアOi(t)は、値が大きいほど通常の出現パターンから外れていることを表す数値であり、たとえば下式で示すようにして計算できる。
Figure 2010128673
次に移動平均計算機能部302a〜302nは、外れ値スコアOi(t)の移動平均yi(t)を下式で示すようにして計算する。ここでωはウィンドウの大きさを表す。ここで計算されるyi(t)は外れ値スコアの時間的な密集度を表す量である。
Figure 2010128673
移動平均分布学習機能部303a〜303nは、下式で示すyi(t)の時間遷移の確率密度分布を学習する。
Figure 2010128673
スコア計算処理部304a〜304nは、数12で示した移動平均の時間遷移の確率密度分布を用いて下式のようにして求めた移動平均yi(t)の外れ値スコアを、要素iの異常度S’i(t)として算出する。
Figure 2010128673
このS’i(t)はバースト的な急激な変化が起こっている場合に高い値をとる性質がある。従って、このS’i(t)を異常度スコアとして用いれば、ai(t)の急激な変化を要素iの異常として判断することができる。
(第2の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本実施形態に係る動作は、第1の実施形態で説明した動作で、異常検出特定装置(コンピュータ11)の特徴量分割・圧縮処理部203が入力データを複数の圧縮データに分割する手順が、圧縮データに含まれる特徴量の時間遷移に対する確率密度分布を学習する手順と、学習された確率密度分布から圧縮データに含まれる特徴量が通常の出現パターンからどの程度外れているかを外れ値スコアとして算出する手順と、外れ値スコアの時間遷移に対する確率密度を学習する手順とを含み、スコア計算処理部205a〜205nが外れ値スコアの時間遷移に対する確率密度から異常度スコアを算出する。
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するコンピュータ11〜1nに実行させるようにしてもよい。
この動作により、本実施形態は以下のような効果を奏する。
第2の実施形態は、第1の実施形態の特徴に加えて、第1の実施形態よりもai(t)の急激な変化をより的確に検出できるという効果を得ることができる。
(実施形態の拡張)
上記の第1および第2の実施形態では、コンピュータネットワークで相互に接続されている各々のコンピュータ間の通信トラフィックを特徴量として、ワームおよびウイルスなどの発生・蔓延、および特定のコンピュータの故障などに起因する異常の検出を行うものとした。しかしながら、本発明の適用可能な範囲はそれだけではない。多数のノードが相互に接続された系で、それらのノードの相互間の関係を示す量であれば、ここでいう「(ネットワーク全体の)特徴量」と捉えることができる。
たとえば、機械の故障診断の例を考えると、機械の中の1つのパーツ(自動車ならエンジン、トランスミッションなど)を1つのノード、該パーツの出力間の相関の強さ(自動車ならエンジンの出力と他のパーツの電圧との間の相関係数)を「特徴量」とみなすことができる。ここに本発明の手法を適用すれば、該機械の故障の発生箇所を特待するために利用することができる。
また、国際経済の状態の分析の例を考えると、1つの国を1つのノード、各国の経済指標(株価指数、為替レートなど)の相関の強さを「特徴量」とみなすことができる。ここに本発明の手法を適用すれば、株価指数間の関係が全体的に通常と異なり始めた場合を異常とし、そのような異常の発生原因の特定に利用することができる。
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
コンピュータネットワークにおけるワーム、ウイルス、マルウェアなどのような不正プログラム、および特定のコンピュータの故障などに起因する通信トラフィックの異常の検出に適用できる。これ以外にも、前述のように多数のノードが相互に接続された系で、それらのノードの相互間の関係を示す量を特徴量として捉えることのできる系全般に適用することができる。
本発明の実施形態に係るコンピュータ内部の構成を示す説明図である。 本発明の実施形態に係るコンピュータネットワークの構成について示す説明図である。 図1に示した異常検出特定部の構成をより詳しく説明する説明図である。 図3に示した特徴量分割・圧縮処理部の内部構成をより詳しく示した説明図である。 本発明の第2の実施形態における、図1に示した異常検出特定部の構成をより詳しく説明する説明図である。
符号の説明
1 コンピュータネットワーク
11、12 コンピュータ
111、121 CPU
112、122 RAM
113、123 HDD
114、124 ネットワークアダプタ
115、125 トラフィック取得部
116 異常検出特定部
201 データ入力処理部
202 構造情報格納処理部
203 特徴量分割・圧縮処理部
204a、204n 特徴量分布学習処理部
205a、205n、304a、304n スコア計算処理部
206 異常検出特定処理部
211 グラフ分割処理部
212a、212n 行列圧縮処理部
301a、301n 特徴量分布学習機能部
302a、302n 移動平均計算機能部
303a、303n 移動平均分布学習機能部

Claims (14)

  1. 複数台のコンピュータが相互に接続されてなるコンピュータネットワークであって、
    前記複数台のコンピュータのうち少なくとも1台が、前記ネットワーク全体の通信トラフィックを特徴量として検出する第1の特徴量取得部と、前記特徴量から異常の検出および特定に係る計算を行う異常検出特定部とを有する異常検出特定装置であり、
    前記複数台のコンピュータのうち前記異常検出特定装置でない他の全てのものが、前記特徴量を検出して前記異常検出特定部に転送する第2の特徴量取得部を有し、
    前記異常検出特定装置の前記異常検出特定部が、前記複数台のコンピュータを要素とし、前記第1および第2の特徴量取得部で取得された特徴量を行列もしくはテンソルとして入力データを作成するデータ入力処理部と、前記入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する特徴量分割・圧縮処理部と、前記圧縮データに基づいていずれの前記要素で異常が発生したかを特定する異常検出特定手段とを有することを特徴とするコンピュータネットワーク。
  2. 前記異常検出特定手段が、前記圧縮データに含まれる特徴量の分布を学習する特徴量分布学習処理部と、前記特徴量の分布から異常度スコアを算出するスコア計算処理部と、前記異常度スコアを用いていずれの前記要素で異常が発生したかを特定する異常検出特定処理部とを有することを特徴とする、請求項1に記載のコンピュータネットワーク。
  3. 前記特徴量分割・圧縮処理部が、前記入力データを複数のグループに分割するグラフ分割処理部と、前記複数のグループに分割された入力データの特徴量の重みつきの和を取って前記特徴量を圧縮する行列圧縮処理部とを含むことを特徴とする、請求項1に記載のコンピュータネットワーク。
  4. 前記異常検出特定部が、前記コンピュータネットワークの構造に関する構造情報を予め格納する構造情報格納処理部を有し、
    前記グラフ分割処理部が、前記構造情報に基づいて前記入力データを複数のグループに分割することを特徴とする、請求項3に記載のコンピュータネットワーク。
  5. 前記特徴量分布学習処理部が、前記圧縮データに含まれる特徴量の時間遷移に対する確率密度分布を学習する特徴量分布学習機能部と、学習された前記確率密度分布から前記圧縮データに含まれる特徴量が通常の出現パターンからどの程度外れているかを外れ値スコアとして算出する移動平均計算機能部と、前記外れ値スコアの時間遷移に対する確率密度を学習する移動平均分布学習機能部とを含み、
    前記スコア計算処理部が前記外れ値スコアの時間遷移に対する確率密度から前記異常度スコアを算出することを特徴とする、請求項2に記載のコンピュータネットワーク。
  6. コンピュータネットワークに接続されたコンピュータからなる異常検出特定装置であって、
    前記コンピュータネットワークに接続された複数台のコンピュータを要素とし、前記コンピュータネットワークに接続された他のコンピュータで取得された通信トラフィックを特徴量として行列もしくはテンソルとして入力データを作成するデータ入力処理部と、
    前記入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する特徴量分割・圧縮処理部と、
    前記圧縮データに基づいていずれの前記要素で異常が発生したかを特定する異常検出特定手段と
    を有することを特徴とする異常検出特定装置。
  7. 前記異常検出特定手段が、
    前記圧縮データに含まれる特徴量の分布を学習する特徴量分布学習処理部と、
    前記特徴量の分布から異常度スコアを算出するスコア計算処理部と、
    前記異常度スコアを用いていずれの前記要素で異常が発生したかを特定する異常検出特定処理部と
    を有することを特徴とする、請求項6に記載の異常検出特定装置。
  8. 前記特徴量分割・圧縮処理部が、前記入力データを複数のグループに分割するグラフ分割処理部と、前記複数のグループに分割された入力データの特徴量の重みつきの和を取って前記特徴量を圧縮する行列圧縮処理部とを含むことを特徴とする、請求項6に記載の異常検出特定装置。
  9. 前記分布学習処理部が、前記圧縮データに含まれる特徴量の時間遷移に対する確率密度分布を学習する特徴量分布学習機能部と、学習された前記確率密度分布から前記圧縮データに含まれる特徴量が通常の出現パターンからどの程度外れているかを外れ値スコアとして算出する移動平均計算機能部と、前記外れ値スコアの時間遷移に対する確率密度を学習する移動平均分布学習機能部とを含み、
    前記スコア計算処理部が前記外れ値スコアの時間遷移に対する確率密度から前記異常度スコアを算出することを特徴とする、請求項7に記載の異常検出特定装置。
  10. 複数台のコンピュータが相互に接続されてなるコンピュータネットワークにあって、前記コンピュータネットワークに接続されたコンピュータで発生した異常を検出し、該異常の発生したコンピュータを特定する方法であって、
    前記複数台のコンピュータの特徴量取得部が、通信トラフィックを特徴量として取得し、
    前記特徴量取得部が、取得した前記特徴量を前記コンピュータネットワークに接続された異常検出特定装置に転送し、
    前記異常検出特定装置のデータ入力処理部が、前記複数台のコンピュータを要素とし、前記転送された特徴量を行列もしくはテンソルとして入力データを作成し、
    前記異常検出特定装置の特徴量分割・圧縮処理部が、前記入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割し、
    前記異常検出特定装置の異常検出特定手段が、前記圧縮データに基づいていずれの前記要素で異常が発生したかを特定する
    ことを特徴とする異常検出特定方法。
  11. 前記異常検出特定手段が前記圧縮データに基づいていずれの前記要素で異常が発生したかを特定する手順が、
    前記異常検出特定装置の特徴量分布学習処理部が、前記圧縮データに含まれる特徴量の分布を学習する手順と、
    前記異常検出特定装置のスコア計算処理部が、前記特徴量の分布から異常度スコアを算出する手順とを設け、
    これによって前記異常検出特定装置の異常検出特定処理部が前記異常度スコアを用いていずれの前記要素で異常が発生したかを特定することを特徴とする、請求項10に記載の異常検出特定方法。
  12. 前記異常検出特定装置のグラフ分割処理部が、前記入力データを複数のグループに分割する手順と、
    前記異常検出特定装置の行列圧縮処理部が、前記複数のグループに分割された入力データの特徴量の重みつきの和を取って前記特徴量を圧縮する手順とを設けたことを特徴とする、請求項10に記載の異常検出特定方法。
  13. 前記異常検出特定装置の前記特徴量分割・圧縮処理部が前記入力データを複数の圧縮データに分割する手順が、前記圧縮データに含まれる特徴量の時間遷移に対する確率密度分布を学習する手順と、学習された前記確率密度分布から前記圧縮データに含まれる特徴量が通常の出現パターンからどの程度外れているかを外れ値スコアとして算出する手順と、前記外れ値スコアの時間遷移に対する確率密度を学習する手順とを含み、
    前記スコア計算処理部が前記外れ値スコアの時間遷移に対する確率密度から前記異常度スコアを算出することを特徴とする、請求項11に記載の異常検出特定方法。
  14. コンピュータネットワークに接続された異常検出特定装置が備えるコンピュータに、
    前記コンピュータネットワークに接続された複数台のコンピュータを要素とし、前記複数台のコンピュータで取得された通信トラフィックから行列もしくはテンソルとして入力データを作成する手順と、
    前記入力データをより次元数の少ない行列もしくはテンソルである複数の圧縮データに分割する手順と、
    前記圧縮データに基づいていずれの前記要素で異常が発生したかを特定する手順と
    を実行させることを特徴とする異常検出特定プログラム。
JP2008301043A 2008-11-26 2008-11-26 コンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラム Withdrawn JP2010128673A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008301043A JP2010128673A (ja) 2008-11-26 2008-11-26 コンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008301043A JP2010128673A (ja) 2008-11-26 2008-11-26 コンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラム

Publications (1)

Publication Number Publication Date
JP2010128673A true JP2010128673A (ja) 2010-06-10

Family

ID=42329035

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008301043A Withdrawn JP2010128673A (ja) 2008-11-26 2008-11-26 コンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラム

Country Status (1)

Country Link
JP (1) JP2010128673A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015005086A (ja) * 2013-06-20 2015-01-08 日本電気株式会社 データ管理装置及びデータ分析装置
WO2015141221A1 (ja) * 2014-03-20 2015-09-24 日本電気株式会社 情報処理装置及び異常検知方法
CN112262353A (zh) * 2018-06-11 2021-01-22 松下知识产权经营株式会社 异常解析装置、制造系统、异常解析方法以及程序

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015005086A (ja) * 2013-06-20 2015-01-08 日本電気株式会社 データ管理装置及びデータ分析装置
WO2015141221A1 (ja) * 2014-03-20 2015-09-24 日本電気株式会社 情報処理装置及び異常検知方法
WO2015140841A1 (ja) * 2014-03-20 2015-09-24 日本電気株式会社 異常を検知する情報処理装置及び異常検知方法
CN106104497A (zh) * 2014-03-20 2016-11-09 日本电气株式会社 信息处理装置和异常检测方法
JPWO2015141221A1 (ja) * 2014-03-20 2017-04-06 日本電気株式会社 情報処理装置及び異常検知方法
CN106104497B (zh) * 2014-03-20 2019-07-16 日本电气株式会社 信息处理装置和异常检测方法
US10789118B2 (en) 2014-03-20 2020-09-29 Nec Corporation Information processing device and error detection method
CN112262353A (zh) * 2018-06-11 2021-01-22 松下知识产权经营株式会社 异常解析装置、制造系统、异常解析方法以及程序

Similar Documents

Publication Publication Date Title
WO2022068645A1 (zh) 数据库故障发现方法、装置、电子设备及存储介质
US9921937B2 (en) Behavior clustering analysis and alerting system for computer applications
US9612898B2 (en) Fault analysis apparatus, fault analysis method, and recording medium
US20180174062A1 (en) Root cause analysis for sequences of datacenter states
US20150205691A1 (en) Event prediction using historical time series observations of a computer application
JP2019521422A (ja) 異常なユーザ行動関連アプリケーションデータを検出するための方法、装置、およびコンピュータ読み取り可能な媒体
CN111177714A (zh) 异常行为检测方法、装置、计算机设备和存储介质
US20150205693A1 (en) Visualization of behavior clustering of computer applications
CN111444072B (zh) 客户端的异常识别方法、装置、计算机设备和存储介质
Lim et al. Identifying recurrent and unknown performance issues
CN113946986B (zh) 基于加速退化试验的产品平均失效前时间评估方法和装置
US9489379B1 (en) Predicting data unavailability and data loss events in large database systems
CN112202617B (zh) 资源管理系统监控方法、装置、计算机设备和存储介质
US20150112917A1 (en) Case-based reasoning
JP2010128673A (ja) コンピュータネットワーク、異常検出特定装置、異常検出特定方法およびそのプログラム
CN113946983A (zh) 产品可靠性薄弱环节评估方法、装置和计算机设备
CN112380073B (zh) 一种故障位置的检测方法、装置及可读存储介质
CN116909712A (zh) 基于机器学习的智能任务调度系统及其方法
CN117235664A (zh) 配电通信设备的故障诊断方法、系统和计算机设备
CN116737373A (zh) 负载均衡方法、装置、计算机设备、存储介质
JP2010128674A (ja) コンピュータネットワーク、異常検出装置、異常検出方法および異常検出プログラム
JP6858798B2 (ja) 特徴量生成装置、特徴量生成方法及びプログラム
CN114629690B (zh) 设备安全基线合规检测方法、装置和计算机设备
US10255128B2 (en) Root cause candidate determination in multiple process systems
CN110865939B (zh) 应用程序质量监测方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20120207