(57)【要約】【課題】通信網上にある各計算機から収集した複数の情報をリアルタイムに、かつ高速に処理し、通信網の異常を検出することができるサーバ計算機を提供すること。【解決手段】ログ受信部１０１Ａ、１０１Ｂ、１０１Ｃが、計算機２０１Ａ、２０２Ａ、２０３Ｂ、２０４Ｃが送信した通信ログ２１を受信して通信ログ検査部１０２に出力し、通信ログ検査部１０２は、文字列とつぎに遷移する状態との組が予め設定された複数の状態を有し、ログデータの中に前記文字列が含まれているか否かを検査し、ログデータの中に文字列が含まれている場合にはつぎに遷移する状態に遷移するオートマトンを備える状態マシンを用いて通信ログ２１のログデータを検査して、オートマトンが終了状態に遷移した場合には検査結果をログ記憶装置１０３に記憶する。【選択図】        図１
2006350654.tif 000002
【特許請求の範囲】
【請求項１】
１以上の計算機が接続された通信網を管理するサーバ計算機であって、
前記通信網に接続された計算機のそれぞれから送信された通信ログを受信するログ受信部と、
前記ログ受信部によって受信された通信ログのログデータの中に予め定められた文字列が含まれているかを検査するオートマトンによる状態マシンを有し、前記オートマトンの検査結果に基づいて前記通信網、または前記計算機に異常が発生したかを判定し、異常が発生したと判定した場合には、前記計算機または／および所定の管理装置に異常が発生したことを通知する通信ログ検査部と、
を備えることを特徴とするサーバ計算機。
【請求項２】
前記オートマトンは、
文字列とつぎに遷移する状態との組が予め設定された複数の状態を有し、前記ログデータの中に前記文字列が含まれているか否かを検査し、前記ログデータの中に前記文字列が含まれている場合には、前記つぎに遷移する状態に遷移すること、
を特徴とする請求項１に記載のサーバ計算機。
【請求項３】
前記状態マシンは、
前記オートマトンを複数備える場合には、すべてのオートマトンに前記ログデータを入力し、ぞれぞれのオートマトンが独立して動作して並列に前記ログデータを検査すること、
を特徴とする請求項１または２に記載のサーバ計算機。
【請求項４】
前記オートマトンは、
前記検査終了を示す終了状態に遷移した場合には、前記ログデータの検査を終了すること、
を特徴とする請求項２または３に記載のサーバ計算機。
【請求項５】
前記オートマトンは、
同一の状態のままで予め設定された期間を経過した場合には、検査を終了すること、
を特徴とする請求項２〜４の何れか一つに記載のサーバ計算機。
【請求項６】
前記通信ログ検査部は、前記状態マシンを複数備え、これらの状態マシンを前記通信網、または前記通信網とは異なる通信網を介して接続される１以上の通信ログ検査サーバに構築し、
前記ログ受信部によって受信された通信ログのログデータを前記通信ログ検査サーバに送信して、前記通信ログ検査サーバに構築した状態マシンによって前記ログデータを検査させ、これらの検査結果を受信する通信ログ検査要求送受信部、
をさらに備えることを特徴とする請求項１〜５の何れか一つに記載のサーバ計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワーク上に流れる通信／接続に関する履歴（通信ログ）の処理に関するものであり、特に、１以上の計算機が接続された通信網（ネットワーク）において、それぞれの計算機から送信される通信ログを用いて各計算機および通信網を管理するためのサーバ計算機に関するものである。
【背景技術】
【０００２】
従来の計算機ネットワークでは、たとえば、ＵＮＩＸ（登録商標）／Ｌｉｎｕｘ（登録商標）のＯＳ（オペレーティング・システム）で用いられる「ｓｙｓｌｏｇ」や、Ｗｉｎｄｏｗｓ（登録商標）のＯＳで用いられる「Ｅｖｅｎｔｌｏｇ」、「ＳＮＭＰ」などのプロトコルを用いて、それぞれの計算機が通信を行った際の通信ログが送信され、これらの通信ログをサーバ計算機等に記録させることで、それぞれの計算機や、通信網を管理する手法が一般的に採用されている。
【０００３】
上記プロトコルの他にも、例えば、「Ａｐａｃｈｅ」などのアプリケーションが上述のＯＳなどに適用されており、これらのアプリケーションでは、通信ログが独自に生成され、通信網上にはさまざまなプロトコル、アプリケーションによる通信ログの送受信が行われている。
【０００４】
一方、通信網を経由して悪意ある情報（コンピュータウィルスやワーム）等を受信したり、不正なネットワーク接続（不正侵入行為そのものや、不正侵入を試みる行為）等が探知され、あるいは、通信障害等が発生した場合には、これらの記録された通信ログを調査することで、その悪意ある情報の発信元や接続元、あるいは障害の原因となっている装置・機器等を特定し、あるいは計算機および通信網を管理するなど、通信ログが積極的に利用されている。
【０００５】
また、通信ログ以外にも不正進入検出システム（Intrusion Detection System）などによる検出結果も通信ログと併せて悪意ある情報の発信元や接続元、あるいは障害の原因となっている装置・機器等を特定するための情報源として利用される。
【０００６】
さて、記録された通信ログや不正進入検出システムによる検査結果を用いて、悪意ある情報の発信元や接続元、あるいは障害の原因となっている装置・機器等を特定するためには管理者がそれぞれの情報を調査するか、ログ管理装置に含まれるログ検査機能によって調査するのが一般的である。
【０００７】
たとえば、通信ログをログ管理機能によって調査する従来技術として、特許文献１がある。特許文献１には、通信網に接続された１以上の計算機のそれぞれから受信した通信ログを所定の統一形式ログに変換し、この統一形式ログを人工ニューラルネットワークやファジイ理論による判断手法を用いて通信ログの異常を判定する技術が開示されている。
【０００８】
【特許文献１】特開２００３−３６０４７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
通信ログを用いたネットワークの異常性判断を行なうための表示手段においては、テキストファイル等の形式で記録された通信ログを調査し、通信ログの内容をグラフ化するなどして、異常性判断を視覚的に行うことを重視したアプリケーションが多数存在している。しかしながら、通信ログの異常性判断の本質的な点は、経験則等から知得した人為的な判断および作業によって行うか、過去の侵入形態に関する特徴をあらかじめ具体的に定義し、その定義された特徴と合致するものを自動的に抽出するという手法に頼らざるを得ない状況にある。
【００１０】
これに対して、上記特許文献１に記載の従来技術では、人工ニューラルネットワークやファジイ理論による判断手法を用いて通信ログの異常を判定するようにしている。しかしながら、一般的に、人工ニューラルネットワークは計算量が多く処理に時間がかかるため、通信ログを受信してからその通信ログの異常を検出するまでの処理時間が長くなるという問題があった。
【００１１】
また、ファジイ理論による判断手法では、一定の時間をかけて断続的に到達する複数の通信ログに基づいてリアルタイムに異常を検出することができないという問題があった。
【００１２】
すなわち、上記特許文献１に記載の従来技術では、人工ニューラルネットワークやファジイ理論による判断手法を用いて通信ログの異常を判定するようにしているため、複数の通信ログや挿入検出システムなどのセキュリティ機器から集められた複数の情報をリアルタイムに、高速に処理することができないという問題があった。
【００１３】
本発明は、上記に鑑みてなされたものであって、通信網上にある各計算機から収集した複数の情報をリアルタイムに、かつ高速に処理し、通信網の異常を検出することができるサーバ計算機を得ることを目的としている。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、１以上の計算機が接続された通信網を管理するサーバ計算機であって、前記通信網に接続された計算機のそれぞれから送信された通信ログを受信するログ受信部と、前記ログ受信部によって受信された通信ログのログデータの中に予め定められた文字列が含まれているかを検査するオートマトンによる状態マシンを有し、前記オートマトンの検査結果に基づいて前記通信網、または前記計算機に異常が発生したかを判定し、異常が発生したと判定した場合には、前記計算機または／および所定の管理装置に異常が発生したことを通知する通信ログ検査部と、を備えることを特徴とするものである。
【００１５】
請求項２にかかる発明は、請求項１の発明において、前記オートマトンは、文字列とつぎに遷移する状態との組が予め設定された複数の状態を有し、前記ログデータの中に前記文字列が含まれているか否かを検査し、前記ログデータの中に前記文字列が含まれている場合には、前記つぎに遷移する状態に遷移すること、を特徴とするものである。
【００１６】
請求項３にかかる発明は、請求項１または２の発明において、前記状態マシンは、前記オートマトンを複数備える場合には、すべてのオートマトンに前記ログデータを入力し、ぞれぞれのオートマトンが独立して動作して並列に前記ログデータを検査すること、を特徴とするものである。
【００１７】
請求項４にかかる発明は、請求項２または３の発明において、前記オートマトンは、
前記検査終了を示す終了状態に遷移した場合には、前記ログデータの検査を終了すること、を特徴とするものである。
【００１８】
請求項５にかかる発明は、請求項２〜４の発明において、前記オートマトンは、同一の状態のままで予め設定された期間を経過した場合には、検査を終了すること、を特徴とするものである。
【００１９】
請求項６にかかる発明は、請求項１〜５の発明において、前記通信ログ検査部は、前記状態マシンを複数備え、これらの状態マシンを前記通信網、または前記通信網とは異なる通信網を介して接続される１以上の通信ログ検査サーバに構築し、前記ログ受信部によって受信された通信ログのログデータを前記通信ログ検査サーバに送信して、前記通信ログ検査サーバに構築した状態マシンによって前記ログデータを検査させ、これらの検査結果を受信する通信ログ検査要求送受信部、をさらに備えることを特徴とするものである。
【発明の効果】
【００２０】
請求項１にかかる発明のサーバ計算機によれば、オートマトンによる状態マシンを用いて、通信網を介して接続された１以上の計算機から断続的に受信した通信ログのログデータの中に予め定められた文字列が含まれているか否かを検査し、この検査結果に基づいて通信網または計算機に異常が発生したかを判定するようにしているため、通信網上にある各計算機から収集した複数の通信ログをリアルタイムに、かつ高速に処理し、通信網の異常を検出することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２１】
以下に、本発明にかかるサーバ計算機の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００２２】
図１〜図４（図４−１，図４−２を示す）を参照してこの発明の実施例１を説明する。図１は、この発明における実施例１のサーバ計算機が適用される通信システムの構成を示す図である。図１において、サーバ計算機１００は、通信網１５０と、通信網１５０に接続された計算機の管理を行うものであり、プロトコルの種類に対応して備えられるｎ（ｎは自然数であり、この場合はｎ＝３）個のログ受信部１０１Ａ、１０１Ｂ、１０１Ｃと、受信したログの検査を行う通信ログ検査部１０２と、ログ記憶装置１０３と、送信部１０４とを備えている。また、計算機２０１Ａ、２０２Ａ、２０３Ｂ、２０４Ｃは、サーバ計算機１００と通信網１５０を介して接続され、通信網１５０や計算機２０１Ａ、２０２Ａ、２０３Ｂ、２０４Ｃの異常を管理する管理装置２０５は、サーバ計算機１００と通信網１５０を介さずに接続されている。なお、通信ログ検査部１０２、およびログ記憶装置１０３は、サーバ計算機１００に直接内蔵される構成として示しているが、サーバ計算機１００の外部に接続される周辺機器として構成されていてもよい。また、ログ記憶装置１０３は、通信網１５０を介して接続された他の計算機（図示省略）の中に備えられた記憶装置として構成されていても機能上差し支えない。
【００２３】
つぎに、図２のフローチャートを参照して、図１に示した通信システムの動作について説明する。なお、図１において、計算機２０１Ａ、２０２Ａ、２０３Ｂ、２０４Ｃは、サーバ計算機１００に対して、それぞれの計算機２０１Ａ、２０２Ａ、２０３Ｂ、２０４Ｃが通信ログ２１１Ａ、２１２Ａ、２１３Ｂ、２１４Ｃを出力しているが、これらの通信ログ２１１Ａ、２１２Ａ、２１３Ｂ、２１４Ｃをまとめて「通信ログ２１」と称することにする。
【００２４】
計算機２０１Ａ、２０２Ａは、同一のプロトコル２２Ａに基づいた通信ログ２１１Ａ、２１２Ａをサーバ計算機１００に対してそれぞれ送信する（ステップＳ１０１Ａ）。計算機２０３Ｂは、プロトコル２２Ａとは異なる形式のプロトコル２２Ｂに基づく通信ログ２１３Ｂをサーバ計算機１００に対して送信する（ステップＳ１０１Ｂ）。計算機２０４Ｃは、これらの通信プロトコルとは異なる形式のプロトコル２２Ｃに基づく通信ログ２１４Ｃをサーバ計算機１００に対して送信する（ステップＳ１０１Ｃ）。
【００２５】
また、サーバ計算機１００に備えられたログ受信部１０１Ａ、１０１Ｂ、１０１Ｃは、それぞれの計算機から送信された異なるプロトコル（プロトコル２２Ａ、プロトコル２２Ｂあるいはプロトコル２２Ｃ）の通信ログ２１を受信し（ステップＳ１０２）、記憶命令（データベースに応じた形式で）を出力して通信ログ２１をログ記憶装置１０３に記憶させる（ステップＳ１０３）とともに、通信ログ２１のログデータを通信ログ検査部１０２に出力する。
【００２６】
ログ記憶装置１０３が通信ログを記憶するのと平行して通信ログ検査部１０２は、ログ受信部１０１Ａ、１０１Ｂ、１０１Ｃが受信した１以上の通信ログ２１のログデータの検査処理を実行する（ステップＳ１０４）。
【００２７】
検査処理によって異常を検出した場合（ステップＳ１０５，Ｙｅｓ）、通信ログ検査部１０２は、異常結果をログ記憶装置１０３に記憶させる（ステップＳ１０６）。詳細は後述するが、通信ログ検査部１０２は、オートマトンによる状態マシンを用いてログデータの検査処理を実行する。オートマトンは、終了状態を示す状態コードを通信ログ検査部１０２に通知して検査処理を終了か、タイムアウトによって検査処理を終了する。通信ログ検査部１０２は、状態コードの通知を受けた場合、または通知された状態コードの値によって異常を検出する。
【００２８】
異常結果をログ記憶装置１０３に記憶させた後に通信ログ検査部１０２は、送信部１０４を介して、異常を検出したことを通知する異常検出通知１６０を通信網１５０、および／または管理装置２０５に出力する（ステップＳ１０７）。計算機２０１Ａ，２０２Ａ，２０３Ｂ，２０４Ｃは、通信網１５０から異常検出通知１６０を受信することで、通信システム内に異常があったことを認識し、管理装置２０５は直接サーバ計算機１００からの異常検出通知１６０を受信することで、通信システム内に異常があったことを認識する。
【００２９】
一方、検査処理によって異常を検出しなかった場合（ステップＳ１０５，Ｎｏ）、通信ログ検査部１０２は、ログ受信部１０１Ａ、１０１Ｂ、１０１Ｃが新たに受信した通信ログ２１をログ記憶装置１０３に記憶させるとともに、新たに受信した通信ログ２１のログデータの検査処理を実行する。
【００３０】
つぎに、図３および図４を参照して、通信ログ検査部１０２の構成および検査処理を詳細に説明する。通信ログ検査部１０２はオートマトンによる状態マシンで構成され、通信ログの検査処理を行なう。
【００３１】
オートマトンは、最低１つの開始状態と１以上の終了状態とを有し、開始状態と終了状態との間に任意の数の中間状態を有することができ、状態遷移において開始状態または中間状態から異なる中間状態または終了状態に遷移（分岐）する。
【００３２】
開始状態には、それぞれつぎの状態（中間状態または終了状態）に遷移するための条件（文字列）と、つぎに遷移する状態とが予め設定されており、中間状態には、それぞれつぎの状態（異なる中間状態または終了状態）に遷移するための条件（文字列）と、つぎに遷移する状態と、現在の状態であることができるタイムアウト時間とが予め設定されており、終了状態には、自身の状態を示す値（状態コード）が設定されている。
【００３３】
オートマトンは、入力されるログデータの中に現在の状態に設定されている条件と一致する文字列が含まれているか否かを検査し、ログデータの中に条件と一致する文字列が含まれている場合には、現在の状態に設定されているつぎに遷移する状態が示す状態に遷移する。ログデータの中に条件と一致する文字列が含まれていない場合には現在の状態のままとなる。
【００３４】
また、オートマトンは、遷移した状態が中間状態の場合には、通信ログ検査部１０２またはサーバ計算機１００の計時機能を用いてタイムアウト時間の計測を行う。オートマトンは、遷移した状態が終了状態の場合には、設定されている状態コードを通信ログ検査部１０２に通知する。
【００３５】
たとえば、オートマトンは、開始状態と終了状態、または開始状態と中間状態と終了状態によって構成される計算機であり、現在の状態に設定されている条件である文字列がログデータに含まれているか否かを検査し、条件である文字列がログデータに含まれている場合には現在の状態に設定されているつぎに遷移する状態に遷移するプログラムを記憶媒体に記憶させておき、専用のＣＰＵ、またはサーバ計算機１００のＯＳが実行されるＣＰＵが実行することで実現する。
【００３６】
図３は、オートマトンの構成の一例を示す図である。図３において、オートマトンは、開始状態である状態Ａ３０１と、中間状態である状態Ｂ３０２、状態Ｃ３０３と、終了状態である状態Ｄ３０４、状態Ｅ３０５との５個の状態によって構成されている。図３において、状態Ａ３０１が状態Ｂ３０２に遷移する条件は「条件ｂ」であり、状態Ｂ３０２が状態Ｃ３０３に遷移する条件は「条件ｃ」であり、状態Ｂ３０２が状態Ｅ３０５に遷移する条件は「条件ｅ」であり、状態Ｃ３０３が状態Ｄ３０４に遷移する条件は「条件ｄ」である。
【００３７】
図４のフローチャートを参照して、図３に示したオートマトンによる状態マシンを用いた場合の通信ログ検査部１０２の検査処理の動作について説明する。初期状態において通信ログ検査部１０２の状態マシンによってオートマトンが起動され、オートマトンは開始状態である状態Ａ３０１となって（図４−１のステップＳ２０１）ログデータの入力待ちとなる（図４−１のステップＳ２０２）。
【００３８】
ログデータが入力されると、オートマトンは、入力されたログデータが状態Ｂ３０２に遷移するための条件ｂと一致するか否かを検査する（図４−１のステップＳ２０３）。たとえば、条件ｂが、「ＡＡＡ」という文字列である場合、入力されたログデータの中に「ＡＡＡ」が含まれているか否かを検査する。
【００３９】
ログデータが条件ｂと不一致の場合、オートマトンは、入力されたログデータが条件ｂと一致するまで入力されたログデータと条件ｂと一致するか否かの検査を繰り返す（図４−１のステップＳ２０２，Ｓ２０３）。
【００４０】
ログデータが条件ｂと一致した場合、オートマトンは、現在の状態Ａ３０１から状態Ｂ３０２に遷移して（図４−１のステップＳ２０４）、通信ログ検査部１０２またはサーバ計算機１００の計時機能を用いてタイムアウト時間の計測を開始し（図４−１のステップＳ２０５）、ログデータの入力待ちとなる（図４−１のステップＳ２０６）。
【００４１】
ログデータが入力されると、オートマトンは、タイムアウト時間に達しているか否かを判定する（図４−１のステップＳ２０７）。タイムアウト時間に達している場合、検査処理を終了する。
【００４２】
タイムアウト時間に達していない場合、オートマトンは、入力されたログデータが状態Ｂ３０２から状態Ｃ３０３に遷移するための条件ｃと一致するか否かを検査する（図４−１のステップＳ２０８）。
【００４３】
ログデータが条件ｃと一致した場合、オートマトンは、現在の状態Ｂ３０２から状態Ｃ３０３に遷移して（図４−２のステップＳ２０９）、通信ログ検査部１０２またはサーバ計算機１００の計時機能を用いてタイムアウト時間の計測を開始し（図４−２のステップＳ２１０）、通信ログの入力待ちとなる（図４−２のステップＳ２１１）。
【００４４】
ログデータが入力されると、オートマトンは、タイムアウト時間に達しているか否かを判定する（図４−２のステップＳ２１２）。タイムアウト時間に達している場合、オートマトンは検査処理を終了する。
【００４５】
タイムアウト時間に達していない場合、オートマトンは、入力されたログデータが状態Ｃ３０３から状態Ｄ３０４に遷移するための条件ｄと一致するか否かを判定する（図４−２のステップＳ２１３）。
【００４６】
ログデータが条件ｄと一致した場合、オートマトンは、現在の状態Ｃ３０３から状態Ｄ３０４に遷移する（図４−２のステップＳ２１４）。状態Ｄ３０４は、終了状態であるので、オートマトンは、状態Ｄ３０４に設定されている状態コードを通信ログ検査部１０２に通知して（図４−２のステップＳ２１５）検査処理を終了する。
【００４７】
一方、状態Ｂ３０２において通信ログが条件ｃと不一致の場合、オートマトンは、ログデータが現在の状態Ｂ３０２から状態Ｅ３０５に遷移する条件ｅと一致するか否かを判定する（図４−１のステップＳ２１６）。
【００４８】
ログデータが条件ｅと不一致の場合、オートマトンは、入力されたログデータが条件ｃ、または条件ｅと一致するか、タイムアウト時間に達するまで、状態Ｂ３０２のままで入力されるログデータが条件ｃまたは条件ｅと一致するか否かの判定を繰り返す（図４−１のステップＳ２０６〜Ｓ２０８，Ｓ２１６）。
【００４９】
ログデータが条件ｅと一致した場合、オートマトンは、現在の状態Ｂ３０２から状態Ｅ３０５に遷移する（図４−２のステップＳ２１７）。状態Ｅ３０５は、終了状態であるので、オートマトンは、状態Ｅ３０５に設定されている状態コードを通信ログ検査部１０２に通知して（図４−１のステップＳ２１８）検査処理を終了する。
【００５０】
以上説明したように、この実施例１においては、オートマトンによる状態マシンを用いて、通信網を介して接続された１以上の計算機から断続的に受信した通信ログのログデータの中に予め定められた文字列が含まれているか否かを検査し、この検査結果に基づいて通信網または計算機に異常が発生したかを判定するようにしているため、通信網上にある各計算機から収集した複数の通信ログをリアルタイムに、かつ高速に処理し、通信網の異常を検出することができる。
【００５１】
具体的には、複数の通信ログを検査することで検出可能な、通信網を経由して悪意ある情報（コンピュータウィルスやワーム）等の受信や、不正なネットワーク接続（不正侵入行為そのものや、不正侵入を試みる行為）などを検出する場合に、通信ログを記録しておき、その履歴を検索することなく、リアルタイムにかつ高速に処理することができる。
【００５２】
また、この実施例１においては、オートマトンが、つぎの状態に遷移する条件である文字列とつぎに遷移する状態との組が予め設定された複数の状態を有し、ログデータの中に文字列が含まれているか否かを検査し、ログデータの中に前記文字列が含まれている場合にはつぎに遷移する状態に遷移するため、通信網を介して接続された１以上の計算機から受信した通信ログの履歴を検索することなく、受信した通信ログをリアルタイムに検査して通信網の異常を検出することができる。
【００５３】
さらに、この実施例１においては、オートマトンは、同一の状態のままで予め設定された期間を経過した場合には検査を終了するため、通信網上にある各計算機から収集した複数の通信ログの組合せによって通信網の異常を検出する場合に、通信ログを受信した時間を考慮して通信網に異常が発生したか否かを判定することができ、不正侵入の検出間違いを減少することができる。
【００５４】
なお、この実施例１では、サーバ計算機１００と管理装置２０５とを通信網１５０を介さずに接続するようにしたが、サーバ計算機１００と管理装置２０５とは、通信網１５０を介して接続してもかまわない。
【実施例２】
【００５５】
図５〜図７を用いてこの発明の実施例２を説明する。先の実施例１では、通信ログ検査部１０２が１つのオートマトンからなる状態マシンを用いる場合について説明した。この実施例２では、通信ログ検査部１０２が複数のオートマトンからなる状態マシンを用いる場合について説明する。
【００５６】
なお、この発明における実施例２のサーバ計算機が適用される通信システムの構成は、先の図１に示した実施例１の通信システムと同じであるので、ここではその説明を省略する。
【００５７】
図５は、通信ログ検査部１０２を構成する複数のオートマトンを備えた状態マシンの構成を示す図である。図５において、状態マシン４００は、開始状態である状態４１１−１、状態４１１−１が遷移する中間状態である状態４１１−２、状態４１１−２が遷移する中間状態である状態４１１−３、および状態４１１−３が遷移する終了状態である状態４１１−４を有するオートマトン４０１と、開始状態である状態４１２−１、状態４１２−１が遷移する中間状態である状態４１２−２、状態４１２−２が遷移する中間状態である状態４１２−３、および状態４１２−３が遷移する終了状態である状態４１２−４を有するオートマトン４０２と、開始状態である状態４１３−１、状態４１３−１が遷移する中間状態である状態４１３−２、状態４１３−２が遷移する中間状態である状態４１３−３、および状態４１３−３が遷移する終了状態である状態４１３−４を有するオートマトン４０３と、開始状態である状態４１４−１と、状態４１４−１が遷移する中間状態である状態４１４−２と、状態４１４−２が遷移する中間状態である状態４１４−３と、状態４１４−３が遷移する終了状態である状態４１４−４とを有するオートマトン４０４とを備え、オートマトン４０１〜４０４は、それぞれ独立して並列に動作する。
【００５８】
また、オートマトン４０１〜４０４には、予め状態マシン４００がオートマトン４０１〜４０４を識別するための識別番号０〜３が付与されており、識別番号の若番順、すなわちオートマトン４０１、オートマトン４０２、オートマトン４０３、オートマトン４０４の順に、ログデータが伝達される。
【００５９】
つぎに、図６のフローチャートを参照して、図５に示した状態マシン４００を用いた場合の通信ログ検査部１０２の検査処理の動作を説明する。ログデータが入力されると、状態マシン４００は、識別番号０のオートマトン４０１を対象オートマトンとして選択し、対象オートマトンにログデータを出力する（ステップＳ３０１，Ｓ３０２）。
【００６０】
ログデータが入力される（ログデータを受信する）と（ステップＳ３０３）、対象オートマトンは、先の図３を参照して説明した検査処理のオートマトンの動作と同様に、ログデータが現在の状態からつぎの状態に遷移するための条件（ログデータを検査する条件）と一致するか否かを判定する。
【００６１】
ログデータが検査の条件と一致した場合（ステップＳ３０４，Ｙｅｓ）、状態マシン４００は、対象オートマトンの現在の状態が開始状態であるか否かを判定する。対象オートマトンの現在の状態が開始状態の場合（ステップＳ３０５，Ｙｅｓ）、状態マシン４００は、対象オートマトンのコピーを生成して対象オートマトンの後ろに挿入する（ステップＳ３０６）。具体的には、対象オートマトンがオートマトン４０１の場合、図７に示すように、オートマトン４０１をコピーして生成したオートマトン４０１Ａに識別番号１を付与し、先の図５において識別番号１〜３が付与されていたオートマトン４０２〜４０４の識別番号を２〜４に変更する。これにより、オートマトン４０１とオートマトン４０２との間にオートマトン４０１Ａが挿入されたことになる。
【００６２】
状態マシン４００は、現在の対象オートマトンの識別番号に１を加算した識別番号を有するオートマトンを対象オートマトンに変更して（ステップＳ３０７）、変更した対象オートマトンの状態を現在の状態からつぎの状態に遷移させる（ステップＳ３０８）。この場合、状態マシン４００は、オートマトン４０１Ａの状態を状態４１１−１から状態４１１−２に遷移させる。
【００６３】
一方、ログデータが検査の条件と一致したときの対象オートマトンの現在の状態が開始状態ではない（中間状態）の場合（ステップＳ２０５，Ｎｏ）、状態マシン４００は、対象オートマトンの状態を現在の状態からつぎの状態に遷移させる（ステップＳ３０８）。
【００６４】
状態マシン４００は、現在の状態（遷移した後の状態）が終了状態であるか否かを判定する。現在の状態が終了状態の場合（ステップＳ３０９，Ｙｅｓ）、状態マシン４００は、結果を通知して対象オートマトンを終了する（ステップＳ３１０）。
【００６５】
現在の状態が終了状態ではない場合（ステップＳ３０９，Ｎｏ）、対象オートマトンの現在の状態においてログデータが検査の条件と不一致の場合（ステップＳ３０４，Ｎｏ）、または対象オートマトンを終了した後に、状態マシン４００は、対象オートマトンの識別番号に１を加算した識別番号を有するオートマトンが存在するか否かを判定する（ステップＳ３１１，Ｓ３１２）。
【００６６】
対象オートマトンの識別番号に１を加算した識別番号を有するオートマトンが存在する場合には、対象オートマトンの識別番号に１を加算した識別番号を有するオートマトンを対象オートマトンとして選択してログデータを出力して通信ログを検査するステップＳ３０２〜Ｓ３１２の動作を繰り返す。
【００６７】
対象オートマトンの識別番号に１を加算した識別番号を有するオートマトンが存在しない（状態マシン４００内の全てのオートマトンを対象オートマトンとしてログデータの検査が終了した）場合、状態マシン４００は処理を終了して、つぎのログデータの待ち状態となる。
【００６８】
以上説明したように、この実施例２においては、通信ログ検査部を構成する状態マシンが、複数のオートマトンを備える場合には、すべてのオートマトンにログデータを入力し、それぞれのオートマトンが独立して動作して並列にログデータを検査するようにしているため、通信網上にある各計算機から収集した複数の情報をリアルタイムに、かつ高速に処理し、通信網の異常を検出することができる。
【実施例３】
【００６９】
図８を参照してこの発明の実施例３を説明する。先の実施例２では、通信ログ検査部が用いる状態マシンは複数のオートマトンからなり、各オートマトンが独立に動作した。したがって、状態マシンの複数のオートマトンをそれぞれ個別の計算機上に構成することも可能である。この実施例３では、通信ログ検査部を別計算機上に構成する場合について説明する。
【００７０】
図８は、この発明における実施例３のサーバ計算機が適用される通信システムの構成を示す図である。図７に示した通信システムは、先の図１に示した通信システムのサーバ計算機１００の代わりにサーバ計算機１００Ａを備え、通信網１５１を介してサーバ計算機１００Ａと接続される通信ログ検査サーバ１１０，１２０，１３０が追加されている。図１に示した通信システムと同じ機能を持つ構成部分には同一符号を付し、重複する説明は省略する。
【００７１】
サーバ計算機１００Ａは、サーバ計算機１００の通信ログ検査部１０２の代わりに、通信網１５１を介して通信ログ検査サーバ１１０，１２０，１３０と通信を行なう通信インタフェース機能を有する通信ログ検査要求送受信部１０５を備え、通信ログ検査要求送受信部１０５を介して通信ログ検査サーバ１１０，１２０，１３０と検査要求、通信ログ、および検査結果の送受信を行う。
【００７２】
通信ログ検査サーバ１１０，１２０，１３０はそれぞれログ収集管理を行うサーバ計算機１００と検査要求とログデータの受信、検査結果の送信を行うための検査要求送受信部１１１，１２１，１３１と通信ログの検査を行う通信ログ検査部１１２，１２２，１３２を備えている。
【００７３】
通信ログ検査部１１２，１２２，１３２は、実施例１または２のサーバ計算機１００の通信ログ検査部１０２と同様に、１以上のオートマトンを有する状態マシンによって構成されるが、通信ログ検査部１１２，１２２，１３２を構成する状態マシンのオートマトンは、それぞれ異なるオートマトンである。
【００７４】
つぎに、サーバ計算機１００Ａが計算機２０１Ａ，２０２Ａ，２０３Ｂ，２０４Ｃから通信ログ２１を受信した場合の動作を説明する。サーバ計算機１００Ａのログ受信部１０１Ａ，１０１Ｂ，１０１Ｃは、通信ログ２１を受信すると、記憶命令（データベースに応じた形式で）を出力して通信ログをログ記憶装置１０３に記憶させるとともに、通信ログ２１のログデータを通信ログ検査要求送受信部１０５に出力する。
【００７５】
ログ記憶装置１０３が通信ログ２１を記憶するのと平行して通信ログ検査要求送受信部１０５は、ログデータおよび検査要求を通信ログ検査サーバ１１０，１２０，１３０に送信する。
【００７６】
通信ログ検査サーバ１１０，１２０，１３０の検査要求送受信部１１１，１２１，１３１は、サーバ計算機１００Ａの通信ログ検査要求送受信部１０５からのログデータおよび検査要求を受信し、受信したログデータを通信ログ検査部１１２，１２２，１３２に出力する。
【００７７】
通信ログ検査部１１２，１２２，１３２は、先の実施例１および２で説明したように検査処理を実行してログデータを検査する。通信ログ検査部１１２，１２２，１３２は、状態マシンのオートマトンの状態が終了状態まで遷移するか、中間状態においてタイムアウト時間に達した場合に、状態コード、またはタイムアウト時間に達したことを検査結果として検査要求送受信部１１１，１２１，１３１を介してサーバ計算機１００Ａの通信ログ検査要求送受信部１０５に送信する。
【００７８】
サーバ計算機１００Ａの通信ログ検査要求送受信部１０５は、受信した検査結果が異常を検出したことを示す場合、その検査結果（異常結果）をログ記憶装置１０３に記憶させる。
【００７９】
異常結果をログ記憶装置１０３に記憶させた後に通信ログ検査要求送受信部１０５は、送信部１０４を介して、異常を検出したことを通知する異常検出通知１６０を通信網１５０、および／または管理装置２０５に出力する。計算機２０１Ａ，２０２Ａ，２０３Ｂ，２０４Ｃは、通信網１５０から異常検出通知１６０を受信することで、通信システム内に異常があったことを認識し、管理装置２０５は直接サーバ計算機１００からの異常検出通知１６０を受信することで、通信システム内に異常があったことを認識する。
【００８０】
以上説明したように、この実施例３では、通信ログ検査部が複数の状態マシンを備える場合、これらの状態マシンをサーバ計算機と各計算機とを接続する通信網、またはサーバ計算機と各計算機とを接続する通信網とは異なる通信網を介して接続される１以上の通信ログ検査サーバに構築し、通信ログ検査要求送受信部が、ログ受信部によって受信された通信ログのログデータを通信ログ検査サーバに送信して、通信ログ検査サーバに構築した状態マシンによってログデータを検査させ、これらの検査結果を受信するようにして、オートマトンによるログデータの検査処理を分散させるようにしているため、ログデータの検査処理の負荷を分散することができる。
【００８１】
なお、この実施例３では、サーバ計算機１００Ａと通信ログ検査サーバ１１０，１２０，１３０とを、サーバ計算機１００Ａと計算機２０１Ａ，２０２Ａ，２０３Ｂ，２０４Ｃとを接続する通信網１５０とは異なる通信網１５１で接続したが、サーバ計算機１００Ａと計算機２０１Ａ，２０２Ａ，２０３Ｂ，２０４Ｃとを接続する通信網１５０によって通信ログ検査サーバ１１０，１２０，１３０とサーバ計算機１００Ａとを接続してもかまわない。
【産業上の利用可能性】
【００８２】
以上のように、この発明にかかるサーバ計算機は、不正アクセスの検出装置や、通信障害の検出装置として有用であり、特に、複数の通信ログにわたって検査を行なうことによる異常を検出する場合に適している。
【図面の簡単な説明】
【００８３】
【図１】この発明における実施例１のサーバ計算機が適用される通信システムの構成を示す図である。
【図２】図１に示した通信システムの動作を説明するためのフローチャートである。
【図３】図１に示した通信ログ検査部が用いる状態マシンが有するオートマトンの構成の一例を示す図である。
【図４−１】図１に示した通信ログ検査部の検査処理の動作を説明するためのフローチャートである。
【図４−２】図１に示した通信ログ検査部の検査処理の動作を説明するためのフローチャートである。
【図５】この発明における実施例２の通信ログ検査部を構成する複数のオートマトンを備えた状態マシンの構成を示す図である。
【図６】図５に示した状態マシンを用いた通信ログ検査部の検査処理の動作を説明するためのフローチャートである。
【図７】図５に示した状態マシンを用いた通信ログ検査部の検査処理の動作を説明するための図である。
【図８】この発明における実施例３のサーバ計算機が適用される通信システムの構成を示す図である。
【符号の説明】
【００８４】
２１，２１１Ａ，２１２Ａ，２１３Ｂ，２１４Ｃ  通信ログ
２２Ａ，２２Ｂ，２２Ｃ  プロトコル
１００，１００Ａ  サーバ計算機
１０１Ａ，１０１Ｂ，１０１Ｃ  ログ受信部
１０２，１１２，１２２，１３２  通信ログ検査部
１０３  ログ記憶装置
１０４  送信部
１０５  通信ログ検査要求送受信部
１１０，１２０，１３０  通信ログ検査サーバ
１１１，１２１，１３１  検査要求送受信部
１５０，１５１  通信網
２０１Ａ，２０２Ｂ，２０３Ｂ，２０４Ｃ  計算機
２０５  管理装置
３０１，３０２，３０３，３０４，４１１−１，４１１−２，４１１−３，４１１−４，４１２−１，４１２−２，４１２−３，４１２−４，４１３−１，４１３−２，４１３−３，４１３−４，４１４−１，４１４−２，４１４−３，４１４−４  状態
４００  状態マシン
４０１，４０２，４０３，４０４，４０１Ａ  オートマトン
【図１】
2006350654.tif 000003
【図２】
2006350654.tif 000004
【図３】
2006350654.tif 000005
【図４−１】
2006350654.tif 000006
【図４−２】
2006350654.tif 000007
【図５】
2006350654.tif 000008
【図６】
2006350654.tif 000009
【図７】
2006350654.tif 000010
【図８】
2006350654.tif 000011
【手続補正書】
【提出日】平成17年6月15日(2005.6.15)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
【特許文献１】特開２００５−１２８６０９号公報