JP2009033276A - 制御ネットワークシステム - Google Patents

制御ネットワークシステム Download PDF

Info

Publication number
JP2009033276A
JP2009033276A JP2007192778A JP2007192778A JP2009033276A JP 2009033276 A JP2009033276 A JP 2009033276A JP 2007192778 A JP2007192778 A JP 2007192778A JP 2007192778 A JP2007192778 A JP 2007192778A JP 2009033276 A JP2009033276 A JP 2009033276A
Authority
JP
Japan
Prior art keywords
packet
index
control
link
tag
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.)
Pending
Application number
JP2007192778A
Other languages
English (en)
Inventor
Kazuya Kubo
和也 久保
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2007192778A priority Critical patent/JP2009033276A/ja
Publication of JP2009033276A publication Critical patent/JP2009033276A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】 ネットワークトラフィックの調査および解析を短時間で行うことができる制御ネットワークシステムを実現する。
【解決手段】制御機器で制御ループを構成しネットワークを介してパケット通信を行う制御ネットワークシステムにおいて、パケットを記憶し、前記パケットと関連付けるリンクを有した索引に基づいて制御処理に関連する前記パケットを抽出し、前記制御処理があらかじめ定められた設定通りに行われているか否かを判断することを特徴とする。
【選択図】 図1

Description

