(57)【要約】複数の産業制御システム同士が連携して異常を検知する。複数の制御システムの異常を検知する異常検知システムであって、複数の制御システムのそれぞれに対応して設けられ、対応する制御システムで発生するイベントを取得して異常の有無を解析する複数の解析装置を備え、複数の解析装置のうち第１の解析装置は、対応する制御システムで発生したイベントを、複数の解析装置のうち第２の解析装置に通知すべきか否かを判定し、第２の解析装置は、第１の解析装置から通知されたイベントと、第１の解析装置以外の解析装置から通知されたイベントとの相関があることを条件として、異常と判断する異常検知システムを提供する。
2012157471.tif 000002
【特許請求の範囲】
【請求項１】
複数の制御システムの異常を検知する異常検知システムであって、
前記複数の制御システムのそれぞれに対応して設けられ、対応する制御システムで発生するイベントを取得して異常の有無を解析する複数の解析装置を備え、
前記複数の解析装置のうち第１の解析装置は、対応する前記制御システムで発生したイベントを、前記複数の解析装置のうち第２の解析装置に通知すべきか否かを判定し、
前記第２の解析装置は、前記第１の解析装置から通知されたイベントと、前記第１の解析装置以外の解析装置から通知されたイベントとの相関があることを条件として、異常と判断する
異常検知システム。
【請求項２】
前記複数の解析装置のそれぞれは、対応する前記制御システムで発生したイベントのデータ形式を、前記第２の解析装置におけるデータ形式に変換して、前記イベントを標準化する標準化部を有する
請求項１に記載の異常検知システム。
【請求項３】
前記第１の解析装置の標準化部は、対応する前記制御システムで発生したイベントのデータ形式を、前記複数の制御システムにおける標準のデータ形式に変換して、前記イベントを標準化する請求項２に記載の異常検知システム。
【請求項４】
前記複数の解析装置のそれぞれは、対応する前記制御システムで発生したイベントの内容を表すデータの一部を秘匿化する秘匿部を有する
請求項１から３のいずれか一項に記載の異常検知システム。
【請求項５】
前記第１の解析装置の前記秘匿部は、秘匿化前のデータと秘匿化後のデータと対応関係を示した変換テーブルを格納し、
前記第２の解析装置は、異常と判断した場合、前記第１の解析装置から受け取った秘匿後のイベントに含まれる秘匿化後のデータを含む異常情報を前記第１の解析装置へと通知し、
前記第１の解析装置の前記秘匿部は、前記第２の解析装置から通知された前記異常情報に含まれる秘匿化されたデータを前記変換テーブルを参照して秘匿化前のデータに変換して、対応する前記制御システムで発生した異常を特定する
請求項４に記載の異常検知システム。
【請求項６】
前記第２の解析装置は、
前記第１の解析装置から通知されたイベントと、前記第１の解析装置以外の解析装置から通知されたイベントとの相関がある場合に、前記第１の解析装置に対して秘匿化されていないイベントの通知を要求し、
前記第１の解析装置から秘匿化されていないイベントを受け取って、前記第１の解析装置から通知された秘匿化されていないイベントと、前記第１の解析装置以外の解析装置から通知されたイベントとの相関があることを条件として異常と判断する
請求項４または５に記載の異常検知システム。
【請求項７】
前記第２の解析装置は、前記複数の解析装置の少なくとも一部に対して異常を通知し、  異常の通知を受けた前記複数の解析装置の少なくとも一部は、対応する前記制御システムの監視頻度を増加させる
請求項１から６のいずれか一項に記載の異常検知システム。
【請求項８】
前記第１の解析装置は、前記複数の解析装置のうちのいずれを前記第２の解析装置とするかを動的に変更する請求項１から７のいずれか一項に記載の異常検知システム。
【請求項９】
前記第１の解析装置は、一定期間以上同一の前記第２の解析装置に対してイベントの通知を継続したことを条件として、新たな前記第２の解析装置を選択する請求項８に記載の異常検知システム。
【請求項１０】
前記第１の解析装置は、前記複数の解析装置のうちレスポンス時間が短い解析装置を優先して前記第２の解析装置として選択する請求項８または９に記載の異常検知システム。
【請求項１１】
前記第１の解析装置は、対応する前記制御システムで発生するイベントを取得して異常の有無を解析する解析部を有し、
前記第２の解析装置は、前記複数の制御システムの何れかでの異常の有無を解析する解析制御部を有し、
前記第１の解析装置の前記解析部は、対応する前記制御システムで発生するイベントを取得して前記第２の解析装置に通知すべきか否かを判定し、前記第２の解析装置に通知すべきと判定した場合には、取得したイベントを前記第２の解析装置の前記解析制御部へと転送し、
前記第２の解析装置の前記解析制御部は、複数の前記第１の解析装置からのイベント同士の相関を検出し、相関があることを条件として異常と判断し、異常と判断した場合に前記第１の解析装置の前記解析部へと通知し、
前記第１の解析装置の前記解析部は、前記第２の解析装置から通知された異常を対応する前記制御システムの管理者に対して報告する
請求項１から１０のいずれか一項に記載の異常検知システム。
【請求項１２】
前記第２の解析装置は、異常と判断した場合、前記第１の解析装置に異常を通知し、
前記第１の解析装置は、前記第２の解析装置から通知された異常を前記制御システムの管理者に対して報告する
請求項１から１１のいずれか一項に記載の異常検知システム。
【請求項１３】
前記第２の解析装置は、前記第１の解析装置から通知されたイベントの変化と、前記第１の解析装置以外の解析装置から通知されたイベントの変化との間の相関があることを条件として異常と判断する
請求項１から１２のいずれか一項に記載の異常検知システム。
【請求項１４】
請求項１１に記載された異常検知システムにおける前記解析部として機能する装置。
【請求項１５】
請求項１１に記載された異常検知システムにおける前記解析制御部として機能する装置。
【請求項１６】
コンピュータを、請求項１４に記載の装置として機能させるプログラム。
【請求項１７】
コンピュータを、請求項１５に記載の装置として機能させるプログラム。
【請求項１８】
複数の制御システムの異常を検知する異常検知方法であって、
前記複数の制御システムのそれぞれに対応して、対応する制御システムで発生するイベントを取得して異常の有無を解析する複数の解析装置を設け、
前記複数の解析装置のうち第１の解析装置が、対応する前記制御システムで発生したイベントを、前記複数の解析装置のうち第２の解析装置に通知すべきか否かを判定するステップと、
前記第２の解析装置が、前記第１の解析装置から通知されたイベントと、前記第１の解析装置以外の解析装置から通知されたイベントとの相関があることを条件として、異常と判断するステップとを
備える異常検知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
複数の制御システムの異常を検知する異常検知システムに関する。
【背景技術】
【０００２】
工業システムおよびインフラストラクチャシステムの管理および制御をする産業制御システム（ＩＣＳ）が知られている（例えば、非特許文献１参照）。従来、産業制御システムは、外部ネットワークとは接続されず、固有のプロトコルで動作するものが多かった。しかし、近年、産業制御システムは、インターネットプロトコル等の一般的なプロトコルにより接続され、また、外部ネットワークと接続されたシステムも多くなってきた。このため、複数の産業制御システム同士が互いに連携を取ることが可能となってきた。【０００３】
非特許文献１  "ＳＣＡＤＡ"、［online］、ウィキペディア、［２０１１年３月３０日検索］、インターネット〈URL：http://ja.wikipedia.org/wiki/SCADA〉
特許文献１  特表２００７−５０６３５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、それぞれの産業制御システムでは、内部に備える機器等に異常が発生していないかどうかを常時監視している。しかし、これまで、複数の産業制御システム同士が連携して異常を監視していなかった。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の第１の態様においては、複数の制御システムの異常を検知する異常検知システムであって、前記複数の制御システムのそれぞれに対応して設けられ、対応する制御システムで発生するイベントを取得して異常の有無を解析する複数の解析装置を備え、前記複数の解析装置のうち第１の解析装置は、対応する前記制御システムで発生したイベントを、前記複数の解析装置のうち第２の解析装置に通知すべきか否かを判定し、前記第２の解析装置は、前記第１の解析装置から通知されたイベントと、前記第１の解析装置以外の解析装置から通知されたイベントとの相関があることを条件として、異常と判断する異常検知システム、方法およびプログラムを提供する。【０００６】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００７】
【図１】本実施形態に係るコンピューティングシステム１０の構成を示す。
【図２】本実施形態に係る第１の解析装置３０−１および第２の解析装置３０−２の構成を示す。
【図３】本実施形態に係る第１の解析装置３０−１および第２の解析装置３０−２の処理フローを示す。
【図４】第１の解析装置３０−１が取得したイベントの一例および第１の解析装置３０−１が送信するイベントの一例を示す。
【図５】付加情報を秘匿化するためのテーブルの一例を示す。
【図６】本実施形態に係るコンピュータ１９００のハードウエア構成の一例を示す。
【発明を実施するための形態】
【０００８】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【０００９】
図１は、本実施形態に係るコンピューティングシステム１０の構成を示す。本実施形態に係るコンピューティングシステム１０は、複数の制御システム２０と、複数の解析装置３０と、ネットワーク４０とを備える。
【００１０】
複数の制御システム２０のそれぞれは、複数のコンピュータおよび複数の機器が接続されたシステムである。複数の制御システム２０のそれぞれは、一例として、工業システムおよびインフラストラクチャ（交通およびエネルギ等）システム等の各オブジェクトの管理および制御をする産業制御システム（ＩＣＳ）である。この場合、制御システム２０は、複数の機器、機器を制御するＰＬＣ（Programmable Logic Controller）およびサーバ等を備える。
【００１１】
複数の制御システム２０のそれぞれは、一例として、一つのビル内のネットワークに接続された様々なデバイス（例えば、電気、ガス、水道、空調およびセキュリティシステム等）を管理するシステムである。また、複数の制御システム２０のそれぞれは、一つの大きな制御システム内における一部分のシステムであってもよい。例えば、複数の制御システム２０のそれぞれは、都市全体を管理するシステムを構成する部分的な管理システム（例えば、ビル管理システム、工場管理システム、水道管理システム、および電気管理システム等）であってもよい。
【００１２】
また、制御システム２０は、一例として、オフィス内または家庭内のネットワークに接続された様々なデバイス（例えば電話機およびコピー機、等々）を管理するシステムであってもよい。また、制御システム２０は、企業等内のネットワークに接続された複数のコンピュータを管理するシステムであってもよいし、データセンタ等のネットワークに接続された多数のサーバを管理するシステムであってもよい。
【００１３】
複数の解析装置３０のそれぞれは、複数の制御システム２０のそれぞれに対応して設けられる。複数の解析装置３０のそれぞれは、一つの制御システム２０に対応して設けられてもよいし、２以上の制御システム２０に対応して設けられてもよい。そして、複数の解析装置３０のそれぞれは、対応する制御システム２０で発生するイベントを取得して、対応する制御システム２０の異常の有無を解析する。
【００１４】
ここで、イベントとは、対応する制御システム２０において生じる事象であって、例えばセンサまたはコンピュータ等によって検出が可能な事象をいう。イベントは、一例として、制御システム２０内の機器等に対して設けられたセンサにより検出された物理量（電力、温度、湿度、質量、体積および流量等）であってよい。また、イベントは、一例として、制御システム２０内の情報処理装置等に入出力されるデータの測定値（例えば、データレート、データの送受信のレスポンス、エラーレート等）であってもよい。また、イベントは、一例として、制御システム２０内の各機器の状態（例えば、可動の有無および動作モード等）、または、制御システム２０内の情報処理装置を構成するリソースの状態（例えば、メモリのデータ占有量およびプロセッサの使用率等）であってもよい。
【００１５】
複数の解析装置３０のそれぞれは、対応する制御システム２０で発生するイベントを取得し、予め定められたイベントが取得されたか否かを判定する。複数の解析装置３０のそれぞれは、予め定められたイベントが取得された場合には、対応する制御システム２０が異常であると判定する。そして、複数の解析装置３０のそれぞれは、対応する制御システム２０が異常を有すると判定した場合、異常に応じた対処処理を実行する。
【００１６】
ネットワーク４０は、複数の制御システム２０および複数の解析装置３０の間を互いに接続して、データの送受信を可能とする。ネットワーク４０は、一例として、インターネット等の汎用プロトコルによりデータの伝送を行う。
【００１７】
図２は、本実施形態に係る第１の解析装置３０−１および第２の解析装置３０−２の構成を示す。本実施形態に係るコンピューティングシステム１０において、複数の解析装置３０は、互いに協働することにより、複数の制御システム２０の異常を検知する異常検知システムとして機能する。
【００１８】
より詳しくは、複数の解析装置３０のうち第１の解析装置３０−１は、対応する制御システム２０から取得したイベントを、複数の解析装置３０のうち第２の解析装置３０−２へと通知する。そして、第２の解析装置３０−２は、第１の解析装置３０−１および第１の解析装置３０−１以外の他の解析装置３０から通知されたイベントの間に相関があるか否かを検出し、相関があることを条件として異常と判断する。
【００１９】
なお、本実施形態において、コンピューティングシステム１０に備えられる複数の解析装置３０のうちの少なくとも１つは、第２の解析装置３０−２として機能する。また、複数の制御システム２０のうち第２の解析装置３０−２以外の他の解析装置３０は、第１の解析装置３０−１として機能する。
【００２０】
第１の解析装置３０−１は、対応する制御システム２０で発生するイベントを取得して異常の有無を解析する解析部５０を少なくとも備える。また、第２の解析装置３０−２は、複数の制御システム２０の何れかでの異常の有無を解析する解析制御部７０を少なくとも備える。第２の解析装置３０−２は、解析部５０更に備えてもよい。
【００２１】
解析部５０は、取得部５２と、判定部５４と、標準化部５６と、秘匿部５８と、イベント送信部６０と、異常受信部６２と、監視部６４とを有する。また、解析制御部７０は、イベント受信部７２と、相関検出部７４と、異常送信部７６とを有する。
【００２２】
取得部５２は、対応する制御システム２０で発生するイベントを取得する。取得部５２は、一例として、制御システム２０内の各箇所に設けられた物理的なセンサにより検知された物理量（電力、温度、湿度、質量、体積および流量等）を、イベントとして取得する。また、取得部５２は、一例として、制御システム２０内の情報処理装置に入出力されるデータの測定値（例えば、データレート、データの送受信のレスポンス、エラーレート等）をイベントとして取得する。また、取得部５２は、一例として、制御システム２０内の各機器の状態、または、制御システム２０内の情報処理装置を構成するリソース（例えば、メモリおよびプロセッサ等）の状態をイベントとして取得する。
【００２３】
判定部５４は、取得したイベントに基づき、対応する制御システム２０が異常であるか否かを判定する。判定部５４は、一例として、取得したイベントの値が予め定められた値であるか否かを判定する。
【００２４】
判定部５４は、一例として、センサにより検出された物理量が、予め定められた通常範囲外の値となった場合には、対応する制御システム２０が異常であると判定する。また、判定部５４は、一例として、制御システム２０内の情報処理装置に入出力されるデータの測定値が、予め定められた通常範囲外の値となった場合、対応する制御システム２０が異常であると判定する。また、判定部５４は、一例として、制御システム２０内の各機器の状態、または、制御システム２０内の情報処理装置を構成するリソースの状態が、予め定められた状態となった場合、対応する制御システム２０が異常であると判定する。
【００２５】
判定部５４は、対応する制御システム２０が異常であると判定した場合には、異常であることを監視部６４に通知する。監視部６４は、判定部５４から異常であることの通知を受けたことに応じて、異常が発生した場合にすべき処理を実行する。監視部６４は、一例として、異常を対応する制御システム２０の管理者に報告する。また、監視部６４は、一例として、対応する制御システム２０の監視頻度を増加させる。この場合、例えば、監視部６４は、取得部５２に対してイベントの取得頻度を高める。また、監視部６４は、一例として、異常の機器を停止したり、電源を止めたりする。
【００２６】
さらに、判定部５４は、対応する制御システム２０が異常ではないと判定される場合であっても、対応する制御システム２０で発生したイベントを第２の解析装置３０−２に通知すべきか否かを判定する。本実施形態においては、判定部５４は、取得したイベントの値が、異常であるとは判定はされない値であって且つ異常と判定する閾値からの差分が予め定められた範囲内である場合、当該イベントを第２の解析装置３０−２に通知すべきと判定する。なお、判定部５４は、対応する制御システム２０が異常であると判定したイベントも、第２の解析装置３０−２に通知すべきと判定してもよい。
【００２７】
判定部５４は、一例として、センサにより検出された物理量、または、制御システム２０内の情報処理装置に入出力されるデータの測定値が、予め定められた通常範囲（正常と判定される範囲）内であって、異常と判定される閾値からの差分が所定値以下の範囲内である場合、当該イベントを第２の解析装置３０−２に通知すべきと判定する。また、判定部５４は、一例として、制御システム２０内の各機器の状態または制御システム２０内の情報処理装置を構成するリソースの状態が、正常であると判定される状態であって且つ予め設定された所定状態となった場合、当該イベントを第２の解析装置３０−２に通知すべきと判定する。
【００２８】
標準化部５６は、判定部５４によって第２の解析装置３０−２に通知するべきと判定された、対応する制御システム２０で発生したイベントのデータ形式を標準化する。より詳しくは、標準化部５６は、第２の解析装置３０−２に通知するべきと判定されたイベントのデータ形式を、第２の解析装置３０−２におけるデータ形式に変換して、イベントを標準化する。また、標準化部５６は、一例として、対応する制御システム２０で発生したイベントのデータ形式を、複数の制御システム２０における標準のデータ形式に変換して、イベントを標準化してもよい。これにより、標準化部５６は、第２の解析装置３０−２に通知するイベントを、第２の解析装置３０−２によって読み取り可能なデータ形式に変換することができる。
【００２９】
秘匿部５８は、判定部５４によって第２の解析装置３０−２に通知するべきと判定された、対応する制御システム２０で発生したイベントの内容を表すデータの一部を秘匿化する。秘匿部５８は、一例として、イベントの内容のうち、他の解析装置３０に知られたくない部分のデータを秘匿化する。秘匿部５８は、一例として、セキュリティを確保するために他の制御システム２０の管理者には知られたくない内容（例えば、センサの取り付け位置およびセンサの性能等）を表すデータを秘匿化する。
【００３０】
イベント送信部６０は、標準化部５６により標準化され且つ秘匿部５８によりデータの一部が秘匿化された、対応する制御システム２０で発生したイベントを、第２の解析装置３０−２の解析制御部７０に通知する。第１の解析装置３０−１に備えられる解析部５０は、イベントをメッセージ化して、ネットワーク４０を介して第２の解析装置３０−２の解析制御部７０に通知する。第２の解析装置３０−２に備えられる解析部５０は、イベントをネットワーク４０を介して解析制御部７０に通知してもよいし、イベントをネットワーク４０を介さずに解析制御部７０に通知してもよい。
【００３１】
解析制御部７０のイベント受信部７２は、複数の解析装置３０のそれぞれから通知されたイベントを受信する。より具体的には、イベント受信部７２は、第１の解析装置３０−１の解析部５０から通知されたイベント、および、第２の解析装置３０−２の解析部５０から通知されたイベントを受信する。
【００３２】
解析制御部７０の相関検出部７４は、複数の解析装置３０から通知されたイベント同士を比較して、予め定められた相関値以上の相関を有するかどうかを検出する。相関検出部７４は、一例として、複数の解析装置３０から通知された複数のイベントが、予め定められた相関値以上で相関を有する場合、複数の解析装置３０の何れかが異常であると判断する。
【００３３】
解析制御部７０の異常送信部７６は、相関検出部７４が異常と判断した場合に、複数の第１の解析装置３０−１のそれぞれの解析部５０および当該第２の解析装置３０−２の解析部５０に、異常を通知する。この場合において、異常送信部７６は、複数の解析装置３０のそれぞれに対して、その解析装置３０から送信されたイベントであって、他の解析装置３０から送信されたイベントと相関があり異常と判断されたイベントに含まれる秘匿化した部分のデータを、異常情報に含めて解析部５０に通知する。
【００３４】
異常受信部６２は、第２の解析装置３０−２の解析制御部７０から通知された異常情報を受信する。異常受信部６２は、受信した異常情報を秘匿部５８に転送する。
【００３５】
秘匿部５８は、異常情報に含まれる秘匿化した部分のデータの秘匿状態を解除する。秘匿部５８は、異常情報および秘匿化を解除したデータを監視部６４に転送する。
【００３６】
監視部６４は、第２の解析装置３０−２の解析制御部７０から異常情報が通知されたことに応じて、第２の解析装置３０−２により通知された異常の内容を特定する。例えば、監視部６４は、秘匿部５８がセンサの取り付け位置を秘匿化してイベントを通知した場合、秘匿化を解除したデータからセンサの取り付け位置を検出する。これにより、秘匿部５８は、第２の解析装置３０−２により異常と判断されたイベントを発生したセンサの位置を特定することができる。そして、監視部６４は、異常が発生した場合にすべき対応処理を実行する。
【００３７】
図３は、本実施形態に係る第１の解析装置３０−１および第２の解析装置３０−２の処理フローを示す。図４は、第１の解析装置３０−１が取得したイベントの一例および第１の解析装置３０−１が送信するイベントの一例を示す。図５は、付加情報を秘匿化するためのテーブルの一例を示す。
【００３８】
まず、ステップＳ１１において、第１の解析装置３０−１は、対応する制御システム２０で発生するイベントを、一定時間毎に取得する。図４の例においては、第１の解析装置３０−１は、対応する制御システム２０が管理するビルの裏庭に設けられた機器の温度をイベントとして、１０分毎に取得する。
【００３９】
続いて、ステップＳ１２において、第１の解析装置３０−１は、一定時間毎に取得したイベントのそれぞれについて、第２の解析装置３０−２へと通知すべきか否かを判定する。第１の解析装置３０−１は、一例として、イベントの変化が予め定められた変化量よりも大きい場合、当該イベントを第２の制御システム２０−２へと通知すべきと判定する。
【００４０】
図４の例においては、第１の解析装置３０−１は、対応する制御システム２０が管理するビルの裏庭の機器の温度（イベント）が１０分前から予め定められた範囲以上変化した場合、当該温度（イベント）を第２の制御システム２０−２へと通知すべきと判定する。第１の解析装置３０−１は、通知すべきと判断した場合（Ｓ１２のＹＥＳ）、処理をステップＳ１３に進める。
【００４１】
続いて、ステップＳ１３において、第１の解析装置３０−１は、通知するべきイベントのデータ形式を標準化する。第１の解析装置３０−１は、一例として、イベントの内容を表す識別情報、および、イベントの値を表すイベント値を、第２の解析装置３０−２により読み取り可能なデータ形式（例えば当該コンピューティングシステム１０において共通のデータ形式）に変換する。
【００４２】
図４の例においては、第１の解析装置３０−１は、「温度」と表された個別の識別情報を「温度センサ」と表された共通の識別情報に変換する。また、図４の例においては、第１の解析装置３０−１は、１２時間形式で表された「時刻」（個別のイベント値）を、２４時間形式で表された「時刻」（共通のイベント値）に変換する。また、図４の例においては、華氏で表された「温度」（個別のイベント値）を、摂氏で表された「温度」（共通のイベント値）に変換する。
【００４３】
続いて、ステップＳ１４において、第１の解析装置３０−１は、通知するべきイベントの内容を表すデータのうち、他の解析装置３０に内容を知られたくない部分のデータ（例えば、セキュリティに関するデータ、および、イベントの詳細な測定ポイントを表すデータ等）を秘匿化する。第１の解析装置３０−１は、一例として、イベントの付加情報であるセンサ位置情報を秘匿化する。図４の例においては、第１の解析装置３０−１は、「バックヤード＃１」と表されたセンサ位置情報を、「３９４８５」と表されたランダムなコードに秘匿化する。
【００４４】
また、第１の解析装置３０−１は、一例として、秘匿化前のデータと秘匿化後のデータと対応関係を示した変換テーブル格納する。そして、第１の解析装置３０−１は、変換テーブルを参照してデータの秘匿化をする。この場合、第１の解析装置３０−１は、例えば、図５に示すような、センサ位置を表すセンサ位置情報（バックヤード＃１、バックヤード＃２、メインドア＃１、メインドア＃２）を、対応するランダムコード（３９４８５、１３４５６、２７３２１、５３８８４）に変換する変換テーブルを格納する。
【００４５】
続いて、ステップＳ１５において、第１の解析装置３０−１は、イベントの送信先として、複数の解析装置３０の中から少なくとも１つの第２の解析装置３０−２を選択する。第１の解析装置３０−１は、一例として、複数の解析装置３０からイベントを受け取って異常が発生したか否かを判断することができる解析装置３０が複数存在する場合、これらの中から１つまたは２以上の解析装置３０を第２の解析装置３０−２として選択する。
【００４６】
なお、第１の解析装置３０−１は、複数の解析装置３０のうちのいずれを第２の解析装置３０−２とするかを動的に変更してもよい。例えば、第１の解析装置３０−１は、一定期間（例えば、１日毎、１週間毎）において、いずれを第２の解析装置３０−２とするかを設定する。
【００４７】
この場合において、第１の解析装置３０−１は、複数の解析装置３０のうちレスポンス時間が短い解析装置３０を優先して第２の解析装置３０−２として選択してもよい。これにより、第１の解析装置３０−１は、より早く異常の通知を受けることができる。また、第１の解析装置３０−１は、一定期間以上同一の第２の解析装置３０−２に対してイベントの通知を継続したことを条件として、新たな第２の解析装置３０−２を選択してもよい。これにより、第１の解析装置３０−１は、第２の解析装置３０−２を一つに固定させないことができる。
【００４８】
続いて、ステップＳ１６において、ステップＳ１５で選択した第２の解析装置３０−２へと、ステップＳ１３で標準化され且つステップＳ１４で秘匿化されたイベントを通知する。続いて、ステップＳ１７において、第２の解析装置３０−２は、第１の解析装置３０−１からイベントを受信する。
【００４９】
続いて、ステップＳ１８において、第２の解析装置３０−２は、複数の解析装置３０から通知されたイベントの相関を検出して、複数の制御システム２０の何れかにおいて異常が発生したか否かを判断する。より具体的には、第２の解析装置３０−２は、第１の解析装置３０−１から通知されたイベントと、第１の解析装置３０−１以外の解析装置３０から通知されたイベントとの相関があることを条件として、異常と判断する。第２の解析装置３０−２は、一例として、第１の解析装置３０−１から通知されたイベントの変化と、第１の解析装置３０−１以外の他の解析装置３０から通知されたイベントの変化に、予め定められた相関値以上の相関があることを条件として、異常と判断する。
【００５０】
例えば、相関検出部７４は、一例として、複数の制御システム２０のそれぞれに設置された複数の温度センサの温度が、互いに相関をもって変化した場合、異常と判断する。図４の場合、２０時２０分〜３０分に温度センサの温度が上昇し、２０時３０分〜４０分の間に温度センサの温度が下降する変化が、一つの制御システム２０内において発生している。そこで、このような場合、第２の解析装置３０−２は、複数の制御システム２０に設けられた温度センサが、図４と同様の温度変化をしていることを条件として異常と判断する。
【００５１】
続いて、ステップＳ１９において、第２の解析装置３０−２は、ステップＳ１８で異常と判断した場合、第１の解析装置３０−１に異常を通知する。この場合において、第２の解析装置３０−２は、第１の解析装置３０−１から送信されたイベントであって、他の解析装置３０から送信されたイベントと相関があり異常と判断したイベントに含まれていた秘匿化された部分のデータを、異常情報に含めて解析部５０に通知する。
【００５２】
続いて、ステップＳ２０において、第１の解析装置３０−１は、第２の解析装置３０−２から通知された異常情報を受信する。続いて、ステップＳ２１において、第１の解析装置３０−１は、第２の解析装置３０−２から通知された異常情報に基づき、対応する制御システム２０において発生した異常の内容を特定する。
【００５３】
第１の解析装置３０−１は、第２の解析装置３０−２から通知された異常情報に含まれる秘匿化された部分のデータを、変換テーブルを参照して秘匿化していないデータに戻す。そして、第１の解析装置３０−１は、秘匿化が解除されたイベントから、対応する制御システムで発生した異常を特定する。例えば、第１の解析装置３０−１は、図５に示されるような変換テーブルを参照して、異常が発生した箇所がビルの裏庭のセンサであることを特定する。
【００５４】
続いて、ステップＳ２２において、第１の解析装置３０−１は、対応する制御システム２０を制御するためのモードを警戒モードに変更する。第１の解析装置３０−１は、異常を対応する制御システム２０の管理者に報告する。また、第１の解析装置３０−１は、一例として、対応する制御システム２０の監視頻度を増加させる。この場合、例えば、第１の解析装置３０−１は、イベントの取得頻度を高めることにより、監視頻度を増加させてもよい。また、第１の解析装置３０−１は、一例として、異常の機器を停止したり、電源を止めたりする。
【００５５】
以上のように、本実施形態に係るコンピューティングシステム１０によれば、一つの制御システム２０において単独では異常と検出されないような事象（イベント）が発生した場合であっても、複数の解析装置３０の間において相関のある事象（イベント）が発生した場合には、異常と判断することができる。これにより、コンピューティングシステム１０によれば、複数の解析装置３０が連携して、より正確に且つ感度良く異常を検知することができる。
【００５６】
なお、第２の解析装置３０−２は、第１の解析装置３０−１から通知されたイベントと、第１の解析装置３０−１以外の解析装置３０から通知されたイベントとの相関がある場合に、第１の解析装置３０−１に対して秘匿化されていないイベントの通知を要求してもよい。この場合、第１の解析装置３０−１は、秘匿化されていないイベントの通知の要求に応じて、イベントを秘匿化せずに第２の解析装置３０−２に通知する。
【００５７】
そして、第２の解析装置３０−２は、第１の解析装置３０−１から秘匿化されていないイベントを受け取って、第１の解析装置３０−１から通知された秘匿化されていないイベントと、第１の解析装置３０−１以外の解析装置３０から通知されたイベントとの相関を再度検知する。そして、第２の解析装置３０−２は、相関があることを条件として異常と判断する。これにより、第２の解析装置３０−２は、異常が発生しているかどうかをより正確に判断することができる。
【００５８】
図６は、本実施形態に係るコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、及び表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、及びＣＤ−ＲＯＭドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０を有するレガシー入出力部とを備える。
【００５９】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００及びグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０及びＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００６０】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０を接続する。通信インターフェイス２０３０は、ネットワークを介して他の装置と通信する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ２０６０は、ＣＤ−ＲＯＭ２０９５からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【００６１】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、及び／又は、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【００６２】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【００６３】
コンピュータ１９００にインストールされ、コンピュータ１９００を解析部５０として機能させるプログラムは、取得モジュールと、判定モジュールと、標準化モジュールと、秘匿モジュールと、イベント送信モジュールと、異常受信モジュールと、監視モジュールとを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、取得部５２、判定部５４、標準化部５６、秘匿部５８、イベント送信部６０、異常受信部６２、および監視部６４としてそれぞれ機能させる。
【００６４】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である取得部５２、判定部５４、標準化部５６、秘匿部５８、イベント送信部６０、異常受信部６２、および監視部６４として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピューティングシステム１０の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の解析部５０が構築される。
【００６５】
また、コンピュータ１９００にインストールされ、コンピュータ１９００を解析制御部７０として機能させるプログラムは、イベント受信モジュールと、相関検出モジュールと、異常送信モジュールとを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、イベント受信部７２、相関検出部７４および異常送信部７６としてそれぞれ機能させる。
【００６６】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段であるイベント受信部７２、相関検出部７４および異常送信部７６として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピューティングシステム１０の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の解析制御部７０が構築される。
【００６７】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、又はＣＤ−ＲＯＭ２０９５等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置又は通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【００６８】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０（ＣＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、及び／又は記憶装置に含まれるものとする。
【００６９】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合（又は不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【００７０】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【００７１】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５の他に、ＤＶＤ又はＣＤ等の光学記録媒体、ＭＯ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ１９００に提供してもよい。
【００７２】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００７３】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００７４】
１０  コンピューティングシステム
２０  制御システム
３０  解析装置
４０  ネットワーク
５０  解析部
５２  取得部
５４  判定部
５６  標準化部
５８  秘匿部
６０  イベント送信部
６２  異常受信部
６４  監視部
７０  解析制御部
７２  イベント受信部
７４  相関検出部
７６  異常送信部
１９００  コンピュータ
２０００  ＣＰＵ
２０１０  ＲＯＭ
２０２０  ＲＡＭ
２０３０  通信インターフェイス
２０４０  ハードディスクドライブ
２０５０  フレキシブルディスク・ドライブ
２０６０  ＣＤ−ＲＯＭドライブ
２０７０  入出力チップ
２０７５  グラフィック・コントローラ
２０８０  表示装置
２０８２  ホスト・コントローラ
２０８４  入出力コントローラ
２０９０  フレキシブルディスク
２０９５  ＣＤ−ＲＯＭ
【図１】
2012157471.tif 000003
【図２】
2012157471.tif 000004
【図３】
2012157471.tif 000005
【図４】
2012157471.tif 000006
【図５】
2012157471.tif 000007
【図６】
2012157471.tif 000008
【国際調査報告】
2012157471.tif 000009
2012157471.tif 000010