(57)【要約】【課題】ＦＡネットワークでの通信の監視を可能にする。【解決手段】ＦＡネットワークに関する通信を監視する監視システムは、ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部（２５３，２８２，２６０，６２４）と、ＦＡネットワーク上での通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、通信の監視のための監視設定情報を生成するデータ分析モジュール６２２と、監視設定情報に従って、監視対象の通信を監視する監視部（２５１，２５２，１０１２，１０１０）とを含む。【選択図】図７
2020162075.tif 000002
【特許請求の範囲】
【請求項１】
ＦＡネットワークに関する通信を監視する監視システムであって、
前記ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部と、
前記ＦＡネットワーク上での前記通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、前記通信の監視のための監視設定情報を生成するデータ分析部と、
前記監視設定情報に従って、監視対象の通信を監視する監視部とを含む、監視システム。
【請求項２】
前記監視設定情報は、前記監視対象の通信の帯域幅のしきい値を含み、
前記監視部は、前記帯域幅が前記しきい値を上回る場合に、ユーザへの通知を出力する、請求項１に記載の監視システム。
【請求項３】
前記監視システムは、表示部をさらに備え、
前記データは、送信元のアドレスと、送信先のアドレスと、データ交換の頻度と、通信データの総量とを含み、
前記予め登録された情報は、前記送信元の名称と、前記送信先の名称と、前記送信元と前記送信先との間の前記通信を示す名称とを含み、
前記データ分析部は、前記データと前記予め登録された情報とを関連付けた実通信情報を生成して、前記実通信情報を前記表示部に表示させる、請求項１または請求項２に記載の監視システム。
【請求項４】
前記データ分析部は、前記送信元と前記送信先との間の前記通信に対するアクションの選択肢を選択するためのユーザの入力を受け付けて、前記監視設定情報を生成するように構成され、
前記アクションの前記選択肢は、
前記送信元と前記送信先との間の前記通信の監視と、
前記送信元と前記送信先との間の前記通信の拒否とを含む、請求項３に記載の監視システム。
【請求項５】
前記監視部は、前記ＦＡネットワークに接続された制御装置に含まれる、請求項１から請求項４のいずれか１項に記載の監視システム。
【請求項６】
ＦＡネットワークに関する通信を監視する監視システムのための設定装置であって、
前記監視システムは、監視設定情報に従って前記通信を監視する監視部を含み、
前記設定装置は、
前記ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部と、
前記ＦＡネットワーク上での前記通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、前記通信の監視のための前記監視設定情報を生成するデータ分析部とを備える、設定装置。
【請求項７】
ＦＡネットワークに関する通信を監視する監視システムによる監視方法であって、
前記監視システムのデータ収集部が、前記ＦＡネットワーク上の通信の状況を示すデータを収集するステップと、
前記監視システムのデータ分析部が、前記ＦＡネットワーク上での前記通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、前記通信の監視のための監視設定情報を生成するステップと、
前記監視システムの監視部が前記監視設定情報に従って、監視対象の通信を監視するステップとを含む、監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＦＡ（Factory Automation）ネットワークでの通信の監視に関する。
【背景技術】
【０００２】
現在では、ネットワークには、さまざまな端末を容易に接続することができる。一方で、ネットワーク上のセキュリティに関するさまざまな問題が発生するとともに、影響が及ぶ範囲も大きくなっている。
【０００３】
特開２０１５−１５９４８２号公報（特許文献１）は、ＩＰネットワークと複数の端末の間に位置するネットワーク装置を開示する。このネットワーク装置は、ユーザがネットワークの特別な専門知識を有していなくとも、ＩＰネットワークへ接続可能な端末を設定できるとともに、安全なＩＰネットワークを構築できることを目的とする。ネットワーク装置は、端末からパケットを受信したときに、アドレスを学習する。アドレスを学習できない場合、ネットワーク装置は、フィルタ情報に含まれるアドレスに基づいて、受信したパケットを転送すべきか否かを判定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１５９４８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
各種設備および各設備に配置される各種装置の制御には、ＰＬＣ（プログラマブルロジックコントローラ）などの制御装置が用いられる。近年のＩＣＴ（Information and Communication Technology）の進歩に伴って、制御装置も様々な外部装置とネットワーク接続されるとともに、制御装置において実行される処理も高度化している。ＦＡ（Factory Automation）の現場におけるネットワークは、産業用ネットワーク、ＦＡネットワーク、フィールドネットワーク等の様々な名称を有するが、以下では「ＦＡネットワーク」との用語を用いる。
【０００６】
制御システムのネットワーク化あるいはインテリジェント化に伴って、想定される脅威の種類も増加している。しかし、ＦＡの現場では、生産装置に応じた多種多様な通信が実行される。このため、ネットワークのセキュリティを監視する場合に、正常または異常の判断が難しい。
【０００７】
多くの場合、ユーザは、通信技術に関する高度の専門知識を有していない。このため、ユーザが、プロトコルの詳細など実際に行われる通信処理の具体的な内容までは把握していないことが多い。したがってユーザが制御システムの稼働に関する通信処理を管理していないことが多い。さらにＦＡネットワークのセキュリティに関する専門知識を有する技術者が製造現場に常駐しているとも限らない。
【０００８】
したがって本発明の１つの目的は、ＦＡネットワークでの通信の監視を可能にすることである。
【課題を解決するための手段】
【０００９】
本開示の一例は、ＦＡネットワークに関する通信を監視する監視システムであって、ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部と、ＦＡネットワーク上での通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、通信の監視のための監視設定情報を生成するデータ分析部と、監視設定情報に従って、監視対象の通信を監視する監視部とを含む。
【００１０】
上記によれば、ＦＡネットワークでの通信の監視が可能になる。データ収集部が、ＦＡネットワーク上の通信の状況を示すデータを取得する。データ分析部は、そのデータを分析する。これにより、ＦＡネットワークでの通信の状況を把握することができる。その状況に基づいて監視のための設定を行うことにより、ＦＡネットワークでの通信の監視が可能となる。
【００１１】
好ましくは、監視設定情報は、監視対象の通信の帯域幅のしきい値を含む。監視部は、帯域幅がしきい値を上回る場合に、ユーザへの通知を出力する。
【００１２】
上記によれば、ＤｏＳ攻撃（Denial of Service attack）あるいはＤＤｏＳ攻撃（Distributed Denial of Service attack）を受けた場合といったように帯域幅がしきい値を上回る場合に、監視部はユーザへの通知を出力することができる。
【００１３】
好ましくは、監視システムは、表示部をさらに備える。データは、送信元のアドレスと、送信先のアドレスと、データ交換の頻度と、通信データの総量とを含む。予め登録された情報は、送信元の名称と、送信先の名称と、送信元と送信先との間の通信を示す名称とを含む。データ分析部は、データと予め登録された情報とを関連付けた実通信情報を生成して、実通信情報を表示部に表示させる。
【００１４】
上記によれば、通信負荷の現状をユーザが容易に把握できるように実通信情報をユーザに提示することができる。したがって、ユーザによるセキュリティの設定を支援することができる。
【００１５】
好ましくは、データ分析部は、送信元と送信先との間の通信に対するアクションの選択肢を選択するためのユーザの入力を受け付けて、監視設定情報を生成するように構成される。アクションの選択肢は、送信元と送信先との間の通信の監視と、送信元と送信先との間の通信の拒否とを含む。
【００１６】
上記によれば、データ収集の結果に基づいて、ユーザは、セキュリティに関する対策を取ることができる。たとえば明らかに異常と思われる通信を拒否することができる。
【００１７】
好ましくは、監視部は、ＦＡネットワークに接続された制御装置に含まれる。
上記によれば、制御装置の通信のセキュリティを設定することができる。さらに設定後は、制御装置自身による通信の監視が可能となる。
【００１８】
本開示の一例は、ＦＡネットワークに関する通信を監視する監視システムのための設定装置であって、監視システムは、監視設定情報に従って通信を監視する監視部を含み、設定装置は、ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部と、ＦＡネットワーク上での通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、通信の監視のための監視設定情報を生成するデータ分析部とを備える。
【００１９】
上記によれば、ＦＡネットワークでの通信を監視できるように監視システムを設定することができる。
【００２０】
本開示の一例は、ＦＡネットワークに関する通信を監視する監視システムによる監視方法であって、監視システムのデータ収集部が、ＦＡネットワーク上の通信の状況を示すデータを収集するステップと、監視システムのデータ分析部が、ＦＡネットワーク上での通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、通信の監視のための監視設定情報を生成するステップと、監視システムの監視部が監視設定情報に従って、監視対象の通信を監視するステップとを含む。
【００２１】
上記によれば、ＦＡネットワークでの通信の監視が可能になる。
【発明の効果】
【００２２】
本発明によれば、ＦＡネットワークでの通信の監視およびその監視のための設定が可能になる。
【図面の簡単な説明】
【００２３】
【図１】本実施の形態に係る制御装置の構成例を示す外観図である。
【図２】本実施の形態に従う制御装置を構成する制御ユニットのハードウェア構成例を示す模式図である。
【図３】本実施の形態に従う制御装置を構成する通信ユニットのハードウェア構成例を示す模式図である。
【図４】本実施の形態に従う制御装置を構成するセーフティユニットのハードウェア構成例を示す模式図である。
【図５】本実施の形態に従う制御装置１を含む制御システムの典型例を示す模式図である。
【図６】本実施の形態に従う制御装置１に接続されるサポート装置のハードウェア構成例を示す模式図である。
【図７】本実施の形態に従う監視システムの概略的な構成を示した図である。
【図８】図７に示した構成によってＦＡネットワークの通信負荷の監視を実現するためのシナリオを示した模式図である。
【図９】図８に示した収集フェーズの概要を説明した図である。
【図１０】分析フェーズの概要を説明した図である。
【図１１】図１０に示したユーザインターフェイス画面の一実施例を示した図である。
【図１２】図１１に示したユーザインターフェイス画面の表示のためのデータ収集処理を説明する模式図である。
【図１３】図１１に示したユーザインターフェイス画面の表示のための設定処理を説明する模式図である。
【図１４】図１１に示したユーザインターフェイス画面の表示のための静的データの抽出処理を説明する模式図である。
【図１５】通信拒否のアクションの設定を説明するための図である。
【図１６】通信監視のアクションの設定を説明するための図である。
【図１７】ＰＬＣプログラムの一部の例を示した図である。
【図１８】活用フェーズの概要を説明した図である。
【発明を実施するための形態】
【００２４】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
【００２５】
＜Ａ．制御装置＞
まず、本実施の形態に従う監視システムにおいて監視対象の通信を行う制御装置１を説明する。
【００２６】
図１は、本実施の形態に係る制御装置１の構成例を示す外観図である。図１を参照して、制御装置１は、制御ユニット１００と、通信ユニット２００と、セーフティユニット３００と、１または複数の機能ユニット４００と、電源ユニット４５０とを含む。
【００２７】
制御ユニット１００と通信ユニット２００との間は、任意のデータ伝送路（例えば、ＰＣＩ  Ｅｘｐｒｅｓｓ（登録商標）あるいはイーサネット（登録商標）など）を介して接続されている。制御ユニット１００とセーフティユニット３００および１または複数の機能ユニット４００との間は、図示しない内部バスを介して接続されている。
【００２８】
制御ユニット１００は、制御装置１において中心的な処理を実行する。制御ユニット１００は、任意に設計された要求仕様に従って、制御対象を制御するための制御演算を実行する。後述のセーフティユニット３００で実行される制御演算との対比で、制御ユニット１００で実行される制御演算を「標準制御」とも称す。図１に示す構成例において、制御ユニット１００は、１または複数の通信ポートを有している。
【００２９】
通信ユニット２００は、制御ユニット１００に接続され、制御装置１に対するセキュリティ機能を担当する。図１に示す構成例において、通信ユニット２００は、１または複数の通信ポートを有している。通信ユニット２００が提供するセキュリティ機能の詳細については、後述する。
【００３０】
セーフティユニット３００は、制御ユニット１００とは独立して、制御対象に関するセーフティ機能を実現するための制御演算を実行する。セーフティユニット３００で実行される制御演算を「セーフティ制御」とも称す。通常、「セーフティ制御」は、ＩＥＣ  ６１５０８などに規定されたセーフティ機能を実現するための要件を満たすように設計される。「セーフティ制御」は、設備や機械などによって人の安全が脅かされることを防止するための処理を総称する。
【００３１】
機能ユニット４００は、制御装置１による様々な制御対象に対する制御を実現するための各種機能を提供する。機能ユニット４００は、典型的には、Ｉ／Ｏユニット、セーフティＩ／Ｏユニット、通信ユニット、モーションコントローラユニット、温度調整ユニット、パルスカウンタユニットなどを包含し得る。Ｉ／Ｏユニットとしては、例えば、デジタル入力（ＤＩ）ユニット、デジタル出力（ＤＯ）ユニット、アナログ出力（ＡＩ）ユニット、アナログ出力（ＡＯ）ユニット、パルスキャッチ入力ユニット、および、複数の種類を混合させた複合ユニットなどが挙げられる。セーフティＩ／Ｏユニットは、セーフティ制御に係るＩ／Ｏ処理を担当する。
【００３２】
電源ユニット４５０は、制御装置１を構成する各ユニットに対して、所定電圧の電源を供給する。
【００３３】
＜Ｂ．各ユニットのハードウェア構成例＞
次に、本実施の形態に従う制御装置１を構成する各ユニットのハードウェア構成例について説明する。
【００３４】
（ｂ１：制御ユニット１００）
図２は、本実施の形態に従う制御装置１を構成する制御ユニット１００のハードウェア構成例を示す模式図である。図２を参照して、制御ユニット１００は、主たるコンポーネントとして、ＣＰＵ（Central Processing Unit）やＧＰＵ（Graphical Processing Unit）などのプロセッサ１０２と、チップセット１０４と、主記憶装置１０６と、二次記憶装置１０８と、通信コントローラ１１０と、ＵＳＢ（Universal Serial Bus）コントローラ１１２と、メモリカードインターフェイス１１４と、ネットワークコントローラ１１６，１１８，１２０と、内部バスコントローラ１２２と、インジケータ１２４とを含む。
【００３５】
プロセッサ１０２は、二次記憶装置１０８に格納された各種プログラムを読み出して、主記憶装置１０６に展開して実行することで、標準制御に係る制御演算、および、後述するような各種処理を実現する。チップセット１０４は、プロセッサ１０２と各コンポーネントとの間のデータの遣り取りを仲介することで、制御ユニット１００全体としての処理を実現する。
【００３６】
二次記憶装置１０８には、システムプログラムに加えて、システムプログラムが提供する実行環境上で動作する制御プログラムが格納される。
【００３７】
通信コントローラ１１０は、通信ユニット２００との間のデータの遣り取りを担当する。通信コントローラ１１０としては、例えば、ＰＣＩ  Ｅｘｐｒｅｓｓあるいはイーサネットなどに対応する通信チップを採用できる。
【００３８】
ＵＳＢコントローラ１１２は、ＵＳＢ接続を介して任意の情報処理装置との間のデータの遣り取りを担当する。
【００３９】
メモリカードインターフェイス１１４は、メモリカード１１５を着脱可能に構成されており、メモリカード１１５に対して制御プログラムや各種設定などのデータを書込み、あるいは、メモリカード１１５から制御プログラムや各種設定などのデータを読出すことが可能になっている。
【００４０】
ネットワークコントローラ１１６，１１８，１２０の各々は、ネットワークを介した任意のデバイスとの間のデータの遣り取りを担当する。ネットワークコントローラ１１６，１１８，１２０は、ＥｔｈｅｒＣＡＴ（登録商標）、ＥｔｈｅｒＮｅｔ／ＩＰ（登録商標）、ＤｅｖｉｃｅＮｅｔ（登録商標）、ＣｏｍｐｏＮｅｔ（登録商標）などの産業用ネットワークプロトコルを採用してもよい。
【００４１】
内部バスコントローラ１２２は、制御装置１を構成するセーフティユニット３００や１または複数の機能ユニット４００との間のデータの遣り取りを担当する。内部バスには、メーカ固有の通信プロトコルを用いてもよいし、いずれかの産業用ネットワークプロトコルと同一あるいは準拠した通信プロトコルを用いてもよい。
【００４２】
インジケータ１２４は、制御ユニット１００の動作状態などを通知するものであり、ユニット表面に配置された１または複数のＬＥＤなどで構成される。
【００４３】
図２には、プロセッサ１０２がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路（例えば、ＡＳＩＣ（Application Specific Integrated Circuit）またはＦＰＧＡ（Field-Programmable Gate Array）など）を用いて実装してもよい。あるいは、制御ユニット１００の主要部を、汎用的なアーキテクチャに従うハードウェア（例えば、汎用パソコンをベースとした産業用パソコン）を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のＯＳ（Operating System）を並列的に実行させるとともに、各ＯＳ上で必要なアプリケーションを実行させるようにしてもよい。
【００４４】
（ｂ２：通信ユニット２００）
図３は、本実施の形態に従う制御装置１を構成する通信ユニット２００のハードウェア構成例を示す模式図である。図３を参照して、通信ユニット２００は、主たるコンポーネントとして、ＣＰＵやＧＰＵなどのプロセッサ２０２と、チップセット２０４と、主記憶装置２０６と、二次記憶装置２０８と、通信コントローラ２１０と、ＵＳＢコントローラ２１２と、メモリカードインターフェイス２１４と、ネットワークコントローラ２１６，２１８と、インジケータ２２４とを含む。
【００４５】
プロセッサ２０２は、二次記憶装置２０８に格納された各種プログラムを読み出して、主記憶装置２０６に展開して実行することで、後述するような各種セキュリティ機能を実現する。チップセット２０４は、プロセッサ２０２と各コンポーネントとの間のデータの遣り取りを仲介することで、通信ユニット２００全体としての処理を実現する。
【００４６】
二次記憶装置２０８には、システムプログラムに加えて、システムプログラムが提供する実行環境上で動作するセキュリティシステムプログラムが格納される。
【００４７】
通信コントローラ２１０は、制御ユニット１００との間のデータの遣り取りを担当する。通信コントローラ２１０としては、制御ユニット１００に通信コントローラ２１０と同様に、例えば、ＰＣＩ  Ｅｘｐｒｅｓｓあるいはイーサネットなどに対応する通信チップを採用できる。
【００４８】
ＵＳＢコントローラ２１２は、ＵＳＢ接続を介して任意の情報処理装置との間のデータの遣り取りを担当する。
【００４９】
メモリカードインターフェイス２１４は、メモリカード２１５を着脱可能に構成されており、メモリカード２１５に対して制御プログラムや各種設定などのデータを書込み、あるいは、メモリカード２１５から制御プログラムや各種設定などのデータを読出すことが可能になっている。
【００５０】
ネットワークコントローラ２１６，２１８の各々は、ネットワークを介した任意のデバイスとの間のデータの遣り取りを担当する。ネットワークコントローラ２１６，２１８は、イーサネット（登録商標）などの汎用的なネットワークプロトコルを採用してもよい。
【００５１】
インジケータ２２４は、通信ユニット２００の動作状態などを通知するものであり、ユニット表面に配置された１または複数のＬＥＤなどで構成される。
【００５２】
図３には、プロセッサ２０２がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路（例えば、ＡＳＩＣまたはＦＰＧＡなど）を用いて実装してもよい。あるいは、通信ユニット２００の主要部を、汎用的なアーキテクチャに従うハードウェア（例えば、汎用パソコンをベースとした産業用パソコン）を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のＯＳを並列的に実行させるとともに、各ＯＳ上で必要なアプリケーションを実行させるようにしてもよい。
【００５３】
（ｂ３：セーフティユニット３００）
図４は、本実施の形態に従う制御装置１を構成するセーフティユニット３００のハードウェア構成例を示す模式図である。図４を参照して、セーフティユニット３００は、主たるコンポーネントとして、ＣＰＵやＧＰＵなどのプロセッサ３０２と、チップセット３０４と、主記憶装置３０６と、二次記憶装置３０８と、メモリカードインターフェイス３１４と、内部バスコントローラ３２２と、インジケータ３２４とを含む。
【００５４】
プロセッサ３０２は、二次記憶装置３０８に格納された各種プログラムを読み出して、主記憶装置３０６に展開して実行することで、セーフティ制御に係る制御演算、および、後述するような各種処理を実現する。チップセット３０４は、プロセッサ３０２と各コンポーネントとの間のデータの遣り取りを仲介することで、セーフティユニット３００全体としての処理を実現する。
【００５５】
二次記憶装置３０８には、システムプログラムに加えて、システムプログラムが提供する実行環境上で動作するセーフティプログラムが格納される。
【００５６】
メモリカードインターフェイス３１４は、メモリカード３１５を着脱可能に構成されており、メモリカード３１５に対してセーフティプログラムや各種設定などのデータを書込み、あるいは、メモリカード３１５からセーフティプログラムや各種設定などのデータを読出すことが可能になっている。
【００５７】
内部バスコントローラ３２２は、内部バスを介した制御ユニット１００との間のデータの遣り取りを担当する。
【００５８】
インジケータ３２４は、セーフティユニット３００の動作状態などを通知するものであり、ユニット表面に配置された１または複数のＬＥＤなどで構成される。
【００５９】
図４には、プロセッサ３０２がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路（例えば、ＡＳＩＣまたはＦＰＧＡなど）を用いて実装してもよい。あるいは、セーフティユニット３００の主要部を、汎用的なアーキテクチャに従うハードウェア（例えば、汎用パソコンをベースとした産業用パソコン）を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のＯＳを並列的に実行させるとともに、各ＯＳ上で必要なアプリケーションを実行させるようにしてもよい。
【００６０】
＜Ｃ．制御システム１０＞
次に、本実施の形態に従う制御装置１を含む制御システム１０の典型例について説明する。以下の説明においてデータベースを「ＤＢ」と表記する。図５は、本実施の形態に従う制御装置１を含む制御システム１０の典型例を示す模式図である。
【００６１】
一例として、図５に示す制御システム１０は、２つのライン（ラインＡおよびラインＢ）を制御対象とする。典型的には、各ラインは、ワークを搬送するコンベアに加えて、コンベア上のワークに対して任意の物理的作用を与えることが可能なロボットが配置されているとする。
【００６２】
ラインＡおよびラインＢのそれぞれに制御ユニット１００が配置されている。ラインＡを担当する制御ユニット１００に加えて、通信ユニット２００およびセーフティユニット３００が制御装置１を構成する。なお、説明の便宜上、図５には、機能ユニット４００および電源ユニット４５０の記載を省略している。
【００６３】
制御装置１の通信ユニット２００は、通信ポート２４２（図３のネットワークコントローラ２１６）を介して第１ネットワーク２に接続されている。第１ネットワーク２には、サポート装置６００およびＳＣＡＤＡ（Supervisory Control And Data Acquisition）装置７００が接続されているとする。
【００６４】
サポート装置６００は、少なくとも制御ユニット１００にアクセス可能になっており、制御装置１に含まれる各ユニットで実行されるプログラムの作成、デバッグ、各種パラメータの設定などの機能をユーザへ提供する。また、サポート装置６００は、通信ユニット２００から情報を収集して、その収集された情報に基づいてＦＡネットワークの通信負荷を監視する。したがって、サポート装置６００は、監視装置としての機能を有する。
【００６５】
ＳＣＡＤＡ装置７００は、制御装置１での制御演算によって得られる各種情報をオペレータへ提示するとともに、オペレータからの操作に従って、制御装置１に対して内部コマンドなどを生成する。ＳＣＡＤＡ装置７００は、制御装置１が扱うデータを収集する機能も有している。
【００６６】
制御装置１の制御ユニット１００は、通信ポート１４２（図２のネットワークコントローラ１１６）を介して第２ネットワーク４に接続されている。第２ネットワーク４には、ＨＭＩ（Human Machine Interface）８００およびデータベース９００が接続されているとする。
【００６７】
ＨＭＩ８００は、制御装置１での制御演算によって得られる各種情報をオペレータへ提示するとともに、オペレータからの操作に従って、制御装置１に対して内部コマンドなどを生成する。データベース９００は、制御装置１から送信される各種データ（例えば、各ワークから計測されたトレーサビリティに関する情報など）を収集する。
【００６８】
制御装置１の制御ユニット１００は、通信ポート１４４（図２のネットワークコントローラ１１８）およびＦＡネットワークを介して、１または複数のフィールドデバイス５００と接続されている。フィールドデバイス５００は、制御対象から制御演算に必要な各種情報を収集するセンサや検出器、および、制御対象に対して何らかの作用を与えるアクチュエータなどを含む。図５に示す例では、フィールドデバイス５００は、ワークに対して何らかの外的な作用を与えるロボット、ワークを搬送するコンベヤ、フィールドに配置されたセンサやアクチュエータとの間で信号を遣り取りするＩ／Ｏユニットなどを含む。
【００６９】
同様に、ラインＢを担当する制御ユニット１００についても同様に、通信ポート１４４（図２のネットワークコントローラ１１８）およびＦＡネットワークを介して、１または複数のフィールドデバイス５００と接続されている。
【００７０】
ここで、制御装置１の機能面に着目すると、制御ユニット１００は、標準制御に係る制御演算を実行する処理実行部である制御エンジン１５０と、外部装置との間でデータを遣り取りする情報エンジン１６０とを含む。通信ユニット２００は、後述するような通信監視機能を実現するための通信エンジン２５０を含む。セーフティユニット３００は、セーフティ制御に係る制御演算を実行する処理実行部であるセーフティエンジン３５０を含む。
【００７１】
各エンジンは、各ユニットのプロセッサなどの任意のハードウェア要素または各種プログラムなどの任意のソフトウェア要素、あるいは、それら要素の組合せによって実現される。各エンジンは任意の形態で実装できる。
【００７２】
さらに、制御装置１は、エンジン同士の遣り取りを仲介するブローカー１７０を含む。ブローカー１７０の実体は、制御ユニット１００および通信ユニット２００の一方または両方に配置してもよい。
【００７３】
制御エンジン１５０は、制御対象を制御するための制御演算の実行に必要な変数テーブルおよびファンクションブロック（ＦＢ）などを保持している。変数テーブルに格納される各変数は、Ｉ／Ｏリフレッシュ処理により、フィールドデバイス５００から取得された値で周期的に収集されるとともに、フィールドデバイス５００へ各値が周期的に反映される。制御エンジン１５０での制御演算のログはログデータベース１８０に格納されてもよい。
【００７４】
情報エンジン１６０は、制御ユニット１００が保持するデータ（変数テーブルで保持される変数値）に対して任意の情報処理を実行する。典型的には、情報エンジン１６０は、制御ユニット１００が保持するデータを周期的にデータベース９００などへ送信する処理を含む。このようなデータの送信には、ＳＱＬなどが用いられる。
【００７５】
通信エンジン２５０は、対象となる通信データを監視して通信に関するデータを収集する。通信エンジン２５０の監視結果は、収集データＤＢ２６０に保存される。
【００７６】
通信エンジン２５０は、セキュリティに関する何らかのイベントが発生したこと、あるいは発生しているセキュリティに関するイベントのレベルなどを、インジケータ２２４で通知する。
【００７７】
セーフティエンジン３５０は、制御装置１において何らかの不正侵入が発生したか否かを検知する検知手段に相当する。セーフティエンジン３５０は、制御ユニット１００を介して、セーフティ制御に係る制御演算の実行に必要なセーフティＩ／Ｏ変数を取得および反映する。セーフティエンジン３５０でのセーフティ制御のログはログデータベース３６０に格納されてもよい。
【００７８】
ブローカー１７０は、例えば、通信エンジン２５０が何らかのイベントを検知すると、制御エンジン１５０、情報エンジン１６０およびセーフティエンジン３５０の動作などを変化させる。
【００７９】
＜Ｄ．セキュリティ脅威に対する対策＞
本実施の形態に従う制御装置１は、設備や機械を正常運転することを妨げる任意のセキュリティ脅威を検知し、必要な対策を実行可能になっている。
【００８０】
本明細書において、「セキュリティ脅威」は、設備や機械を正常運転することを妨げる任意の事象を意味する。ここで、「正常運転」は、システム設計通りおよび生産計画通りに、設備や機械を運転継続できる状態を意味する。なお、システム設計通りおよび生産計画通りに、設備や機械を運転継続するための、設備や機械の立ち上げ、メンテナンス、段取り替えなども付属的な処理も「正常運転」の概念には含まれる。
【００８１】
制御装置に搭載されているすべての物理ポートには、攻撃を受けるセキュリティリスクが存在している。たとえば、ＰＬＣを中心とする制御装置１がＤｏＳ攻撃（Denial of Service attack）あるいはＤＤｏＳ攻撃（Distributed Denial of Service attack）のターゲットとされることが想定される。一方で、正常運転時においても、制御装置１へのアクセスが集中することとは起こりえる。したがって、ネットワークの設定（たとえばネットワークの帯域幅）に基づいて、ＤｏＳ攻撃あるいはＤＤｏＳ攻撃の判断のための閾値（たとえば帯域幅）を定めることができる。閾値を上回る負荷が生じた場合、制御ユニット１００は外部からの攻撃を受けたと判断して、情報の受信を遮断する。ただし、他の通信は遮断されない。これにより、制御装置１の制御が制限されるものの、制御システム１０の稼働自体を継続することができる。
【００８２】
＜Ｅ．ＦＡネットワークの監視に関する課題＞
ＤｏＳ攻撃あるいはＤＤｏＳ攻撃等の脅威を検知するためには、ＦＡネットワークの監視を行うことが望まれる。しかし、ＦＡネットワークの監視に関して、以下に挙げる課題が想定される。
【００８３】
まず、ＦＡネットワークでは、フィールドデバイス５００（生産装置）に応じた多種多様な通信が行なわれる。そのような通信の正常あるいは異常を判断するための基準を設定することは容易ではない。
【００８４】
さらに、ユーザの関心が通信プロトコル等、データ通信を実現するための仕組みに向けられていない可能性がある。たとえばユーザは、制御ユニット１００（ＰＬＣ）同士の間でのデータの同期の頻度（あるいは周期）、制御ユニット１００とリモートＩＯユニットとの間のデータ交換、ＨＭＩ８００での表示等など、制御システム１０により実現したいことをアプリケーションのレベルで理解する。しかし、その実現のための通信の詳細（たとえば通信プロトコルの詳細等）について、ユーザ自体は関心を持たないことが多い。このため、ＦＡネットワーク上の通信がどのよう通信であるかについてユーザの関心が薄い、あるいはユーザが管理を望まないことが想定される。
【００８５】
さらに製造の現場においては、生産技術に詳しい技術者は多い一方で、ネットワーク技術に詳しい技術者は少ないことが多い。このような状況では、ネットワークセキュリティに詳しい技術者がさらに少ないため、ＦＡネットワークの状況を監視することがさらに難しい。
【００８６】
＜Ｆ．設定装置のハードウェア構成＞
次に、上述したような制御システム１０におけるＦＡネットワークを監視するためのユーザインターフェイスの一例について説明する。図５に示したサポート装置６００は、ＦＡネットワークに関する通信を監視する監視システムの設定装置として機能する。
【００８７】
図６は、本実施の形態に従う制御装置１に接続されるサポート装置６００のハードウェア構成例を示す模式図である。サポート装置６００は、一例として、汎用的なアーキテクチャに従うハードウェア（例えば、汎用パソコン）を用いて実現される。
【００８８】
図６を参照して、サポート装置６００は、プロセッサ６０２と、メインメモリ６０４と、入力部６０６と、出力部６０８と、ストレージ６１０と、光学ドライブ６１２と、ＵＳＢコントローラ６２０とを含む。これらのコンポーネントは、プロセッサバス６１８を介して接続されている。
【００８９】
プロセッサ６０２は、ＣＰＵやＧＰＵなどで構成され、ストレージ６１０に格納されたプログラム（一例として、ＯＳ６１０２およびサポートプログラム６１０４）を読出して、メインメモリ６０４に展開して実行することで、制御装置１に対する設定処理などを実現する。
【００９０】
メインメモリ６０４は、ＤＲＡＭやＳＲＡＭなどの揮発性記憶装置などで構成される。ストレージ６１０は、例えば、ＨＤＤやＳＳＤなどの不揮発性記憶装置などで構成される。
【００９１】
ストレージ６１０には、基本的な機能を実現するためのＯＳ６１０２に加えて、サポート装置６００としての機能を提供するためのサポートプログラム６１０４、監視システムのための設定装置としての機能を提供するネットワーク監視プログラム６１０６が格納される。すなわち、ネットワーク監視プログラム６１０６がプロセッサ６０２によって実行されることにより、サポート装置６００は、本実施の形態に係る監視システムのための設定装置を実現する。
【００９２】
入力部６０６は、キーボードやマウスなどで構成され、ユーザ操作を受け付ける。出力部６０８は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ６０２からの処理結果などを出力する。
【００９３】
ＵＳＢコントローラ６２０は、ＵＳＢ接続を介して、制御装置１などとの間のデータを遣り取りする。
【００９４】
サポート装置６００は、光学ドライブ６１２を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体６１４（例えば、ＤＶＤ（Digital Versatile Disc）などの光学記録媒体）から、その中に格納されたプログラムが読取られてストレージ６１０などにインストールされる。
【００９５】
サポート装置６００で実行されるサポートプログラム６１０４およびネットワーク監視プログラム６１０６などは、コンピュータ読取可能な記録媒体６１４を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に係るサポート装置６００が提供する機能は、ＯＳが提供するモジュールの一部を利用する形で実現される場合もある。
【００９６】
図６には、プロセッサ６０２がプログラムを実行することで、サポート装置６００として必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路（例えば、ＡＳＩＣまたはＦＰＧＡなど）を用いて実装してもよい。
【００９７】
＜Ｇ．監視システムの構成＞
図７は、本実施の形態に従う監視システムの概略的な構成を示した図である。図７に示すように、監視システムは、ツール６０２Ａ（監視設定ツール）、通信ユニット２００および、制御ユニット１００を含む。プロセッサ６０２がネットワーク監視プログラム６１０６を実行することにより、ツール６０２Ａがサポート装置６００（図６を参照）に実装される。
【００９８】
ツール６０２Ａは、設定ツール６２１と、分析アプリ６２２と、プロトコルＤＢ６２３と、収集データＤＢ６２４とを有する。設定ツール６２１は、通信ユニット２００および制御ユニット１００（ＰＬＣ）から収集されるデータを設定する。分析アプリ６２２は、収集されたデータと、設定情報とを関連付ける処理を実行する。プロトコルＤＢ６２３は、通信プロトコルに関する情報を蓄積する。
【００９９】
通信ユニット２００は、通信エンジン２５０と、通信アプリ２８０とを有する。通信エンジン２５０は、帯域制御モジュール２５１と、アクセス制御モジュール２５２と、データ収集モジュール２５３と、通信設定情報２５４とを含む。帯域制御モジュール２５１、および、アクセス制御モジュール２５２は、通信の帯域および、制御ユニット１００へのアクセスを制御することにより、制御ユニット１００をＤｏＳ攻撃あるいはＤＤｏＳ攻撃から防御する。データ収集モジュール２５３は、監視対象の通信データを収集する。通信設定情報２５４は、ツール６０２Ａによって通信エンジン２５０に設定された情報である。
【０１００】
通信アプリ２８０は、通信ユニット２００に実装される。通信アプリ２８０は、分析および検索モジュール２８１と、データ管理モジュール２８２と、収集データＤＢ２６０と、データ解析設定情報２８４とを含む。分析および検索モジュール２８１は、対象の通信での通信量を分析する。データ管理モジュール２８２は、監視対象の通信についてのデータ収集モジュール２５３から受けて、そのデータを収集データＤＢ２６０に蓄積する。データ解析設定情報２８４は、ツール６０２Ａによって通信エンジン２５０に設定された情報である。
【０１０１】
制御ユニット１００は、ユーザプログラム１０１０と、ＰＬＣ制御モジュール１０１２と、制御設定情報１０１４とを有する。ユーザプログラム１０１０は、ユーザによって作成されたプログラムであり、サポート装置６００によって制御ユニット１００に提供される。ＰＬＣ制御モジュール１０１２は、ユーザプログラム１０１０および制御設定情報１０１４等に従って、制御ユニット１００の動作を制御する。
【０１０２】
監視設定ツール、通信ユニット２００および、制御ユニット１００は、ＦＡネットワークに関する通信を監視する監視システムを構成する。データ収集モジュール２５３、データ管理モジュール２８２、収集データＤＢ２６０,６２４は、ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部を構成する。分析アプリ６２２は、ＦＡネットワーク上での通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、通信の監視のための監視設定情報を生成するデータ分析部を構成する。帯域制御モジュール２５１、アクセス制御モジュール２５２、ＰＬＣ制御モジュール１０１２およびユーザプログラム１０１０は、監視設定情報に従って、監視対象の通信を監視する監視部を実現する。
【０１０３】
＜Ｈ．ネットワーク監視のフェーズ＞
図８は、図７に示した構成によってＦＡネットワークの通信負荷の監視を実現するためのシナリオを示した模式図である。図８に示すように、収集フェーズＰ１、分析フェーズＰ２および活用フェーズＰ３の３つのフェーズによって、監視システムによるネットワークの通信負荷の監視が実現される。「フェーズ」との用語は「ステップ」に置き換えてもよい。
【０１０４】
（ｈ１．収集フェーズ）
図９は、図８に示した収集フェーズの概要を説明した図である。図９に示すように、設定ツール６２１は、データの収集に関する設定を実行する。設定ツール６２１は、設定内容を示す情報をデータ収集モジュール２５３に送る。データ収集モジュール２５３は、その設定内容に従って、通信データを収集する。データ収集モジュール２５３は、収集された通信フローデータをデータ管理モジュール２８２へと送る。
【０１０５】
データ管理モジュール２８２は、収集されたデータを収集データＤＢ２６０に保存する。なお、データ収集モジュール２５３が収集データＤＢ２６０にデータを保存するのでもよい。
【０１０６】
収集データＤＢ２６０に保存されたデータは、監視設定ツールの収集データＤＢ６２４に転送される。データの転送自体が通信の負荷になることを避けるために、収集フェーズＰ１の完了時、または収集フェーズＰ１の完了後に、データを収集データＤＢ６２４に転送することが好ましい。
【０１０７】
（ｈ２．分析フェーズ）
図１０は、分析フェーズの概要を説明した図である。図１０を参照して、分析アプリ６２２は、収集データＤＢ６２４からの通信データ、設定ツール６２１からの設定情報、およびプロトコルＤＢ６２３からのプロトコル情報を受ける。「設定情報」、および「プロトコル情報」は、通信の設定に関する予め登録された情報である。
【０１０８】
分析アプリ６２２は、設定情報、収集データおよびプロトコル情報を関連付けて実通信情報を生成して、ユーザインターフェイス画面６３０にその実通信情報を表示する。これにより、ユーザが制御システム１０の通信の現状を容易に把握することができる。さらに、ユーザに対して、セキュリティに関する設定の支援を提供することができる。ユーザインターフェイス画面６３０は、サポート装置６００に表示される。ただし、ユーザインターフェイス画面６３０がＨＭＩ８００に表示されるのでもよい。
【０１０９】
さらに、ユーザはユーザインターフェイス画面６３０への入力により、アクセスリスト情報６３１、ＱｏＳ（Quality of Service）設定情報６３２、フロー設定監視情報６３３、指示および処置情報６３４を生成することができる。アクセスリスト情報６３１、ＱｏＳ設定情報６３２、フロー設定監視情報６３３、指示および処置情報６３４は、監視設定情報に相当する。フロー設定監視情報６３３は、監視対象の通信の帯域幅のしきい値を含む。したがって、監視設定情報は監視対象の通信の帯域幅のしきい値を含む。
【０１１０】
アクセスリスト情報６３１、ＱｏＳ設定情報６３２、およびフロー設定監視情報６３３は、通信エンジン２５０に送られる。通信エンジン２５０は、アクセスリスト情報６３１、ＱｏＳ設定情報６３２、およびフロー設定監視情報６３３に基づき通信設定情報２５４を生成または更新する。
【０１１１】
フロー設定監視情報６３３は、指示および処置情報６３４ととともに、制御ユニット１００に送られる。制御ユニット１００は、フロー設定監視情報６３３と、指示および処置情報６３４とに基づいて、ユーザプログラム１０１０の実行に用いられる制御設定情報１０１４を作成または更新する。したがって、通信設定情報２５４および制御設定情報１０１４は、監視設定情報に相当する。監視部（通信エンジン２５０または制御ユニット１００）は、帯域幅がしきい値を上回る場合に、ユーザへの通知を出力することができる。すなわち、制御装置１へのＤｏＳ攻撃またはＤＤｏＳ攻撃があった場合に、制御装置１は、警告を発することができる。
【０１１２】
図１１は、図１０に示したユーザインターフェイス画面６３０の一実施例を示した図である。図１１を参照して、ユーザインターフェイス画面６３０は、カラム６４１〜６５１を有する。レコードＲ１〜Ｒ４の各々は、カラム６４１〜６５１の各々に格納された情報により構成される実通信情報である。以下に、カラム６４１〜６５１の各々について説明する。
【０１１３】
カラム６４１，６４２には、送信元に関する情報が格納される。具体的には、カラム６４１に送信元の装置名が格納される。カラム６４２に、送信元の装置のＩＰアドレスが格納される。
【０１１４】
カラム６４３，６４４には、送信先に関する情報が格納される。具体的には、カラム６４３に、送信先の装置名が格納される。カラム６４４に、送信先の装置のＩＰアドレスが格納される。
【０１１５】
カラム６４５には、送信元装置の製造元の名称が格納される。カラム６４６には、送信元の装置のＭＡＣ（Media Access Control）アドレスが格納される。
【０１１６】
カラム６４７には、送信元および送信先の間での通信のプロトコルの情報が格納される。カラム６４８には、トランスポート層のプロトコル（ＴＣＰ（Transmission Control Protocol）またはＵＤＰ（User Datagram Protocol））、およびポート番号が格納される。
【０１１７】
カラム６４９には、送信元および送信先の間での通信の内容に関する情報が格納される。カラム６５０には、実通信帯域の情報が格納される。カラム６５１は、通信に関するアクションを設定するためのカラムであり、レコードＲ１〜Ｒ４の各々に対して拒否ボタン６５２および監視ボタン６５３が配置される。拒否ボタン６５２および監視ボタン６５３は、送信元と送信先との間の通信に対するアクションの選択肢を選択するためのユーザの入力を受け付ける。アクションの選択肢は、送信元と送信先との間の通信の監視と、送信元と送信先との間の通信の拒否とを含む。アクションの選択肢は、これらの選択肢に限定されるものではない。データ収集の結果に基づいて、ユーザは、セキュリティに関する対策を取ることができる。たとえば明らかに異常と思われる通信を制御装置１が拒否するように制御装置１の通信を設定することができる。
【０１１８】
なお、ユーザはユーザインターフェイス画面６３０を利用して、実通信情報をツールに直接入力することができる。ユーザにより編集された情報は、フィードバックのために、収集データＤＢ６２４、設定ツール６２１、およびプロトコルＤＢ６２３に送られる。
【０１１９】
たとえば既知のデバイスの既知の通信は流量に基づく監視が行われる。既知のデバイスによる知らない（unknown）通信、あるいは知らないデバイスの既知の通信の場合には、ＱｏＳでの帯域制御が実行されるように設定される。知らないデバイスによる知らない通信の場合には、アクセス制御によって通信が拒否される。これにより、ユーザの要望に応じたセキュリティの監視が可能となる。具体的には、既知のデバイスになりすました攻撃を検知することができる。あるいは知らないデバイスからの攻撃を拒否することができる。一方、知らないデバイスのメンテナンスを許可する（ただし流量を制限する）こともできる。
【０１２０】
この実施の形態では、送信元および送信先の各々を特定する情報として、ＩＰアドレスだけでなく装置名が監視設定ツールに登録される。加えて、具体的な通信の内容が監視設定ツールに登録される。したがってユーザは制御システムの通信負荷の現状を容易に把握することができる。さらに、監視設定ツールは、セキュリティのユーザ設定を支援することができる。
【０１２１】
図１２は、図１１に示したユーザインターフェイス画面６３０の表示のためのデータ収集処理を説明する模式図である。図１２を参照して、通信データＤ１が収集データＤＢ６２４に格納される。
【０１２２】
一例として、通信データＤ１は、以下の項目に限定されないが、項目"Time"，"Delta"，"Source"，"Destination"，"SrcPort"，"DstPort"および"Length"などを含む。項目"Time"には、データの送信時刻が格納される。項目"Delta"には、前回の送信時刻と今回の送信時刻との差分が格納される。項目"Source"には、送信元を表すＩＰアドレスが格納される。項目"Destination"には、送信先を表すＩＰアドレスが格納される。項目"SrcPort"には、送信元のポートが格納される。項目"DstPort"には送信先のポートが格納される。項目"Length"にはデータの長さが格納される。
【０１２３】
この実施の形態では、２つのデバイスのデータ交換の頻度に関する情報が、収集単位時間ごとに生成されて、収集データＤＢ６２４に通信レコードとして保存される。通信データＤ１では、データ交換を行う２つのデバイスは、項目"Source"および"Destination"に該当するＩＰアドレスによって特定される。通信レコードＲ１１には、送信元のＩＰアドレス、送信先のＩＰアドレス、送信元のＭＡＣアドレス、送信先のＭＡＣアドレス、ポート、通信データの総量（総データ量）、総データ交換回数および通信帯域が格納される。
【０１２４】
収集データＤＢ６２４への通信レコードの保存の頻度は、特に限定されないが、たとえば１秒あたり１レコードである。収集データＤＢ６２４へのレコードの保存の頻度は、ユーザにより設定可能であってもよい。
【０１２５】
図１３は、図１１に示したユーザインターフェイス画面６３０の表示のための設定処理を説明する模式図である。図１３を参照して、ユーザは、設定ツール６２１のインターフェイス画面から、２つのノード（送信元および送信先）の各々の装置名およびＩＰアドレス、２つのノードの間で交換される情報の種類、データ交換の頻度などの情報を入力する。設定ツール６２１に入力された情報が、設定ツール６２１からエクスポートされて、設定ツールデータ６３５が生成される。設定ツールデータ６３５は、複数の設定レコードＲ２１を含む。設定ツールデータ６３５は、設定ツール６２１からの設定情報であり、「予め登録された情報」に含まれる。設定レコードＲ２１は、送信元の装置名、送信元のＩＰアドレス、送信先の装置名、送信先のＩＰアドレス、プロトコル、ポート、通信内容および通信帯域を格納する。
【０１２６】
図１４は、図１１に示したユーザインターフェイス画面６３０の表示のための静的データの抽出処理を説明する模式図である。図１４を参照して、プロトコルＤＢ６２３からは、プロトコル情報として、ＩＥＥＥで管理されるＯＵＩ（Organizationally Unique Identifier）情報、ＩＡＮＡ（Internet Assigned Number Authority）で管理されるＴＣＰ／ＵＤＰポート情報、およびユーザ編集情報が抽出される。ユーザ編集情報は、たとえば、装置のＩＰアドレスおよび、その装置の名称である。これらの情報は「予め登録された情報」に含まれる。
【０１２７】
分析アプリ６２２は、通信レコードを設定レコードおよび静的データに関連付けることにより、ユーザが理解しやすい表示レコード（図１１に示すレコードＲ１〜Ｒ４を参照）に変換して、その表示レコードをユーザインターフェイス画面６３０に表示する。
【０１２８】
（ｈ３．アクション設定）
図１５は、通信拒否のアクションの設定を説明するための図である。図１１に示した拒否ボタン６５２をユーザが選択した場合に、インターフェイス画面６６１がサポート装置６００に表示される。インターフェイス画面６６１には、送信先から制御装置１へのアクセスを拒否するための複数の選択肢が、チェックボックス形式で表示される。図１５には、「該当の送信元ＭＡＣアドレスからの通信を全て遮断する」、「該当の送信元ＩＰアドレスからの通信を全て遮断する」および「該当の通信のみを遮断する」の３つの選択肢が示されている。
【０１２９】
ユーザが３つの選択肢のいずれかを選択すると、その選択肢の内容を含むアクセスリスト情報６３１が生成される。アクセスリスト情報６３１は、該当の送信元ＩＰ／送信先ＩＰ、送信先ポートの通信の拒否を示す情報である。
【０１３０】
図１６は、通信監視のアクションの設定を説明するための図である。図１１に示した監視ボタン６５３をユーザが選択した場合に、インターフェイス画面６６２がサポート装置６００に表示される。
【０１３１】
インターフェイス画面６６２には、「帯域制御する」および「帯域監視する」の２つの選択肢が表示される。「帯域制御する」という選択肢を選択した場合、ユーザは、入力ボックスに、帯域幅の値（単位：ｂｉｔ／ｓ）を入力する。
【０１３２】
一方、「帯域監視する」という選択肢を選択した場合、ユーザは、ツールから警告を発生させるための、帯域幅のしきい値（図１６に示した例では、通常の帯域幅の１２０％）を設定する。さらに、ユーザは、しきい値を超過した場合における１つまたは複数のアクションを複数の選択肢の中から選択することができる。選択肢「メール」を選択した場合、ユーザは、件名、および本文を設定することができる。
【０１３３】
選択肢「syslog通知」を選択した場合、ＩＴサーバ向けのsyslogメッセージが作成される。ユーザは、syslogメッセージに含まれる監視レベル（図１６の例ではレベル６）および通知内容を設定することができる。
【０１３４】
選択肢「Trap通知」を選択した場合、ユーザは、Trap番号を設定することができる。
また、ユーザは、ツールの監視結果を変数に格納するように選択することができる。変数のタイプは、BOOL型およびSTRING型から選択することができる。
【０１３５】
BOOL型の変数に出力することを選択する場合、帯域幅がしきい値を超過したときに、変数Var_Aの値が真となる。したがってアクションをＰＬＣプログラムにより記述することができる。図１７は、ＰＬＣプログラムの一部の例を示した図である。Var_Aの値が真（True）の場合に、関数が実行される。
【０１３６】
一方、STRING型の変数に出力することを選択した場合、帯域幅がしきい値を超過したときに、ユーザが予め設定した文字列が変数Str_Bに格納される。サポート装置６００に、変数Str_Bに格納された文字列がメッセージとして表示される。
【０１３７】
なお、ユーザが選択肢「メール」を選択した場合のメール宛先のアドレス、選択肢「syslog」を設定した場合の、syslogサーバのアドレス、選択肢「Trap」を選択した場合のTrap送信先など、レコード単位設定以外は、共通の設定として別途設定してもよい。
【０１３８】
（ｈ４．活用フェーズ）
図１８は、活用フェーズの概要を説明した図である。図１８に示すように、活用フェーズにおいては、監視設定ツールは不要である。通信エンジン２５０において、データ収集モジュール２５３は、設定内容に従って、監視対象の通信データを監視して、監視結果である通信フローデータをデータ管理モジュール２８２へと送る。データ管理モジュール２８２は、その収集したデータを分析および検索モジュール２８１に送る。
【０１３９】
たとえば分析および検索モジュール２８１は、対象の通信データの帯域幅がしきい値を上回るかどうかを判断する。帯域幅がしきい値を上回る場合、分析および検索モジュール２８１は、インシデントを検知する。たとえば分析および検索モジュール２８１は、生産情報に関連しないデータを検出した場合に、インシデントを検知する。あるいは、分析および検索モジュール２８１は、生産情報のデータの異常（なりすましによる攻撃など）を検知する。これらの場合、制御ユニット１００により、インシデントのレベルに応じた処理を実行する。たとえばインシデントのレベルがユーザへの警告レベルである場合、分析および検索モジュール２８１は、表示モジュール１０２０に対して、警告の表示を行うよう指示する。表示モジュール１０２０は、たとえば以下に挙げた処理うちの一部または全部の処理を実行する。
【０１４０】
（Ａ１）デバイス変数をオンする。
（Ａ２）イベントログを表示する。
【０１４１】
（Ａ３）インジケータ（ＬＥＤ）を点灯させる。
（Ａ４）警告メッセージを含むメールを送信する。
【０１４２】
（Ａ５）表示装置（たとえばサポート装置６００、ＨＭＩ８００等）にメッセージを表示させる。
【０１４３】
指示モジュール１０２２は、表示モジュール１０２０からの指示に応じた処理を実行する。たとえば表示機あるいはツールの操作等である。
【０１４４】
処置モジュール１０２４は、指示モジュール１０２２からの指示あるいは、分析および検索モジュール２８１からの指示に応じたプリセット処理を実行する。プリセット処理は、たとえば以下に挙げた処理うちの一部または全部の処理である。
【０１４５】
（Ｂ１）プログラムの実行停止による生産中止。
（Ｂ２）メモリの記憶内容をクリアすることによる情報の秘匿。
【０１４６】
（Ｂ３）通信遮断により、上位システムからの変更を不可能とする。
（Ｂ４）生産情報をローカルの場所に保存する。
【０１４７】
以上の通り、本実施の形態によれば、ＦＡネットワークでの通信の監視およびその監視のための設定を可能にする。特に本実施の形態によれば、通信負荷の状況をユーザに示すことができる。たとえば帯域幅がしきい値を上回る場合に、警告が行われるように、ユーザは監視システムを設定することができる。したがって、ユーザに高度な専門知識を要求させることなく、ユーザがネットワークの負荷の監視を設定できる。本実施の形態によれば、ＦＡネットワークのセキュリティをユーザが設定することを支援することができる。
【０１４８】
＜Ｉ．付記＞
以上説明したように、本実施形態は以下に列挙する開示を含む。
【０１４９】
１．ＦＡネットワークに関する通信を監視する監視システムであって、
前記ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部（２５３，２８２，２６０，６２４）と、
前記ＦＡネットワーク上での前記通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、前記通信の監視のための監視設定情報（６３１，６３２，６３３，６３４）を生成するデータ分析部（６２２）と、
前記監視設定情報（６３１，６３２，６３３，６３４）に従って、監視対象の通信を監視する監視部（２５１，２５２，１０１２，１０１０）とを含む、監視システム。
【０１５０】
２．前記監視設定情報（６３１，６３２，６３３，６３４）は、前記監視対象の通信の帯域幅のしきい値を含み、
前記監視部（２５１，２５２，１０１２，１０１０）は、前記帯域幅が前記しきい値を上回る場合に、ユーザへの通知を出力する、構成１．に記載の監視システム。
【０１５１】
３．前記監視システムは、表示部（６００，８００）をさらに備え、
前記データは、送信元のアドレスと、送信先のアドレスと、データ交換の頻度と、通信データの総量とを含み、
前記予め登録された情報は、前記送信元の名称と、前記送信先の名称と、前記送信元と前記送信先との間の前記通信を示す名称とを含み、
前記データ分析部（６２２）は、前記データと前記予め登録された情報とを関連付けた実通信情報（Ｒ１−Ｒ４）を生成して、前記実通信情報（Ｒ１−Ｒ４）を前記表示部（６００，８００）に表示させる、構成１．または構成２．に記載の監視システム。
【０１５２】
４．前記データ分析部（６２２）は、前記送信元と前記送信先との間の前記通信に対するアクションの選択肢を選択するためのユーザの入力を受け付けて、前記監視設定情報（６３１，６３２，６３３，６３４）を生成するように構成され、
前記アクションの前記選択肢は、
前記送信元と前記送信先との間の前記通信の監視（６５３）と、
前記送信元と前記送信先との間の前記通信の拒否（６５２）とを含む、構成３．に記載の監視システム。
【０１５３】
５．前記監視部（２５１，２５２，１０１２，１０１０）は、前記ＦＡネットワークに接続された制御装置（１）に含まれる、構成１．から構成４．のいずれかに記載の監視システム。
【０１５４】
６．ＦＡネットワークに関する通信を監視する監視システムのための設定装置（６００）であって、
前記監視システムは、監視設定情報（６３１，６３２，６３３，６３４）に従って前記通信を監視する監視部（２５１，２５２，１０１２，１０１０）を含み、
前記設定装置（６００）は、
前記ＦＡネットワーク上の通信の状況を示すデータを収集するデータ収集部（６２４）と、
前記ＦＡネットワーク上での前記通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、前記通信の監視のための前記監視設定情報（６３１，６３２，６３３，６３４）を生成するデータ分析部（６２２）とを備える、設定装置。
【０１５５】
７．ＦＡネットワークに関する通信を監視する監視システムによる監視方法であって、
前記監視システムのデータ収集部（２５３，２８２，２６０，６２４）が、前記ＦＡネットワーク上の通信の状況を示すデータを収集するステップ（Ｐ１）と、
前記監視システムのデータ分析部（６２２）が、前記ＦＡネットワーク上での前記通信の設定に関する予め登録された情報に従って、収集されたデータを分析して、前記通信の監視のための監視設定情報（６３１，６３２，６３３，６３４）を生成するステップ（Ｐ２）と、
前記監視システムの監視部（２５１，２５２，１０１２，１０１０）が前記監視設定情報（６３１，６３２，６３３，６３４）に従って、監視対象の通信を監視するステップ（Ｐ３）とを含む、監視方法。
【０１５６】
今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１５７】
２  第１ネットワーク、４  第２ネットワーク、１０  制御システム、１００  制御ユニット、１０２，２０２，３０２，６０２  プロセッサ、１０４，２０４，３０４  チップセット、１０６，２０６，３０６  主記憶装置、１０８，２０８，３０８  二次記憶装置、１１０，２１０  通信コントローラ、１１２，２１２，６２０  ＵＳＢコントローラ、１１４，２１４，３１４  メモリカードインターフェイス、１１５，２１５，３１５  メモリカード、１１６，１１８，１２０，２１６，２１８  ネットワークコントローラ、１２２，３２２  内部バスコントローラ、１２４，２２４，３２４  インジケータ、１４２，１４４，２４２  通信ポート、１５０  制御エンジン、１６０  情報エンジン、１７０  ブローカー、１８０，３６０  ログデータベース、２００  通信ユニット、２５０  通信エンジン、２５１  帯域制御モジュール、２５２  アクセス制御モジュール、２５３  データ収集モジュール、２５４  通信設定情報、２６０，６２４  収集データＤＢ、２８０  通信アプリ、２８１  検索モジュール、２８２  データ管理モジュール、２８４  データ解析設定情報、３００  セーフティユニット、３５０  セーフティエンジン、４００  機能ユニット、４５０  電源ユニット、５００  フィールドデバイス、６００  サポート装置、６０２Ａ  ツール、６０４  メインメモリ、６０６  入力部、６０８  出力部、６１０  ストレージ、６１２  光学ドライブ、６１４  記録媒体、６１８  プロセッサバス、６２１  設定ツール、６２２  分析アプリ、６２３  プロトコルＤＢ、６３０  ユーザインターフェイス画面、６３１  アクセスリスト情報、６３２  ＱｏＳ設定情報、６３３  フロー設定監視情報、６３４  指示および処置情報、６３５  設定ツールデータ、６４１〜６５１  カラム、６５２  拒否ボタン、６５３  監視ボタン、６６１，６６２  インターフェイス画面、７００  ＳＣＡＤＡ装置、８００  ＨＭＩ、９００  データベース、１０１０  ユーザプログラム、１０１２  制御モジュール、１０１４  制御設定情報、１０２０  表示モジュール、１０２２  指示モジュール、１０２４  処置モジュール、６１０４  サポートプログラム、６１０６  ネットワーク監視プログラム、Ｄ１  通信データ、Ｐ１  収集フェーズ、Ｐ２  分析フェーズ、Ｐ３  活用フェーズ、Ｒ１，Ｒ４  レコード、Ｒ１１  通信レコード、Ｒ２１  設定レコード。
【図１】
2020162075.tif 000003
【図２】
2020162075.tif 000004
【図３】
2020162075.tif 000005
【図４】
2020162075.tif 000006
【図５】
2020162075.tif 000007
【図６】
2020162075.tif 000008
【図７】
2020162075.tif 000009
【図８】
2020162075.tif 000010
【図９】
2020162075.tif 000011
【図１０】
2020162075.tif 000012
【図１１】
2020162075.tif 000013
【図１２】
2020162075.tif 000014
【図１３】
2020162075.tif 000015
【図１４】
2020162075.tif 000016
【図１５】
2020162075.tif 000017
【図１６】
2020162075.tif 000018
【図１７】
2020162075.tif 000019
【図１８】
2020162075.tif 000020