本発明は、制御ネットワークシステムに関し、詳しくは、ネットワークトラフィックの監視に関する。
近年、たとえばインダストリアルオートメーションにおけるプロセス制御システムとして、制御ループを構成する流量計や温度計などのセンサや、バルブやヒータなどの操作機器を含む制御機器をネットワークにより相互に接続し、制御ネットワークシステムとして構築することが提案されている。
従来の制御ネットワークシステムに関連する先行技術文献としては次のようなものがある。
特開2002−041139号公報 特開2002−099326号公報
ところで、制御ネットワークシステムを構築するのにあたっては、制御ネットワークシステムを安全に動作させるために、不正アクセスやシステム侵入などを阻止する対策を講じておく必要がある。
図11は従来の制御ネットワークシステムの一例を示す構成ブロック図である。図11において、センサ1〜2は、温度や流量などの物理量を測定するセンサ機能と、これら物理量の測定値をIP(Internet Protocol)を用いて伝送する通信機能を有している。操作機器3〜4は、温度や流量などの物理量を制御する制御機能と、データを伝送する通信機能を有している。これらセンサ1〜2と操作機器3〜4はプラントに設置されていて、図示しないコントローラとともに、フィードバック制御ループを構成している。図示しないコントローラは、プラントが最適に運転されるように、センサ1〜2の測定値が所定の目標値に収束するように操作機器3〜4を操作制御する。これらセンサ1〜2と操作機器3〜4は中継機器5およびネットワークNW100を介して図示しない中央監視システムなどの上位システムに接続されている。
中継機器5は通信機能を有するものであり、センサ1〜2と操作機器3〜4の他、機器構成管理装置6やセキュリティ監視装置7も接続されている。中継機器5は、センサ1〜2や操作機器3〜4から受信したパケットを、他のセンサ1〜2や操作機器3〜4、機器構成管理装置6、セキュリティ監視装置7などへ転送する。
構成管理装置6は、センサ1〜2や操作機器3〜4の論理的な名前である機器タグを設定する機器タグ設定機能の他、センサ1〜2や操作機器3〜4の制御機能を実現する単位であるアナログ信号入力ブロック、アナログ信号入出力ブロック、PID演算(比例、積分、微分演算)ブロックなどの機能ブロックおよびこれら機能ブロック間で行われる通信処理を設定する機能ブロック設定機能を有する。
セキュリティ監視装置7は、不正アクセスやシステム侵入などのセキュリティ違反行為の原因特定を支援するトラフィック解析機能を有するものである。また、セキュリティ監視装置7は、センサ1〜2、操作機器3〜4、中継機器5、図示しないコントローラおよび機器構成管理装置6の相互間で送受信されるパケットを記憶し、パケット情報テーブルを作成するパケット情報テーブル作成機能も有している。
図12は図11のセキュリティ監視装置7のトラフィック解析機能の一例を示す構成ブロック図である。図12において、中継機器5との間で通信を行う通信部71、各部の動作を制御するCPU(Central Processing Unit)などの演算制御部72、セキュリティ監視装置として動作させるためのプログラムなどが格納される記憶部73などで構成されている。通信部71は演算制御部72に接続され、演算制御部72は記憶部73に接続されている。
図13は図11の制御ネットワークシステムにおけるセキュリティ違反行為の原因特定動作の説明図である。図13は、センサ1が中継機器5を介してセキュリティ監視装置7に測定値を含むパケットを送信するデータ通信DF100の流れと、中継機器5がセキュリティ監視装置7にセンサ1からのパケットを転送するデータ通信DF101の流れを示している。
図14は図13のデータ通信DF100およびDF101の動作を説明するフロー図である。まず、ステップS101において、センサ1は流量や温度などの物理量を測定し、測定値を記憶する。ステップS102において、センサ1は、測定値を含むパケットを中継機器5に送信する。なお、センサ2もセンサ1と同様の動作を行う。
ステップS103において、中継機器5は、センサ1から受信したパケットをセキュリティ監視装置7に送信する。ステップS104において、セキュリティ監視装置7の演算制御部71は記憶部73に格納されたプログラムを読み出し実行することにより、中継機器5から転送されるパケットに基づいて図15に示すようなパケット情報テーブルを作成し記憶する。パケット情報テーブルは、時刻、送信元IPアドレス、トランスポート、送信元ポート、送信先ポート、ペイロードなどで構成される。なお、ペイロードには機器タグ、機能ブロックの論理的な名前である機能ブロックタグおよび機器ブロック間通信を表す機能ブロック関連識別子などが含まれている。
ステップS105において、オペレータは、セキュリティ監視装置7のパケット情報テーブルのパケット情報を解析し、制御ネットワークシステムへの不正アクセスなどの調査を行う。たとえば、オペレータは、セキュリティ監視装置7を利用して、不正アクセスと疑われるIPアドレスに基づいてパケット情報テーブルから該当パケット情報の検索を行ったり、不正な行為が行われていると疑われるポート番号に基づいて検索を行ったりすることで不正アクセスやシステム侵入などのセキュリティ違反行為の原因を特定する。
セキュリティ監視装置7は、センサ1〜2および操作機器3〜4の制御処理に用いられるパケットに基づいてパケット情報テーブルを作成して記憶するので、不正アクセスやシステム侵入などのセキュリティ違反行為の原因特定を支援することができる。
このような制御ネットワークシステムにおいて、特定の機器タグや機能ブロックタグがなりすましなどにより不正操作を行っていることが疑わしい場合は、直接機器タグや機能ブロックに基づいてアクセス履歴や動作履歴を検索したいことがある。
また、上述の制御ネットワークシステムでは、IPアドレスに基づきパケット情報テーブルから疑わしいパケット情報を検索するので、機器の配置変更、IPアドレス変更、機能ブロック間の通信で用いられるポート番号変更などのシステム構成の変更が行われた場合は、その都度、オペレータが手動でIPアドレスと関連する機器タグや機能ブロックタグとを対応づけなければならない。
しかし、従来の制御ネットワークシステムにおいて、機器タグと機能ブロックタグに基づいてアクセス履歴や動作履歴を検索するためには、逐次パケットのアプリケーションペイロードを解析して機器タグおよび機能ブロックタグを抽出しなければならず、トラフィックの調査および解析にかなりの時間がかかってしまうという問題点がある。
また、システム構成が変更された場合には、その都度、オペレータが手動で抽出された機器タグや機能ブロックタグとIPアドレスとを対応づけなければならず、多大な工数がかかってしまうという問題点もある。
本発明は上述の問題点を解決するものであり、その目的は、ネットワークトラフィックの調査および解析を短時間で行うことができる制御ネットワークシステムを実現することにある。
このような課題を達成するために、本発明のうち請求項1記載の発明は、
制御ループを構成する制御機器がネットワークを介して相互に接続され、制御機器間でパケット通信を行う制御ネットワークシステムにおいて、前記パケットのペイロードに基づき各制御機器に関連した索引を作成し、作成した索引に基づきネットワークのトラフィックを監視するトラフィック監視装置を設けたことを特徴とする。
請求項2記載の発明は、
請求項1記載の制御ネットワークシステムにおいて、
前記トラフィック監視装置は、前記パケットをパケット情報テーブルに記憶し、前記パケットと関連付けるリンクを有した前記索引を作成して記憶し、前記索引および前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットとあらかじめ定められた設定情報とに基づいて前記制御処理が設定通りに行われているか否かを判断することを特徴とする。
請求項3記載の発明は、
請求項1もしくは請求項2記載の制御ネットワークシステムにおいて、
前記トラフィック監視装置が、前記パケット情報テーブルおよび前記リンクを有した前記索引を記憶する記憶部と、パケット通信を行う通信部と、前記パケットから取得する識別子に基づいて前記索引を作成し、前記パケットと前記索引とを関連付ける前記リンクを作成し、前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットと前記設定情報とに基づいて前記制御処理が設定通りに行われているか否かを判断する演算制御部とから構成されることを特徴とする。
請求項4記載の発明は、
請求項3記載の制御ネットワークシステムにおいて、
前記演算制御部が、前記パケットを前記パケット情報テーブルに記憶し、前記パケットから取得する前記識別子に基づいて、前記索引を作成して記憶し、前記パケットと前記索引とを関連付ける前記リンクを作成して記憶し、前記制御処理にかかわる前記索引の前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットと前記設定情報とに基づいて、前記制御処理が設定通りに行われているか否かを判断することを特徴とする。
請求項5記載の発明は、
請求項1ないし請求項4いずれかに記載の制御ネットワークシステムにおいて、
前記索引が、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引のうち少なくとも一つを含むことを特徴とする。
請求項6記載の発明は、
請求項3ないし請求項5いずれかに記載の制御ネットワークシステムにおいて、
前記識別子が、機器タグ、機能ブロックタグ、機能ブロック関連識別子のうち少なくとも一つを含むことを特徴とする。
請求項7記載の発明は、
請求項1ないし請求項6いずれかに記載の制御ネットワークシステムにおいて、
前記トラフィック監視装置はネットワークのセキュリティを監視するセキュリティ監視装置であることを特徴とする。
本発明によれば、トラフィック監視装置が作成する各制御機器に関連した索引に基づいて、制御処理があらかじめ設定された通りに行われているかどうかを調査でき、ネットワークトラフィックの調査および解析を短時間で行うことができる。
図1は、本発明に係る制御ネットワークシステムの一実施例を示す構成ブロック図である。図1において、センサ21〜22と操作機器23〜24は、図示しないコントローラとともに、プラントにおけるフィードバック制御ループを構成している。図示しないコントローラは、プラントが最適に運転されるように、センサ21〜22の測定値が所定の目標値に収束するように操作機器23〜24を操作制御する。これらセンサ21〜22と操作機器23〜24は、中継機器25およびネットワークNW200を介して図示しない中央監視システムなどの上位システムに接続されている。
トラフィック監視装置27は、各機器間で送受信されるパケットを記憶し、パケット情報テーブルを作成するパケット情報テーブル作成機能を有するものである。また、パケットのペイロードから、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成する索引作成機能も有し、さらに、パケット情報テーブルおよび各索引を利用して不正アクセスやシステム侵入などのセキュリティ違反行為の原因特定を支援するトラフィック解析機能も有している。なお、制御ネットワークシステムの構成は、トラフィック監視装置の機能以外は従来と同等なので、各部の説明を適宜省略する。
また図1では、センサ21が中継機器25を介してトラフィック監視装置27に測定値を含むパケットを送信するデータ通信DF200の動作の流れと、中継機器25がトラフィック監視装置27にセンサ21からのパケットを転送するデータ通信DF201の動作の流れも示している。
図2は図1のトラフィック監視装置27の構成ブロック図である。図2において、通信部271は中継機器25との間で通信を行うものであり、各部の動作を制御するCPU(Central Processing Unit)などの演算制御部272に接続されている。演算制御部272は記憶部273に接続されている。記憶部273には、トラフィック監視装置として動作させるためのプログラムおよびパケット情報テーブル、機器タグ索引、機能ブロック索引、機能ブロック関連索引などが格納されている。
図3は図2のトラフィック監視装置27を構成する演算制御部272の機能ブロック例図である。図3において、パケット情報管理部2721は、パケット情報テーブルを作成してパケット情報を記憶する。ペイロード抽出部2722は、パケット情報テーブルに格納されているパケットのペイロードを抽出する。メッセージ判断部2723は、パケット情報のペイロードに基づいて機器タグを宣言するパケット情報か否かを判断し、機能ブロック間のパケット情報か否かも判断してこれらの判断結果を情報抽出部2724に入力する。
情報抽出部2724は、パケット情報のペイロードから機器タグ、機能ブロックタグおよび機能ブロック間識別子情報を抽出し、索引作成部2725に入力する。索引作成部2725は、機器タグ、機能ブロックタグおよび機能ブロック間識別子に基づいて、あらかじめ定められたハッシュ関数を用いて機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成して索引管理部2726に記憶させる。リンク作成部2727は、パケット情報と機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引とのリンク付けを行う。トラフィック解析部2728は、パケット情報テーブルと索引管理部2726の各索引を利用し、不正アクセスと疑われるパケットを抽出して原因の特定を行う。
図4〜図6は図2の演算制御部272の動作を説明するフロー図であり、図7はパケット情報テーブルと各種索引の具体例の説明図である。なお、演算制御部272の動作を図1のデータ通信DF200およびDF201の流れに基づき説明するが、センサ22と中継機器25の動作は従来と同等なので省略する。
図4のステップS201において、パケット情報管理部2721は、中継機器25から転送されるパケットに基づいてパケット情報テーブルを作成し記憶する。パケット情報テーブルは、時刻、送信元IPアドレス、トランスポート、送信元ポート、送信先ポート、ペイロードなどで構成される。なお、ペイロードには機器タグ、機能ブロックタグおよび機能ブロック関連識別子などが含まれている。
ステップS202において、ペイロード抽出部2722は、パケット情報管理部2721のパケット情報テーブルに格納されるパケットのペイロードを抽出してメッセージ判断部2723に入力する。ステップS203において、メッセージ判断部2723は、パケットのペイロードに基づいて、センサおよび操作機器などの制御機器が機能ブロック間通信やその他のデータ通信を行う際に送信する機器タグを宣言するメッセージか否かを判断する。メッセージ判断部2723が受信したパケットが機器タグを宣言するメッセージであると判断するとステップS204に移行する。
ステップS204において、情報抽出部2724はパケットのペイロードから機器タグを抽出する。ステップS205において、索引作成部2725は、パケットのペイロードから抽出した機器タグが既に索引管理部2726に機器タグ索引として存在するか否かを判断する。パケットのペイロードから抽出した機器タグの機器タグ索引が既に存在する場合はステップS206に移行する。
ステップS206において、リンク作成部2727は機能タグとパケット情報テーブルにおけるパケット情報を関連付けする「リンク」を作成し記憶する。リンクには関連するパケット情報の時刻情報を属性値として与える。たとえば、図7に示すように、索引管理部2726に記憶される機器タグ索引(たとえば、PDTag1)からパケット情報に対するリンクが作成され、時刻情報(たとえば、T1)が属性値として与えられる。
そして、ステップS207において、ペイロード抽出部2722は、さらに記憶すべきパケット情報が存在しないか否か判断する。さらに記憶すべきパケット情報が存在しないと判断される場合は処理を終了する。また、記憶すべきパケット情報が存在すると判断される場合は、ステップS201に戻る。
一方、ステップS205において、索引作成部2725がパケットのペイロードから抽出した機器タグの機器タグ索引が存在しないと判断する場合は、ステップS208に移行する。ステップS208において、索引作成部2725は機器タグに基づきハッシュ関数を用いて機器タグ索引を作成し、当該機器タグ索引を索引管理部2726に記憶してステップS206に移行する。
他方、ステップS203において、メッセージ判断部2723が受信したパケットが機器タグを宣言するメッセージではないと判断すると、図5の「A」に移行する。図5のステップS301において、メッセージ判断部2723は、パケットのペイロードに基づいて、受信したパケットが機能ブロック間通信を行うメッセージか否かを判断する。受信したパケットが機能ブロック間通信を行うメッセージである場合は、ステップS302に移行する。受信したパケットが機能ブロック間通信を行うメッセージではない場合は、図4の「B」に移行して図4のステップS207に戻る。
ステップS302において、情報抽出部2724はパケットのペイロードから機能ブロック関連識別子を抽出する。ステップS303において、索引作成部2725は、パケットのペイロードから抽出した機能ブロック関連識別子に対応する機能ブロック関連索引が既に索引管理部2726に存在するか否かを判断する。機能ブロック関連識別子の索引が既に索引管理部2726に存在する場合はステップS304に移行する。
また、ステップS303において、索引作成部2725は、パケットのペイロードから抽出した機能ブロック関連識別子の索引が索引管理部2726に存在しないと判断する場合はステップS305に移行する。ステップS305において、索引作成部2725は機能ブロック関連識別子に基づいてハッシュ関数を用いて機能ブロック関連索引を作成し、当該機能ブロック関連索引を索引管理部2726に記憶しステップS304に移行する。
ステップS304において、リンク作成部2727は、パケット情報と機能ブロック関連索引との間に双方向リンクを作成し、図6の「C」に移行する。リンク作成部2727は、機能ブロック関連索引からパケット情報へのリンクにはパケット情報の時刻情報を属性値(以下、時間属性という)として与え、パケット情報から機能ブロック関連索引へのリンクには属性値「機能ブロック関連」を与える。
たとえば、図7に示すように、機能ブロック関連索引(たとえば、sel1)とパケット情報との間に双方向リンクを作成し、機能ブロック関連索引からパケット情報へのリンクには時間属性(たとえば、T3)を与え、パケット情報から機能ブロック関連索引へのリンクには属性値「機能ブロック関連」を与える。
図6のステップS401において、情報抽出部2724は受信したパケットのペイロードから機能ブロッタグを抽出し取得する。なお、情報抽出部2724は、ペイロードから抽出して機能ブロックタグを取得するだけではなく、ステップS303で取得した機能ブロック関連識別子に基づいて、機器構成管理装置26やその他のシステムにおける機能ブロック関連識別子と機能ブロックタグとの関係が格納されている機能ブロック設定情報やその他の設定情報から、機能ブロックタグを取得するものでもよい。
ステップS402において、索引作成部2725は、取得した機能ブロックタグの機能ブロックタグ索引が既に索引管理部2726に存在するか否かを判断する。機能ブロックタグの索引が索引管理部2726に存在する場合はステップS403に移行する。ステップS403において、リンク作成部2727は、パケット情報と機能ブロックタグ索引との間に双方向リンクを作成する。機能ブロックタグ索引からパケット情報へのリンクにはパケット情報の時間属性を与え、パケット情報から機能ブロックタグ索引へのリンクには属性値「機能ブロック」を与える。
たとえば、図7に示すように、機能ブロックタグ索引(たとえば、FBTag1)とパケット情報との間に双方向リンクを作成し、機能ブロックタグ索引からパケット情報へのリンクに時間属性(たとえば、T3)を与え、パケット情報から機能ブロックタグ索引へのリンクには属性値「機能ブロック」を与える。
ステップS404において、情報抽出部2724は、さらに取得すべき機能ブロックタグがほかに存在しないかどうか判断する。取得すべき機能ブロックタグが存在する場合はステップS402に戻る。取得すべき機能ブロックタグが存在しない場合は、図4の「C」に移行してステップS207に戻る。
一方、ステップS402において、索引作成部2725が、取得した機能ブロックタグに対応する機能ブロックタグ索引が索引管理部2726に存在しないと判断する場合はステップS405に移行する。ステップS405において、索引作成部2725は機能ブロックタグに基づきハッシュ関数を用いて機能ブロックタグ索引を作成し、当該機能ブロックタグ索引を索引管理部2726に追加記憶して、ステップS403に移行する。
このように、トラフィック監視装置27の演算制御部272がセンサおよび操作機器からのパケットを受信してパケット情報テーブルに記憶するとともに、パケットのペイロードから機器タグ、機能ブロックタグ、機能ブロック関連識別子を取得し、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成して記憶し、パケット情報と機器タグ、機能ブロックタグ、機能ブロック関連タグとの間にリンクを作成することにより、パケット情報と機器タグ、機能ブロック、機能ブロック間通信との関係を短時間で把握できる。
図8は図3のトラフィック解析部2728の動作を説明するフロー図であり、機能ブロック間通信がスケジュール通りに行われているどうかを調査する例を示している。ステップS501において、機器構成管理装置26からセンサ21〜22、操作機器23〜24の機能ブロックを設定する「機能ブロック設定情報」やセンサ21〜22、操作機器23〜24における機能ブロック間通信のスケジュールを設定する「スケジュール情報」などの設定情報を取得する。
ステップS502において、機器構成管理装置26から取得した機能ブロック設定情報およびスケジュール情報の中から、機能ブロック関連索引(たとえば、sel0)に基づいて、調査すべき機能ブロック間通信にかかわる情報を抽出する。
ステップS503において、索引管理部2726の機能ブロック関連索引のリンクの時間属性を利用して、パケット情報管理部2721のパケット情報テーブルに記憶されているパケット情報の中から、一定時間分のパケット情報を抽出する。たとえば機能ブロック関連索引(たとえば、sel0)のリンクの時間属性の中から基準時間を選択し、基準時間(たとえば、t0)からあらかじめ定められた時間幅(たとえば、td)までの範囲の時間属性に関連するパケット情報、すなわち、時刻情報がt0〜t0+tdまでのパケット情報を抽出する。
ステップS504において、機能ブロック間通信にかかわるパケット情報と機能ブロック間通信にかかわる機能ブロック設定情報およびスケジュール情報などの設定情報とを比較し、機能ブロック間通信が機器構成管理装置26によりあらかじめ定められたスケジュールで実施されているか否か判断する。たとえば、機能ブロック間通信(たとえば、sel0)が機器構成管理装置26のスケジュール情報によって200ミリ秒ごとに定期的に通信するものと設定されている場合には、抽出した機能ブロック間通信にかかわるパケットが200ミリ秒ごとに定期的に通信しているか否かによって判断する。
ステップS504において、機能ブロック間通信があらかじめ定められたスケジュールで実施されている場合は、ステップS505に移行する。ステップS505において、索引管理部2726の機能ブロック関連索引のリンクの時間属性に基づいて、さらに抽出できるリンクが存在しないか否か判断する。たとえば、t0+tdからさらに時間幅tdまでのt0+td〜t0+td+tdの属性値を有するリンクが存在しないかどうか判断する。
さらに抽出できるリンクが存在しない場合は、ステップS506に移行する。ステップS506において、索引管理部2726に機器構成管理装置26から取得した設定情報の中からさらに抽出すべき設定情報が存在しないか否か判断し、抽出すべき設定情報が存在しない場合は処理を終了し、抽出すべき設定情報が存在する場合はステップS502に移行する。
一方、ステップS504において、機能ブロック間通信があらかじめ定められたスケジュールで実施されていない場合は、ステップS507に移行する。ステップS507において、あらかじめ定められたスケジュールで実施されていない機能ブロック間通信にかかわるパケット情報を記憶する。なお、あらかじめ定められたスケジュールで実施されていない旨とそのパケット情報をネットワークNW200に接続される上位システムなどに中継機器25を介して通知するものであっても構わない。
他方、ステップS505において、さらに抽出できるリンクが存在する場合は、ステップS509に移行する。ステップS509において、次の一定時間分のリンクに関連するパケット情報を抽出するために、リンクの時間属性の基準時間(たとえば、t0)をあらかじめ定められた時間幅分(たとえば、td)加えた時間(たとえば、t0+td)に変更してステップS503にもどる。
このように、トラフィック解析部2728が機器構成管理装置26から設定情報を取得し、機能ブロック関連索引に基づいてパケット情報テーブルから機能ブロック間通信に関する設定情報を抽出し、機能ブロック関連索引のリンクに基づいて機能ブロック間通信に関するパケット情報を抽出し、パケット情報を解析して機器構成管理装置26によりあらかじめ定められた設定通りに当該機能ブロック間通信が実施されているか否かを判断することで、ネットワークトラフィックの調査および解析を短時間で行うことができる。
言い換えれば、トラフィック監視装置27が、パケット情報テーブルおよびパケットと関連付けるリンクを有した機能ブロック関連索引を作成および記憶するので、機能ブロック間での通信などの制御処理について調査したい場合は、調査対象の制御処理に関連する機能ブロック関連索引のリンクから取得するパケット情報と設定情報に基づいて、当該制御処理があらかじめ定められた設定通りに行われているか否かを判断できることになる。
図9も図3のトラフィック解析部2728の動作を説明するフロー図であり、機器タグに基づく制御処理の動向調査の例を示している。ステップS601において、機器構成管理装置26からセンサ21〜22、操作機器23〜24の機能タグを設定する「機器タグ設定情報」などの設定情報を取得する。
ステップS602において、機器構成管理装置26から取得した機器タグ設定情報の中から機器タグ索引(たとえば、PDTag1)にかかわる設定情報を抽出する。
ステップS603において、索引管理部2726の機器タグ索引のリンクの時間属性を利用して、パケット情報管理部2721のパケット情報テーブルに記憶されているパケット情報の中から、当該機器タグにかかわる一定時間分のパケット情報を抽出する。たとえば機能ブロック関連索引(たとえば、sel0)のリンクの時間属性の中から基準時間を選択し、基準時間(たとえば、t0)からあらかじめ定められた時間幅(たとえば、td)までの範囲の時間属性に関連するパケット情報、すなわち、時刻情報がt0〜t0+tdまでのパケット情報を抽出する。
ステップS604において、当該機器タグにかかわるパケット情報と機器タグ設定情報とに基づいてパケット情報を解析し、機器構成管理装置26によりあらかじめ定められた設定通りに当該機器の処理が実施されているか否かを判断する。
ステップS604において、たとえば測定値を送信する際に用いるポート番号(たとえば、49152)があらかじめ機器構成管理装置26により設定された通りに用いられている場合は、ステップS605に移行する。
ステップS605において、索引管理部2726の機器タグ索引のリンクの時間属性に基づいてさらに抽出できるリンクが存在しないか否か判断し、さらに抽出できるリンクが存在しない場合はステップS606に移行する。
ステップS606において、機能ブロック関連索引に基づいて調査すべき機能ブロック間通信にかかわる機能ブロック関連索引がさらに存在しないか否かを判断し、さらに調査すべき機能ブロック関連索引が存在しない場合は処理を終了し、さらに調査すべき機能ブロック関連索引が存在する場合はステップS602に移行する。
一方、ステップS604において、パケット情報を解析して機器構成管理装置26によりあらかじめ定められた設定通りに実施されていない場合は、ステップS607に移行する。ステップS607において、あらかじめ定められた設定通りに実施されていないパケット情報を記憶する。なお、あらかじめ定められた設定通りに実施されていない旨とそのパケット情報をネットワークNW200に接続される上位システムなどに中継機器25を介して通知するものであっても構わない。
他方、ステップS605において、さらに抽出できるリンクが存在する場合は、ステップS608に移行する。ステップS608において、次の一定期間分のリンクに関連するパケット情報を抽出するため、リンクの時間属性の基準時間(たとえば、t0)をあらかじめ定められた時間幅分(たとえば、td)を加えた時間(たとえば、t0+td)に変更して、ステップS603にもどる。
このように、トラフィック解析部2728が機器構成管理装置26から取得した設定情報から選択された機器タグに関する設定情報を抽出し、パケット情報テーブルから機器タグ索引のリンクに基づいて当該機器タグに関するパケット情報を抽出し、パケット情報を解析してあらかじめ定められた設定通りに当該機器の処理が実施されているか否かを判断することで、ネットワークトラフィックの調査および解析を短時間で行うことができる。
言い換えれば、トラフィック監視装置27が、パケット情報テーブルおよびパケットと関連付けるリンクを有した機器タグ索引を作成および記憶するので、センサや操作機器における制御処理について調査したい場合は、調査対象の制御処理に関連する機器タグ索引のリンクから取得するパケット情報と設定情報とに基づいて、当該制御処理があらかじめ定められた設定通りに行われているか否かを判断できることになる。
図10も図3のトラフィック解析部2728の動作を説明するフロー図であり、不正操作に対する通信セッション情報の調査の例を示している。説明を簡単にするため、機能ブロック(FBTag1)に対して不正操作が行われたと疑われる場合の動作について説明する。
ステップS701において、機器構成管理装置26から、不正操作が行われたと疑われる機能ブロック(たとえば、FBTag1)にかかわる機能ブロック設定情報およびスケジュール情報を抽出する。
ステップS702において、索引管理部2726の機能ブロックタグ索引のリンクの時間属性を利用して、パケット情報管理部2721のパケット情報テーブルの中から、不正操作が行われた機能ブロックにかかわる一定期間分のパケット情報を抽出する。たとえば不正操作が行われた機能ブロックタグ索引(たとえば、FBTag1)のリンクの時間属性の中から基準時間を選択し、基準時間(たとえば、t0)からあらかじめ定められた時間幅(たとえば、td)までの範囲の時間属性に関連するパケット情報、すなわち、時刻情報がt0〜t0+tdまでのパケット情報を抽出する。なお、リンクの時間属性は、不正操作が確認された時刻以降のものでも、不正操作が確認された時刻以前のものであっても構わない。
ステップS703において、取得したリンク先のパケット情報を解析して、送信元IPアドレス、送信元ポート番号、送信先IPアドレス、送信先ポート番号の組み合わせなどのパケットの詳細なセッション情報を把握する。
ステップS704において、抽出した当該機能ブロックにかかわるパケット情報と機器構成管理装置26から取得した機能ブロック設定情報とに基づき、機器構成管理装置26によりあらかじめ定められた設定通りに当該機能ブロックの処理が実施されているか否かを判断する。たとえば、当該機能ブロックにあらかじめ設定されていない機器からのアクセスがあるかどうかを判断する。
ステップS704において、パケット情報を解析して機器構成管理装置26によりあらかじめ定められた設定通りに当該機器の処理が実施されていると判断する場合は、ステップS705に移行する。
ステップS705において、索引管理部2726の機器タグ索引のリンクの時間属性に基づいてさらに抽出できるリンクが存在しないか否か判断し、さらに抽出できるリンクが存在しない場合は処理を終了し、さらに抽出できるリンクが存在する場合はステップS702に戻る。
一方、ステップS704において、パケット情報を解析して機器構成管理装置26によりあらかじめ定められた設定通りに実施されていない場合は、ステップS706に移行する。
ステップS706において、あらかじめ定められた設定通りに実施されていないパケット情報を記憶する。なお、あらかじめ定められた設定通りに実施されていない旨とそのパケット情報をネットワークNW200に接続される上位システムなどに中継機器25を介して通知するものであっても構わない。
このように、トラフィック解析部2728が、不正操作が行われたと疑われる機器ブロックに関する設定情報を機器構成管理装置26から取得し、機能ブロック索引のリンクに基づいてパケット情報テーブルから当該機能ブロックに関するパケット情報を抽出し、パケット情報を解析してあらかじめ定められた設定通りに当該機能ブロックの処理が実施されているか否かを判断することで、ネットワークトラフィックにおける不正操作の調査を拘束に行うことができる。
言い換えれば、トラフィック監視装置27が、パケット情報テーブルおよびパケットと関連付けるリンクを有した機能ブロック索引を作成および記憶するので、機能ブロックにおける制御処理について調査したい場合は、調査対象の制御処理に関連する機能ブロック索引のリンクから取得するパケット情報と設定情報とに基づいて、当該制御処理があらかじめ定められた設定通りに行われているか否かを判断できることになる。
この結果、トラフィック監視装置27の演算制御部272が、ネットワークを伝送するパケットを受信してパケット情報テーブルに記憶するとともに、パケットのペイロードから取得する機器タグ、機能ブロックタグ、機能ブロック関連識別子に基づいて機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を作成し、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引とパケットとを関連付けるリンクを作成して記憶することで、パケット情報と機器タグ、機能ブロック、機能ブロック間通信との関係を短時間で把握できる。
また、トラフィック監視装置27の演算制御部272が、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引とパケットとを関連付けるリンクに基づいて調査対象の制御処理に関連するパケットを抽出して、抽出されたパケットとあらかじめ設定される設定情報に基づいて、制御処理があらかじめ設定された通りに行われているかどうか判断することで、ネットワークトラフィックの調査および解析を短時間で行うことができる。
なお、上記実施例では、制御ネットワークシステムがインダストリアルオートメーションにおけるプラントの運転を支援する例を説明したが、特にこれに限定されるものではなく、たとえばファクトリーオートメーションにおける浄水場の制御システムや、ビルの空調・照明システム、FFHSE(Foundation Field bus High Speed Ethernet(登録商標))に展開し運転を支援するものであっても構わない。
たとえば、本発明をFFHSEに展開する場合においては、操作機器およびセンサはFFHSE Control DeviceやFFHSE Linking Deviceなどに対応し、それぞれスケジュールや設定情報はConfiguration Applicationなどによって設定される。セキュリティ監視装置は、Device Annunciationメッセージなどに基づいて機器タグを宣言するメッセージか否かを判断し、機器タグを機器タグ索引に追加・記憶する。
また、トラフィック監視装置は、FMS Serviceのメッセージに基づいて機能ブロック間通信の識別子を機能ブロック間関連索引に追加・記憶し、取得した機能ブロック関連識別子に基づいて機器構成管理装置やConfiguration Applicationが有する機能ブロック設定情報から機能ブロックタグを取得する。
このように、本発明をFFHSEに展開する場合であっても、トラフィック監視装置がパケット情報と機器タグ、機能ブロックタグ、機能ブロック関連識別子との間にリンクを作成することで、パケット情報と機器タグ、機能ブロック、機能ブロック間通信との関係を高速に把握できる。
また、FFHSEにおいては、Configuration Applicationが有する設定情報はネットワークの構成が変更しても更新されず、機能ブロック間通信、機能ブロックおよび機器における各処理があらかじめ設定された通りに行われているかどうかの調査ができないという問題点があった。
たとえば、機能ブロックFBTag1とFBTag2との機能ブロック間通信をあらわす機能ブロック関連識別子Sel1において、ネットワーク構成の変更によって機能ブロックFBTag1がFBTag4に変更したとしても、設定情報における機能ブロック関連識別子sel1は変更が反映されずに機能ブロックFBTag1とFBTag2との機能ブロック間通信をあらわすままであった。
この場合に、本発明の制御ネットワークシステムは、機能ブロック関連索引および機能ブロック索引とパケット情報との双方向リンクによってネットワーク構成が変更した時刻とその変更点を把握し、Configuration Applicationが有する設定情報とネットワーク構成の変更点に基づいて、各索引に関する設定情報とパケット情報とをそれぞれ比較することで、機能ブロック間通信、機能ブロックおよび機器における各処理があらかじめ設定された通りに行われているかどうかを調査でき、ネットワークトラフィックの調査および解析を短時間で行うことができる。
また、上記実施例では、制御ネットワークシステムがネットワークのトラフィックやセキュリティを監視するトラフィック監視機能を有するトラフィック監視装置を用いて構成する例を示したが、特にこれに限定するものではなく、ネットワークのセキュリティを監視するように特化したセキュリティ監視装置であってもよい。
また、上記実施例の制御ネットワークシステムは、トラフィック監視装置27の索引作成部2725が該当する機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引を追加した後に、または存在を確認した後にパケット情報とのリンクを作成しているが、トラフィック監視装置がパケット情報を受信し、パケット情報テーブルにパケットを記憶するのと同時にパケット情報と機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引との間にリンクを作成するものであってもよい。
また、トラフィック監視装置の索引作成部があらかじめ定められた任意のタイミングでパケットと機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引との間にリンクを作成するものであっても構わない。
また、トラフィック監視装置は、演算制御部の処理量が低い場合に余剰計算リソースを用いてパケットと機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引との間にリンクを作成するものであってもよい。
また、上記実施例の制御ネットワークシステムは、抽出した機能ブロックにかかわるパケット情報と機器構成管理装置26から取得した機能ブロック設定情報とに基づき、当該機能ブロックにあらかじめ設定されていない機器からのアクセスがあるかどうかを判断しているが、特定の機能ブロックになりすましたセッションの確立を調査するものであっても構わない。
また、上記実施例の制御ネットワークシステムは、ネットワークを伝送するパケットを中継機器25がトラフィック監視装置27に転送しているが、特にこれに限定されるものではなく、たとえば中継機器にセキュリティ監視装置に接続するミラーリングポートを構成しネットワークを伝送するパケットを傍聴するものであってもよいし、セキュリティ監視装置がnetflowやsflowを用いて中継機器を流れるパケット情報を解釈するものであってもよい。
さらに、上記実施例の制御ネットワークシステムでは、中継機器が1個で構成されているが、1個以上の中継機器から構成されるものであればよい。
本発明に係る制御ネットワークシステムの一実施例を示す構成ブロック図である。 図1のトラフィック監視装置27の構成ブロック図である。 図2のトラフィック監視装置27を構成する演算制御部272の機能ブロック例図である。 図2の演算制御部272の動作を説明するフロー図である。 図2の演算制御部272の動作を説明するフロー図である。 図2の演算制御部272の動作を説明するフロー図である。 パケット情報テーブルと各種索引の具体例の説明図である。 図3のトラフィック解析部2728の動作を説明するフロー図である。 図3のトラフィック解析部2728の動作を説明するフロー図である。 図3のトラフィック解析部2728の動作を説明するフロー図である。 従来の制御ネットワークシステムの一例を示す構成ブロック図である。 図11のセキュリティ監視装置7のトラフィック解析機能の一例を示す構成ブロック図である。 図11の制御ネットワークシステムのセキュリティ違反行為の原因特定を行う動作を説明する説明図である。 図13のデータ通信DF100およびDF101の動作を説明するフロー図である。 パケット情報テーブルの説明図である。
符号の説明
1、2、21、22 センサ
3、4、23、24 操作機器
5、25 中継機器
6、26 機器構成管理装置
7 セキュリティ監視装置
27 トラフィック監視装置
71、271 通信部
72、272 演算制御部
73、273 記憶部
2721 パケット情報管理部
2722 ペイロード抽出部
2723 メッセージ判断部
2724 情報抽出部
2725 索引作成部
2726 索引管理部
2727 索引制御部
2728 トラフィック解析部

