(57)【要約】【課題】  ネットワークトラフィックの調査および解析を短時間で行うことができる制御ネットワークシステムを実現する。【解決手段】制御機器で制御ループを構成しネットワークを介してパケット通信を行う制御ネットワークシステムにおいて、パケットを記憶し、前記パケットと関連付けるリンクを有した索引に基づいて制御処理に関連する前記パケットを抽出し、前記制御処理があらかじめ定められた設定通りに行われているか否かを判断することを特徴とする。【選択図】                    図１
2009033276.tif 000002
【特許請求の範囲】
【請求項１】
制御ループを構成する制御機器がネットワークを介して相互に接続され、制御機器間でパケット通信を行う制御ネットワークシステムにおいて、
前記パケットのペイロードに基づき各制御機器に関連した索引を作成し、作成した索引に基づきネットワークのトラフィックを監視するトラフィック監視装置を設けたことを特徴とする制御ネットワークシステム。
【請求項２】
前記トラフィック監視装置は、前記パケットをパケット情報テーブルに記憶し、前記パケットと関連付けるリンクを有した前記索引を作成して記憶し、前記索引および前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットとあらかじめ定められた設定情報とに基づいて前記制御処理が設定通り設定通りに行われているか否かを判断することを特徴とする
請求項１記載の制御ネットワークシステム。
【請求項３】
前記トラフィック監視装置が、
前記パケット情報テーブルおよび前記リンクを有した前記索引を記憶する記憶部と、
パケット通信を行う通信部と、
前記パケットから取得する識別子に基づいて前記索引を作成し、前記パケットと前記索引とを関連付ける前記リンクを作成し、前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットと前記設定情報とに基づいて前記制御処理が設定通りに行われているか否かを判断する演算制御部とから構成されることを特徴とする
請求項１もしくは請求項２記載の制御ネットワークシステム。
【請求項４】
前記演算制御部が、
前記パケットを前記パケット情報テーブルに記憶し、
前記パケットから取得する前記識別子に基づいて、前記索引を作成して記憶し、
前記パケットと前記索引とを関連付ける前記リンクを作成して記憶し、
前記制御処理にかかわる前記索引の前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、
前記抽出したパケットと前記設定情報とに基づいて、前記制御処理が設定通りに行われているか否かを判断することを特徴とする
請求項３記載の制御ネットワークシステム。
【請求項５】
前記索引が、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引のうち少なくとも一つを含むことを特徴とする
請求項１ないし請求項４いずれかに記載の制御ネットワークシステム。
【請求項６】
前記識別子が、機器タグ、機能ブロックタグ、機能ブロック関連識別子のうち少なくとも一つを含むことを特徴とする
請求項３ないし請求項５いずれかに記載の制御ネットワークシステム。
【請求項７】
前記トラフィック監視装置は、ネットワークのセキュリティを監視するセキュリティ監視装置であることを特徴とする
請求項１ないし請求項６いずれかに記載の制御ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御ネットワークシステムに関し、詳しくは、ネットワークトラフィックの監視に関する。
【背景技術】
【０００２】
近年、たとえばインダストリアルオートメーションにおけるプロセス制御システムとして、制御ループを構成する流量計や温度計などのセンサや、バルブやヒータなどの操作機器を含む制御機器をネットワークにより相互に接続し、制御ネットワークシステムとして構築することが提案されている。
【０００３】
従来の制御ネットワークシステムに関連する先行技術文献としては次のようなものがある。
【０００４】
【特許文献１】特開２００２−０４１１３９号公報
【特許文献２】特開２００２−０９９３２６号公報
【０００５】
ところで、制御ネットワークシステムを構築するのにあたっては、制御ネットワークシステムを安全に動作させるために、不正アクセスやシステム侵入などを阻止する対策を講じておく必要がある。
【０００６】
図１１は従来の制御ネットワークシステムの一例を示す構成ブロック図である。図１１において、センサ１〜２は、温度や流量などの物理量を測定するセンサ機能と、これら物理量の測定値をＩＰ（Internet Protocol）を用いて伝送する通信機能を有している。操作機器３〜４は、温度や流量などの物理量を制御する制御機能と、データを伝送する通信機能を有している。これらセンサ１〜２と操作機器３〜４はプラントに設置されていて、図示しないコントローラとともに、フィードバック制御ループを構成している。図示しないコントローラは、プラントが最適に運転されるように、センサ１〜２の測定値が所定の目標値に収束するように操作機器３〜４を操作制御する。これらセンサ１〜２と操作機器３〜４は中継機器５およびネットワークＮＷ１００を介して図示しない中央監視システムなどの上位システムに接続されている。
【０００７】
中継機器５は通信機能を有するものであり、センサ１〜２と操作機器３〜４の他、機器構成管理装置６やセキュリティ監視装置７も接続されている。中継機器５は、センサ１〜２や操作機器３〜４から受信したパケットを、他のセンサ１〜２や操作機器３〜４、機器構成管理装置６、セキュリティ監視装置７などへ転送する。
【０００８】
構成管理装置６は、センサ１〜２や操作機器３〜４の論理的な名前である機器タグを設定する機器タグ設定機能の他、センサ１〜２や操作機器３〜４の制御機能を実現する単位であるアナログ信号入力ブロック、アナログ信号入出力ブロック、ＰＩＤ演算（比例、積分、微分演算）ブロックなどの機能ブロックおよびこれら機能ブロック間で行われる通信処理を設定する機能ブロック設定機能を有する。
【０００９】
セキュリティ監視装置７は、不正アクセスやシステム侵入などのセキュリティ違反行為の原因特定を支援するトラフィック解析機能を有するものである。また、セキュリティ監視装置７は、センサ１〜２、操作機器３〜４、中継機器５、図示しないコントローラおよび機器構成管理装置６の相互間で送受信されるパケットを記憶し、パケット情報テーブルを作成するパケット情報テーブル作成機能も有している。
【００１０】
図１２は図１１のセキュリティ監視装置７のトラフィック解析機能の一例を示す構成ブロック図である。図１２において、中継機器５との間で通信を行う通信部７１、各部の動作を制御するＣＰＵ（Central Processing Unit）などの演算制御部７２、セキュリティ監視装置として動作させるためのプログラムなどが格納される記憶部７３などで構成されている。通信部７１は演算制御部７２に接続され、演算制御部７２は記憶部７３に接続されている。
【００１１】
図１３は図１１の制御ネットワークシステムにおけるセキュリティ違反行為の原因特定動作の説明図である。図１３は、センサ１が中継機器５を介してセキュリティ監視装置７に測定値を含むパケットを送信するデータ通信ＤＦ１００の流れと、中継機器５がセキュリティ監視装置７にセンサ１からのパケットを転送するデータ通信ＤＦ１０１の流れを示している。
【００１２】
図１４は図１３のデータ通信ＤＦ１００およびＤＦ１０１の動作を説明するフロー図である。まず、ステップＳ１０１において、センサ１は流量や温度などの物理量を測定し、測定値を記憶する。ステップＳ１０２において、センサ１は、測定値を含むパケットを中継機器５に送信する。なお、センサ２もセンサ１と同様の動作を行う。
【００１３】
ステップＳ１０３において、中継機器５は、センサ１から受信したパケットをセキュリティ監視装置７に送信する。ステップＳ１０４において、セキュリティ監視装置７の演算制御部７１は記憶部７３に格納されたプログラムを読み出し実行することにより、中継機器５から転送されるパケットに基づいて図１５に示すようなパケット情報テーブルを作成し記憶する。パケット情報テーブルは、時刻、送信元ＩＰアドレス、トランスポート、送信元ポート、送信先ポート、ペイロードなどで構成される。なお、ペイロードには機器タグ、機能ブロックの論理的な名前である機能ブロックタグおよび機器ブロック間通信を表す機能ブロック関連識別子などが含まれている。
【００１４】
ステップＳ１０５において、オペレータは、セキュリティ監視装置７のパケット情報テーブルのパケット情報を解析し、制御ネットワークシステムへの不正アクセスなどの調査を行う。たとえば、オペレータは、セキュリティ監視装置７を利用して、不正アクセスと疑われるＩＰアドレスに基づいてパケット情報テーブルから該当パケット情報の検索を行ったり、不正な行為が行われていると疑われるポート番号に基づいて検索を行ったりすることで不正アクセスやシステム侵入などのセキュリティ違反行為の原因を特定する。
【００１５】
セキュリティ監視装置７は、センサ１〜２および操作機器３〜４の制御処理に用いられるパケットに基づいてパケット情報テーブルを作成して記憶するので、不正アクセスやシステム侵入などのセキュリティ違反行為の原因特定を支援することができる。
【００１６】
このような制御ネットワークシステムにおいて、特定の機器タグや機能ブロックタグがなりすましなどにより不正操作を行っていることが疑わしい場合は、直接機器タグや機能ブロックに基づいてアクセス履歴や動作履歴を検索したいことがある。
【００１７】
また、上述の制御ネットワークシステムでは、ＩＰアドレスに基づきパケット情報テーブルから疑わしいパケット情報を検索するので、機器の配置変更、ＩＰアドレス変更、機能ブロック間の通信で用いられるポート番号変更などのシステム構成の変更が行われた場合は、その都度、オペレータが手動でＩＰアドレスと関連する機器タグや機能ブロックタグとを対応づけなければならない。
【発明の開示】
【発明が解決しようとする課題】
【００１８】
しかし、従来の制御ネットワークシステムにおいて、機器タグと機能ブロックタグに基づいてアクセス履歴や動作履歴を検索するためには、逐次パケットのアプリケーションペイロードを解析して機器タグおよび機能ブロックタグを抽出しなければならず、トラフィックの調査および解析にかなりの時間がかかってしまうという問題点がある。
【００１９】
また、システム構成が変更された場合には、その都度、オペレータが手動で抽出された機器タグや機能ブロックタグとＩＰアドレスとを対応づけなければならず、多大な工数がかかってしまうという問題点もある。
【００２０】
本発明は上述の問題点を解決するものであり、その目的は、ネットワークトラフィックの調査および解析を短時間で行うことができる制御ネットワークシステムを実現することにある。
【課題を解決するための手段】
【００２１】
このような課題を達成するために、本発明のうち請求項１記載の発明は、
制御ループを構成する制御機器がネットワークを介して相互に接続され、制御機器間でパケット通信を行う制御ネットワークシステムにおいて、前記パケットのペイロードに基づき各制御機器に関連した索引を作成し、作成した索引に基づきネットワークのトラフィックを監視するトラフィック監視装置を設けたことを特徴とする。
【００２２】
請求項２記載の発明は、
請求項１記載の制御ネットワークシステムにおいて、
前記トラフィック監視装置は、前記パケットをパケット情報テーブルに記憶し、前記パケットと関連付けるリンクを有した前記索引を作成して記憶し、前記索引および前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットとあらかじめ定められた設定情報とに基づいて前記制御処理が設定通りに行われているか否かを判断することを特徴とする。
【００２３】
請求項３記載の発明は、
請求項１もしくは請求項２記載の制御ネットワークシステムにおいて、
前記トラフィック監視装置が、前記パケット情報テーブルおよび前記リンクを有した前記索引を記憶する記憶部と、パケット通信を行う通信部と、前記パケットから取得する識別子に基づいて前記索引を作成し、前記パケットと前記索引とを関連付ける前記リンクを作成し、前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットと前記設定情報とに基づいて前記制御処理が設定通りに行われているか否かを判断する演算制御部とから構成されることを特徴とする。
【００２４】
請求項４記載の発明は、
請求項３記載の制御ネットワークシステムにおいて、
前記演算制御部が、前記パケットを前記パケット情報テーブルに記憶し、前記パケットから取得する前記識別子に基づいて、前記索引を作成して記憶し、前記パケットと前記索引とを関連付ける前記リンクを作成して記憶し、前記制御処理にかかわる前記索引の前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットと前記設定情報とに基づいて、前記制御処理が設定通りに行われているか否かを判断することを特徴とする。
【００２５】
請求項５記載の発明は、
請求項１ないし請求項４いずれかに記載の制御ネットワークシステムにおいて、
前記索引が、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引のうち少なくとも一つを含むことを特徴とする。
【００２６】
請求項６記載の発明は、
請求項３ないし請求項５いずれかに記載の制御ネットワークシステムにおいて、
前記識別子が、機器タグ、機能ブロックタグ、機能ブロック関連識別子のうち少なくとも一つを含むことを特徴とする。
【００２７】
請求項７記載の発明は、
請求項１ないし請求項６いずれかに記載の制御ネットワークシステムにおいて、
前記トラフィック監視装置はネットワークのセキュリティを監視するセキュリティ監視装置であることを特徴とする。
【発明の効果】
【００２８】
本発明によれば、トラフィック監視装置が作成する各制御機器に関連した索引に基づいて、制御処理があらかじめ設定された通りに行われているかどうかを調査でき、ネットワークトラフィックの調査および解析を短時間で行うことができる。
【発明を実施するための最良の形態】
【００２９】
図１は、本発明に係る制御ネットワークシステムの一実施例を示す構成ブロック図である。図１において、センサ２１〜２２と操作機器２３〜２４は、図示しないコントローラとともに、プラントにおけるフィードバック制御ループを構成している。図示しないコントローラは、プラントが最適に運転されるように、センサ２１〜２２の測定値が所定の目標値に収束するように操作機器２３〜２４を操作制御する。これらセンサ２１〜２２と操作機器２３〜２４は、中継機器２５およびネットワークＮＷ２００を介して図示しない中央監視システムなどの上位システムに接続されている。
【００３０】
トラフィック監視装置２７は、各機器間で送受信されるパケットを記憶し、パケット情報テーブルを作成するパケット情報テーブル作成機能を有するものである。また、パケットのペイロードから、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成する索引作成機能も有し、さらに、パケット情報テーブルおよび各索引を利用して不正アクセスやシステム侵入などのセキュリティ違反行為の原因特定を支援するトラフィック解析機能も有している。なお、制御ネットワークシステムの構成は、トラフィック監視装置の機能以外は従来と同等なので、各部の説明を適宜省略する。
【００３１】
また図１では、センサ２１が中継機器２５を介してトラフィック監視装置２７に測定値を含むパケットを送信するデータ通信ＤＦ２００の動作の流れと、中継機器２５がトラフィック監視装置２７にセンサ２１からのパケットを転送するデータ通信ＤＦ２０１の動作の流れも示している。
【００３２】
図２は図１のトラフィック監視装置２７の構成ブロック図である。図２において、通信部２７１は中継機器２５との間で通信を行うものであり、各部の動作を制御するＣＰＵ（Central Processing Unit）などの演算制御部２７２に接続されている。演算制御部２７２は記憶部２７３に接続されている。記憶部２７３には、トラフィック監視装置として動作させるためのプログラムおよびパケット情報テーブル、機器タグ索引、機能ブロック索引、機能ブロック関連索引などが格納されている。
【００３３】
図３は図２のトラフィック監視装置２７を構成する演算制御部２７２の機能ブロック例図である。図３において、パケット情報管理部２７２１は、パケット情報テーブルを作成してパケット情報を記憶する。ペイロード抽出部２７２２は、パケット情報テーブルに格納されているパケットのペイロードを抽出する。メッセージ判断部２７２３は、パケット情報のペイロードに基づいて機器タグを宣言するパケット情報か否かを判断し、機能ブロック間のパケット情報か否かも判断してこれらの判断結果を情報抽出部２７２４に入力する。
【００３４】
情報抽出部２７２４は、パケット情報のペイロードから機器タグ、機能ブロックタグおよび機能ブロック間識別子情報を抽出し、索引作成部２７２５に入力する。索引作成部２７２５は、機器タグ、機能ブロックタグおよび機能ブロック間識別子に基づいて、あらかじめ定められたハッシュ関数を用いて機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成して索引管理部２７２６に記憶させる。リンク作成部２７２７は、パケット情報と機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引とのリンク付けを行う。トラフィック解析部２７２８は、パケット情報テーブルと索引管理部２７２６の各索引を利用し、不正アクセスと疑われるパケットを抽出して原因の特定を行う。
【００３５】
図４〜図６は図２の演算制御部２７２の動作を説明するフロー図であり、図７はパケット情報テーブルと各種索引の具体例の説明図である。なお、演算制御部２７２の動作を図１のデータ通信ＤＦ２００およびＤＦ２０１の流れに基づき説明するが、センサ２２と中継機器２５の動作は従来と同等なので省略する。
【００３６】
図４のステップＳ２０１において、パケット情報管理部２７２１は、中継機器２５から転送されるパケットに基づいてパケット情報テーブルを作成し記憶する。パケット情報テーブルは、時刻、送信元ＩＰアドレス、トランスポート、送信元ポート、送信先ポート、ペイロードなどで構成される。なお、ペイロードには機器タグ、機能ブロックタグおよび機能ブロック関連識別子などが含まれている。
【００３７】
ステップＳ２０２において、ペイロード抽出部２７２２は、パケット情報管理部２７２１のパケット情報テーブルに格納されるパケットのペイロードを抽出してメッセージ判断部２７２３に入力する。ステップＳ２０３において、メッセージ判断部２７２３は、パケットのペイロードに基づいて、センサおよび操作機器などの制御機器が機能ブロック間通信やその他のデータ通信を行う際に送信する機器タグを宣言するメッセージか否かを判断する。メッセージ判断部２７２３が受信したパケットが機器タグを宣言するメッセージであると判断するとステップＳ２０４に移行する。
【００３８】
ステップＳ２０４において、情報抽出部２７２４はパケットのペイロードから機器タグを抽出する。ステップＳ２０５において、索引作成部２７２５は、パケットのペイロードから抽出した機器タグが既に索引管理部２７２６に機器タグ索引として存在するか否かを判断する。パケットのペイロードから抽出した機器タグの機器タグ索引が既に存在する場合はステップＳ２０６に移行する。
【００３９】
ステップＳ２０６において、リンク作成部２７２７は機能タグとパケット情報テーブルにおけるパケット情報を関連付けする「リンク」を作成し記憶する。リンクには関連するパケット情報の時刻情報を属性値として与える。たとえば、図７に示すように、索引管理部２７２６に記憶される機器タグ索引（たとえば、ＰＤＴａｇ１）からパケット情報に対するリンクが作成され、時刻情報（たとえば、Ｔ１）が属性値として与えられる。
【００４０】
そして、ステップＳ２０７において、ペイロード抽出部２７２２は、さらに記憶すべきパケット情報が存在しないか否か判断する。さらに記憶すべきパケット情報が存在しないと判断される場合は処理を終了する。また、記憶すべきパケット情報が存在すると判断される場合は、ステップＳ２０１に戻る。
【００４１】
一方、ステップＳ２０５において、索引作成部２７２５がパケットのペイロードから抽出した機器タグの機器タグ索引が存在しないと判断する場合は、ステップＳ２０８に移行する。ステップＳ２０８において、索引作成部２７２５は機器タグに基づきハッシュ関数を用いて機器タグ索引を作成し、当該機器タグ索引を索引管理部２７２６に記憶してステップＳ２０６に移行する。
【００４２】
他方、ステップＳ２０３において、メッセージ判断部２７２３が受信したパケットが機器タグを宣言するメッセージではないと判断すると、図５の「Ａ」に移行する。図５のステップＳ３０１において、メッセージ判断部２７２３は、パケットのペイロードに基づいて、受信したパケットが機能ブロック間通信を行うメッセージか否かを判断する。受信したパケットが機能ブロック間通信を行うメッセージである場合は、ステップＳ３０２に移行する。受信したパケットが機能ブロック間通信を行うメッセージではない場合は、図４の「Ｂ」に移行して図４のステップＳ２０７に戻る。
【００４３】
ステップＳ３０２において、情報抽出部２７２４はパケットのペイロードから機能ブロック関連識別子を抽出する。ステップＳ３０３において、索引作成部２７２５は、パケットのペイロードから抽出した機能ブロック関連識別子に対応する機能ブロック関連索引が既に索引管理部２７２６に存在するか否かを判断する。機能ブロック関連識別子の索引が既に索引管理部２７２６に存在する場合はステップＳ３０４に移行する。
【００４４】
また、ステップＳ３０３において、索引作成部２７２５は、パケットのペイロードから抽出した機能ブロック関連識別子の索引が索引管理部２７２６に存在しないと判断する場合はステップＳ３０５に移行する。ステップＳ３０５において、索引作成部２７２５は機能ブロック関連識別子に基づいてハッシュ関数を用いて機能ブロック関連索引を作成し、当該機能ブロック関連索引を索引管理部２７２６に記憶しステップＳ３０４に移行する。
【００４５】
ステップＳ３０４において、リンク作成部２７２７は、パケット情報と機能ブロック関連索引との間に双方向リンクを作成し、図６の「Ｃ」に移行する。リンク作成部２７２７は、機能ブロック関連索引からパケット情報へのリンクにはパケット情報の時刻情報を属性値（以下、時間属性という）として与え、パケット情報から機能ブロック関連索引へのリンクには属性値「機能ブロック関連」を与える。
【００４６】
たとえば、図７に示すように、機能ブロック関連索引（たとえば、ｓｅｌ１）とパケット情報との間に双方向リンクを作成し、機能ブロック関連索引からパケット情報へのリンクには時間属性（たとえば、Ｔ３）を与え、パケット情報から機能ブロック関連索引へのリンクには属性値「機能ブロック関連」を与える。
【００４７】
図６のステップＳ４０１において、情報抽出部２７２４は受信したパケットのペイロードから機能ブロッタグを抽出し取得する。なお、情報抽出部２７２４は、ペイロードから抽出して機能ブロックタグを取得するだけではなく、ステップＳ３０３で取得した機能ブロック関連識別子に基づいて、機器構成管理装置２６やその他のシステムにおける機能ブロック関連識別子と機能ブロックタグとの関係が格納されている機能ブロック設定情報やその他の設定情報から、機能ブロックタグを取得するものでもよい。
【００４８】
ステップＳ４０２において、索引作成部２７２５は、取得した機能ブロックタグの機能ブロックタグ索引が既に索引管理部２７２６に存在するか否かを判断する。機能ブロックタグの索引が索引管理部２７２６に存在する場合はステップＳ４０３に移行する。ステップＳ４０３において、リンク作成部２７２７は、パケット情報と機能ブロックタグ索引との間に双方向リンクを作成する。機能ブロックタグ索引からパケット情報へのリンクにはパケット情報の時間属性を与え、パケット情報から機能ブロックタグ索引へのリンクには属性値「機能ブロック」を与える。
【００４９】
たとえば、図７に示すように、機能ブロックタグ索引（たとえば、ＦＢＴａｇ１）とパケット情報との間に双方向リンクを作成し、機能ブロックタグ索引からパケット情報へのリンクに時間属性（たとえば、Ｔ３）を与え、パケット情報から機能ブロックタグ索引へのリンクには属性値「機能ブロック」を与える。
【００５０】
ステップＳ４０４において、情報抽出部２７２４は、さらに取得すべき機能ブロックタグがほかに存在しないかどうか判断する。取得すべき機能ブロックタグが存在する場合はステップＳ４０２に戻る。取得すべき機能ブロックタグが存在しない場合は、図４の「Ｃ」に移行してステップＳ２０７に戻る。
【００５１】
一方、ステップＳ４０２において、索引作成部２７２５が、取得した機能ブロックタグに対応する機能ブロックタグ索引が索引管理部２７２６に存在しないと判断する場合はステップＳ４０５に移行する。ステップＳ４０５において、索引作成部２７２５は機能ブロックタグに基づきハッシュ関数を用いて機能ブロックタグ索引を作成し、当該機能ブロックタグ索引を索引管理部２７２６に追加記憶して、ステップＳ４０３に移行する。
【００５２】
このように、トラフィック監視装置２７の演算制御部２７２がセンサおよび操作機器からのパケットを受信してパケット情報テーブルに記憶するとともに、パケットのペイロードから機器タグ、機能ブロックタグ、機能ブロック関連識別子を取得し、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成して記憶し、パケット情報と機器タグ、機能ブロックタグ、機能ブロック関連タグとの間にリンクを作成することにより、パケット情報と機器タグ、機能ブロック、機能ブロック間通信との関係を短時間で把握できる。
【００５３】
図８は図３のトラフィック解析部２７２８の動作を説明するフロー図であり、機能ブロック間通信がスケジュール通りに行われているどうかを調査する例を示している。ステップＳ５０１において、機器構成管理装置２６からセンサ２１〜２２、操作機器２３〜２４の機能ブロックを設定する「機能ブロック設定情報」やセンサ２１〜２２、操作機器２３〜２４における機能ブロック間通信のスケジュールを設定する「スケジュール情報」などの設定情報を取得する。
【００５４】
ステップＳ５０２において、機器構成管理装置２６から取得した機能ブロック設定情報およびスケジュール情報の中から、機能ブロック関連索引（たとえば、ｓｅｌ０）に基づいて、調査すべき機能ブロック間通信にかかわる情報を抽出する。
【００５５】
ステップＳ５０３において、索引管理部２７２６の機能ブロック関連索引のリンクの時間属性を利用して、パケット情報管理部２７２１のパケット情報テーブルに記憶されているパケット情報の中から、一定時間分のパケット情報を抽出する。たとえば機能ブロック関連索引（たとえば、ｓｅｌ０）のリンクの時間属性の中から基準時間を選択し、基準時間（たとえば、ｔ０）からあらかじめ定められた時間幅（たとえば、ｔｄ）までの範囲の時間属性に関連するパケット情報、すなわち、時刻情報がｔ０〜ｔ０+ｔｄまでのパケット情報を抽出する。
【００５６】
ステップＳ５０４において、機能ブロック間通信にかかわるパケット情報と機能ブロック間通信にかかわる機能ブロック設定情報およびスケジュール情報などの設定情報とを比較し、機能ブロック間通信が機器構成管理装置２６によりあらかじめ定められたスケジュールで実施されているか否か判断する。たとえば、機能ブロック間通信（たとえば、ｓｅｌ０）が機器構成管理装置２６のスケジュール情報によって２００ミリ秒ごとに定期的に通信するものと設定されている場合には、抽出した機能ブロック間通信にかかわるパケットが２００ミリ秒ごとに定期的に通信しているか否かによって判断する。
【００５７】
ステップＳ５０４において、機能ブロック間通信があらかじめ定められたスケジュールで実施されている場合は、ステップＳ５０５に移行する。ステップＳ５０５において、索引管理部２７２６の機能ブロック関連索引のリンクの時間属性に基づいて、さらに抽出できるリンクが存在しないか否か判断する。たとえば、ｔ０＋ｔｄからさらに時間幅ｔｄまでのｔ０＋ｔｄ〜ｔ０＋ｔｄ＋ｔｄの属性値を有するリンクが存在しないかどうか判断する。
【００５８】
さらに抽出できるリンクが存在しない場合は、ステップＳ５０６に移行する。ステップＳ５０６において、索引管理部２７２６に機器構成管理装置２６から取得した設定情報の中からさらに抽出すべき設定情報が存在しないか否か判断し、抽出すべき設定情報が存在しない場合は処理を終了し、抽出すべき設定情報が存在する場合はステップＳ５０２に移行する。
【００５９】
一方、ステップＳ５０４において、機能ブロック間通信があらかじめ定められたスケジュールで実施されていない場合は、ステップＳ５０７に移行する。ステップＳ５０７において、あらかじめ定められたスケジュールで実施されていない機能ブロック間通信にかかわるパケット情報を記憶する。なお、あらかじめ定められたスケジュールで実施されていない旨とそのパケット情報をネットワークＮＷ２００に接続される上位システムなどに中継機器２５を介して通知するものであっても構わない。
【００６０】
他方、ステップＳ５０５において、さらに抽出できるリンクが存在する場合は、ステップＳ５０９に移行する。ステップＳ５０９において、次の一定時間分のリンクに関連するパケット情報を抽出するために、リンクの時間属性の基準時間（たとえば、ｔ０）をあらかじめ定められた時間幅分（たとえば、ｔｄ）加えた時間（たとえば、ｔ０＋ｔｄ）に変更してステップＳ５０３にもどる。
【００６１】
このように、トラフィック解析部２７２８が機器構成管理装置２６から設定情報を取得し、機能ブロック関連索引に基づいてパケット情報テーブルから機能ブロック間通信に関する設定情報を抽出し、機能ブロック関連索引のリンクに基づいて機能ブロック間通信に関するパケット情報を抽出し、パケット情報を解析して機器構成管理装置２６によりあらかじめ定められた設定通りに当該機能ブロック間通信が実施されているか否かを判断することで、ネットワークトラフィックの調査および解析を短時間で行うことができる。
【００６２】
言い換えれば、トラフィック監視装置２７が、パケット情報テーブルおよびパケットと関連付けるリンクを有した機能ブロック関連索引を作成および記憶するので、機能ブロック間での通信などの制御処理について調査したい場合は、調査対象の制御処理に関連する機能ブロック関連索引のリンクから取得するパケット情報と設定情報に基づいて、当該制御処理があらかじめ定められた設定通りに行われているか否かを判断できることになる。
【００６３】
図９も図３のトラフィック解析部２７２８の動作を説明するフロー図であり、機器タグに基づく制御処理の動向調査の例を示している。ステップＳ６０１において、機器構成管理装置２６からセンサ２１〜２２、操作機器２３〜２４の機能タグを設定する「機器タグ設定情報」などの設定情報を取得する。
【００６４】
ステップＳ６０２において、機器構成管理装置２６から取得した機器タグ設定情報の中から機器タグ索引（たとえば、ＰＤＴａｇ１）にかかわる設定情報を抽出する。
【００６５】
ステップＳ６０３において、索引管理部２７２６の機器タグ索引のリンクの時間属性を利用して、パケット情報管理部２７２１のパケット情報テーブルに記憶されているパケット情報の中から、当該機器タグにかかわる一定時間分のパケット情報を抽出する。たとえば機能ブロック関連索引（たとえば、ｓｅｌ０）のリンクの時間属性の中から基準時間を選択し、基準時間（たとえば、ｔ０）からあらかじめ定められた時間幅（たとえば、ｔｄ）までの範囲の時間属性に関連するパケット情報、すなわち、時刻情報がｔ０〜ｔ０+ｔｄまでのパケット情報を抽出する。
【００６６】
ステップＳ６０４において、当該機器タグにかかわるパケット情報と機器タグ設定情報とに基づいてパケット情報を解析し、機器構成管理装置２６によりあらかじめ定められた設定通りに当該機器の処理が実施されているか否かを判断する。
【００６７】
ステップＳ６０４において、たとえば測定値を送信する際に用いるポート番号（たとえば、４９１５２）があらかじめ機器構成管理装置２６により設定された通りに用いられている場合は、ステップＳ６０５に移行する。
【００６８】
ステップＳ６０５において、索引管理部２７２６の機器タグ索引のリンクの時間属性に基づいてさらに抽出できるリンクが存在しないか否か判断し、さらに抽出できるリンクが存在しない場合はステップＳ６０６に移行する。
【００６９】
ステップＳ６０６において、機能ブロック関連索引に基づいて調査すべき機能ブロック間通信にかかわる機能ブロック関連索引がさらに存在しないか否かを判断し、さらに調査すべき機能ブロック関連索引が存在しない場合は処理を終了し、さらに調査すべき機能ブロック関連索引が存在する場合はステップＳ６０２に移行する。
【００７０】
一方、ステップＳ６０４において、パケット情報を解析して機器構成管理装置２６によりあらかじめ定められた設定通りに実施されていない場合は、ステップＳ６０７に移行する。ステップＳ６０７において、あらかじめ定められた設定通りに実施されていないパケット情報を記憶する。なお、あらかじめ定められた設定通りに実施されていない旨とそのパケット情報をネットワークＮＷ２００に接続される上位システムなどに中継機器２５を介して通知するものであっても構わない。
【００７１】
他方、ステップＳ６０５において、さらに抽出できるリンクが存在する場合は、ステップＳ６０８に移行する。ステップＳ６０８において、次の一定期間分のリンクに関連するパケット情報を抽出するため、リンクの時間属性の基準時間（たとえば、ｔ０）をあらかじめ定められた時間幅分（たとえば、ｔｄ）を加えた時間（たとえば、ｔ０＋ｔｄ）に変更して、ステップＳ６０３にもどる。
【００７２】
このように、トラフィック解析部２７２８が機器構成管理装置２６から取得した設定情報から選択された機器タグに関する設定情報を抽出し、パケット情報テーブルから機器タグ索引のリンクに基づいて当該機器タグに関するパケット情報を抽出し、パケット情報を解析してあらかじめ定められた設定通りに当該機器の処理が実施されているか否かを判断することで、ネットワークトラフィックの調査および解析を短時間で行うことができる。
【００７３】
言い換えれば、トラフィック監視装置２７が、パケット情報テーブルおよびパケットと関連付けるリンクを有した機器タグ索引を作成および記憶するので、センサや操作機器における制御処理について調査したい場合は、調査対象の制御処理に関連する機器タグ索引のリンクから取得するパケット情報と設定情報とに基づいて、当該制御処理があらかじめ定められた設定通りに行われているか否かを判断できることになる。
【００７４】
図１０も図３のトラフィック解析部２７２８の動作を説明するフロー図であり、不正操作に対する通信セッション情報の調査の例を示している。説明を簡単にするため、機能ブロック（ＦＢＴａｇ１）に対して不正操作が行われたと疑われる場合の動作について説明する。
【００７５】
ステップＳ７０１において、機器構成管理装置２６から、不正操作が行われたと疑われる機能ブロック（たとえば、ＦＢＴａｇ１）にかかわる機能ブロック設定情報およびスケジュール情報を抽出する。
【００７６】
ステップＳ７０２において、索引管理部２７２６の機能ブロックタグ索引のリンクの時間属性を利用して、パケット情報管理部２７２１のパケット情報テーブルの中から、不正操作が行われた機能ブロックにかかわる一定期間分のパケット情報を抽出する。たとえば不正操作が行われた機能ブロックタグ索引（たとえば、ＦＢＴａｇ１）のリンクの時間属性の中から基準時間を選択し、基準時間（たとえば、ｔ０）からあらかじめ定められた時間幅（たとえば、ｔｄ）までの範囲の時間属性に関連するパケット情報、すなわち、時刻情報がｔ０〜ｔ０+ｔｄまでのパケット情報を抽出する。なお、リンクの時間属性は、不正操作が確認された時刻以降のものでも、不正操作が確認された時刻以前のものであっても構わない。
【００７７】
ステップＳ７０３において、取得したリンク先のパケット情報を解析して、送信元ＩＰアドレス、送信元ポート番号、送信先ＩＰアドレス、送信先ポート番号の組み合わせなどのパケットの詳細なセッション情報を把握する。
【００７８】
ステップＳ７０４において、抽出した当該機能ブロックにかかわるパケット情報と機器構成管理装置２６から取得した機能ブロック設定情報とに基づき、機器構成管理装置２６によりあらかじめ定められた設定通りに当該機能ブロックの処理が実施されているか否かを判断する。たとえば、当該機能ブロックにあらかじめ設定されていない機器からのアクセスがあるかどうかを判断する。
【００７９】
ステップＳ７０４において、パケット情報を解析して機器構成管理装置２６によりあらかじめ定められた設定通りに当該機器の処理が実施されていると判断する場合は、ステップＳ７０５に移行する。
【００８０】
ステップＳ７０５において、索引管理部２７２６の機器タグ索引のリンクの時間属性に基づいてさらに抽出できるリンクが存在しないか否か判断し、さらに抽出できるリンクが存在しない場合は処理を終了し、さらに抽出できるリンクが存在する場合はステップＳ７０２に戻る。
【００８１】
一方、ステップＳ７０４において、パケット情報を解析して機器構成管理装置２６によりあらかじめ定められた設定通りに実施されていない場合は、ステップＳ７０６に移行する。
【００８２】
ステップＳ７０６において、あらかじめ定められた設定通りに実施されていないパケット情報を記憶する。なお、あらかじめ定められた設定通りに実施されていない旨とそのパケット情報をネットワークＮＷ２００に接続される上位システムなどに中継機器２５を介して通知するものであっても構わない。
【００８３】
このように、トラフィック解析部２７２８が、不正操作が行われたと疑われる機器ブロックに関する設定情報を機器構成管理装置２６から取得し、機能ブロック索引のリンクに基づいてパケット情報テーブルから当該機能ブロックに関するパケット情報を抽出し、パケット情報を解析してあらかじめ定められた設定通りに当該機能ブロックの処理が実施されているか否かを判断することで、ネットワークトラフィックにおける不正操作の調査を拘束に行うことができる。
【００８４】
言い換えれば、トラフィック監視装置２７が、パケット情報テーブルおよびパケットと関連付けるリンクを有した機能ブロック索引を作成および記憶するので、機能ブロックにおける制御処理について調査したい場合は、調査対象の制御処理に関連する機能ブロック索引のリンクから取得するパケット情報と設定情報とに基づいて、当該制御処理があらかじめ定められた設定通りに行われているか否かを判断できることになる。
【００８５】
この結果、トラフィック監視装置２７の演算制御部２７２が、ネットワークを伝送するパケットを受信してパケット情報テーブルに記憶するとともに、パケットのペイロードから取得する機器タグ、機能ブロックタグ、機能ブロック関連識別子に基づいて機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成し、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引とパケットとを関連付けるリンクを作成して記憶することで、パケット情報と機器タグ、機能ブロック、機能ブロック間通信との関係を短時間で把握できる。
【００８６】
また、トラフィック監視装置２７の演算制御部２７２が、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引とパケットとを関連付けるリンクに基づいて調査対象の制御処理に関連するパケットを抽出して、抽出されたパケットとあらかじめ設定される設定情報に基づいて、制御処理があらかじめ設定された通りに行われているかどうか判断することで、ネットワークトラフィックの調査および解析を短時間で行うことができる。
【００８７】
なお、上記実施例では、制御ネットワークシステムがインダストリアルオートメーションにおけるプラントの運転を支援する例を説明したが、特にこれに限定されるものではなく、たとえばファクトリーオートメーションにおける浄水場の制御システムや、ビルの空調・照明システム、ＦＦＨＳＥ（Foundation Field bus High Speed Ethernet（登録商標））に展開し運転を支援するものであっても構わない。
【００８８】
たとえば、本発明をＦＦＨＳＥに展開する場合においては、操作機器およびセンサはＦＦＨＳＥ  Ｃｏｎｔｒｏｌ  ＤｅｖｉｃｅやＦＦＨＳＥ  Ｌｉｎｋｉｎｇ  Ｄｅｖｉｃｅなどに対応し、それぞれスケジュールや設定情報はＣｏｎｆｉｇｕｒａｔｉｏｎ  Ａｐｐｌｉｃａｔｉｏｎなどによって設定される。セキュリティ監視装置は、Ｄｅｖｉｃｅ  Ａｎｎｕｎｃｉａｔｉｏｎメッセージなどに基づいて機器タグを宣言するメッセージか否かを判断し、機器タグを機器タグ索引に追加・記憶する。
【００８９】
また、トラフィック監視装置は、ＦＭＳ  Ｓｅｒｖｉｃｅのメッセージに基づいて機能ブロック間通信の識別子を機能ブロック間関連索引に追加・記憶し、取得した機能ブロック関連識別子に基づいて機器構成管理装置やＣｏｎｆｉｇｕｒａｔｉｏｎ  Ａｐｐｌｉｃａｔｉｏｎが有する機能ブロック設定情報から機能ブロックタグを取得する。
【００９０】
このように、本発明をＦＦＨＳＥに展開する場合であっても、トラフィック監視装置がパケット情報と機器タグ、機能ブロックタグ、機能ブロック関連識別子との間にリンクを作成することで、パケット情報と機器タグ、機能ブロック、機能ブロック間通信との関係を高速に把握できる。
【００９１】
また、ＦＦＨＳＥにおいては、Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ａｐｐｌｉｃａｔｉｏｎが有する設定情報はネットワークの構成が変更しても更新されず、機能ブロック間通信、機能ブロックおよび機器における各処理があらかじめ設定された通りに行われているかどうかの調査ができないという問題点があった。
【００９２】
たとえば、機能ブロックＦＢＴａｇ１とＦＢＴａｇ２との機能ブロック間通信をあらわす機能ブロック関連識別子Ｓｅｌ１において、ネットワーク構成の変更によって機能ブロックＦＢＴａｇ１がＦＢＴａｇ４に変更したとしても、設定情報における機能ブロック関連識別子ｓｅｌ１は変更が反映されずに機能ブロックＦＢＴａｇ１とＦＢＴａｇ２との機能ブロック間通信をあらわすままであった。
【００９３】
この場合に、本発明の制御ネットワークシステムは、機能ブロック関連索引および機能ブロック索引とパケット情報との双方向リンクによってネットワーク構成が変更した時刻とその変更点を把握し、Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ａｐｐｌｉｃａｔｉｏｎが有する設定情報とネットワーク構成の変更点に基づいて、各索引に関する設定情報とパケット情報とをそれぞれ比較することで、機能ブロック間通信、機能ブロックおよび機器における各処理があらかじめ設定された通りに行われているかどうかを調査でき、ネットワークトラフィックの調査および解析を短時間で行うことができる。
【００９４】
また、上記実施例では、制御ネットワークシステムがネットワークのトラフィックやセキュリティを監視するトラフィック監視機能を有するトラフィック監視装置を用いて構成する例を示したが、特にこれに限定するものではなく、ネットワークのセキュリティを監視するように特化したセキュリティ監視装置であってもよい。
【００９５】
また、上記実施例の制御ネットワークシステムは、トラフィック監視装置２７の索引作成部２７２５が該当する機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を追加した後に、または存在を確認した後にパケット情報とのリンクを作成しているが、トラフィック監視装置がパケット情報を受信し、パケット情報テーブルにパケットを記憶するのと同時にパケット情報と機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引との間にリンクを作成するものであってもよい。
【００９６】
また、トラフィック監視装置の索引作成部があらかじめ定められた任意のタイミングでパケットと機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引との間にリンクを作成するものであっても構わない。
【００９７】
また、トラフィック監視装置は、演算制御部の処理量が低い場合に余剰計算リソースを用いてパケットと機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引との間にリンクを作成するものであってもよい。
【００９８】
また、上記実施例の制御ネットワークシステムは、抽出した機能ブロックにかかわるパケット情報と機器構成管理装置２６から取得した機能ブロック設定情報とに基づき、当該機能ブロックにあらかじめ設定されていない機器からのアクセスがあるかどうかを判断しているが、特定の機能ブロックになりすましたセッションの確立を調査するものであっても構わない。
【００９９】
また、上記実施例の制御ネットワークシステムは、ネットワークを伝送するパケットを中継機器２５がトラフィック監視装置２７に転送しているが、特にこれに限定されるものではなく、たとえば中継機器にセキュリティ監視装置に接続するミラーリングポートを構成しネットワークを伝送するパケットを傍聴するものであってもよいし、セキュリティ監視装置がｎｅｔｆｌｏｗやｓｆｌｏｗを用いて中継機器を流れるパケット情報を解釈するものであってもよい。
【０１００】
さらに、上記実施例の制御ネットワークシステムでは、中継機器が１個で構成されているが、１個以上の中継機器から構成されるものであればよい。
【図面の簡単な説明】
【０１０１】
【図１】本発明に係る制御ネットワークシステムの一実施例を示す構成ブロック図である。
【図２】図１のトラフィック監視装置２７の構成ブロック図である。
【図３】図２のトラフィック監視装置２７を構成する演算制御部２７２の機能ブロック例図である。
【図４】図２の演算制御部２７２の動作を説明するフロー図である。
【図５】図２の演算制御部２７２の動作を説明するフロー図である。
【図６】図２の演算制御部２７２の動作を説明するフロー図である。
【図７】パケット情報テーブルと各種索引の具体例の説明図である。
【図８】図３のトラフィック解析部２７２８の動作を説明するフロー図である。
【図９】図３のトラフィック解析部２７２８の動作を説明するフロー図である。
【図１０】図３のトラフィック解析部２７２８の動作を説明するフロー図である。
【図１１】従来の制御ネットワークシステムの一例を示す構成ブロック図である。
【図１２】図１１のセキュリティ監視装置７のトラフィック解析機能の一例を示す構成ブロック図である。
【図１３】図１１の制御ネットワークシステムのセキュリティ違反行為の原因特定を行う動作を説明する説明図である。
【図１４】図１３のデータ通信ＤＦ１００およびＤＦ１０１の動作を説明するフロー図である。
【図１５】パケット情報テーブルの説明図である。
【符号の説明】
【０１０２】
１、２、２１、２２  センサ
３、４、２３、２４  操作機器
５、２５  中継機器
６、２６  機器構成管理装置
７  セキュリティ監視装置
２７  トラフィック監視装置
７１、２７１  通信部
７２、２７２  演算制御部
７３、２７３  記憶部
２７２１  パケット情報管理部
２７２２  ペイロード抽出部
２７２３  メッセージ判断部
２７２４  情報抽出部
２７２５  索引作成部
２７２６  索引管理部
２７２７  索引制御部
２７２８  トラフィック解析部
【図１】
2009033276.tif 000003
【図２】
2009033276.tif 000004
【図３】
2009033276.tif 000005
【図４】
2009033276.tif 000006
【図５】
2009033276.tif 000007
【図６】
2009033276.tif 000008
【図７】
2009033276.tif 000009
【図８】
2009033276.tif 000010
【図９】
2009033276.tif 000011
【図１０】
2009033276.tif 000012
【図１１】
2009033276.tif 000013
【図１２】
2009033276.tif 000014
【図１３】
2009033276.tif 000015
【図１４】
2009033276.tif 000016
【図１５】
2009033276.tif 000017