"ネットワークに関する分析を行うネットワーク分析システムにおいて、1又は複数のデータ処理モジュールと、上記データ処理モジュールを収容し、上記データ処理モジュールを用いて、上記ネットワークに関する分析処理を行うネットワーク分析装置とを備え、上記ネットワーク分析装置は、上記データ処理モジュールを収容するデータ処理モジュール収容手段と、上記ネットワークに関する分析対象データを保持する分析対象データ保持手段と、上記分析対象データ保持手段が保持した分析対象データの処理を、一部又は全部の上記データ処理モジュールを用いて行う工程を定義したデータ処理定義情報を格納するデータ処理定義情報格納手段と、上記データ処理定義情報格納手段に格納されたデータ処理定義情報に基づいたデータ処理を、上記データ処理モジュールに実行させて、そのデータ処理結果を得るデータ処理実行手段とを有し、それぞれの上記データ処理モジュールは、上記ネットワーク分析装置と接続する接続手段と、上記ネットワーク分析装置からの要求に応じたデータ処理を行うデータ処理手段とを有することを特徴とするネットワーク分析システム。上記ネットワーク分析装置は、上記データ処理モジュール収容手段に収容されている上記データ処理モジュールを管理するデータ処理モジュール管理手段と、上記データ処理定義情報格納手段に格納されているデータ処理定義情報に関する情報を管理するデータ処理定義情報管理手段とをさらに備えることを特徴とする請求項1に記載のネットワーク分析システム。1又は複数のデータ処理モジュールを収容し、上記データ処理モジュールを用いて、上記ネットワークに関する分析処理を行うネットワーク分析装置であって、上記データ処理モジュールを収容するデータ処理モジュール収容手段と、上記ネットワークに関する分析対象データを保持する分析対象データ保持手段と、上記分析対象データ保持手段が保持した分析対象データの処理を、一部又は全部の上記データ処理モジュールを用いて行う工程を定義したデータ処理定義情報を格納するデータ処理定義情報格納手段と、上記データ処理定義情報格納手段に格納されたデータ処理定義情報に基づいたデータ処理を、上記データ処理モジュールに実行させて、そのデータ処理結果を得るデータ処理実行手段とを備えることを特徴とするネットワーク分析装置。1又は複数のデータ処理モジュールを収容し、上記データ処理モジュールを用いて、上記ネットワークに関する分析処理を行うネットワーク分析装置に搭載されたコンピュータを、上記データ処理モジュールを収容するデータ処理モジュール収容手段と、上記ネットワークに関する分析対象データを保持する分析対象データ保持手段と、上記分析対象データ保持手段が保持した分析対象データの処理を、一部又は全部の上記データ処理モジュールを用いて行う工程を定義したデータ処理定義情報を格納するデータ処理定義情報格納手段と、上記データ処理定義情報格納手段に格納されたデータ処理定義情報に基づいたデータ処理を、上記データ処理モジュールに実行させて、そのデータ処理結果を得るデータ処理実行手段として機能させることを特徴とするネットワーク分析プログラム。請求項3に記載のネットワーク分析装置と接続する接続手段と、上記ネットワーク分析装置からの要求に応じたデータ処理を行うデータ処理手段とを有することを特徴とするデータ処理モジュール。コンピュータを、請求項3に記載のネットワーク分析装置と接続する接続手段と、上記ネットワーク分析装置からの要求に応じたデータ処理を行うデータ処理手段として機能させることを特徴とするデータ処理プログラム。しかしながら、従来、ISPInternetServiceProvider事業者等が、自社のネットワーク設備について、利用状況や動作状態に関して上述の従来技術例えば、特許文献1~特許文献4の記載技術を用いて分析するネットワーク分析システムを構築した場合、以下のような問題があった。特許文献1~4に示されるように、ネットワーク分析システムで用いられる処理アルゴリズムは複雑な処理が必要であり、さらに、短時間に大量の処理を行う必要があるため特に、広帯域のネットワークについてリアルタイムに監視を行う場合、従来は、分析したい内容に特化したシステム開発が必要とされていた。そのため、従来のネットワーク分析システムでは、後から柔軟な仕様変更例えば、処理アルゴリズムの方式変更や処理工程の追加等を行うことや、既に構築したシステムのリソースを流用して別仕様のシステム構築を行うこと等が困難であった。上述のような問題に鑑みて、ネットワークの利用状況や動作状態に関する分析処理において、容易に構成を変更することができるネットワーク分析システム、並びに、ネットワーク分析装置及びネットワーク分析プログラム、並びに、データ処理モジュール及びデータ処理プログラムが望まれている。第1の本発明は、ネットワークに関する分析を行うネットワーク分析システムにおいて、11又は複数のデータ処理モジュールと、上記データ処理モジュールを収容し、上記データ処理モジュールを用いて、上記ネットワークに関する分析処理を行うネットワーク分析装置とを備え、2上記ネットワーク分析装置は、2-1上記データ処理モジュールを収容するデータ処理モジュール収容手段と、2-2上記ネットワークに関する分析対象データを保持する分析対象データ保持手段と、2-3上記分析対象データ保持手段が保持した分析対象データの処理を、一部又は全部の上記データ処理モジュールを用いて行う工程を定義したデータ処理定義情報を格納するデータ処理定義情報格納手段と、2-4上記データ処理定義情報格納手段に格納されたデータ処理定義情報に基づいたデータ処理を、上記データ処理モジュールに実行させて、そのデータ処理結果を得るデータ処理実行手段とを有し、3それぞれの上記データ処理モジュールは、3-1上記ネットワーク分析装置と接続する接続手段と、3-2上記ネットワーク分析装置からの要求に応じたデータ処理を行うデータ処理手段とを有することを特徴とする。第2の本発明は、1又は複数のデータ処理モジュールを収容し、上記データ処理モジュールを用いて、上記ネットワークに関する分析処理を行うネットワーク分析装置であって、1上記データ処理モジュールを収容するデータ処理モジュール収容手段と、2上記ネットワークに関する分析対象データを保持する分析対象データ保持手段と、3上記分析対象データ保持手段が保持した分析対象データの処理を、一部又は全部の上記データ処理モジュールを用いて行う工程を定義したデータ処理定義情報を格納するデータ処理定義情報格納手段と、4上記データ処理定義情報格納手段に格納されたデータ処理定義情報に基づいたデータ処理を、上記データ処理モジュールに実行させて、そのデータ処理結果を得るデータ処理実行手段とを備えることを特徴とする。第3の本発明のネットワーク分析プログラムは、11又は複数のデータ処理モジュールを収容し、上記データ処理モジュールを用いて、上記ネットワークに関する分析処理を行うネットワーク分析装置に搭載されたコンピュータを、2上記データ処理モジュールを収容するデータ処理モジュール収容手段と、2上記ネットワークに関する分析対象データを保持する分析対象データ保持手段と、3上記分析対象データ保持手段が保持した分析対象データの処理を、一部又は全部の上記データ処理モジュールを用いて行う工程を定義したデータ処理定義情報を格納するデータ処理定義情報格納手段と、4上記データ処理定義情報格納手段に格納されたデータ処理定義情報に基づいたデータ処理を、上記データ処理モジュールに実行させて、そのデータ処理結果を得るデータ処理実行手段として機能させることを特徴とする。第4の本発明のデータ処理モジュールは、1ネットワーク分析装置と接続する接続手段と、2上記ネットワーク分析装置からの要求に応じたデータ処理を行うデータ処理手段とを有することを特徴とする。第5の本発明のデータ処理プログラムは、コンピュータを、1ネットワーク分析装置と接続する接続手段と、2上記ネットワーク分析装置からの要求に応じたデータ処理を行うデータ処理手段として機能させることを特徴とする。本発明によれば、ネットワークの利用状況や動作状態に関する分析処理において、容易に構成を変更することができるネットワーク分析システムを提供することができる。A主たる実施形態以下、本発明によるネットワーク分析システム、並びに、ネットワーク分析装置及びネットワーク分析プログラム、並びに、データ処理モジュール及びデータ処理プログラムの一実施形態を、図面を参照しながら詳述する。なお、この実施形態のデータ処理モジュールはエンジンである。A-1実施形態の構成図1は、この実施形態のネットワーク分析システム10の機能的構成を示すブロック図である。この実施形態のネットワーク分析システム10は、内部ネットワークN1と外部ネットワークN2との間に配置されたルータ400に流れるトラフィックに基づいて、ネットワークに関する分析例えば、利用状況や動作状況等の分析を行い、その分析結果を出力する。なお、ネットワーク分析システム10が分析の対象とするトラフィックは限定されないものである。そして、ネットワーク分析システム10は、分析結果について、必要に応じてオペレーティングサーバOPS30へ出力する。内部ネットワークN1は、例えば、通信キャリア例えば、ISP事業者等のネットワークが該当し、外部ネットワークN2はインターネット等のグローバルなネットワークが該当する。そして、ネットワーク分析システム10が、分析に必要なトラフィックのデータを取得する対象となるルータ400は、内部ネットワークN1を外部ネットワークN2に接続させるためのネットワーク装置であるものとする。そして、OPS300としては、例えば、内部ネットワークN1について運用監視等を行うオペレータが使用する端末が該当する。次に、ルータ400の構成について説明する。ルータ400は、インタフェース410、インタフェース420、パケット処理部430、及びエクスポート処理部440を有している。インタフェース420は、内部ネットワークN1と接続するためのインタフェースであるものとする。また、インタフェース410は、外部ネットワークN2に接続するためのインタフェースであるものとする。内部ネットワークN1及び外部ネットワークN2のインタフェースの種類は限定されないものであるが、例えば、10ギガビットイーサネット登録商標や、ギガビットイーサネット等のインタフェースを適用することができる。そして、パケット処理部430は、インタフェース410、420で送受信するパケットの処理ルーティング処理等を行うものである。なお、パケット処理部430は、既存のルータと同様の構成を提供することができる。なお、ネットワーク分析システム10では、インタフェース410で送受信及び観測されるトラフィックIPパケットに関する分析が行われるものとして説明する。エクスポート処理部440は、ネットワーク分析システム10からの制御に応じて、分析に必要なデータを収集し、必要に応じて加工してから転送するエクスポータエージェントの機能を担っている。エクスポート処理部440では、ネットワーク分析システム10に出力するデータに関するルール以下、出力ルールと呼ぶを定義した情報を格納する出力ルール格納部441を備えている。エクスポート処理部440は、ネットワーク分析システム10からの制御に応じて、出力ルール格納部441の定義内容を変更する。そして、エクスポート処理部440は、出力ルール格納部441に格納された情報に従って、データ収集を行って、必要に応じて加工してネットワーク分析システム10に供給する。以下では、ネットワーク分析システム10で、ルータ400エクスポート処理部440から供給されるデータを、レポートデータと呼ぶものとする。また、ルータ400エクスポート処理部440から送出されるレポートデータが挿入されたパケットをレポートパケットと呼ぶものとする。エクスポート処理部440の具体的な処理構成としては、例えば、NetFlow参考文献1IETFRFC3954参照、IPFIX参考文献2IETFRFC5101参照、sFlow参考文献3IETFRFC3176参照等の従来技術における、エクスポータエージェントの処理構成を適用することができるので詳しい説明を省略する。次に、ネットワーク分析システム10の構成について説明する。ネットワーク分析システム10は、システムのプラットフォームとして機能するネットワーク分析装置100と、ネットワーク分析装置100上で動作し、データ処理を行うエンジン200200-1~200-6とを有している。なお、エンジン200の数は限定されないものである。ネットワーク分析装置100は、ルータ400から供給されたトラフィックに関するデータレポートデータを、一部又は全部のエンジン200を用いて処理し、主として、ネットワーク内部ネットワークN1及び外部ネットワークN2に関する利用状況や動作状態に関する分析処理を行う。すなわち、ネットワーク分析システム10において、各エンジン200は、レポートデータ等のデータ処理を行うためのデータ処理モジュールとして機能するものである。そして、ネットワーク分析装置100は、一部又は全部のエンジン200を組み合わせて利用し、ネットワークに関する利用状況や動作状態に関する分析を行う。ネットワーク分析装置100は、エンジン連携処理部110、エンジン共通駆動部120、処理ルール格納部130、出力ルール設定部140及びログ蓄積部150を有している。ネットワーク分析装置100は、例えば、CPU、ROM、RAM、EEPROM、ハードディスクなどのプログラムの実行構成、及び、ネットワークに接続するためのインタフェースを有する装置に、実施形態のネットワーク分析プログラム等をインストールすることにより構築するようにしても良く、その場合でも、機能的構成は図1のように示すことができる。また、ネットワーク分析装置100について、一部又は全部をハードウェア例えば、専用チップ等により構築するようにしても良い。エンジン連携処理部110は、ルータ400から送出されたレポートパケットを受信してレポートデータを抽出する。なお、エンジン連携処理部110がレポートパケットを受信してレポートデータを抽出する処理構成としては、例えば、上述の参考文献1~参考文献3等の従来技術におけるエクスポータエージェントに対応するコレクタマネージャと同様の構成を適用することができる。そして、エンジン連携処理部110は、抽出したレポートデータについて、処理ルール格納部130に格納された処理ルールに従って、そのレポートデータの処理を、エンジン200に実行させる。エンジン連携処理部110は、エンジン200に対する制御や処理を依頼する等、エンジン200に対する入出力を行う場合には、エンジン共通駆動部120を介した通信を行う。エンジン共通駆動部120は、各エンジン200、エンジン連携処理部110及びログ蓄積部150と接続し、各構成要素の間の通信処理スイッチ処理等を行う機能を担っている。すなわち、エンジン共通駆動部120は、ネットワーク分析装置100において、各エンジン200を収容する機能を担っている。また、ここでは、エンジン200-1~200-6に対してそれぞれ1~6という識別子以下、エンジンIDと呼ぶが付与されているものとして以下の説明を行う。例えば、エンジン200-1の識別子は1となり、エンジン200-2の識別子は2となる。処理ルール格納部130には、エンジン連携処理部110がエンジン200を用いたデータ処理を行う場合の処理工程等に関するルール以下、処理ルールと呼ぶを定義したデータが格納されている。処理ルールの詳細については後述する。そして、処理ルール格納部130に格納された各処理ルールについては、エンジン連携処理部110の処理ルール管理テーブル111で管理されている。処理ルール管理テーブル111には、各処理ルールに関する情報例えば、入力するレポートデータの形式や、処理に用いるエンジン200等が管理されている。処理ルール管理テーブル111の詳細については後述する。出力ルール設定部140は、処理ルール管理テーブル111で管理されている情報に従って、各処理ルールで必要とするレポートデータが取得できるように、ルータ400エクスポート処理部440へ、レポートデータの送信内容条件設定を依頼する。出力ルール設定部140が、ルータ400エクスポート処理部440へ、レポートデータの送信内容条件設定を依頼する構成については、例えば、上述の参考文献1~参考文献3に記載されたエクスポータエージェントに対応するコレクタマネージャと同様の構成を適用することができる。そして、ルータ400エクスポート処理部440から送出されたレポートデータは、上述の通り、エンジン連携処理部110で取得されることになる。すなわち、ネットワーク分析装置100では、出力ルール設定部140及びエンジン連携処理部110により、ルータ400エクスポート処理部440から、レポートデータネットワーク分析装置100で分析対象となるデータを保持する処理が行われる。ログ蓄積部150は、エンジン共通駆動部120に接続しており、各エンジン200の処理に関するログを蓄積するものである。ログ蓄積部150には、エンジン200ごとの、入力データ及び又は出力データや、データ処理の中間データ等が格納される。エンジン共通駆動部120は、例えば、各エンジン200で入出力されるデータや、各エンジン200からの依頼に基づくデータを、ログ蓄積部150に供給し、ログ蓄積部150では供給されたデータを、エンジン200ごとに分類して蓄積するものとする。次に、処理ルール格納部130に格納される処理ルールの具体的な内容について説明する。ここでは、処理ルール格納部130には、2つの処理ルールR1、R2が格納されているものとする。図2は、処理ルール格納部130に格納される処理ルールの定義内容の例について示した説明図である。図2aは、処理ルールR1の内容について示しており、図2bは、処理ルールR2の内容について示している。処理ルールを定義する記述形式については限定されないものであるが、ここでは、図2に示すような、C言語タイプのスクリプト形式で記述されるものとする。処理ルールは、おおまかに、入力データとして用いるレポートデータに関する定義を行うステップ以下、入力データ定義ステップとよぶ図2aのステップS101、図2bのステップS201と、エンジン200を用いたデータ処理を定義するステップ以下、データ処理定義ステップと呼ぶ図2aのステップS102、図2bのステップS202と、当該処理ルールで出力するデータに関する定義を行うステップ以下、出力データ定義ステップと呼ぶ図2aのステップS103、図2bのステップS203の3つのステップを有している。まず、入力データ定義ステップステップS101、ステップS201について説明する。この実施形態では、処理ルールで用いられる入力データレポートデータの形式は、インタフェースで観測されるトラフィックをダンプしたpcap形式のようなトラフィックデータ所定のインターバルの間に発生したIPパケット列のバイナリーデータ、又はインタフェースで観測されたトラフィックを設定されたサンプリング間隔で抽出してnetflowsfloipfixなどのようなフロー情報として出力するフローレコード所定のインターバルの間に発生したIPパケット列に係る所定項目の統計情報のいずれか,あるいは双方であるものとする。入力データレポートデータの形式については、さらに細かく分類して定義するようにしても良いが、この実施形態では説明を簡易にするための上述の2種類のみであるものとして説明する。そして、処理ルールR1の入力データ定義ステップステップS101では、input1=trafficdataと記述されており、input1処理ルールR1の第1の入力データの形式は、trafficdataトラフィックデータの形式であることを示している。一方、処理ルールR2の入力データ定義ステップステップS102では、input1=flowrecordと記述されており、input1処理ルールR2の第1の入力データの形式は、flowrecordフローレコードの形式であることを示している。なお、入力データ定義ステップでは、例えばinput2=...というような記述で、複数の入力データに関する定義を行うようにしても良い。次に、処理ルールを構成するデータ処理定義ステップステップS102、ステップS202について説明する。図2に示すように、処理ルールR1のデータ処理定義ステップステップS102は、3つのサブステップS102-1~S102-3を有している。また、処理ルールR2のデータ処理定義ステップステップS202は、3つのサブステップS202-1~S202-3を有している。データ処理定義ステップでは、EngineNNは、当該エンジン200の識別子1~6のいずれかを名称クラス名とした関数クラスを用いて、各エンジン200に実行させる処理を定義するものとする。データ処理定義ステップで、任意のエンジン200識別子がEngineNのエンジン200に、任意の入力データinputdataについて、任意のパラメータparameter例えば、データ処理を行う際の閾値等を指定して処理を実行させ、任意の出力形式outputtypeでデータを出力させる場合には、EngineNという記述で表すことができるものとする。データ処理定義ステップの記述形式は限定されないものであり、複数の記述形式に対応するようにしても良いが、ここでは説明を簡易にするために、ネットワーク分析装置100では、上述の形式について対応するものとして説明する。なお、データ処理定義ステップにおいて、inputdata以外のパラメータoutputtype及びparameterについては、明示的に指定する必要が無い場合には、記述を省略するようにしても良い。なお、以下では、inputdata以外のパラメータについて付加パラメータと呼ぶものとする。また、図2では、outputtype及びparameterについて、説明を簡易にするためにoutputtype1やparameter1といった記述をしているが、実際にはエンジン連携処理部110でそれらのパラメータに対して、具体的な内容を定義defineしたデータ図示せずが保持されているものとする。例えば、処理ルールR1のデータ処理定義ステップステップS102を構成するステップS102-1では、Engine1と記述されているが、これは、Engine1エンジン200-1に対して、input1ステップS101で定義された入力データについて、parameter1というパラメータを指定して処理を実行させ、outputtype1の出力形式の出力データを得ることを意味している。次に、処理ルールR1のデータ処理定義ステップステップS102の内容について説明する。ステップS102-1の内容については、上述の通りである。そして、ステップS102-1に続くステップS102-2では、Analyze2Engine2と記述されているので、Engine2エンジン200-2に対して、ステップS102-1で得たAnalyze1を入力としたデータ処理を実行させ、その結果をAnalyze2という変数に代入させる処理を意味している。さらに、ステップS102-2に続くステップS102-3では、Analyze3Engine3と記述されているので、Engine3エンジン200-3に対して、ステップS102-1で得たAnalyze2を入力としたデータ処理を実行させ、その結果をAnalyze3という変数に代入させる処理を意味している。すなわち、処理ルールR1のデータ処理定義ステップステップS102では、入力データinput1について、まず、エンジン200-1Engine1に処理させ、さらにその処理結果をエンジン200-2Engine2に処理させ、さらにその処理結果をエンジン200-3Engine3に処理させるという入れ子の構造構文で記述されている。言い換えると、処理ルールR1のデータ処理定義ステップステップS102では、エンジン200-1Engine1、エンジン200-2Engine2、エンジン200-3Engine3の順で直列的に、入力データinput1を処理させる構造構文となっている。次に、処理ルールR1のデータ処理定義ステップステップS102の具体的な処理エンジン200-1~200-3の具体的な処理の例について説明する。処理ルールR1では、ルータ400を流れる音声や動画等のリアルタイム通信に関するトラフィックを分析するものとする。具体的には、処理ルールR1は、RTP/RTCPReal-timeTransportProtocol/RTPControlProtocol通信のパケット特にRTCPのパケットを抽出した分析を行うものとする。まず、ステップS102-1で、エンジン200-1Engine1に入力データinput1として、トラフィックデータ全てのIPパケットのデータを入力し、RTCPパケットだけを抽出させたデータAnalyze1を得る。そして、エンジン200-1Engine1で得た、RTCPパケットのデータAnalyze1を、エンジン200-2Engine2に入力して、RTCPパケットに含まれる品質値遅延,パケットロス等をもとに通信品質が有意に劣化していると考えられるフローのIPアドレスの組合せRTCPパケットの送信元及び送信先のIPアドレスの組合せから,所定の回数Parameter2で指定以上出現しているIPアドレスの組み合わせを抽出し、それらのIPアドレスの組合せのデータ及び、当該組合せに係るRTCPパケットに含まれる通信品質に関するパラメータ値のデータ複数存在する場合には平均値を用いるようにしても良いを含むデータAnalyze2を得る。そして、エンジン200-2Engine2で得た、IPアドレスの組合せ及び、当該組合せに係るパラメータ値のデータAnalyze2を、エンジン200-3Engine3に入力して、一定時間内に発生した品質劣化の回数が閾値を越えた場合にネットワーク異常と判定し、その判定結果とIPアドレスの組み合わせをAnalyze3として得る。エンジン200-3Engine3から出力される判定結果Analyze3は、一定時間内にネットワーク品質劣化が発生したと判断されたIPアドレスの対を返すか,品質劣化が無い場合は0を返す。この実施形態において、処理ルールR1では、以上のような流れで、入力データinput1:trafficdataについて、エンジン200-1~200-3に直列的にデータ処理を実行させ、ネットワーク異常の有無を判定することができる。次に、処理ルールR2のデータ処理定義ステップステップS202の内容について説明する。処理ルールR1では、上述の通り、入力データinput1を複数のエンジンで直列的に処理させているが、処理ルールR2では並列的に処理を行う。具体的には、処理ルールR2のステップS202-1では、入力データinput1についてエンジン200-4Engine4で処理を行わせて、その結果を、Analyze1という変数に代入させている。また、処理ルールR2のステップS202-2では、入力データinput1についてエンジン200-5Engine5で処理を行わせて、その結果を、Analyze2という変数に代入させている。さらに、処理ルールR2のステップS202-3では、入力データinput1についてエンジン200-6Engine6で処理を行わせて、その結果を、Analyze3という変数に代入させている。次に、処理ルールR2のデータ処理定義ステップステップS202の具体的な処理エンジン200-4~200-6の具体的な処理の例について説明する。エンジン200-4~200-6は、フローレコードの形式の入力データを蓄積し、過去に蓄積したデータと、最新に取得したフローレコード形式のデータとに基づいて、それぞれ異なるアルゴリズムで、現在のネットワーク異常の有無を判定する処理を行い、その判定結果をAnalyze1~Analyze3として得る。ここでは、例として、エンジン200-4は、特許文献1の記載技術のように傾向変化度を利用して、一定割合以上parameter1で指定のエラー要因となっているIPアドレス若しくは経路を得た場合に、ネットワーク異常が発生したと判定するものとする。また、エンジン200-5は、特許文献3の記載技術のように、RF法を用いた判定により、現在のネットワークの異常ネットワークの品質劣化の有無を判定するものとする。さらに、エンジン200-6は、特許文献4の記載技術のように、ニューラルネットワークニューロを用いた学習機を利用して、現在のネットワークの異常ネットワークの品質劣化の有無を判定するものとする。エンジン200-4~200-6Engine4~Engine6から出力される判定結果Analyze1~Analyze3は、ネットワーク異常と判定した場合には1、ネットワーク異常はないと判定した場合は0の値を取るものとする。この実施形態において、処理ルールR2では、以上のような流れで、入力データinput1:flowrecordについて、エンジン200-4~200-6に並列的にデータ処理を実行させ、それぞれ異なるアルゴリズムで、ネットワーク障害に関する判定結果を取得することができる。次に、処理ルールを構成する出力データ定義ステップステップS103、ステップS203について説明する。処理ルールR1の出力データ定義ステップステップS103では、図2aに示すように、単にReturnanalyze3と記述されており、処理ルールR1の処理結果としてanalyze3という変数を戻り値のデータとして出力することを示している。エンジン連携処理部110では、各処理ルールについて、Returnという関数により、戻り値として出力されたデータを取得し、当該処理ルールによる分析結果として、出力する処理を行う。この実施形態の処理ルールを構成する出力データ定義ステップでは、分析処理の結果、ネットワークの利用状況や動作状態に関して異常を検知した場合には戻り値として1を出力し、異常が無い場合正常の場合には戻り値として0を出力するものとする。一方、処理ルールR2の出力データ定義ステップステップS103では、図2aに示すように、If2return1Elsereturn0と記述されており、If文を用いた構文となっている。ここでは、analyze1、analyze2、analyze3のそれぞれは、上述の通り、0又は1が代入される。そうすると、上述のIf文を用いた構文では、analyze1、analyze2、analyze3のうち2つ以上で1が代入された場合に、Ifの条件が成立し処理ルールR2の戻り値として1が出力されることになる。一方、If文の条件が成立しなかった場合1を出力したエンジン200が2つ未満だった場合には、処理ルールR2の戻り値として0が出力されることになる。上述の通り、エンジン200-4~200-6では、それぞれ異なるアルゴリズムで、ネットワークに関する障害の有無を判定している。したがって、処理ルールR2の出力データ定義ステップステップS203では、エンジン200-4~200-6のうち2つ以上でネットワーク異常が検知された場合多数決でネットワーク異常を検知したエンジン200が多かった場合にのみ、最終的な判定結果をネットワーク異常有りと判定していると言える。以上のように、処理ルールR2では、複数のエンジン200の判定結果を総合して、最終的なネットワーク異常の判定を行っている。以上の通り、エンジン連携処理部110では、各処理ルールのスクリプトが実行される。そして、エンジン連携処理部110は、各処理ルールのスクリプトを実行した結果、異常検出を意味する1が戻り値として取得された場合、当該処理ルールにより異常を検知したことをOPS300に対して通知する処理例えば、SNMPのTrap等を用いた通知処理を行う。エンジン連携処理部110が、ネットワーク異常の発生を通知する際には、処理ルールごとに対応するメッセージ例えば、異常の原因を示すメッセージを合わせて通知するようにしても良い。エンジン連携処理部110が、OPS300に対して通知するメッセージについては、例えば、処理ルール管理テーブル111管理で、項目を追加して管理するようにしても良いし、出力データ定義ステップの中で記述するようにしても良い。なお、エンジン連携処理部110が分析結果を出力する方式は限定されないものであり、例えば、内部にログ履歴として蓄積するようにしても良いし、OPS300ではなく自装置でディスプレイ等に表示出力するようにしても良い。そして、OPS300では、エンジン連携処理部110から異常通知があった場合例えば、SNMPによりTrap通知等があった場合には、その旨の警報を発して、オペレータにネットワークで異常が発生したことを知らせる。OPS300により警報を発生させる方式は限定されないものであるが、例えば、図示しないディスプレイに表示出力したり、図示しないスピーカによりアラーム音を音声出力したり、図示しないランプを発光させる等の種々の方式を適用することができる。OPS300の具体的な構成については限定されないものであるが、例えば既存のSNMPに対応したネットワーク監視装置SNMPマネージャ等を適用することができる。次に、エンジン連携処理部110で保持される処理ルール管理テーブル111の内容例について説明する。図3は、処理ルール管理テーブル111の内容例について示した説明図である。図3では、上述の図2の処理ルールR1、R2が、処理ルール格納部130に格納された場合の処理ルール管理テーブル111の内容について示している。図3に示すように、処理ルール管理テーブル111には、ルールID、使用エンジン、インターバル、入力データ形式の項目の情報が登録されている。図3では、1行で、一つの処理ルールに関する情報が管理されている。ルールIDの項目は、各処理ルールの識別子を示す項目である。ここでは、処理ルールR1のルールIDを1、処理ルールR2のルールIDを2であるものとして説明する。使用エンジンの項目は、当該処理ルールのデータ処理定義ステップで使用されるエンジン200について管理するための項目である。使用エンジンの項目では、図3に示すように各エンジンのエンジンIDごとに1又は0の値が設定される。使用エンジンの項目において、エンジンIDに対する値が0の場合は、当該処理ルールではそのエンジンIDのエンジン200は使用されないことを意味している。一方、使用エンジンの項目において、エンジンIDに対する値が1の場合は、当該処理ルールではそのエンジンIDのエンジン200は使用されることを意味している。例えば、処理ルールR1ルールID:1では、エンジンIDが1~3のエンジン200-1~200-3が使用されることを示している。インターバルの項目は、当該処理ルールのスクリプトを実行するインターバル間隔について示している。インターバルは、時間を単位として示しても良いし、パケットの発生数ルータ400から供給されるレポートデータに含まれるパケットの数で示しても良い。また、入力データ形式の項目は、当該処理ルールの入力データ定義ステップで定義される入力データの形式を示している。図3では、処理ルールR1ルールID:1のインターバルは10000パケット、入力データ形式はtrafficdataとなっている。したがって、エンジン連携処理部110は、前回処理ルールR1を実行してから、パケットの発生数ルータ400から供給されるレポートデータに含まれるパケットの数が10000個に達した時点で、その10000個分のパケットのデータを含むトラフィックデータ形式のレポートデータを入力として、処理ルールR1の実行を開始することを示している。また、図3では、処理ルールR2ルールID:2のインターバルは10秒、入力データ形式はflowrecordとなっている。したがって、エンジン連携処理部110は、前回処理ルールR2を実行してから、10秒経過すると、その間に供給されたフローレコードの形式のレポートデータを入力として、処理ルールR2の実行を開始することを示している。処理ルール管理テーブル111の内容は、ユーザの操作に応じた内容を登録するようにしても良いし、エンジン連携処理部110が、処理ルール格納部130に追加された処理ルールの内容に応じて更新するようにしても良い。エンジン連携処理部110が、各処理ルールについて、処理ルール管理テーブル111の各項目の情報を把握する手段については限定されないものである。例えば、処理ルール格納部130で処理ルールのデータと共に、処理ルール管理テーブル111の各項目の情報についても格納しておき、エンジン連携処理部110に読み込ませるようにしても良い。また、エンジン連携処理部110が、処理ルール格納部130に格納された処理ルールのスクリプトの内容を参照して、処理ルール管理テーブル111に反映させるようにしても良い。例えば、処理ルール格納部130に新たな処理ルールが追加された場合に、エンジン連携処理部110が、その処理ルールを構成する入力データ定義ステップの内容を読み取って、当該処理ルールの入力データの形式を確認trafficdata又はflowrecordを把握して、入力データ形式の項目に反映するようにしても良い。また、例えば、処理ルール格納部130に新たな処理ルールが追加された場合に、エンジン連携処理部110が、その処理ルールを構成するデータ処理定義ステップの内容を読み取って、当該処理ルールで使用するエンジン200エンジンIDを把握して、使用エンジンの項目に反映するようにしても良い。次に、エンジン連携処理部110で保持されるエンジン管理テーブル112の内容例について説明する。図4は、エンジン管理テーブル112の内容例について示した説明図である。図4では、エンジン200-1~200-6エンジンID:1~6が、エンジン共通駆動部120に接続されている場合のエンジン管理テーブル112の内容について示している。図4に示すように、エンジン管理テーブル112には、エンジンID、IF番号、エンジン名、処理概要の項目の情報が登録されている。図4では、1行で、一つの処理ルールに関する情報が管理されている。エンジンIDの項目は、当該エンジン200に付与されているエンジンID処理ルールの定義等で用いられるIDを示している。IF番号の項目は、当該エンジン200が、エンジン共通駆動部120上でインストールされているインタフェースの番号論理的又は物理的なインタフェースの識別子を示している。図4では、それぞれのエンジン200について、エンジンIDとIF番号は別項目として記述しているが、内容が一致する場合には一つの項目にまとめて記述するようにしても良い。エンジン名の項目は当該エンジン200の名称について示している。また、処理概要の項目は、当該エンジン200の処理の概要について示している。なお、エンジン名及び処理概要の項目については、エンジン管理テーブル112において必須の項目ではなく省略するようにしても良い。エンジン連携処理部110は、新たにエンジン200がインストールエンジン共通駆動部120に接続された場合や、既にインストールされているエンジン200がアンインストールエンジン共通駆動部120から切断された場合に、エンジン管理テーブル112の内容を更新するが、その処理については、後述する動作説明の項で説明する。次に、エンジン200200-1~200-6の内部構成について説明する。ここでは、各エンジン200の基本的な構成フレームワークについては、全て同じであり、実行するデータ処理の内容が異なっているだけであるものとして説明する。図5は、各エンジン200の機能的構成について示したブロック図である。各エンジン200は、ネットワーク分析装置100とは別個のハードウェアコンピュータに、実施形態のデータ処理プログラムをインストールすることにより構築しても良いし、ネットワーク分析装置100のコンピュータ上で動作する1つのプログラム実施形態のデータ処理プログラムとして構築するようにしても良い。そして、いずれの場合でもネットワーク分析装置100の機能的構成は、図5のように示すことができる。エンジン200は、インタフェース部210、データ処理部220、及びインストール処理部230を有している。インタフェース部210は、エンジン共通駆動部120と接続するためのインタフェースの機能を担っている。エンジン200がエンジン共通駆動部120とは別個のハードウェアコンピュータを用いて構築されている場合には、インタフェース部210は、物理的にネットワーク分析装置100エンジン共通駆動部120へ接続するためのインタフェースを備える必要がある。エンジン200がエンジン共通駆動部120とハードウェア的に接続する場合のインタフェースについては限定されないものであるが、例えば、イーサネット等のLANインタフェースや、ファイバチャネル等の種々のインタフェースを適用することができる。データ処理部220は、エンジン連携処理部110からの依頼に基づいてデータ処理を行う機能を担っている。データ処理部220が行う具体的なデータ処理の内容については、当該エンジン200の仕様によって異なっている。データ処理部220が、データ処理を行う場合のワークメモリや、詳細な動作ログについては、内部で管理するようにしても良いし、一部又は全部について、ログ蓄積部150上に確保された領域に記憶するようにしても良い。その場合、各エンジン200は、エンジン共通駆動部120を介してログ蓄積部150に蓄積されたデータの読み書きが可能な構成とする必要がある。インストール処理部230は、ネットワーク分析装置100へ接続して当該エンジン200をインストールさせる処理や、ネットワーク分析装置100へ接続インストールされた状態から切断アンインストールさせる処理を行うものである。インストール処理部230のインストール処理、及び、アンインストール処理については、例えば、ユーザの操作に応じて実行するようにしても良い。エンジン200が、ソフトウェア的にプログラム実施形態のデータ処理プログラムにより構成されている場合には、そのプログラムを構成するサブプログラムとして、インストール処理部230は構成されることになる。そして、ユーザによりインストール処理部230に相当するサブプログラムの実行例えば、所定のコマンド操作等が行われた場合に、インストール又はアンインストールの処理が開始される。エンジン200が、ネットワーク分析装置100とは別個のハードウェアである場合には、ユーザにエンジン200インストール処理部230を直接操作例えば、図示しないボタン等のインタフェースによる操作させるようにしても良いし、ネットワーク分析装置100を介してエンジン200インストール処理部230を操作させるようにしても良い。インストール処理部230が、インストール又はアンインストールの処理を開始すると、エンジン連携処理部110と連携してその処理を行う。インストール処理部230の処理の具体的なシーケンスについては、後述する動作説明の項で説明する。A-2実施形態の動作次に、以上のような構成を有するこの実施形態のネットワーク分析システム10の動作を説明する。A-2-1エンジンのインストールまず、ネットワーク分析システム10に、新規のエンジンがインストールされる場合の動作について、図6のシーケンス図を用いて説明する。ここでは、図6では、ネットワーク分析装置100上に、エンジン200-1~200-6がインストールされた状態で、新規にエンジン200-7がインストールされる動作について示している。また、図6のフローチャートの初期状態として、処理ルール管理テーブル111及びエンジン管理テーブル112の内容は、それぞれ図3、図4の状態であるものとして説明する。まず、ユーザの操作により、エンジン200-7が、エンジン共通駆動部120にアクセス可能な状態に置かれ、エンジン200-7のインストール処理部230が起動されたものとするS301。エンジン200が、ソフトウェア的にプログラム実施形態のデータ処理プログラムにより構成されている場合には、例えば、エンジン200-7を構成するプログラムのファイルが、ネットワーク分析装置100を構成するコンピュータに展開され実行可能な状態になると、エンジン200-7はエンジン共通駆動部120にアクセス可能な状態になる。また、エンジン200が、ネットワーク分析装置100とは別個のハードウェアコンピュータにより構築されている場合には、例えば、エンジン200-7のハードウェアモジュールを、ネットワーク分析装置100に接続例えば、ケーブルやソケット等のインタフェースにより接続すると、エンジン200-7はエンジン共通駆動部120にアクセス可能な状態になる。エンジン200-7のインストール処理部230が起動されると、インストール処理部230から、エンジン共通駆動部120を介して、エンジン連携処理部110へ、インストール要求が通知されるS302。そして、インストール要求の通知を受信すると、エンジン連携処理部110は、エンジン200-7へ、管理情報エンジン管理テーブル112に登録する情報の送信要求を通知するS303。そして、管理情報の送信要求を受信すると、エンジン200-7のインストール処理部230は、自身の管理情報をエンジン連携処理部110に返答するS304。そして、管理情報を受信すると、エンジン連携処理部110は、エンジン200-7に対してエンジンIDを付与する。そして、エンジン連携処理部110は、受信した管理情報及び付与したエンジンIDに基づいて、エンジン200-7に関する情報を、エンジン管理テーブル112に追加する。さらに、エンジン連携処理部110は、エンジン200-7のエンジンIDの項目を、処理ルール管理テーブル111の使用エンジンの項目に追加するS305。図7は、上述のステップS305の処理で更新された後の処理ルール管理テーブル111及びエンジン管理テーブル112の状態について示している。エンジン連携処理部110は、新たにインストールされるエンジン200に対して、エンジンIDを付与する場合には、エンジン管理テーブル112を確認し、空いているエンジンIDを付与する。ここでは、エンジン連携処理部110は、エンジン200-7に対して、空いているエンジンIDのうち最も小さい番号を付与するものとする。上述の通り、ステップS305以前のエンジン管理テーブル112の状態は、上述の図4に示す状態であるので、エンジン連携処理部110は、エンジン200-7に対して、エンジンIDとして7が付与されることになる。なお、新規にインストールするエンジン200に付与するエンジンIDについては、ユーザの操作に応じた番号や、エンジン200に固定的に設定されているID等を付与するようにしても良い。そして、エンジン連携処理部110は、エンジン200-7のエンジンIDを7として、エンジン管理テーブル112に、エンジン200-7の情報を追加登録し、エンジン管理テーブル112は図7bに示す状態となる。そして、エンジン連携処理部110は、処理ルール管理テーブル111の使用エンジンの項目に、エンジン200-7に対応する項目エンジンIDが7の項目を追加し、処理ルール管理テーブル111は図7aに示す状態となる。処理ルール管理テーブル111において、エンジン200-7に対応する項目エンジンIDが7の項目が追加された当初は、エンジン200-7はいずれの処理ルールにも使用されていないので、0の値が設定される。そして、エンジン連携処理部110は、各テーブル処理ルール管理テーブル111及びエンジン管理テーブル112の更新が完了すると、インストール終了の通知と共に、付与したエンジンID7を、エンジン200-7に通知するS306。以降、エンジン200-7は、ネットワーク分析装置100上で、データ処理を行うことが可能となる。A-2-2エンジンのアンインストール次に、ネットワーク分析システム10に、既にインストール接続されているエンジン200がアンインストールされる場合の動作について説明する。エンジン連携処理部110では、エンジン200インストール処理部230からアンインストールの要求があった場合には、当該エンジン200についてアンインストールによる影響度を確認し、その確認結果に基づいて、当該エンジン200についてアンインストールの可否を判定する。具体的には、エンジン連携処理部110は、エンジン200インストール処理部230からアンインストールの要求があった場合には、処理ルール管理テーブル111を参照し、当該エンジン200を利用する処理ルールが無い場合には、当該エンジン200をアンインストールしても影響が無いと判断し、当該エンジン200のアンインストールを許可する。一方、当該エンジン200を利用する処理ルールがあった場合には、エンジン連携処理部110は、当該エンジン200のアンインストールを許可しない。ここでは、まず、エンジン連携処理部110が、エンジン200からのアンインストール要求を可と判定する場合の動作について図8を用いて説明する。図8では、上述の図6で新規にエンジン200-7がインストールされた直後の状態で、エンジン200-7のアンインストールを行う動作について示している。すなわち、図8のフローチャートでは、処理ルール管理テーブル111及びエンジン管理テーブル112の初期状態が、上述の図7に示す状態となっているものとする。まず、エンジン200-7が、ネットワーク分析装置100上にインストールされた状態で、ユーザの操作により、エンジン200-7のインストール処理部230が起動されたものとするS401。エンジン200-7のインストール処理部230が起動されると、インストール処理部230から、エンジン共通駆動部120を介して、エンジン連携処理部110へ、アンインストール要求が通知されるS402。そして、アンインストール要求の通知を受信すると、エンジン連携処理部110は、処理ルール管理テーブル111の内容を確認し、エンジン200-7のアンインストールの可否を判定するS403。処理ルール管理テーブル111の内容は、上述の通り、上述の図7の状態となっている。そして、図7に示されるように、エンジン200-7に対応する項目エンジンIDが7の項目は、全ての処理ルールについて0の値使用されていないことを示す値が設定されている。したがって、エンジン連携処理部110は、エンジン200-7は、どの処理ルールにも使用されていないため、アンインストールしても影響が無く、エンジン200-7のアンインストールは可と判定することになる。そして、エンジン連携処理部110は、エンジン200-7のアンインストールを可と判定すると、最終的なアンインストールの確認ACK要求を通知するS404。そして、アンインストールの確認ACK要求の通知を受信すると、エンジン200-7のインストール処理部230は、アンインストールの確認ACKを返答するS405。そして、アンインストールの確認ACKの通知を受信すると、エンジン連携処理部110は、処理ルール管理テーブル111及びエンジン管理テーブル112に対して、エンジン200-7に関する情報の削除を実行するS406。エンジン連携処理部110は、エンジン管理テーブル112から、エンジン200-7エンジンID:7の情報を削除し、エンジン管理テーブル112は上述の図4に示す状態となる。また、エンジン連携処理部110は、処理ルール管理テーブル111の使用エンジンの項目から、エンジン200-7に対応する項目エンジンIDが7の項目を削除し、処理ルール管理テーブル111は上述の図3に示す状態となる。そして、エンジン連携処理部110は、エンジン200-7にアンインストール処理が完了した旨の通知を送信するS407。以上のシーケンスの動作で、ネットワーク分析システム10では、エンジン200-7のアンインストール処理が終了し、エンジン200-7について、ファイルの消去や取り外しが可能となる。次に、エンジン連携処理部110が、エンジン200からのアンインストール要求を不可と判定する場合の動作について図9を用いて説明する。図9のフローチャートにおいても、処理ルール管理テーブル111及びエンジン管理テーブル112の初期状態が、上述の図7に示す状態となっているものとして説明する。まず、エンジン200-6が、ネットワーク分析装置100上にインストールされた状態で、ユーザの操作により、エンジン200-6のインストール処理部230が起動されたものとするS501。エンジン200-6のインストール処理部230が起動されると、インストール処理部230から、エンジン共通駆動部120を介して、エンジン連携処理部110へ、アンインストール要求が通知されるS502。そして、アンインストール要求の通知を受信すると、エンジン連携処理部110は、処理ルール管理テーブル111の内容を確認し、エンジン200-6のアンインストールの可否を判定するS503。処理ルール管理テーブル111の内容は、上述の通り、上述の図7の状態となっている。そして、図7に示されるように、エンジン200-6に対応する項目エンジンIDが6の項目では、処理ルールR2の行ルールIDが2の行で1の値使用されていることを示す値が設定されている。したがって、エンジン連携処理部110は、エンジン200-6は、使用している処理ルールが存在するため、アンインストールをすると影響が有り、エンジン200-6のアンインストールは不可と判定することになる。そして、エンジン連携処理部110が、エンジン200-6のアンインストールを不可と判定すると、アンインストールを不許可とする通知がエンジン200-6に送信されS504、アンインストールの処理は中止される。A-2-3処理ルールに関するデータ処理次に、エンジン連携処理部110が、処理ルールのスクリプトデータ処理定義ステップに基づいて、各エンジン200にデータ処理を実行させる具体的な動作シーケンスについて説明する。まず、最初に、エンジン連携処理部110が、処理ルールR1上述の図2a参照のデータ処理定義ステップに基づいて、エンジン200-1~200-3にデータ処理を実行させる動作について図10、図11を用いて説明する。まず、エンジン連携処理部110は、処理ルールR1上述の図2a参照について構文解析を行い、エンジン200-1~200-3に対して解析した構文に基づくデータ処理を実行させるための所定の形式のフレーム以下、データ処理フレームと呼ぶF101を生成して、エンジン共通駆動部120に供給するS601。ステップS601で、エンジン連携処理部110が生成するデータ処理フレームF101は、例えば、図11aに示すような構成となる。図11に示すように、それぞれのデータ処理フレームは、処理指定ヘッダ部とデータ部のフィールドを有するフレームである。なお、ここでは、説明を簡易にするために、データ処理フレームは1つのフレームで1つの入力データに関する処理を行うものとして説明するが、1つの入力データに関して複数フレームに分割して処理するようにしても良い。データ部は、当該データ処理フレームで処理の対象となる入力データが挿入されるフィールドである。データ処理フレームF101のデータ部には、エンジン連携処理部110からの入力データinput1が設定されることになる。処理指定ヘッダ部は、当該データ処理フレームをエンジン200にデータ処理させる場合の処理順序及び、データ処理をさせる際に指定するパラメータ付加パラメータについて記述するフィールドである。処理指定ヘッダ部は、例えば、図11aに示すように、エンジンIDと付加パラメータの組が処理順序に従って配列されたリストで示される。処理ルールR1のデータ処理定義ステップステップS102では、上述の通り、入力データinput1について、まず、エンジン200-1Engine1に処理させ、さらにその処理結果をエンジン200-2Engine2に処理させ、さらにその処理結果をエンジン200-3Engine3に処理させるという入れ子の構造構文で記述され、直列的な処理が求められる。そのため、処理指定ヘッダ部では、単純な記述で、上述のような直列的な処理を実現するために、エンジンIDと付加パラメータの組が処理順序に従って配列されたリストで記述することに対応している。例えば、データ処理フレームF101の処理指定ヘッダ部は、1outputtype1parameter12outputtype2parameter2,3が記述されている。さらにまた、データ処理フレームF101の処理指定ヘッダ部の最後尾にはリストの末尾を示す記号として;が記述されている。エンジン連携処理部110は、データ処理定義ステップの構文解析で、上述のような入れ子の構造構文を検出した場合には、上述のように、データ処理定義ステップを構成するサブステップの内容に基づいて、処理指定ヘッダ部に投入するリストを作成する。次に、以上のような構造のデータ処理フレームF101が引き渡されると、エンジン共通駆動部120は、データ処理フレームF101を構成する処理指定ヘッダ部のリストの先頭の要素である1outputtype1parameter1を参照し、データ処理フレームF101の転送先がエンジン200-1エンジンID:1であることを認識する。そして、エンジン共通駆動部120は、データ処理フレームF101を、エンジン200-1に引き渡すS602。そして、エンジン200-1は、データ処理フレームF101のデータ部の入力データinput1と、処理指定ヘッダ部のリストの先頭の要素に付加された付加パラメータoutputtype1parameter1を抽出する。そして、エンジン200-1は、抽出した入力データinput1について、付加パラメータoutputtype1parameter1を用いたデータ処理を行って、処理後のデータAnalyze1を得る。そして、エンジン200-1は、データ処理フレームF101について、データ部を処理後のデータAnalyze1に置換え、さらに、処理指定ヘッダ部のリストの先頭の要素1outputtype1parameter1を削除したデータ処理フレームF102図11b参照を生成するS603。そして、エンジン200-1は、データ処理フレームF102を、エンジン共通駆動部120に引き渡すS604。次に、データ処理フレームF102が引き渡されると、エンジン共通駆動部120は、データ処理フレームF102を構成する処理指定ヘッダ部のリストの先頭の要素である2outputtype2parameter2を参照し、データ処理フレームF102の転送先がエンジン200-2エンジンID:2であることを認識する。そして、エンジン共通駆動部120は、データ処理フレームF102を、エンジン200-2に引き渡すS605。そして、エンジン200-2は、データ処理フレームF102のデータ部の入力データAnalyze1と、処理指定ヘッダ部のリストの先頭の要素に付加された付加パラメータoutputtype2parameter2を抽出する。そして、エンジン200-2は、抽出した入力データAnalyze1について、付加パラメータoutputtype2parameter2を用いたデータ処理を行って、処理後のデータAnalyze2を得る。そして、エンジン200-2は、データ処理フレームF102について、データ部を処理後のデータAnalyze2に置換え、さらに、処理指定ヘッダ部のリストの先頭の要素2outputtype2parameter2を削除したデータ処理フレームF103図11c参照を生成するS606。そして、エンジン200-2は、データ処理フレームF103を、エンジン共通駆動部120に引き渡すS607。次に、データ処理フレームF103が引き渡されると、エンジン共通駆動部120は、データ処理フレームF103を構成する処理指定ヘッダ部のリストの先頭の要素である3outputtype3parameter3を参照し、データ処理フレームF103の転送先がエンジン200-3エンジンID:3であることを認識する。そして、エンジン共通駆動部120は、データ処理フレームF103を、エンジン200-3に引き渡すS608。そして、エンジン200-3は、データ処理フレームF103のデータ部の入力データAnalyze2と、処理指定ヘッダ部のリストの先頭の要素に付加された付加パラメータoutputtype3parameter3を抽出する。そして、エンジン200-3は、抽出した入力データAnalyze2について、付加パラメータoutputtype3parameter3を用いたデータ処理を行って、処理後のデータAnalyze3を得る。そして、エンジン200-3は、データ処理フレームF103について、データ部を処理後のデータAnalyze3に置換え、さらに、処理指定ヘッダ部のリストの先頭の要素3outputtype3parameter3を削除したデータ処理フレームF104図11d参照を生成するS609。そして、エンジン200-3は、データ処理フレームF104を、エンジン共通駆動部120に引き渡すS610。次に、データ処理フレームF104が引き渡されると、エンジン共通駆動部120は、データ処理フレームF104を構成する処理指定ヘッダ部を参照する。この時点で、データ処理フレームF104を構成する処理指定ヘッダ部のリストは空リストの末尾を示す記号である;のみが記述された状態となるため、エンジン共通駆動部120は、データ処理フレームF104については、エンジン200ではなくエンジン連携処理部110へ送信するS611。上述のように、データ処理フレームを構成する処理指定ヘッダ部のリストが空の場合には、エンジン共通駆動部120は、当該データ処理フレームをエンジン連携処理部110に送信するものとする。このように、処理指定ヘッダ部のリストを用いてデータ処理フレームを流通させることにより、各エンジン200で処理が終了するたびに、中継処理のためだけにエンジン連携処理部110へ処理が戻されることが無くなり、効率的な処理を行うことができる。また、エンジン共通駆動部120の処理については、処理指定ヘッダ部のリストを参照して送信先を判断するという単純な処理スイッチング処理だけで良いため、高速処理を実現しやすくなる例えば、構築する際のハードウェア比率を高めることが容易となる。以上のように、エンジン連携処理部110では、処理ルールR1のデータ処理定義ステップに従って、データ処理フレームF101を生成して、エンジン共通駆動部120に引き渡すだけで、エンジン200-1~200-3の処理を経た結果Analyze3を取得することができる。次に、エンジン連携処理部110が、処理ルールR2上述の図2b参照のデータ処理定義ステップに基づいて、エンジン200-4~200-6にデータ処理を実行させる動作について図12、図13を用いて説明する。まず、エンジン連携処理部110は、処理ルールR2上述の図2b参照について構文解析を行い、エンジン200-4~200-6に対して解析した構文に基づくデータ処理フレームF221、F221、F231図13a、図13b、図13c参照を生成して、エンジン共通駆動部120に引き渡すS701~S703。処理ルールR2のデータ処理定義ステップステップS202では、処理ルールR1とは異なり、複数のエンジン200に対して直列的にデータ処理をさせる入れ子の構造にはなっていないため、個別にエンジン200-4~200-6のそれぞれにデータ処理を依頼するデータ処理フレームF211、F221、F231が生成される。そして、データ処理フレームF211、F221、F231が引き渡されると、エンジン共通駆動部120は、それぞれのデータ処理フレームについて、送信先のエンジン200-4~200-6へ引き渡すS704~S706。そして、データ処理フレームF211が引き渡されたエンジン200-4は、データ処理フレームF211のデータ部の入力データinput1を処理して、処理後のデータAnalyze1を得る。そして、エンジン200-4は、データ処理フレームF211について、データ部を処理後のデータAnalyze1に置換え、さらに、処理指定ヘッダ部のリストの先頭の要素を削除したデータ処理フレームF212図13d参照を生成してS707、エンジン共通駆動部120に引き渡すS710。そして、データ処理フレームF221が引き渡されたエンジン200-5は、データ処理フレームF221のデータ部の入力データinput1を処理して、処理後のデータAnalyze2を得る。そして、エンジン200-5は、データ処理フレームF221について、データ部を処理後のデータAnalyze2に置換え、さらに、処理指定ヘッダ部のリストの先頭の要素を削除したデータ処理フレームF222図13e参照を生成してS708、エンジン共通駆動部120に引き渡すS711。そして、データ処理フレームF231が引き渡されたエンジン200-6は、データ処理フレームF231のデータ部の入力データinput1を処理して、処理後のデータAnalyze3を得る。そして、エンジン200-6は、データ処理フレームF231について、データ部を処理後のデータAnalyze3に置換え、さらに、処理指定ヘッダ部のリストの先頭の要素を削除したデータ処理フレームF232図13f参照を生成してS709、エンジン共通駆動部120に引き渡すS712。そして、データ処理フレームF212、F222、F232全て処理指定ヘッダ部の内容は空が引き渡されると、エンジン共通駆動部120は、データ処理フレームF212、F222、F232のそれぞれを、エンジン連携処理部110に引き渡すS713~715。以上のように、エンジン連携処理部110では、処理ルールR2のデータ処理定義ステップに従って、データ処理フレームF211、F221、F231を生成して、エンジン共通駆動部120に引き渡すだけで、エンジン200-4~200-6の処理を経た結果Analyze1、Analyze2、Analyze3を取得することができる。A-3実施形態の効果この実施形態によれば、以下のような効果を奏することができる。ネットワーク分析システム10では、ネットワーク分析装置100上に、エンジン200を搭載し、さらに、ネットワーク分析装置100とエンジン200との間のデータ処理プロトコルデータ処理フレームを用いたやりとりを明確にしている。これにより、ネットワーク分析装置100上で、エンジン200の単位で差し替えや仕様変更バージョンアップ等を行うことが容易となる。また、ネットワーク分析装置100では、処理ルール管理テーブル111及びエンジン管理テーブル112を設けて、処理ルールごとに使用する各エンジン200を管理している。これにより、エンジン200についてアンインストールした場合でも、システム全体の正常動作を保つことができる。さらに、エンジン連携処理部110と、各エンジン200の間では、データ処理フレームを用いた単純なやりとりのみで通信しているため、より高速なデータ処理を実現することができる。さらにまた、ネットワーク分析システム10では、複数の処理ルール間でエンジン200を共有することも可能であるため、効率的なシステム構築を行うことが容易となる。B他の実施形態本発明は、上記の実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。B-1上記の実施形態では、ログ蓄積部150は、単にログデータを蓄積するだけであるが、OPS300等からアクセス可能なデータベースとして構成するようにしても良い。例えば、ネットワーク分析装置100からOPS300へネットワーク異常発生が通知された場合に、オペレータがOPS300を用いて、データベースログ蓄積部150にアクセスし、発生したネットワーク異常の詳細について確認が可能なインタフェースをネットワーク分析装置100上に設けるようにしても良い。具体的には、例えば、OPS300からの操作に応じて、データベースログ蓄積部150の内容の検索を行うことができるエンジン200を別途備えるようにしても良い。B-2上記の実施形態では、ネットワーク分析装置100は、ルータを流れるトラフィックを分析しているが、ルータに限定されずその他のネットワーク装置例えば、各種サーバやファイアウォール等に流れるトラフィックを取得して分析するようにしても良い。B-3上記の実施形態では、各エンジン200は全てことなるデータ処理を行うものとして説明したが、同一のデータ処理を行うエンジン200を複数備えて、不可分散させるように構成しても良い。その場合には、エンジン連携処理部110で、データ処理フレームを生成する際に、複数のエンジン200に同一内容の処理を振り分ける例えば、ラウンドロビン方式等により振り分ける処理を行わせる必要がある。B-4上記の実施形態では、エンジン連携処理部110と各エンジン200との間のデータの授受はデータ処理フレームを用いて行っているが、データの授受を行うことができれば、そのデータの構造については限定されないものである。B-5上記の実施形態では、特定のエンジン200のアンインストールの要求があった場合に、当該エンジン200を利用する処理ルールが無いことを確認することができるが、新規な処理ルールを登録した際に、その処理ルールがすでに備えられているエンジン200のみで実行可能か判断し、実行できない場合は、実行すべき処理の属性等を定義して、適切なエンジン200をOPS300等からインスルトールするような構成とすることもできる。B-6上記の実施形態では、OPS300に1つのネットワーク分析システム10が接続されているが、OPS300に複数のネットワーク分析システム10を接続してコントロールすることも可能である。このような構成の場合、たとえばOPS300が、各ネットワーク分析システム10が備えているエンジン200の種別を識別して、各ネットワーク分析システム10が実行可能な処理ルールに基づいて各ネットワーク分析システム10の役割分担を決定して、連携処理を行わせることも考えられる。B-7上記の実施形態では、ルータ400のエクスポート処理部440から送出されるレポートデータは、内部ネットワークN1を介して、レポートパケットとしてネットワーク分析システム10に入力される構成となっているが、エクスポート処理部440とネットワーク分析システム10を、内部ネットワークN1を介さずに直接接続する構成としても良い。B-8上記の実施形態で、ではルータ400に設けられたエクスポート処理部440からレポートデータを取得する構成となっているが、ネットワーク内に別途フローエクスポータエクスポート処理部440の機能のみを備えたネットワーク装置を付加して、レポートデータを取得する構成としても良い。B-9上記の実施形態では、データ処理定義情報に関する情報の管理とデータ処理モジュールの管理を、テーブル形式の処理ルール管理テーブル111及びエンジン管理テーブル112を用いて行っているが、同様の機能を実行することができる構成であるなら、テーブル形式である必要は無く、例えば、データベースの形式等他の形式としても良い。"