Claims (7)

  1. 制御ループを構成する制御機器がネットワークを介して相互に接続され、制御機器間でパケット通信を行う制御ネットワークシステムにおいて、
    前記パケットのペイロードに基づき各制御機器に関連した索引を作成し、作成した索引に基づきネットワークのトラフィックを監視するトラフィック監視装置を設けたことを特徴とする制御ネットワークシステム。
  2. 前記トラフィック監視装置は、前記パケットをパケット情報テーブルに記憶し、前記パケットと関連付けるリンクを有した前記索引を作成して記憶し、前記索引および前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットとあらかじめ定められた設定情報とに基づいて前記制御処理が設定通り設定通りに行われているか否かを判断することを特徴とする
    請求項1記載の制御ネットワークシステム。
  3. 前記トラフィック監視装置が、
    前記パケット情報テーブルおよび前記リンクを有した前記索引を記憶する記憶部と、
    パケット通信を行う通信部と、
    前記パケットから取得する識別子に基づいて前記索引を作成し、前記パケットと前記索引とを関連付ける前記リンクを作成し、前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、前記抽出したパケットと前記設定情報とに基づいて前記制御処理が設定通りに行われているか否かを判断する演算制御部とから構成されることを特徴とする
    請求項1もしくは請求項2記載の制御ネットワークシステム。
  4. 前記演算制御部が、
    前記パケットを前記パケット情報テーブルに記憶し、
    前記パケットから取得する前記識別子に基づいて、前記索引を作成して記憶し、
    前記パケットと前記索引とを関連付ける前記リンクを作成して記憶し、
    前記制御処理にかかわる前記索引の前記リンクに基づいて前記パケット情報テーブルから前記制御処理に関連する前記パケットを抽出し、
    前記抽出したパケットと前記設定情報とに基づいて、前記制御処理が設定通りに行われているか否かを判断することを特徴とする
    請求項3記載の制御ネットワークシステム。
  5. 前記索引が、機器タグ索引、機能ブロックタグ索引、機能ブロック関連索引のうち少なくとも一つを含むことを特徴とする
    請求項1ないし請求項4いずれかに記載の制御ネットワークシステム。
  6. 前記識別子が、機器タグ、機能ブロックタグ、機能ブロック関連識別子のうち少なくとも一つを含むことを特徴とする
    請求項3ないし請求項5いずれかに記載の制御ネットワークシステム。
  7. 前記トラフィック監視装置は、ネットワークのセキュリティを監視するセキュリティ監視装置であることを特徴とする
    請求項1ないし請求項6いずれかに記載の制御ネットワークシステム。
