(57)【要約】【課題】制御装置を接続するネットワークを流れるデータを監視して、制御装置の異常を判定すると共に不正なアクセスを発見し、ネットワークを経由して現場の外へ通報可能にする。【解決手段】リピータ１０４を介して制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５がスター型に接続される。プラントネットワーク健全性診断装置は、リピータ１０４にデータ収集手段１１０を直接接続し、データ収集手段１１０に検査手段１２０を直接接続することにより構成される。データ収集手段１１０は、プラントネットワークに送信された全てのフレームを受信し、収集する。検査手段１２０の定周期データ検査手段１３０は、定周期で送信されるフレームを予め記録されたフレーム基準情報と比較することでフレームの検査を行う。【選択図】　図１
2004086367.tif 000002
【特許請求の範囲】
【請求項１】
定周期でデータを送信する複数の制御装置をリピータを介して接続してなるプラントネットワークの健全性を診断するためのプラントネットワーク健全性診断装置において、
前記プラントネットワークを流れるデータを収集するデータ収集手段と、
データの送信周期とデータを特定可能なデータ特定情報を含む予め記録された基準情報を使用して、前記データ収集手段で収集されたデータの通信時刻とそのデータに含まれる情報を前記基準情報と比較することでデータの検査を行う検査手段とを備え、
前記データ特定情報は、少なくともデータの送信元を特定可能な情報を含む、ことを特徴とするプラントネットワーク健全性診断装置。
【請求項２】
前記データ収集手段は、収集したデータに前記通信時刻として収集した時刻を付加するように構成された、
ことを特徴とする請求項１に記載のプラントネットワーク健全性診断装置。
【請求項３】
前記データ特定情報は、前記送信周期に許容される誤差を示す情報、データの送信先を特定可能な情報、同じ送信元から送信される複数種類のデータを個別に特定可能な情報、データの正当性を示す情報、の中から選択された１種類以上の情報を含む、
ことを特徴とする請求項１または請求項２に記載のプラントネットワーク健全性診断装置。
【請求項４】
定周期でデータを送信する複数の制御装置をスイッチを介して接続してなるプラントネットワークの健全性を診断するためのプラントネットワーク健全性診断装置において、
前記プラントネットワークを流れるデータを収集するデータ収集手段と、
データの送信周期とデータを特定可能なデータ特定情報を含む予め記録された基準情報を使用して、前記データ収集手段で収集されたデータの通信時刻とそのデータに含まれる情報を前記基準情報と比較することでデータの検査を行う検査手段と、
前記スイッチからの出力を前記複数の制御装置と前記データ収集手段に振り分ける複数のリピータとを備え、
前記データ特定情報は、少なくともデータの送信元を特定可能な情報を含み、前記複数のリピータの各々は前記複数の制御装置の各々に対応付けられ、各リピータは前記スイッチの各出力ポートにそれぞれ接続され、各リピータの出力は対応する各制御装置と前記データ収集手段にそれぞれ接続される、
ことを特徴とするプラントネットワーク健全性診断装置。
【請求項５】
前記データ収集手段は、前記複数のリピータの出力にそれぞれ接続された複数のデータ収集手段を含む、
ことを特徴とする請求項４に記載のプラントネットワーク健全性診断装置。
【請求項６】
前記検査手段は、
前記複数の制御装置のうち、非定周期データを送信する制御装置がある場合に、非定周期データのデータ特定情報とその送信シーケンス情報を含む予め記録された基準情報を使用して、前記データ収集手段で収集された非定周期データの送信シーケンスとそのデータに含まれる情報を前記基準情報と比較することでデータの検査を行う非定周期データ検査手段を含む、
ことを特徴とする請求項１乃至請求項５のいずれかに記載のプラントネットワーク健全性診断装置。
【請求項７】
前記非定周期データ検査手段は、前記プラントネットワークを遠隔地にある保守装置に接続する場合に、その保守装置とプラントネットワーク内の装置との間の非定周期データを検査するように構成された、
ことを特徴とする請求項６に記載のプラントネットワーク健全性診断装置。
【請求項８】
前記複数の制御装置の各々は、予め記録された乱数列を使用し、この乱数列から順番に乱数を取り出して、その制御装置の送信するデータ内にデータの正当性を示すための署名として埋め込むように構成され、
前記検査手段は、前記乱数列と同一の予め記録された乱数列を使用し、この乱数列から順番に乱数を取り出して、データに埋め込まれた前記署名と比較することでデータの正当性を検査するように構成された、
ことを特徴とする請求項１乃至請求項７のいずれかに記載のプラントネットワーク健全性診断装置。
【請求項９】
前記検査手段は、異なる命令セットを実装した２つのマイクロプロセッサを使用して構成された２つの検査部を含む、
ことを特徴とする請求項１乃至請求項８のいずれかに記載のプラントネットワーク健全性診断装置。
【請求項１０】
前記検査手段は、前記定周期で送信されるデータの送信周期に関する情報を蓄積し、指定された期間における周期の揺らぎを検査する統計データ検査手段を含む、
ことを特徴とする請求項１乃至請求項９のいずれかに記載のプラントネットワーク健全性診断装置。
【請求項１１】
前記検査手段は、前記定周期で送信されるデータについて、指定された時間内の送信周期を測定し、その測定結果に基づいて前記基準情報に含まれる送信周期を設定するように構成された、
ことを特徴とする請求項１乃至請求項１０のいずれかに記載のプラントネットワーク健全性診断装置。
【請求項１２】
前記リピータは、第１と第２のリピータを含み、
前記プラントネットワークは、前記複数の制御装置を第１のリピータを介して接続する第１のネットワークと、前記複数の制御装置を第２のリピータを介して接続する第２のネットワークによって２重化され、
前記統計データ検査手段は、前記複数の制御装置の各々について、その制御装置から前記第１と第２のネットワークにそれぞれ送信されるデータの送信周期の相関を検査するように構成された、
ことを特徴とする請求項１０に記載のプラントネットワーク健全性診断装置。
【請求項１３】
定周期でデータを送信する複数の制御装置をリピータを介して接続してなるプラントネットワークの健全性を診断するためのプラントネットワーク健全性診断方法において、
前記プラントネットワークを流れるデータを収集するデータ収集ステップと、データの送信周期とデータを特定可能なデータ特定情報を含む予め記録された基準情報を使用して、前記データ収集ステップで収集されたデータの通信時刻とそのデータに含まれる情報を前記基準情報と比較することでデータの検査を行う検査ステップとを備え、
前記データ特定情報は、少なくともデータの送信元を特定可能な情報を含む、ことを特徴とするプラントネットワーク健全性診断方法。
【請求項１４】
前記データ収集ステップは、収集したデータに前記通信時刻として収集した時刻を付加するステップを含む、
ことを特徴とする請求項１３に記載のプラントネットワーク健全性診断方法。
【請求項１５】
前記データ特定情報は、前記送信周期に許容される誤差を示す情報、データの送信先を特定可能な情報、同じ送信元から送信される複数種類のデータを個別に特定可能な情報、データの正当性を示す情報、の中から選択された１種類以上の情報を含む、
ことを特徴とする請求項１３または請求項１４に記載のプラントネットワーク健全性診断方法。
【請求項１６】
前記検査ステップは、
前記基準情報を検索し、前記データ収集ステップで収集されたデータの中から新たに検査対象となるデータをカレントデータとし、このカレントデータに対応する基準情報が存在するか否かを判断する基準情報検索ステップと、
前記カレントデータに対応する前記基準情報が存在する場合に、その基準情報に基づいて、そのカレントデータと同じ前記データ特定情報を含む一つ前のデータを前回データとし、カレントデータと前回データとの間の通信時刻の差が、前記送信周期に許容される誤差の範囲内であるか否かを判断する周期比較ステップとを含む、
ことを特徴とする請求項１５に記載のプラントネットワーク健全性診断方法。
【請求項１７】
前記検査ステップは、
前記基準情報を検索し、前記データ収集ステップで収集されたデータの中から新たに検査対象となるデータをカレントデータとし、このカレントデータに対応する基準情報が存在するか否かを判断する基準情報検索ステップと、
前記カレントデータに対応する前記基準情報が存在する場合に、その基準情報に基づいて、そのカレントデータと同じ前記データ特定情報を含む次回データの検索を開始する時刻を設定する時刻設定ステップと、
前記時刻設定ステップで設定された時刻に、前記次回データの検索を開始し、前記カレントデータの通信時刻に対して前記送信周期に許容される誤差の範囲内に次回データが存在するか否かを判断する次回データ検索ステップとを含む、
ことを特徴とする請求項１５または請求項１６に記載のプラントネットワーク健全性診断方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プラントネットワークの健全性を診断するための装置と方法に関するものである。
【０００２】
【従来の技術】
発電プラントのようなプロセスプラントにおいては、制御装置はネットワークを通じて接続され、各制御装置は他の制御装置に向けて一定の周期でデータを送信するようになっている。
【０００３】
図１８は、プラントネットワークの典型的な構成例を示すブロック図である。制御装置１０１Ａ〜１０１Ｃの各々には、プラントのプロセス量を測定するための個別のセンサ１０２Ａ〜１０２Ｃと、プラントの弁やポンプを制御するための個別のアクチュエータ１０３Ａ〜１０３Ｃがそれぞれ接続されている。各制御装置は、ネットワークを通じてお互いに、あるいはオペレータコンソール１０５とデータを交換する。オペレータコンソール１０５は、プラント運転員がプラントの状態を監視し、また制御装置に操作指令を送るための装置である。
【０００４】
プラントネットワークの実装として、図１８では、Ｅｔｈｅｒｎｅｔ（ＩＥＥＥ　８０２）を用い、リピータ１０４を介して制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５がスター型に接続されている。リピータ１０４は、制御装置の一つ、あるいはオペレータコンソール１０５から送信されてきた信号を、ネットワークに接続された全ての装置（制御装置およびオペレータコンソール）に送信するものである。
【０００５】
Ｅｔｈｅｒｎｅｔに接続された全ての機器が送信する信号は、規格によって定められた形式を持っており、制限された長さのフレームを単位に構成される。図１９にフレームの形式を示す。各フレームには送信先アドレス２０１と送信元アドレス２０２が記録されている。アドレスは、Ｅｔｈｅｒｎｅｔでは４８ビットの数値である。アドレスの後に、プロトコル型２０３、データ部２０４、フレームチェック２０５が続く。このうちのデータ部２０４に機器が送信するデータが入る。
【０００６】
リピータ２０４は、前述したように、接続された全ての機器、すなわち、制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５の一つから送られてきたフレームを、全ての装置に送信する。したがって、リピータ１０４に接続された機器は、他の制御装置が送信した全てのフレームを受信するが、送信先アドレスが自分宛以外のフレームは破棄する。また、送信先アドレスの中には、全ての装置を送信先とするブロードキャストアドレスおよび、特定のグループを送信先とするマルチキャストアドレスがある。
【０００７】
一般に、プロセスプラントの制御装置は、センサ信号の入力、他制御装置からのデータの受信、データの処理、アクチュエータへの信号の出力、他制御装置へのデータの送信、を周期的な処理で実行しており、ネットワークへの送信周期は、制御装置の処理周期に対応している。また、各制御装置の送信周期は、制御装置の対象とするプロセスの進行速度に依存しており、速いプロセスの場合で数十ミリ秒、遅いプロセスで数秒程度である。
【０００８】
ところで、制御装置に何らかの異常が発生した場合、データをまったく送信できない、あるいは予め定められた送信周期を守れないことがある。従来、制御装置に異常が発生した場合に、制御装置自体が自己診断可能な異常であれば、制御装置のパネルに異常を知らせるランプが点灯し、パネルを点検することで異常を確認していた。
【０００９】
また、悪意の第三者が、リピータに不正な装置を繋ぎ、この装置から制御装置に不正な操作信号を送信する可能性もある。さらに、図１８には描かれていないが、プラントネットワークが外部ネットワークと何らかの接点を持っている場合に、悪意の第三者がその接点を介して不正な操作信号を送信することも可能性として否定できない。従来、このような悪意の第三者による不正なアクセスを防止するために、プラントネットワークをファイアウォールによって外部ネットワークから遮断する方法が取られている。
【００１０】
【発明が解決しようとする課題】
しかしながら、上記のような従来のプラントネットワークにおいては、次のような問題点が存在している。
【００１１】
まず、制御装置自体では自己診断できない異常、あるいは制御装置自体の自己診断機能も含めた異常が発生した場合に、それらの異常を検知することは難しかった。また、自己診断によりパネルに異常を知らせるランプが点灯した場合でも、制御装置の設置されている現場にプラント保守員が赴かなければ確認できなかった。また、ファイアウォールを用いた場合でも、不正なアクセスを完全に防ぐことは困難であるにも拘わらず、従来、外部ネットワークからの不正侵入を検知する手段は設けられていなかった。
【００１２】
本発明は、上記のような従来技術の問題点を解決するために提案されたものであり、その目的は、既存のプラントネットワーク自体の構成をほとんど変更せずに、制御装置を接続するネットワークを流れるデータを監視して、制御装置の異常を判定すると共に不正なアクセスを発見し、ネットワークを経由して現場の外へ通報可能なプラントネットワーク健全性診断装置とその方法を提供することである。
【００１３】
【課題を解決するための手段】
本発明は、プラントネットワークを流れるデータを収集し、収集したデータの通信時刻とそのデータに含まれる情報を、データの送信周期とデータ特定情報を含む予め記録された基準情報と比較することにより、各データが正しい送信元から正しい周期で送信されているかを検査できるようにしたものである。
【００１４】
なお、本発明において重要な用語の定義は次の通りである。
「通信時刻」は、データ収集側でデータを収集した時刻だけでなく、送信元からデータを送信した時刻や、送信時に付加される時刻等、データの送信に伴って得られる各種の時刻を含む広い概念である。
「データ特定情報」は、データを特定可能な情報のうち、上記の「通信時刻」以外の情報を意味しており、例えば、送信先、送信元、データＩＤ、署名、等を含むが、それ以外でも、データの特定に利用可能な各種の情報を含む広い概念である。
【００１５】
「基準情報」は、データの検査における基準となる情報を意味しており、定周期データの基準情報だけでなく、非定周期データの基準情報を含む広い概念である。ここで、定周期データの基準情報は、「データ特定情報」によって分類される各データごとに、少なくともそのデータ特定情報とそのデータの送信周期を含む複数種類の情報を関連付けたものである。また、非定周期データの基準情報は、「データ特定情報」によって分類される複数のデータを、送信シーケンス情報によって関連付けたものである。
「予め記録された情報」は、初期設定作業や設定内容の見直し作業といった人間系の作業により記録された情報に限らず、一定期間ごとにあるいは必要に応じて不定期に自動更新された情報を含む広い概念である。
【００１６】
「データの送信先を特定可能な情報」は、例えば、送信先アドレスや送信先ＩＤ、送信先名称、等を含むが、それ以外でも、データの送信先の特定に利用可能な各種の情報を含む広い概念である。
「同じ送信元から送信される複数種類のデータを個別に特定可能な情報」は、例えば、データＩＤやデータ名称、等を含むが、それ以外でも、同じ送信元から送信される複数種類のデータの個々の特定に利用可能な各種の情報を含む広い概念である。
【００１７】
「送信周期に許容される誤差を示す情報」は、送信周期に許容される誤差自身を示す情報に限らず、誤差の範囲内における最短の送信周期と最長の送信周期を示す情報や、過去のデータから得られた誤差の範囲内における下限の通信時刻と上限の通信時刻等、誤差を含む送信周期や通信時刻の範囲を示す情報を含む広い概念である。
「データの正当性を示す情報」は、そのデータが正当な送信元から送信されたことを示す情報であり、具体的には、暗号文や乱数を用いた署名によって実現される。
【００１８】
請求項１の発明は、定周期でデータを送信する複数の制御装置をリピータを介して接続してなるプラントネットワークの健全性を診断するためのプラントネットワーク健全性診断装置において、データ収集手段と検査手段を備えたことを特徴としている。ここで、データ収集手段は、プラントネットワークを流れるデータを収集する手段である。また、検査手段は、データの送信周期とデータを特定可能なデータ特定情報を含む予め記録された基準情報を使用して、データ収集手段で収集されたデータの通信時刻とそのデータに含まれる情報を基準情報と比較することでデータの検査を行う手段である。さらに、データ特定情報は、少なくともデータの送信元を特定可能な情報を含む。
【００１９】
請求項１３の発明は、請求項１の発明を方法の観点から把握したものであり、定周期でデータを送信する複数の制御装置をリピータを介して接続してなるプラントネットワークの健全性を診断するためのプラントネットワーク健全性診断方法において、請求項１の発明におけるデータ収集手段と検査手段の各機能に対応するデータ収集ステップと検査ステップを含むことを特徴としている。
【００２０】
請求項２の発明は、請求項１のプラントネットワーク健全性診断装置において、データ収集手段が、収集したデータに通信時刻として収集した時刻を付加するように構成されたことを特徴としている。
請求項１４の発明は、請求項２の発明を方法の観点から把握したものであり、請求項１３のプラントネットワーク健全性診断方法において、データ収集ステップが、収集したデータに通信時刻として収集した時刻を付加するステップを含むことを特徴としている。
【００２１】
請求項３の発明は、請求項１または請求項２のプラントネットワーク健全性診断装置において、データ特定情報が、送信周期に許容される誤差を示す情報、データの送信先を特定可能な情報、同じ送信元から送信される複数種類のデータを個別に特定可能な情報、データの正当性を示す情報、の中から選択された１種類以上の情報を含むことを特徴としている。
請求項１５の発明は、請求項３の発明を方法の観点から把握したものであり、請求項１３または請求項１４のプラントネットワーク健全性診断方法において、データ特定情報が、請求項３の発明におけるデータ特定情報と同様の情報を含むことを特徴としている。
【００２２】
以上のような発明によれば、プラントネットワーク上に送出された全てのデータを収集し、収集したデータを、予め記録された基準情報と比較して、送信元アドレスやデータＩＤ等のデータ特定情報に基づいて分類し、分類された各データが正しい送信元から正しい周期で送信されているか否かを検査することができる。また、データ特定情報に各種の情報を含めることにより、データの送信周期が許容される誤差の範囲内であるか、データが正しい送信先に向けて送信されているか、あるいは、データに正当性があるか、等の情報に応じた各種の検査を行うことができる。
【００２３】
請求項１６の発明は、請求項１５のプラントネットワーク健全性診断方法において、検査ステップが、基準情報検索ステップと周期比較ステップを含むことを特徴としている。ここで、基準情報検索ステップは、基準情報を検索し、データ収集ステップで収集されたデータの中から新たに検査対象となるデータをカレントデータとし、このカレントデータに対応する基準情報が存在するか否かを判断するステップである。また、周期比較ステップは、カレントデータに対応する基準情報が存在する場合に、その基準情報に基づいて、そのカレントデータと同じデータ特定情報を含む一つ前のデータを前回データとし、カレントデータと前回データとの間の通信時刻の差が、送信周期に許容される誤差の範囲内であるか否かを判断するステップである。
【００２４】
請求項１７の発明は、請求項１５または請求項１６のプラントネットワーク健全性診断方法において、検査ステップが、基準情報検索ステップ、時刻設定ステップ、次回データ検索ステップを含むことを特徴としている。ここで、基準情報検索ステップは、請求項１６の発明における基準情報検索ステップと同様である。また、時刻設定ステップは、カレントデータに対応する基準情報が存在する場合に、その基準情報に基づいて、そのカレントデータと同じデータ特定情報を含む次回データの検索を開始する時刻を設定するステップである。また、次回データ検索ステップは、時刻設定ステップで設定された時刻に、次回データの検索を開始し、カレントデータの通信時刻に対して送信周期に許容される誤差の範囲内に次回データが存在するか否かを判断するステップである。
【００２５】
以上のような発明によれば、カレントデータに対応する基準情報を検索し、対応する基準情報がない時点で、データの異常を直ちに検出することができる。そして、カレントデータに対応する基準情報がある場合には、その基準情報を用いて、同じ送信元から送信される同じ種類の前回データや次回データを検索し、基準情報中の送信周期とデータに含まれる通信時刻に基づいて、データの送信周期の異常を容易に検出することができる。また、カレントデータの通信時刻と記録された送信周期に基づいて設定した時刻に次回データの検索を開始する場合には、制御装置がデータを全く送信しなくなる異常についても検出することができる。
【００２６】
請求項４の発明は、定周期でデータを送信する複数の制御装置をスイッチを介して接続してなるプラントネットワークの健全性を診断するためのプラントネットワーク健全性診断装置において、請求項１の発明と同様のデータ収集手段、検査手段を備えると共に、スイッチからの出力を複数の制御装置とデータ収集手段に振り分ける複数のリピータを備えたことを特徴としている。ここで、複数のリピータの各々は複数の制御装置の各々に対応付けられ、各リピータはスイッチの各出力ポートにそれぞれ接続され、各リピータの出力は対応する各制御装置とデータ収集手段にそれぞれ接続される。
請求項５の発明は、請求項４のプラントネットワーク健全性診断装置において、データ収集手段が、複数のリピータの出力にそれぞれ接続された複数のデータ収集手段を含むことを特徴としている。
【００２７】
以上のような発明によれば、複数の制御装置がスイッチによって接続される場合でも、各制御装置ごとに個別のリピータをそれぞれ接続することにより、全ての制御装置から送信される全てのデータを、その送信先に拘わらず、確実に収集することができる。また、複数の制御装置をスイッチによって接続することにより、単一の制御装置を送信先とするデータはスイッチの一つの出力ポートを占有するだけで、他の出力ポートは別のデータの送信に使用可能であるため、複数の制御装置から同時にデータを送信できる。したがって、プラントネットワーク内における通信効率を向上することができる。さらに、各リピータを個別のデータ収集手段にそれぞれ接続することにより、個々のデータ収集手段の負担が小さくなるため、複数の制御装置から同時にデータが送信される場合であっても、簡単なモジュールでデータ収集手段を実現することができる。
【００２８】
請求項６の発明は、請求項１乃至請求項５のいずれかのプラントネットワーク健全性診断装置において、検査手段が、非定周期データ検査手段を含むことを特徴としている。ここで、非定周期データ検査手段は、複数の制御装置のうち、非定周期データを送信する制御装置がある場合に、非定周期データのデータ特定情報とその送信シーケンス情報を含む予め記録された基準情報を使用して、データ収集手段で収集された非定周期データの送信シーケンスとそのデータに含まれる情報を基準情報と比較することでデータの検査を行う手段である。
【００２９】
この発明によれば、データ収集手段により収集した非定周期データを、非定周期データ検査手段によりネットワークの上位層のパケットとして抽出し、各パケットの送信シーケンスを予め記録された送信シーケンス情報と比較することにより、非定周期データが正しいシーケンスで送信されているかを検査することができる。したがって、送信周期のない非定周期データについても、その異常を容易に検出することができる。
【００３０】
請求項７の発明は、請求項６のプラントネットワーク健全性診断装置において、非定周期データ検査手段が、プラントネットワークを遠隔地にある保守装置に接続する場合に、その保守装置とプラントネットワーク内の装置との間の非定周期データを検査するように構成されたことを特徴としている。
この発明によれば、プラントネットワークを遠隔地にある保守装置に接続した場合についても、その保守装置と、ネットワーク内の装置との間の非定周期データの異常を検出することができるため、ネットワーク内の装置を遠隔地の保守装置から適切に保守することができる。
【００３１】
請求項８の発明は、請求項１乃至請求項７のいずれかのプラントネットワーク健全性診断装置において、複数の制御装置と検査手段の構成に特徴を有するものである。すなわち、複数の制御装置の各々は、予め記録された乱数列を使用し、この乱数列から順番に乱数を取り出して、その制御装置の送信するデータ内にデータの正当性を示すための署名として埋め込むように構成される。また、検査手段は、前記乱数列と同一の予め記録された乱数列を使用し、この乱数列から順番に乱数を取り出して、データに埋め込まれた署名と比較することでデータの正当性を検査するように構成される。
【００３２】
この発明によれば、制御装置と検査手段とで、予め記録された同一の乱数列を使用することにより、制御装置側では、送信されるデータごとに異なる乱数を署名として埋め込むことができる一方で、検出手段側では、データごとに異なる署名の正当性を確実に検査することができる。したがって、データの正当性について、信頼性の高い検査を行うことができる。
【００３３】
請求項９の発明は、請求項１乃至請求項８のいずれかのプラントネットワーク健全性診断装置において、検査手段が２つの検査部を含むことを特徴としている。ここで、２つの検査部は、異なる命令セットを実装した２つのマイクロプロセッサを使用して構成される。
この発明によれば、命令となるデータを含む不正なアクセスによって、２つの検査部のいずれか一方が攻撃された場合でも、他方の検査部を攻撃から保護することができるため、不正なアクセスによって検査手段が機能停止に陥るような不都合を防止することができる。
【００３４】
請求項１０の発明は、請求項１乃至請求項９のいずれかのプラントネットワーク健全性診断装置において、検査手段が統計データ検査手段を含むことを特徴としている。ここで、統計データ検査手段は、定周期で送信されるデータの送信周期に関する情報を蓄積し、指定された期間における周期の揺らぎを検査する手段である。
この発明によれば、定周期で送信されるデータの送信周期について、長期間に亘る傾向を容易に検査することができる。
【００３５】
請求項１１の発明は、請求項１乃至請求項１０のいずれかのプラントネットワーク健全性診断装置において、検査手段が、定周期で送信されるデータについて、指定された時間内の送信周期を測定し、その測定結果に基づいて基準情報に含まれる送信周期を設定するように構成されたことを特徴としている。
この発明によれば、検査手段によるデータの送信周期の測定結果に基づいて、検査手段で使用する基準情報中の送信周期を自動的に随時設定、更新することができるため、基準情報の見直し作業といった人間系の作業を簡略化または省略することができる。
【００３６】
請求項１２の発明は、請求項１０のプラントネットワーク健全性診断装置において、リピータが、第１と第２のリピータを含み、プラントネットワークと統計データ検査手段の構成に次のような特徴を有するものである。すなわち、プラントネットワークは、複数の制御装置を第１のリピータを介して接続する第１のネットワークと、複数の制御装置を第２のリピータを介して接続する第２のネットワークによって２重化される。また、統計データ検査手段は、複数の制御装置の各々について、その制御装置から第１と第２のネットワークにそれぞれ送信されるデータの送信周期の相関を検査するように構成される。
【００３７】
この発明によれば、プラントネットワークを２重化することにより、ネットワークの信頼性を向上することができる。また、同じ制御装置から送信される同じデータについて、２重ネットワークの両方の周期が乱れていれば、制御装置の異常の可能性が高いと判定でき、また、ネットワークの一方の周期だけが乱れていれば、ネットワークを構成するリピータや他の制御装置が異常である可能性が高いと判定できるため、異常の分析をより詳細に行うことができる。
【００３８】
【発明の実施の形態】
（第１の実施形態）
（構成）
図１は、Ｅｔｈｅｒｎｅｔを使用したプラントネットワークに本発明を適用したプラントネットワーク健全性診断装置の第１の実施形態を示すブロック図である。
【００３９】
この図１に示すように、プラントネットワーク自体の構成は、図１８に示した従来技術と同様である。すなわち、制御装置１０１Ａ〜１０１Ｃの各々には、個別のセンサ１０２Ａ〜１０２Ｃ、個別のアクチュエータ１０３Ａ〜１０３Ｃがそれぞれ接続されており、制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５はリピータ１０４を介してスター型に接続されている。また、このネットワーク内で、図１９に示したような、送信先アドレス２０１、送信元アドレス２０２、プロトコル型２０３、データ部２０４、フレームチェック２０５、からなる定型のフレームが送信される点も従来技術と同様である。
【００４０】
以上のようなプラントネットワークにおいて、本実施形態のプラントネットワーク健全性診断装置は、リピータ１０４にデータ収集手段１１０を直接接続し、このデータ収集手段１１０に検査手段１２０を直接接続することにより構成されている。このうち、データ収集手段１１０は、プラントネットワーク上で送信されるデータを収集する手段であり、リピータ１０４に直接接続されることで、プラントネットワークに送信された全てのフレームを受信し、収集できるようになっている。また、検査手段１２０は、データ収集手段１１０で収集されたデータを検査する手段であり、定周期で送信されるフレームを予め記録されたフレーム基準情報と比較することでフレームの検査を行う定周期データ検査手段１３０を含む。
【００４１】
図２は、プラントネットワーク健全性診断装置の構成を示すブロック図である。データ収集手段１１０は、ネットワークインタフェースカード（ＮＩＣ）１１１、時刻付加部１１２、タイマ１１３、を備えており、検査手段１２０の定周期データ検査手段１３０は、フレームキュー１３１、フレーム検査部１３２、フレームデータベース１３３、を備えている。
【００４２】
（動作手順）
図３は、データ収集手段１１０と検査手段１２０の動作手順の概略を示すフローチャートである。この図３に示すように、データ収集手段１１０において、リピータ１０４から送られてきたフレームは（Ｓ３０１のＹＥＳ）、ＮＩＣ１１１の内部のバッファに一旦保存される（Ｓ３０２）。そして、ＮＩＣ１１１内のバッファにフレームが蓄えられると、時刻付加部１１２は、ＮＩＣ１１１よりフレームを読み出し、タイマ１１３を参照して現在時刻を取得してその読み出したフレームに付加し、検査手段１２０に送る（Ｓ３０３）。
【００４３】
また、検査手段１２０において、データ収集手段１１０から送られてきた時刻付きフレームデータは、定周期データ検査手段１３０のフレームキュー１３１に記録される（Ｓ３０４）。フレームキュー１３１は、時刻付きフレームを記録するＦＩＦＯ式のバッファである。フレーム検査部１３２は、フレームキュー１３１に記録されたフレームを、最新のものから順に調べ、フレームデータベース１３３に記録されているフレーム基準情報に基づいてネットワークの健全性を検査する（Ｓ３０５）。
【００４４】
図４は、フレームキュー１３１のデータ構造の一例を示しており、順次記録されたフレーム４０１〜４０９が記録順に並んでいる。すなわち、この図３中において、一番上のフレーム４０１が、最新のフレームであり、一番下のフレーム４０９が最も古いフレームである。このフレームキューの中で、各フレームは、先頭に受信時刻（通信時刻）を付加され、「受信時刻、送信先、送信元、データ」、という形式で保存される。
【００４５】
例えば、一番下のフレーム４０１は、時刻「０１時２３分３２．２５５秒」に、送信元Ａから、送信先ＡＬＬ（ネットワークに接続されている全ての装置）に送信されたことを示している。送信元および送信先に示される符号「Ａ」、「Ｂ」、「Ｃ」はアドレスである。このようなフレームの記録において、送信先以降の各情報は、フレームがそのまま保存されるため、余分な処理を必要としない。
【００４６】
なお、時刻の付加方式については、データ収集手段１１０で時刻を付加する代わりに、変形例として、制御装置１０１Ａ〜１０１Ｃからフレームを送信する際に、フレームのデータ部２０４の内部に予め付加しておく方式を採用することも可能である。
【００４７】
図５は、フレームデータベース１３３に記録されているフレーム基準情報の一例を示す。すなわち、フレームデータベース１３３には、各フレームのフレーム基準情報５０１〜５０４として、「フレームの送信周期、許容される周期誤差、送信元、送信先、ＩＤ、署名」、という形式の情報が記録される。制御装置１０１Ａ〜１０１Ｃから送信されるフレームは、必要に応じて複数のグループに分けられる場合があり、それを区別するのがＩＤである。
【００４８】
ＩＤは、フレームのデータ部２０４の一部として書きこまれたデータであり、図５中のフレーム基準情報５０１，５０２においては、送信元Ａから、ＩＤ＝１とＩＤ＝２のフレームがそれぞれ、周期０．５ｓｅｃと１．０ｓｅｃで送信されることが示されている。すなわち、フレームは、送信元とＩＤによって識別されるようになっている。
【００４９】
さらに、フレームの健全性、正当性を確認するために、データ部２０４に署名を入れることができる。Ｅｔｈｅｒｎｅｔの標準では、フレームの最後にＦＣＳ（フレームチェック・シーケンス）が付けられており、フレームの健全性をある程度検査できるが、より厳重な検査と不正アクセスの検出のため、暗号化メッセージダイジェスト関数ＭＤ５（ＲＦＣ１３２１）を使用した署名を、制御装置によってデータ部２０４内に埋め込むこともできる。
【００５０】
定周期データ検査手段１３０のフレーム検査部１３２は、フレームキュー１３１に新しいフレームが到着すると、フレームキュー１３１に記録されたフレームを、最新のものから順番に調べ、フレームデータベース１３３に記録されているフレーム基準情報に基づいてフレームを検査する。図６、図７は、フレーム検査部１３２の処理方式として、２種類の処理方式の手順をそれぞれ示すフローチャートであり、図３中のＳ３０５のサブルーチンに相当する。以下には、図４のフレームと、図５のフレーム基準情報に対する処理について説明する。
【００５１】
図６に示す処理方式において、図４に示す最新のフレーム４０１の送信元とＩＤに基づき、最新のフレーム４０１に関するフレーム基準情報を、フレームデータベース１３３から検索する（Ｓ６０１）。ここで、フレーム４０１に関するフレーム基準情報が見つからない場合（Ｓ６０２のＹＥＳ）には、本来存在しないはずのフレームが受信されたことになるため、異常と判定する（Ｓ６０３）。この例では、フレーム４０１の送信元は「Ａ」、ＩＤは「１」であるから、同じ情報を含むフレーム基準情報、すなわち、図５に示すフレーム基準情報５０１が見つかる（Ｓ６０２のＮＯ）ので、次のステップＳ６０４に進む。
【００５２】
ステップＳ６０４においては、フレーム４０１の送信先、署名を、フレーム基準情報５０１の送信先、署名と比較する。ここで、送信先、署名の何れかが一致しない場合（Ｓ６０５のＹＥＳ）には、本来の送信先とは異なる送信先宛のあるいは本来の署名とは異なる署名を含む不正なフレームが受信されたことになるため、異常と判定する（Ｓ６０６）。この例では、フレーム４０１の送信先は「ＡＬＬ」、署名は「ｙｙｙｙ」となっており、フレーム基準情報５０１と一致している（Ｓ６０５のＮＯ）ため、次のステップＳ６０７に進む。
【００５３】
ステップＳ６０７においては、図４に示すフレームキュー１３１を遡って、フレーム４０１と同じ送信元とＩＤを持つ前回のフレームを探し、両フレームの受信時刻の差と、フレーム基準情報５０１の送信周期、周期誤差を比較する。ここで、受信時刻の差が許容される周期誤差範囲外である場合（Ｓ６０８のＮＯ）には、送信周期の異常と判定する（Ｓ６０９）。この例では、フレーム４０１の前回のフレームとしてフレーム４０４が得られ、両フレーム４０１，４０４の受信時刻の差が０．５０２秒であるのに対し、フレーム基準情報５０１の送信周期は０．５秒、許容される周期誤差は０．０１秒であるから、両フレーム４０１，４０４の受信時刻の差は許容される周期誤差範囲内と判定される（Ｓ６０８のＹＥＳ）。その結果、フレーム４０１の送信は健全であると判定される（Ｓ６１０）。
【００５４】
また、フレーム４０２の場合には、送信元は「Ｃ」であるから、フレーム基準情報５０４が見つかり、送信先は「ＡＬＬ」、署名は「ｕｕｕｕ」であるため、前回のフレーム４０７が得られ、両フレーム４０２，４０７の受信時刻の差と、フレーム基準情報５０４の送信周期、周期誤差が比較されることになる。この場合、両フレーム４０２，４０７の受信時刻の差が１．０７秒であるのに対し、フレーム基準情報５０４の送信周期と周期誤差はそれぞれ、１．０秒と０．０２秒であるから、受信時刻の差は許容範囲外と判定され（Ｓ６０８のＮＯ）、その結果、フレーム４０２の送信は異常であると判定される（Ｓ６０９）。
【００５５】
以上のような図６に示す処理方式の検査処理は、フレームが到着すると起動する単一のスレッドによって実行される。これに対して、図７に示す処理方式においては、フレームの到着により起動する未登録検査スレッドと、この未登録検査スレッドがセットした時刻にタイマ割込によって起動する送信異常検査スレッドという２つのスレッドにより、独立した検査処理Ａ，Ｂを並行的に行う。
【００５６】
図７に示すように、未登録検査スレッドは、フレームの到着によって起動し、到着した最新のフレームに対して検査処理Ａを行うが、この検査処理ＡにおけるステップＳ７０１〜Ｓ７０３の手順は、図６のステップＳ６０１〜Ｓ６０３と同様である。すなわち、受信した最新のフレーム４０１に関するフレーム基準情報を検索し（Ｓ７０１）、見つからない場合（Ｓ７０２のＹＥＳ）には、本来存在しないはずのフレームが受信されたことになるため、異常と判定する（Ｓ７０３）が、この例では、フレーム基準情報５０１が見つかる（Ｓ７０２のＮＯ）ので、次のステップＳ７０４に進む。
【００５７】
ステップＳ７０４においては、最新のフレーム（Ｆ）４０１と同じ送信元とＩＤを持つ次回到着予定のフレームを調べるための送信異常検査スレッドの起動をセットする。この場合の起動時刻Ｔは、現在時刻にフレーム基準情報５０１の送信周期と周期誤差を加えた時刻であり、次回フレームの到着時刻の上限（受信タイムアウト時刻）である。未登録検査スレッドは送信異常検査スレッドの起動セットを終えると処理を一旦終了し、フレーム到着ごとに起動して、ステップＳ７０１〜Ｓ７０４の検査処理Ａを繰り返す。
【００５８】
送信異常検査スレッドは、未登録検査スレッドによってセットされた起動時刻Ｔに起動し、検査処理Ｂを行う。この検査処理Ｂにおいてはまず、ステップＳ７０４のフレーム（Ｆ）４０１と同じ送信元とＩＤを持つフレームを、フレームキュー１３１中の新しいものから順に遡り、フレーム基準情報５０１に設定されている周期誤差の２倍の範囲で調べる（Ｓ７１１）。この誤差範囲内に該当フレームが存在しない場合（Ｓ７１２のＮＯ）には、フレーム送信異常と判定し（Ｓ７１３）、この誤差範囲内に該当するフレームが存在する場合（Ｓ７１２のＹＥＳ）には、フレームの送信は健全であると判定する（Ｓ７１４）。送信異常検査スレッドは判定を終えると処理を終了し、セットされた各起動時刻ごとに起動して、ステップＳ７１１〜Ｓ７１４の検査処理Ｂを繰り返す。
【００５９】
この図７に示すような２つのスレッドによる処理の具体的なタイムチャートは、フレームの到着時刻の間隔やセットされる起動時刻（受信タイムアウト時刻）によって決定される。例えば、次の表１は、フレームの到着時刻の間隔が１秒であり、かつ、受信タイムアウト時刻をフレーム到着時刻の１．２秒後にセットする場合のタイムチャートの一例を示している。
【００６０】
【表１】
2004086367.tif 000003
【００６１】
（作用効果）
以上のような本実施形態によれば、プラントネットワーク上に送出された全てのデータを収集し、収集したデータを、予め記録された基準情報と比較して、送信元アドレスやデータＩＤ等のデータ特定情報に基づいて分類し、分類された各データが正しい送信元から正しい周期で送信されているか否かを検査することができる。したがって、既存のプラントネットワーク自体の構成をほとんど変更せずに、制御装置を接続するネットワークを流れるデータを監視して、制御装置の異常を判定すると共に不正なアクセスを発見し、ネットワークを経由して現場の外へ通報することができる。
【００６２】
また、通信時刻として、データ収集時に収集した時刻を付加することにより、送信途中で遅延を生じた場合に、その異常の可能性を把握することができる。また、データ特定情報に、送信周期に許容される誤差や、送信先アドレス、署名、等の情報を含めることにより、データの送信周期が許容される誤差の範囲内であるか、データが正しい送信先に向けて送信されているか、あるいは、データに正当性があるか、等の検査を行うことができる。したがって、データの各種の異常に応じて、プラントネットワーク内で異常を生じている可能性が高い部分を容易に特定することができる。
【００６３】
また、図６、図７に示す処理手順によれば、最新のデータをカレントデータとしてそのデータに対応する基準情報を検索し、対応する基準情報がない時点で、データの異常を直ちに検出することができる。そして、カレントデータに対応する基準情報がある場合には、その基準情報を用いて、同じ送信元から送信される同じ種類の前回データや次回データを検索し、基準情報中の送信周期とデータに含まれる通信時刻に基づいて、データの送信周期の異常を容易に検出することができる。また、図７に示すように、カレントデータの通信時刻と記録された送信周期に基づいて設定した時刻に次回データの検索を開始する場合には、制御装置がデータを全く送信しなくなる異常についても検出することができる。
【００６４】
（第２の実施形態）
（構成）
図８は、スイッチを用いたプラントネットワークに本発明を適用したプラントネットワーク健全性診断装置の第２の実施形態を示すブロック図である。本実施形態において、制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５は、スイッチ８０１を介してスター型に接続されている。スイッチ８０１は、リピータ１０４と異なり、受信したフレームを、送信先アドレスに基づいて送信する。例えば、送信先が制御装置１０１Ａであることを示す送信先アドレス「Ａ」のフレームは、制御装置１０１Ａ以外の装置が接続されているポートには出力されない。したがって、図１のリピータ１０４をスイッチ８０１に置き換えてデータ収集手段１１０を接続しただけでは、データ収集手段１１０は、送信先アドレスがＡＬＬ以外のフレームを収集できない。
【００６５】
そこで、本実施形態のプラントネットワーク健全性診断装置においては、スイッチ８０１の出力ポートに、制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５に対応するリピータ８０２Ａ〜８０２Ｄをそれぞれ接続している。そして、各リピータ８０２Ａ〜８０２Ｄの出力を、対応する各制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５にそれぞれ接続すると共に、データ収集手段１１０にそれぞれ分岐している。
【００６６】
図８の構成では、ネットワークが半二重Ｅｔｈｅｒｎｅｔで構成される場合、リピータ８０２Ａ〜８０２Ｄからデータ収集手段１１０に対して２重にフレームが送信されることになる。これは例えば、制御装置１０１Ａから制御装置１０１Ｂに送信されるフレームは、リピータ８０２Ａからデータ収集手段１１０に分岐され、同じフレームがスイッチ８０１から制御装置１０１Ｂに送信された後、リピータ８０２Ｂからデータ収集手段１１０に分岐されるからである。
【００６７】
そこで、本実施形態の検査手段１２０の定周期データ検査手段１３０においては、データ収集手段１１０で収集した２重フレームのうち、後のフレームを無視する形で検査を行う。一つの方法は、定周期データ検査手段１３０のフレームキュー１３１により、２重フレームの後着フレームを破棄する方法である。この方法において、フレームキュー１３１は、送信先、送信元、データが同じフレームを、スイッチ８０１の遅延時間（１００ＭｂｐｓのＥｔｈｅｒｎｅｔの場合、数百μ秒）程度の短い間隔で受信した場合には、後のフレームを破棄する。
【００６８】
また、定周期データ検査手段１３０のフレーム検査部１３２により、２重フレームの後着フレームを無視する方法も可能である。この方法において、フレームキュー１３１は、受信した全てのフレームを記録するが、フレーム検査部１３２は、フレームデータベース１３３に記録されているフレームの送信周期に比べてフレームの受信時刻の差が十分に短く、２重フレームの後着フレームであると判断される場合には、その後着フレームを無視する。そして、先着フレームのみの時刻の差として実際の送信周期を求め、フレームの検査を行う。
【００６９】
なお、ネットワークが全二重Ｅｔｈｅｒｎｅｔで構成される場合には、スイッチ８０１から各装置に対して、送信用、受信用それぞれの専用ケーブルが張られるため、リピータ８０２Ａ〜８０２Ｄを受信用ケーブルのみに接続することで、正確な送信周期を得ることができる。スイッチ８０１の送信用ケーブルに接続することでもほぼ同様であるが、スイッチ８０１内での遅延の影響を受け、検査される送信周期に誤差が入る可能性がある。
【００７０】
（作用効果）
以上のような本実施形態によれば、複数の制御装置がスイッチによって接続される場合でも、各制御装置ごとに個別のリピータをそれぞれ接続することにより、全ての制御装置から送信される全てのデータを、その送信先に拘わらず、確実に収集することができる。また、複数の制御装置をスイッチによって接続することにより、単一の制御装置を送信先とするデータはスイッチの一つの出力ポートを占有するだけで、他の出力ポートは別のデータの送信に使用可能であるため、複数の制御装置から同時にデータを送信できる。したがって、本実施形態によれば、プラントネットワーク内における通信効率を向上することができる。
【００７１】
（第３の実施形態）
（構成）
図９は、本発明を適用したプラントネットワーク健全性診断装置の第３の実施形態を示すブロック図である。本実施形態は、前記第２の実施形態において、複数のリピータ８０２Ａ〜８０２Ｄに対応する複数のデータ収集手段１１０Ａ〜１１０Ｄを設け、各リピータ８０２Ａ〜８０２Ｄの出力を対応する各データ収集手段１１０Ａ〜１１０Ｄで受信するように構成したものである。各データ収集手段１１０Ａ〜１１０Ｄで収集されたデータは、検査手段１２０へ送信される。なお、各データ収集手段１１０Ａ〜１１０Ｄと検査手段１２０との接続には、Ｅｔｈｅｒｎｅｔに限らず、ＩＥＥＥ１３９４等の各種の高速伝送手段が使用できる。
【００７２】
（作用効果）
本実施形態によれば、各リピータを個別のデータ収集手段にそれぞれ接続することにより、個々のデータ収集手段の負担が小さくなるため、複数の制御装置から同時にデータが送信される場合であっても、簡単なモジュールでデータ収集手段を実現することができる。
【００７３】
（変形例）
なお、本実施形態の変形例として、データ収集手段１１０だけでなく、検査手段１２０を複数にする構成も可能である。その場合には、データ収集手段と検査手段をモジュールとして一体化することにより、構成を簡略化することができる。
【００７４】
（第４の実施形態）
（構成）
図１０は、本発明を適用したプラントネットワーク健全性診断装置の第４の実施形態を示すブロック図である。本実施形態は、前記第１の実施形態において、検査手段１２０に、定周期データ検査手段１３０に加えて、非定周期データを検査するための非定周期データ検査手段１４０を設けたものである。この非定周期データ検査手段１４０は、パケット抽出部１４１、パケットキュー１４２、パケット検査部１４３、パケットデータベース１４４、を備えている。
【００７５】
（動作手順）
非定周期データ検査手段１４０は、データ収集手段１１０から時刻付きフレームを入力すると、パケット抽出部１４１によってその時刻付きフレームから、通信プロトコルの上位階層に属するＩＰパケットを抽出する。すなわち、データ収集手段１１０によって受信されたＥｔｈｅｒｎｅｔのフレームは、そのデータ部にＩＰパケットを含んでおり、また一つのＩＰパケットが複数のフレームに分割されることもある。パケット抽出部１４１は、そのようなＩＰパケットを抽出し、フレームの形式に応じたＩＰパケットを構成する。
【００７６】
なお、このように構成されたＩＰパケットには送信元と送信先のＩＰアドレスが含まれているが、パケット抽出部１４１は、そのＩＰパケットに対して、元のフレームに付加されていた時刻をさらに付加する。このようにして得られた時刻付きのＩＰパケットはパケットキュー１４２に保存される。また、パケットキュー１４２の論理形式は、定周期データ検査手段１３０のフレームキュー１３１の論理形式と同様である。
【００７７】
図１１は、パケットデータベース１４４に記録されている非定周期データの送信シーケンスグラフの一例を示す。この図１１において、非定周期に送信される各非定周期データ１１０１〜１１０５は個別の円で示され、各円の内部に、各データに関する情報が、「送信元、送信先、メッセージ、タイムアウト」、という形式で示されている。ここで、送信元および送信先に示される符号「ｉＡ」、「ｉＤ」は、制御装置１０１Ａおよびオペレータコンソール１０５のＩＰアドレスであり、円を結ぶ矢印はデータ送信順序を示している。
【００７８】
なお、図中では、制御装置１０１Ａとオペレータコンソール１０５との間で送信される非定周期データの送信シーケンスのみが示されているが、他の制御装置１０１Ｂ，１０１Ｃが非定周期データの送信元または送信先となる場合には、送信元および送信先に符号「ｉＢ」、「ｉＣ」を含む非定周期データの送信シーケンスグラフが同様に記録されることになる。さらに、各制御装置１０１Ａ〜１０１Ｃとオペレータコンソール１０５との間だけでなく、制御装置１０１Ａ〜１０１Ｃ間で非定周期データが送信される場合もある。
【００７９】
図１１において、非定周期データ１１０１に関する情報は、送信元「ｉＤ」から送信先「ｉＡ」へメッセージ（データ）「Ｘ１」が送信され、「Ｔｉｍｅｏｕｔ＝２」で２秒以内の応答が期待されていることを示している。メッセージの種類はデータＩＰパケットのデータ内部に記号として記録される。また、非定周期データ１１０１に対する応答は、非定周期データ１１０２であり、非定周期データ１１０１の送信後、２秒以内に送信される。この非定周期データ１１０２に関する情報は、送信元「ｉＡ」から送信先「ｉＤ」へメッセージ「Ｙ１」が送信され、２秒以内の応答が期待されていることを示している。
【００８０】
また、非定周期データ１１０２に対する応答は、非定周期データ１１０３であり、この非定周期データ１１０３については、送信元「ｉＤ」から送信先「ｉＡ」へメッセージ「Ｘ２」が送信され、４秒以内の応答が期待されている。さらに、非定周期データ１１０３に対する応答は、非定周期データ１１０４または非定周期データ１１０５であり、それぞれ、送信元「ｉＡ」から送信先「ｉＤ」へメッセージ「Ｙ２」または「Ｙ３」が送信される。
【００８１】
非定周期検査手段１４０のパケット検査部１４３は、パケットキュー１４２に新しいパケットが到着すると、パケットデータベース１４４の記述に従って、パケットを検査する。例えば、送信元「ｉＤ」、送信先「ｉＡ」のメッセージ「Ｘ２」が到着した際には、パケットデータベース１４４から図１１に示す非定周期データ１１０３に関する情報を得て、さらにその前に送信される非定周期データ１１０２に関する情報を得る。そして、パケットキュー１４２を遡って調べ、その非定周期データ１１０２に該当するデータを検索する。
【００８２】
すなわち、前記メッセージ「Ｘ２」の過去２秒間に、送信元「ｉＡ」、送信先「ｉＤ」の正当なメッセージ「Ｙ１」があるかどうかを検査する。もしそのようなデータがあれば、新たに到着したメッセージ「Ｘ２」は正当なものであると判定するが、そのようなデータがない場合には異常と判定し、パケットキュー１４２に異常マークを付ける。
【００８３】
（作用効果）
以上のような本実施形態によれば、データ収集手段により収集した非定周期データを、非定周期データ検査手段によりネットワークの上位層のパケットとして抽出し、各パケットの送信シーケンスを予め記録された送信シーケンス情報と比較することにより、非定周期データが正しいシーケンスで送信されているかを検査することができる。したがって、送信周期のない非定周期データについても、その異常を容易に検出することができる。
【００８４】
なお、本実施形態の変形例として、定周期データの特定情報と同様に、非定周期データのデータ特定情報に署名等を含めることも可能であり、それにより、非定周期データの正当性をより正確に判定することができる。
【００８５】
（第５の実施形態）
（構成）
図１２は、本発明を適用したプラントネットワーク健全性診断装置の第５の実施形態を示すブロック図である。本実施形態は、前記第１の実施形態において、不正アクセスを検出する署名として乱数を使用するようにしたものである。すなわち、本実施形態においては、制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５に乱数記憶手段１２０１Ａ〜１２０１Ｄが追加されると共に、検査手段１２０に、検査用乱数記憶手段１２０２が追加されている。
【００８６】
そして、制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５の各乱数記憶手段１２０１Ａ〜１２０１Ｄに、予め個別の乱数列を記録しておき、検査手段１２０の検査用乱数記憶手段１２０２には、各制御装置１０１Ａ〜１０１Ｃとオペレータコンソール１０５の各乱数記憶手段１２０１Ａ〜１２０１Ｄに記録された乱数列のコピーを記録しておく。
【００８７】
（動作手順）
制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５は、データを送信する際に、乱数記憶手段１２０１Ａ〜１２０１Ｄから乱数を順次取り出し、署名として乱数列の番号と共に付加する。この場合、署名は、例えば、次のようになる。
【数１】
３３２５０：　２３５２２１４５６
【００８８】
ここで、「３３２５０」は乱数列の先頭からの通し番号であり、「２３５２２１４５６」は乱数である。物理乱数（参照文献：特許第３０３４５１６号「物理乱数発生装置」、特許第２９８０５７６号「物理乱数発生装置及び方法並びに物理乱数記録媒体」）を使用すれば、番号が与えられた時に、乱数を予測する手段はないため、第三者による同一の乱数の使用による不正アクセスは実質的に不可能である。検査手段１２０は、検査用乱数記憶手段１２０２に記録された乱数列のコピーから、送信元に対応する乱数列の乱数を順次取り出し、署名と比較することにより、署名の正当性を確認する。
【００８９】
なお、乱数列のサイズは、例えば、毎回４バイトの乱数を使い、制御装置が毎秒１０回データを送信する場合、１年間では、次のように、１．２６ＧＢとなる。
【数２】
４×１０×３６００×２４×３６５＝１．２６ＧＢ
【００９０】
この程度のサイズの乱数列であれば、乱数記憶手段として小型のハードディスク装置、Ｆｌａｓｈ　ＲＯＭを使えば十分記憶できる。なお、コストダウンのために乱数記憶手段の容量を小さくするような場合には、同じ乱数列を繰返して使ってもよい。
【００９１】
（作用効果）
以上のような本実施形態によれば、制御装置と検査手段とで、予め記録された同一の乱数列を使用することにより、制御装置側では、送信されるデータごとに異なる乱数を署名として埋め込むことができる一方で、検出手段側では、データごとに異なる署名の正当性を確実に検査することができる。したがって、データの正当性について、信頼性の高い検査を行うことができる。
【００９２】
（第６の実施形態）
（構成）
図１３は、本発明を適用したプラントネットワーク健全性診断装置の第６の実施形態を示すブロック図である。本実施形態は、前記第１の実施形態において、検査手段１２０を、異なる命令セットを実装した２つのマイクロプロセッサを使用した２つの検査部１２１，１２２から構成したものである。
【００９３】
（作用効果）
以上のような構成を有する本実施形態においては、次のような作用効果が得られる。すなわち、検査手段１２０は、一般的にマイクロプロセッサによって実現されるが、バッファオーバーフローと呼ばれる不正アクセス手法により、検査手段１２０そのものを攻撃される可能性がある。ここで、バッファオーバーフロー攻撃とは、検査手段１２０に用意されたデータの一時格納バッファの容量を超えるデータを一度に送り込み、溢れたデータの部分にマイクロプロセッサの命令を書いておき、この部分を実行させるものである。
【００９４】
このようなバッファオーバーフロー攻撃に対し、本実施形態のように、異なる命令セットを持つ２つの検査部１２１，１２２の使用は有用である。すなわち、一方の検査部にとって命令となるデータは、もう一方の検査部にとっては単なるデータにすぎないため、一回のバッファオーバーフロー攻撃では、異なる命令セットを持つ２つの検査部１２１，１２２を同時に攻撃することはできない。したがって、本実施形態によれば、不正なアクセスによって検査手段１２０が機能停止に陥るような不都合を防止することができ、検査手段１２０の信頼性を向上することができる。
【００９５】
（第７の実施形態）
（構成）
図１４は、本発明を適用したプラントネットワーク健全性診断装置の第７の実施形態を示すブロック図である。本実施形態は、前記第１の実施形態において、検査手段１２０に、定周期データ検査手段１３０に加えて、この定周期データ検査手段１３０で測定されたフレーム周期の統計データについて長期的な傾向を検査するための統計データ検査手段１５０を設けたものである。
【００９６】
（動作手順）
統計データ検査手段１５０は、図１５に示すように、定周期で送信されるフレームごとに統計データ１５０１〜１５０４を保存する。ここで、保存する統計データは、例えば、「一日毎の周期の平均」、「一日毎の周期の分散」、「一日毎の周期異常数」、「一日毎のデータ欠損数」、等のデータである。統計データ検査手段１５０は、蓄積した統計データを、数ヶ月から数年の長期に亘って定期的に調べ、一日ごとの周期の分散（揺らぎ）が大きくなっている場合には、送信元の制御装置に何らかの異常兆候があるものと判定する。
【００９７】
（作用効果）
以上のような本実施形態によれば、定周期で送信されるデータの送信周期について、長期間に亘る傾向を容易に検査することができる。
【００９８】
（第８の実施形態）
（構成）
図１６は、本発明を適用したプラントネットワーク健全性診断装置の第８の実施形態を示すブロック図である。本実施形態は、前記第７の実施形態において、第１、第２のリピータ１６０１，１６０２によってプラントネットワークを２重化し、統計データ検査手段１５０によって、２重のネットワークにそれぞれ送信されるフレームの送信周期の相関を検査するようにしたものである。この場合、制御装置１０１Ａ〜１０１Ｃおよびオペレータコンソール１０５は２つのネットワークインタフェースを持ち、それぞれのネットワークインタフェースには別のネットワークアドレスが与えられる。
【００９９】
（動作手順）
データ収集手段１１０は、第１、第２のリピータ１６０１，１６０２の両方からデータを収集するが、同じ制御装置１０１Ａから送信されたフレームでも、第１のリピータ１６０１に送られたものと第２のリピータ１６０２に送られたものでは送信元のアドレスが異なる。
【０１００】
そこで、図１７に示すように、本実施形態においては、定周期データ検査手段１３０のフレームデータベース１３３に記録されるフレーム基本情報１７０１〜１７０８中に、送信元アドレスだけでなく、送信元のホストである制御装置を示す記号「１０１Ａ」、「１０１Ｂ」、「１０１Ｃ」を追加している。なお、図１７で送信元および送信先のアドレスとして記されている「Ａ１」、「Ｂ１」、「Ｃ１」はそれぞれ、制御装置１０１Ａ〜１０１Ｃの第２のネットワークにおけるアドレスである。
【０１０１】
統計データ検査手段１５０は、長期間に亘ってフレーム送信の周期を検査する際、同一の制御装置から２つのネットワークに送信されるフレームの周期の相関を判定する。同じＩＤのフレームに対して２重化ネットワークの両方の周期が乱れていれば、制御装置の異常の可能性が高く、一方の周期だけが乱れていればネットワークを構成するリピータや他の制御装置が異常である可能性が高いと判定できる。
【０１０２】
（作用効果）
以上のような本実施形態によれば、プラントネットワークを２重化することにより、ネットワークの信頼性を向上することができる。また、同じ制御装置から送信される同じデータについて、２重ネットワークの両方の周期が乱れているか、一方の周期だけが乱れているか等に応じて、ネットワーク中における異常の可能性の高い部分を容易に特定できるため、異常の分析をより詳細に行うことができる。
【０１０３】
（第９の実施形態）
本発明を適用した第９の実施形態として、前記各実施形態のいずれかにおいて、検査手段１２０の定周期データ検査手段１３０により、所定の時間内における定周期データの送信周期を測定し、その測定結果に基づいて、フレームデータベース１３３中のフレーム基準情報のデータ送信周期や周期誤差の自動設定を行うように構成してもよい。
【０１０４】
例えば、５００秒間に亘り周期を測定し、送信元「Ａ」、「ＩＤ＝１」のフレームが９９８個受信され、平均周期が０．５０１秒、標準偏差が０．００２秒になった場合には、図５に示すフレームデータベース１３３中のフレーム基準情報５０１の周期を０．５０１秒、周期誤差を測定された標準偏差の４倍の０．００８秒に更新する。
【０１０５】
以上のような本実施形態によれば、検査手段によるデータの送信周期の測定結果に基づいて、検査手段で使用する基準情報中の送信周期を自動的に随時設定、更新することができるため、基準情報の見直し作業といった人間系の作業を簡略化または省略することができる。
【０１０６】
（第１０の実施形態）
本発明を適用した第１０の実施形態として、前記第４の実施形態において、プラントネットワークを遠隔地にある保守装置に接続し、プラントネットワーク内の装置と遠隔地の保守装置との間の非定周期データを非定周期データ検査手段１４０によって検査するように構成してもよい。この場合には、パケットデータベース１４４に遠隔地にある保守装置のＩＰアドレスを含む基準情報を記録する。しかしながら、遠隔地との接続においてアプリケーションゲートウェイ型のファイアウォールを用いる場合は、ファイアウォールのＩＰアドレスを使用する。
【０１０７】
以上のような本実施形態によれば、プラントネットワークを遠隔地にある保守装置に接続した場合についても、その保守装置と、ネットワーク内の装置との間の非定周期データの異常を検出することができるため、ネットワーク内の装置を遠隔地の保守装置から適切に保守することができる。
【０１０８】
（他の実施形態）
なお、本発明は、前記実施形態に限定されるものではなく、本発明の範囲内で他にも多種多様な形態が実施可能である。まず、本発明は、プラントネットワークの具体的な機器構成や伝送方式に限らず、複数の制御装置を接続してなる各種のプラントネットワークに広く適用可能である。
【０１０９】
そして、本発明のデータ収集手段や検査手段等の各部分の具体的な構成は適宜選択可能である。また、プラントネットワーク内で送信されるデータの具体的なデータ構造に応じて、検査内容や手順も適宜選択可能であり、さらに、送信されるデータのデータ構造や検査内容等に応じて、記録される基準情報のデータ構造もまた適宜選択可能である。
【０１１０】
【発明の効果】
以上のように、本発明によれば、既存のプラントネットワーク自体の構成をほとんど変更せずに、制御装置を接続するネットワークを流れるデータを監視して、制御装置の異常を判定すると共に不正なアクセスを発見し、ネットワークを経由して現場の外へ通報可能なプラントネットワーク健全性診断装置とその方法を提供することができる。
【図面の簡単な説明】
【図１】本発明を適用したプラントネットワーク健全性診断装置を設置した第１の実施形態を示すブロック図。
【図２】図１に示すプラントネットワーク健全性診断装置の構成を示すブロック図。
【図３】図１に示すプラントネットワーク健全性診断装置の動作手順の概略を示すフローチャート。
【図４】図２に示すフレームキューのデータ構造の一例を示すデータ構造図。
【図５】図２に示すフレームデータベースに記録されているフレーム基準情報の一例を示すデータ構造図。
【図６】図２に示すフレーム検査部による処理方式の一つの手順を示すフローチャート。
【図７】図２に示すフレーム検査部による処理方式の別の手順を示すフローチャート。
【図８】本発明を適用したプラントネットワーク健全性診断装置の第２の実施形態を示すブロック図。
【図９】本発明を適用したプラントネットワーク健全性診断装置の第３の実施形態を示すブロック図。
【図１０】本発明を適用したプラントネットワーク健全性診断装置の第４の実施形態を示すブロック図。
【図１１】図１０に示すパケットデータベースに記録されている非定周期データの送信シーケンスグラフの一例を示す図。
【図１２】本発明を適用したプラントネットワーク健全性診断装置の第５の実施形態を示すブロック図。
【図１３】本発明を適用したプラントネットワーク健全性診断装置の第６の実施形態を示すブロック図。
【図１４】本発明を適用したプラントネットワーク健全性診断装置の第７の実施形態を示すブロック図。
【図１５】図１４に示す統計データ検査手段が保存する統計データの一例を示すデータ構造図。
【図１６】本発明を適用したプラントネットワーク健全性診断装置の第８の実施形態を示すブロック図。
【図１７】図１６に示す定周期データ検査手段に保存されるフレーム基本情報の一例を示すデータ構造図。
【図１８】プラントネットワークの典型的な構成例を示すブロック図。
【図１９】Ｅｔｈｅｒｎｅｔのフレームの構造を示すデータ構造図。
【符号の説明】
１０１Ａ〜１０１Ｃ…制御装置
１０２Ａ〜１０２Ｃ…センサ
１０３Ａ〜１０３Ｃ…アクチュエータ
１０４，１６０１，１６０２…リピータ
１０５…オペレータコンソール
１１０，１１０Ａ〜１１０Ｄ…データ収集手段
１１１…ネットワークインタフェースカード（ＮＩＣ）
１１２…時刻付加部
１１３…タイマ
１２０…検査手段
１２１，１２２…検査部
１３０…定周期データ検査手段
１３１…フレームキュー
１３２…フレーム検査部
１３３…フレームデータベース
１４０…非定周期データ検査手段
１４１…パケット抽出部
１４２…パケットキュー
１４３…パケット検査部
１４４…パケットデータベース
１５０…統計データ検査手段
２０１…送信先アドレス
２０２…送信元アドレス
２０３…プロトコル型
２０４…データ部
２０５…フレームチェック
４０１〜４０９…フレーム
５０１〜５０４…フレーム基準情報
８０１…スイッチ
８０２Ａ〜８０２Ｄ…リピータ
１１０１〜１１０５…非定周期データ
１２０１Ａ〜１２０１Ｄ…乱数記憶手段
１２０２…検査用乱数記憶手段
１５０１〜１５０４…統計データ
【図１】
2004086367.tif 000004
【図２】
2004086367.tif 000005
【図３】
2004086367.tif 000006
【図４】
2004086367.tif 000007
【図５】
2004086367.tif 000008
【図６】
2004086367.tif 000009
【図７】
2004086367.tif 000010
【図８】
2004086367.tif 000011
【図９】
2004086367.tif 000012
【図１０】
2004086367.tif 000013
【図１１】
2004086367.tif 000014
【図１２】
2004086367.tif 000015
【図１３】
2004086367.tif 000016
【図１４】
2004086367.tif 000017
【図１５】
2004086367.tif 000018
【図１６】
2004086367.tif 000019
【図１７】
2004086367.tif 000020
【図１８】
2004086367.tif 000021
【図１９】
2004086367.tif 000022