JP2007192778A 2007-07-25 2007-07-25 制御ネットワークシステム Pending JP2009033276A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007192778A JP2009033276A (ja) 2007-07-25 2007-07-25 制御ネットワークシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007192778A JP2009033276A (ja) 2007-07-25 2007-07-25 制御ネットワークシステム

Publications (1)

Publication Number Publication Date
JP2009033276A true JP2009033276A (ja) 2009-02-12

Family

ID=40403324

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007192778A Pending JP2009033276A (ja) 2007-07-25 2007-07-25 制御ネットワークシステム

Country Status (1)

Country Link
JP (1) JP2009033276A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102217478B1 (ko) * 2019-09-05 2021-02-18 에스케이텔레콤 주식회사 패킷 처리 시간 조정방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102217478B1 (ko) * 2019-09-05 2021-02-18 에스케이텔레콤 주식회사 패킷 처리 시간 조정방법 및 장치

Similar Documents

Publication Publication Date Title
US10297128B2 (en) Wireless sensor network
US10110561B2 (en) Firewall with application packet classifer
KR102199054B1 (ko) 직렬 포트 기반 사이버 보안 취약점 점검 장치 및 그 방법
EP3111433A1 (en) Wireless sensor network
US11503002B2 (en) Providing anonymous network data to an artificial intelligence model for processing in near-real time
CN106790131B (zh) 一种参数修改方法、装置及分布式平台
US9043053B2 (en) Aircraft information management system
KR102430440B1 (ko) 시계열 에너지 예측 데이터 모델을 이용한 설비이상감지 정보처리장치
CN109040186A (zh) 一种基于nbiot网络的mqtt数据处理方法和装置
CN108029155A (zh) 网格网络节点
CA2883612C (en) Cloud-enhanced traffic controller
KR102139138B1 (ko) 그룹 및 주기 기반 비정상행위 탐지를 위한 비공개 ics 프로토콜의 프로파일링 시스템
JP2009033276A (ja) 制御ネットワークシステム
CN106302006A (zh) 一种基于sdn的ip欺骗数据包的动态溯源方法
JP2011179706A (ja) データ収集装置、空気調和装置、データ収集システム、データ収集方法及びプログラム
JP4935631B2 (ja) ノード局の位置関係検出システム
KR101950374B1 (ko) 비표준 프로토콜 역공학 분석 장치
JP6866271B2 (ja) 異常検知装置、異常検知方法、及びプログラム
JP4816169B2 (ja) グローバルプロセス生成方法、装置、システム、およびプログラム
KR101531026B1 (ko) FIFO(First In First Out) 메모리를 이용한 망내 클라이언트 노드 리스트 관리 방법
CN116743617B (zh) 用于网络测试的方法、计算设备和存储介质
JP6869869B2 (ja) 制御システムのための対策立案システムおよび監視装置
WO2015130639A1 (en) Wireless sensor network
JP2019140515A (ja) プログラム作成装置およびプログラム作成方法
Conley How to integrate new with legacy wireless systems: 4 considerations