JP7337627B2 - 通信制御装置およびシステム - Google Patents

通信制御装置およびシステム Download PDF

Info

Publication number
JP7337627B2
JP7337627B2 JP2019172583A JP2019172583A JP7337627B2 JP 7337627 B2 JP7337627 B2 JP 7337627B2 JP 2019172583 A JP2019172583 A JP 2019172583A JP 2019172583 A JP2019172583 A JP 2019172583A JP 7337627 B2 JP7337627 B2 JP 7337627B2
Authority
JP
Japan
Prior art keywords
communication
time
time slot
communication frame
inspection
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.)
Active
Application number
JP2019172583A
Other languages
English (en)
Other versions
JP2021052256A (ja
Inventor
龍也 丸山
典剛 松本
寛 岩澤
浩通 遠藤
淳也 藤田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2019172583A priority Critical patent/JP7337627B2/ja
Priority to US17/639,860 priority patent/US20220329564A1/en
Priority to CN202080062397.0A priority patent/CN114342321B/zh
Priority to PCT/JP2020/024603 priority patent/WO2021059632A1/ja
Publication of JP2021052256A publication Critical patent/JP2021052256A/ja
Application granted granted Critical
Publication of JP7337627B2 publication Critical patent/JP7337627B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0209Architectural arrangements, e.g. perimeter networks or demilitarized zones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、通信制御技術に関わり、そのための情報処理装置及び情報処理ハードウェア、情報処理ソフトウェア、通信制御方法および通信システムに関する。
制御システムとして、制御用計算機が、ネットワークを介して単一または複数の制御対象を制御する構成がある。このような制御システムにおいては、制御システムの用途、要件、要求によって、適切な制御ネットワークが選択され、適用される。技術的な観点からは、それら制御システムの要求の高度化によって制御ネットワークの技術進展がもたらされたとも言える。そのような制御ネットワークへの要求は多岐に渡り、通信遅延の低減、低コスト化、接続台数の増加、時刻同期の高精度化、接続距離の長大化、通信媒体及び通信データモデルの共通化、冗長化通信等である。
標準化技術の導入による技術的進展とあいまって、制御ネットワークにおける制御システムへの要求は高度化している。従来は、制御対象との制御通信性能の高度化を指向していた。しかし、近年では通信性能に留まらず、制御システムへのAI適用や、あるいは保守データの活用によるCBM(Condition Based Maintenance)の適用による資産管理といった用途が挙げられる。
このような情報技術の制御システムへの導入を促進する制御ネットワークとして、TSN(Time Sensitive Network)が挙げられる。
TSNと呼ばれる一連のIEEE規格群で構成される通信方式は、IEEE802.3規格を制御システムに適用可能とした制御ネットワークである。TSNは、時分割に基づくタイムスロット通信を導入することにより、タイムスロットごとに制御通信や情報通信(AI、監視用途、CBM等の通信を含む)の使い分けが可能である。
つまり、制御通信のリアルタイム要件を満足しながら、同一ネットワーク上での情報通信との両立が可能である。
一方で、これら標準化技術やIT分野の技術の導入にともない、制御システムにおいてもサイバーセキュリティの脅威が高まっている。特にフィールド分野でのセキュリティ確保はリアルタイム性、可用性といった制御システム特有の要件を満足する必要があり、対応を困難としている。
特開2006-148505号公報 特開2015-119386号公報
しかしながら、従来のセキュリティ対策は一般にITシステムを対象としていることから、前述のように制御システムに要求されるリアルタイム性、可用性を満足することが困難であった。
特許文献1は、通信データのパケットを中継装置内に格納する発明である。しかしながら、パケットの中継時にメモリ等への書き込みと読み出しという少なくとも2回のメモリ操作が必要であり、中継による遅延を増大させる要因となる。メモリ素子やバスの高速化により遅延を短縮できる可能性はあるが、中継装置の大型化や消費電力の増加を招く。このような高速化は、多くの制御対象設備において制御装置の設置場所が限られていることや、制御装置の信頼性確保のために発熱量が管理されている点を考慮すると好ましくない。
さらに特許文献2は、第一通信装置により送信される通信フレーム内の複数の要素を順に受信し、通信フレームの特徴を示す特徴値を決定して、特徴値が条件を満たすか否かを判定する。そして、受信される複数の要素を順に伝達し、特徴値が条件を満たさないと判定された場合に、伝達される複数の要素の一部を変更して、順に第二通信装置へ送信する発明である。しかしながら、TSNといった時分割型のタイムスロット通信方式を考慮していないため、そのようなタイムスロット通信では計算機資源(メモリや照合回路等)の効率的な利用や、一律の特徴値比較による可用性低下の課題がある。
本発明は、上記課題を解決するために、タイムスロットに応じたセキュリティ対策を特定する。セキュリティ対策の特定には、検査パターンの特定(タイムスロットごとに検査パターンを変更)やセキュリティソフトの特定が含まれる。
本発明の一態様には、以下の構成が含まれる。通信フレームを転送する通信制御装置において、前記通信フレームを受信する手段と、前記通信フレームを処理する時間を特定する手段と、特定された前記時間に対応するタイムスロットに応じた、前記通信フレームに対するセキュリティ対策を特定する手段とを有する通信制御装置。
タイムスロット通信を採用するネットワークにおいて、状況に応じたセキュリティ対策を施すことが可能になる。
本発明の一実施形態を用いたシステム構成図である。 本発明の一実施形態でのハードウェア構成図である。 本発明の一実施形態を示す機能構成図である。 本発明の一実施形態の動作手順を示した図である。 本発明の一実施形態の動作手順を示した図である。 本発明の一実施形態の動作手順を示した図である。 本発明の一実施形態の動作手順を示した図である。 本発明の一実施形態における特性と検査パターンの関係を示す図である。 本発明の一実施形態における特性と検査パターンの関係を示す図である。 本発明の一実施形態における各特性間の関係を示す図である。 中継通信装置121におけるタイムスロットを示した図である。 本発明の一実施形態におけるタイムスロットと動作を示した図である。 本発明の一実施形態におけるタイムスロットと動作を示した図である。 本発明の一実施形態における照合処理と検査パターンの更新を並行して行う機能構成を示した図である。 本発明の一実施形態におけるタイムスロットと動作を示した図である。 本発明の一実施形態におけるタイムスロットと動作を示した図である。 本発明の一実施形態を示す機能構成図である。 本発明の一実施形態を用いたシステム構成図とタイムスロット及び動作を示した図である。 本発明の一実施形態を用いたシステム構成図である。
(システム構成例)
本発明の一実施形態を適用したシステム構成を図1に示す。中央制御装置120は、制御ネットワーク122、ネットワーク中継装置121を介して、分散制御装置123と接続し、通信する。
中央制御装置120は、分散制御装置123に対して、通信パケットを送受信することにより、被制御装置124を制御するための制御指令値の伝送、被制御装置124の計測値の取得や各種設定を実行する。
中央制御装置120は、DCS(Distributed Control System)の中央制御装置や電力系統の保護制御装置のように、各制御システム内のサンプリングデータや、制御指令、状態信号をやりとりすることが例示される。同一制御システム内のデータをパケット内に格納してもよい。
中央制御装置120として、専用コントローラ、産業用パソコン、制御用計算機、DCSコントローラ、SCADA(Supervisory Control and Data Acquisition)サーバ、PLC(Programmable Logic Controller)、IED(Intelligent Electronic Device)、保護制御装置、クラウド、サーバが例示される。
ネットワーク中継装置121は、制御ネットワーク122における中継装置であり、中央制御装置120、分散制御装置123やネットワーク中継装置121の通信するパケットを経路制御し、転送する。ネットワーク中継装置121として、L2スイッチ、L3スイッチを含むネットワークスイッチ、ブリッジ、ルータ、IEEE 1588のTC(Transparent Clock)、BC(Boundary Clock)、OpenFlowスイッチ、IEC 62439-3で定義されるRedBox、QuadBox、光スイッチ、光合波器、光分波器等の各種ネットワーク中継装置が例示される。
制御ネットワーク122は、中央制御装置120、分散制御装置123、ネットワーク中継装置121を接続するネットワークであり、TSNと関連するIEEE通信規格群、IEC61784でのタイムスロット通信を採用する一部の規格、その他タイムスロット通信を用いるネットワークが例示される。
また、プロトコルスタックにおける上位プロトコルとして、IEC61850、OPC UA(Unified Architecture)、IEC 61850-7-420、IEC 60870-5-104、OpenADR、ECHONET Lite(登録商標)等が例示される。あるいは、以上のプロトコルは階層化されていてもよい。例えば、TSN上でデータ領域の内容はOPC UA規格を適用することが例示される。
分散制御装置123は、被制御装置124に接続され、制御ネットワーク122を介して、中央制御装置120から受信した制御指令に応じて被制御装置124を制御、設定する。また、被制御装置124の状態や情報を取得して制御ネットワーク122を介して中央制御装置120へ送信する。
分散制御装置123として、専用コントローラ、産業用パソコン、制御用計算機、DCSコントローラ、SCADA装置、PLC、IED、MU(Merging Unit)、保護制御装置が例示される。
被制御装置124は、分散制御装置123によって制御される機器、装置である。被制御装置124として、移動ロボットやロボットアーム等の産業用ロボット、チップマウンタ、工作機械テーブル、加工装置、工作機械、半導体製造装置、あるいは製造装置内のモータ、インバータや、遮断器、断路器といった電力機器が例示される。
検査パターン管理装置125は、ファイアウォール126における検査パターンを管理する。管理の内容としては、検査パターンの更新、置換、除去、有効化、無効化、取得等の処理を含む。
なお、検査パターンとは不正な通信を特徴づける通信内容を示す。その内容は、通信プロトコル上の意味を持った領域(例えば、宛先アドレスや通信ポート番号等)における不正値、異常値や、マルウェアを含む通信等の任意の位置における特定のデータ列、あるいはマルウェアの特徴値と定義する。さらに、検査パターンは、セキュリティ対策の一態様であって、後述するアンチウィルスソフトなども含まれる。
検査パターン管理装置125として、SDN(Software Defined Network)におけるOpenFlowコントローラ等の通信制御装置、専用の通信装置が例示される。
ファイアウォール126は、本実施形態の処理を実行する通信装置である。また、基本機能として、中央制御装置120、ネットワーク中継装置121、分散制御装置123、検査パターン管理装置125のそれぞれの装置間に設置されて通信を中継し、不正な通信内容に対してはセキュリティ対策を実施する。図1ではネットワーク中継装置121と分散制御装置123間に設置される構成を示している。
ファイアウォール126は、入力されたパケットと検査パターンを比較し、一致した場合に該パケットを不正パケットあるいは攻撃パケットと判断する。不正パケット、攻撃パケットと判断した場合は該パケットを破棄してもよいし、パケット末尾のCRC(Cyclic Redundancy Check:巡回冗長検査)、つまり、パケット末尾の誤り検査符号を変更して、転送先にて該パケットを破棄できるようにしてもよい。
なお、図1では中央制御装置120と分散制御装置123間に2つのネットワーク中継装置121を接続しているが、異なる数でもよいし、通信経路が複数であってもよい。
図1に示すシステム構成として、FA(Factory Automation)、PA(Process Automation)向けのDCS等の制御システム、電力分野の監視制御・保護制御システムや、産業用機器、半導体製造装置、車載システム、建設機械や鉄道車両内の制御システム、鉄道地上信号システム、航空機内の制御システム等が例示される。あるいは、制御ネットワーク122を介して収集した情報をもとに、中央制御装置120あるいは、図示していないクラウドやコンピュータ上で人工知能にて解析し、制御システムの性能向上を図るIoTシステム等が例示される。
(ハードウェア構成)
図2に、本実施形態を適用したファイアウォール126のハードウェア構成を示す。
CPU101は、不揮発性記憶媒体105からプログラムをメモリ104に転送して実行する。実行処理プログラムとしては、オペレーティングシステム(以下、OSと称す)やOS上で動作するアプリケーションプログラムが例示される。CPU101上で動作するプログラムは通信制御IC102の動作設定や状態情報を取得する。
通信制御IC102は、PHY103から受信したパケットを検査パターンと比較して不正パケットかどうかを判断し、不正パケットの場合に該パケットを破棄する。あるいはバス106を介してCPU101、メモリ104、不揮発性記憶媒体105へパケットを転送し、CPU101上で動作するソフトウェアにおいて、不正パケットの判断処理と破棄等の対応をする。
通信制御IC102の実装例としては、FPGA(Field Programmable Gate Array)、CPLD(Complex Programmable Logic Device)、ASIC(Application Specific Integrated Circuit)、ゲートアレイ等のICが例示される。あるいは、CPU101と一体化して構成されてもよい。通信制御IC102をMAC層、PHY層を含めたIEEE 802.3通信デバイスとしてもよいし、また、PHY機能まで含めて通信制御IC102に包含してもよい。この場合、通信制御IC102の実装例としてはIEEE802.3規格のMAC(Media Access Control)チップ、PHY(物理層)チップ、MACとPHYの複合チップを含む。なお、通信制御IC102は、CPU101や、コンピュータ内部の情報経路を制御するチップセットに含まれていてもよい。また、図2の構成では、通信制御IC102を1つ示しているが、通信制御IC102の数は複数であってもよい。
PHY103は、制御ネットワーク122との通信機能を実装した送受信機ICである。PHY103の提供する通信規格としてIEEE802.3のPHY(物理層)チップが例示される。なお、図2の構成では、PHY103と通信制御IC102が接続しているので、IEEE 802.3のMAC(Media Access Control)層の処理は通信制御IC102に含まれる。ただし、MAC機能を提供するICを通信制御IC102とPHY103間に配置する構成や、MAC機能を提供するICとPHY103を組み合わせた通信用ICと通信制御IC102を接続する構成においても、本発明の効果は失われるものではない。なお、PHY103は、通信制御IC102に含まれていてもよい。また、図2の構成では、PHY103を1つずつ示しているが、PHY103の数は複数であってもよい。
メモリ104は、CPU101が動作するための一時的な記憶領域であり、検査パターン、不揮発性記憶媒体105から転送したOS、アプリケーションプログラム等が格納される。
不揮発性記憶媒体105は、情報の記憶媒体で、OS、アプリケーション、デバイスドライバ等や、CPU101を動作させるためのプログラムの保存、検査パターン、プログラムの実行結果の保存に利用される。不揮発性記憶媒体105として、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)、フラッシュメモリが例示される。また、取り外しが容易な外部記憶媒体として、フロッピーディスク(FD)、CD、DVD、ブルーレイ(登録商標)、USBメモリ、CFカード等のフラッシュメモリ型メモリーカード等の利用が例示される。
バス106は、CPU101、通信制御IC102、メモリ104、不揮発性記憶媒体105をそれぞれ接続する。バス106としては、PCIバス、ISAバス、PCI Expressバス、システムバス、メモリバス等が例示される。
また、図2に示す構成において、複数のデバイス(例えば、CPU101、メモリ104、不揮発性記憶媒体105、通信制御IC102)をプロセッサ内蔵型のFPGAとして構成してもよい。
(ファイアウォール126の機能構成)
本発明の一実施形態を適用したファイアウォール126の機能構成を、図3に示す。図3におけるタイムスロット特性記憶部130は、ファイアウォール126に設定されている各タイムスロットの特性を記憶する。このような特性は、該タイムスロットで通信されるように設定、設計されている上位通信プロトコルや、あるいは図1の制御システム上で構築されるアプリケーション上での用途等が例示される。後者の用途の例としては、制御、情報処理、管理、監視、時刻同期、AI(推論処理含む)、機械学習等が例示される。
タイムスロット特性記憶部130は、メモリ104、不揮発性記憶媒体105のいずれか、または両方による構成が例示され、情報を記憶する機能を有する。
検査パターン選択部131は、タイムスロット連携時刻同期部135で同期したタイムスロットにあわせて、タイムスロット特性記憶部130の情報をもとに該タイムスロットの特性を判別する。また、検査パターン記憶部136から検査パターンを選択する。この選択結果が、リアルタイムパターン検査部134で用いられる。この検査パターン選択部131は、通信制御IC102、CPU101上で動作するソフトウェアのいずれか、または両方により実現される。
送信部132は、リアルタイムパターン検査部134から通知されたデータ、あるいはパケットを加工して送信する機能を有する。送信部132の加工処理は、データからフレームを生成する処理や、データまたはパケットの複製、所定のタグを追加することや、CRC等の異常診断データの計算と付加が例示される。送信部132が付加するタグとして、IEEE802.1Qで定義されるVLANタグ、IEC62439-3で定義されるHSRタグ、PRPタグが例示される。VLANタグの設定では、TSN関連規格で定義される内容にしたがったPCP(Priority Code Point)、VID(VLAN Identifier)の設定を含む。
送信部132はPHY103、CPU101上で動作するソフトウェア、通信制御IC102のいずれか、または複数で構成する。送信部132がMAC機能を有してもよい。
受信部133は、受信したパケットをリアルタイムパターン検査部134へ転送する。受信部133は、受信パケットを加工してもよく、加工処理としては、パケットに付加されたタグの除去やデータの抽出が例示される。また、受信部133は、処理したパケットの情報を一定期間記憶するために情報記憶手段を有し、例えば、送信元アドレスやタグ上の情報を記憶してもよい。受信部133は、通信制御IC102、PHY103、またはCPU101上のソフトウェアのいずれか、または複数で実装することが例示される。
リアルタイムパターン検査部134は、受信部133から入力されたパケットまたはデータを受信する。そして、検査パターン選択部131から通知された検査パターンに対して順次照合する。入力データを順次照合するため、転送遅延を一定とするカットスルー転送が可能である。なお、複数の検査パターンを並列的に照合してもよい。また、判定方式は検査パターンに一致したパケットまたはデータを不正と判定するブラックリスト方式でもよいし、あるいは検査パターンに一致したデータを正常(不正ではない)と判定するホワイトリスト方式でもよい。
不正と判定したパケットは破棄してもよいし、カットスルー転送をするため、FCS(Frame Check Sequence)部のCRCを意図的に、誤った計算値(何らかの不正を示す値)としてもよい。これにより、受信側の分散制御装置123で該パケットを破棄できる。
あるいは、条件に応じて、パケットをバッファリングしてストア&フォワード方式で不正判定し、判定結果に応じた処理(パケット破棄やCRCの変更等)を実行してもよい。
リアルタイムパターン検査部134は、通信制御IC102またはCPU101上で動作するソフトウェアのいずれか、または両方による構成が例示される。
タイムスロット連携時刻同期部135は、ネットワーク中継装置121または中央制御装置120、分散制御装置123、他のファイアウォール126と時刻同期通信プロトコル及びタイムスロット通信プロトコルにしたがって通信することで、ファイアウォール126上のタイムスロットを管理する。これにより、タイムスロット連携時刻同期部135は、中央制御装置120、ネットワーク中継装置121、分散制御装置123、他のファイアウォール126と時刻同期する。そして、ある瞬間において、どのタイムスロットとなっているか、次のタイムスロットに切り替わるタイミングを判別する。
時刻同期プロトコルを実現するため、タイムスロット連携時刻同期部135は、受信部133、送信部132、リアルタイムパターン検査部134を用いて時刻同期プロトコルに対応する。そのような時刻同期プロトコルとして、IEEE1588(PTP:Precision Time Protocol)、NTP(Network Time Protocol)、SNTP(Simple Network Time Protocol)等が例示される。
IEEE1588のPeer delayメカニズムに対応するため、TC(Transparent Clock)の機能を具えることが例示される。
これは、隣接装置間と同期パケットを通信して、経路上の遅延を計測することが例示される。また、ファイアウォール126内の同期パケットの転送時間を計測して、1ステップ方式または2ステップ方式で、計測した転送時間を同期パケット(SyncまたはFollow_Upメッセージ)上のCorrectionFieldまたはタイムスタンプ上に加算することが例示される。
タイムスロット連携時刻同期部135は、通信制御IC102またはCPU101上で動作するソフトウェアのいずれか、または両方による構成が例示される。
検査パターン記憶部136は、リアルタイムパターン検査部134で照合する検査パターンの集合を記憶する。そのような検査パターンは、所定通信プロトコルパケットフォーマットにおける所定フィールドの値でもよいし、所定通信プロトコルに依存しないシグネチャ(特徴値)でもよい。
また、検査パターンはブラックリスト、ホワイトリストかを示す情報を有してもよい。これは検査パターンごとにホワイトリストか、ブラックリストかをわけ、両者それぞれの検査パターンが混在していてもよい。なお、ブラックリストとは、リストに一致するものがある場合に不正と判断し、一致するものがない場合に正常と判断するものである。ホワイトリストとは、リストに一致するものがある場合に正常と判断し、一致するものがない場合に不正と判断するものである。
あるいは、複数のホワイトリストの検査パターンとブラックリストの検査パターンが同時に一致した場合に、不正と判定するか、正常と判定するかを決定するための優先度やルールを記憶してもよい。なお、正常とは不正を検知できない場合とも定義可能である。
例えば、ブラックリストの検査パターンとホワイトリストの検査パターンに同時に一致した場合に、優先度の高い検査パターンの判定結果を採用することが示される。具体的には、ブラックリストの検査パターンAとホワイトリストの検査パターンBに同時に一致し、検査パターンAの優先度を高く設定している場合に不正と判定する。
あるいは、ホワイトリストの検査パターンA、B、ブラックリストの検査パターンCがあるとして、「AかつBに一致すれば、Cと一致した場合でも正常と判定する」(A&B→正常判定)で表現してもよい。
同様に、「一つでもブラックリストの検査パターンに一致すれば、異常と判定する」という定義が例示される。
検査パターン記憶部136は、通信制御IC102、メモリ104、不揮発性記憶媒体105、CPU101上で動作するソフトウェアのいずれか、または複数で構成することが例示される。
(ファイアウォール126の動作手順)
次に、図4にファイアウォール126における検査パターンの設定における動作手順を示す。この動作手順は検査パターン選択部131を中心とした動作である。
はじめにタイムスロット連携時刻同期部135が同期している時刻に基づいて、タイムスロットの切り換わりを待機する(S001)。タイムスロットが切り換われば(S001のY)、検査パターン選択部131はタイムスロット特性記憶部130から、該タイムスロットの特性を抽出する(S002)。この特性とは、該タイムスロットで通信される通信プロトコルや、あるいは制御用途、情報収集用途、監視用途、AIの学習用途、アプリケーションプログラムといった用途が例示される。
なお、本実施形態では、特性を用いてタイムスロットを特定しているが、パケット内のタイムスロットを識別するIDを使って特定してもよい。また、ファイアウォール126がタイムスロットを特定するテーブルを保持し、これを用いてタイムスロットを特定してもよい。
次に、検査パターン選択部131はS002で抽出したタイムスロットに対応する検査パターンを検査パターン記憶部136から選択する(S003)。これは1つでも複数でもよいし、あるいは0(選択しない)でも構わない。
次に、選択した検査パターンをリアルタイムパターン検査部134に設定する(S004)。
次に、終了条件を満たすかを判定する(S005)。終了条件を満たしていれば(S005のY)、処理を終了する。終了条件を満たしていなければ(S005のN)、次のタイムスロットに向け、S001の手順へ戻る。
終了条件はシステム運用者あるいは制御システム管理装置(SCADA、ワークステーション、サーバ装置含む)等から明示的に終了と設定してもよいし、あるいはハードウェア故障、ソフトウェア故障といった異常の発生をもとに判断してもよい。あるいは、所定数、所定データサイズのパケットを転送したことや、所定時間稼働したこと、あるいは所定期間(例えば、1日のうちの10時から17時)経過したことをもとに判断してもよい。
なお、S001はタイムスロットの切り換わりを契機としたが、S002からS004のいずれか、または複数の手順の処理時間だけ、タイムスロットの切り換わりから早い時間にS001を開始してもよい。このようにすれば、タイムスロットが切り換わったタイミングで、リアルタイムパターン検査部134に該検査パターンを設定できる。また、これを実現するため、S002からS004の手順を一定の固定時間で実行する構成が例示される。
(動作手順)
次に、リアルタイムパターン検査部134におけるパケットの検査手順を図5、図6を用いて説明する。
(動作手順:フィールド)
図5は、所定の通信プロトコルを想定し、所定フィールドの値を比較する場合等の手順である。
はじめに、受信部133がパケットを受信し、リアルタイムパターン検査部134に入力されるまで待機する(S010)。なお、カットスルー転送を可能とするため、受信部133はパケット全体をバッファリングすることなく、パケットの先頭を受信次第、順次、リアルタイムパターン検査部134へ転送することが例示される。受信パケットが入力されると(S010のY)、パケットの入力にしたがって、検査パターンを比較する条件を満足したかどうかを判定する(S011)。これは、順次入力されるパケットの内容を解析して、通信プロトコルの判別や通信プロトコルごとのフィールドの位置の特定が例示される。例えば、検査パターンとしてIPv4の送信元MACアドレスを対象とする場合は、IEEE802.3フレームとして入力されたデータに対してタイプ(先頭から13byte目と14byte目)が0x0800であることを識別する。そして、後続するIPv4ヘッダの13byte目から16byte目までの情報を抽出することを意味する。
S011で条件を満足すれば(S011のY)、検査パターンと一致するかを判定する(S012)。一致した場合(S012のY)、一致しなかった場合(S012のN)のそれぞれで、検査パターンがホワイトリスト比較かどうかを判定する(S013、S014)。
検査パターンと一致して(S012のY)、ホワイトリスト比較の場合(S013のY)、及び検査パターンと一致せず(S012のN)、ホワイトリスト比較でない場合(S014のN)、正常パケットとして処理する(S015)。
一方、検査パターンと一致して(S012のY)、ホワイトリスト比較でない場合(S013のN)、及び検査パターンと一致せず(S012のN)、ホワイトリスト比較の場合(S014のY)、不正パケットとして異常処理する(S016)。
正常処理の例としては、受信パケットに何もせずに、そのまま転送することが含まれる。さらに、IEEE 1588の時刻同期パケットの場合は、ファイアウォール126における転送時間をcorrectionField(滞留時間や遅延補正に用いられるIEEE1588ヘッダ上のフィールド)に加算することが例示される。なお、本実施形態では、S013およびS014で「ホワイトリスト比較か」と表現しているが、「ブラックリスト比較か」とも表現可能である。つまり、S013およびS014では、ホワイトリスト比較とブラックリスト比較かを判断している。なお、「ブラックリスト比較か」と表現する場合、「ホワイトリスト比較か」とはY(Yes)とN(No)フローが逆になる。
異常処理の例としては、該パケットを破棄することやCRCを意図的に異常な値(もとのCRC値を反転する等)に変更することが例示される。
次に、パケットの終端かを判定する(S017)。パケットの終端であれば(S017のY)、終了判定をする(S018)。S018は図4のS005と同様である。S017でパケットの終端でなければ(S017のN)、S011に戻る。
なお、S011での条件を満足していなければ(S011のN)、S017へ進む。
(動作手順:シグネチャ)
図6は、所定シグネチャと比較する場合等の手順である。シグネチャは、パケット上の任意の場所に現れ得る。したがって、図5の手順とほぼ同様であるが、S011の手順が省略される。
図5や図6に示す検査パターンの比較手順は、検査パターンの違い、ホワイトリスト判定か、ブラックリスト判定かの違い等により、複数並列して動作することが例示される。これらを統合した動作を図7に示す。
はじめに、受信パケットの入力を待機する(S010)。受信パケットが入力されれば、すべての検査パターンの検査の終了を待機する(S020)。通常、これはリアルタイムパターン検査部134の判定処理が受信パケットの末尾に到達することで判断される。あるいは各検査パターンの検証が終了したと判定し(例えば検査パターンに一致し、何らかの判定結果を出力した)、判定結果が揃ったところで終了と判定してもよい。
各検査パターンの検証が終了すれば(S020のY)、個別の判定結果をもとに、最終的な判定結果を決定する(S021)。これは個別の検査パターンに優先度を設定して決定してもよいし、全体の検査パターンに対する決定方法(例えば、一つでも異常と判定した場合に異常と判定する)に基づいて決定してもよい。
なお、図5、6のS015、S016で正常処理、異常処理としたが、S015、S016では判定結果を決定するにとどめ、最終的な処理はS021で実行してもよい。
また、シグネチャを判定する場合であっても、プロトコル上のフィールドを判別してもよい。例えば、所定プロトコルのヘッダを識別し、ヘッダについては検査パターンの照合対象から除外し、データ領域のみに照合を限定することが例示される。
(用途)
なお、各タイムスロットの用途としては、AI適用に向けた学習データの収集や、ニューラルネットによる推論を実行するための入力情報の伝送が例示される。あるいは、被制御装置124に対する予防保全、予兆診断を適用するための監視データ、状態データ用の通信が例示される。
あるいは中央制御装置120から分散制御装置123に対して、以下を更新、配信する場合の該データの転送用としての用途が例示される。例えば、プログラムやファームウェア、OS、OSレベルの仮想化環境であるコンテナ(仮想マシン含む)イメージまたはコンテナの構成情報、セキュリティパッチ等である。
(検査パターンに対する用途、プロトコルまたはアプリケーションの設定)
タイムスロット特性記憶部130で識別した特性に基づく検査パターン記憶部136での検査パターンの選択において、各検査パターンに関連する用途またはプロトコルを設定することが例示される。
例えば、ある検査パターンに対して、その検査パターンが対象とする通信プロトコル、用途、あるいはアプリケーションプログラム等を設定してもよい。この設定は、通信プロトコルと用途、アプリケーションプログラムのいずれか、または複数を設定してもよい。例えば、シグネチャ検査パターンは、通信プロトコルを想定せず、特定アプリケーションプログラムを対象とする場合があり得るため、そのアプリケーションプログラムを設定する。なお、用途とアプリケーションプログラムは1対1で対応しない場合があり得るため、独立した項目とすることが例示される。例えば、保全用途に対して、複数の異なるアプリケーションプログラムが連携する場合や、使い分ける場合があり得る。
同様に、同じ用途に対して、異なる通信プロトコルを関連付けることも例示される。例えば、制御という用途に対して、EtherCAT(IEC61158、IEC61784-2)や、その上位プロファイルであるCOE(CANopen over EtherCAT)、またはIEC61850のGOOSE通信を用いることがあり得る。このような場合、タイムスロットの特性として、制御用途を抽出する。次に、制御用途に関連付けられた通信プロトコルとして、例えば、COE向けの検査パターンと、IEC61850のGOOSE通信の検査パターンを選択して、リアルタイムパターン検査部134に設定することが例示される。
これらの関係を図8に示す。タイムスロット特性記憶部130として抽出され得る特性は、通信プロトコル140、用途141、アプリケーションプログラム142であり、また、それらは相互に関連づいている。ただし、循環参照を避けるため、参照は一巡しないことが例示される。例えば、最初に抽出された特性が用途141として、その用途に関連づいた通信プロトコル140及び、またはアプリケーションプログラム142が抽出される。さらに、それぞれで、関連する通信プロトコル140,アプリケーションプログラム142を抽出した後は、関連の抽出を停止する。その後、それぞれに関連づいた検査パターンを選択する。
具体例を、図9に示す。図9(a)は特性間の関係を示す。ここでは、最初にタイムスロット特性記憶部130で抽出された特性として、制御という用途があり、そこから通信プロトコルEtherCAT COEとIEC61850のGOOSEと、アプリケーションプログラムD、Eを抽出している。次に通信プロトコルのEtherCAT COEとIEC61850のGOOSEに関連づいているアプリケーションプログラムとして、A、B、Cを抽出する。また、アプリケーションプログラムDと関連づいている通信プロトコルとして、IEEE1588を選択している。
図9(b)は各検査パターンと特性との関係を示す。例えば、検査パターン1は、通信プロトコルとしてEtherCAT COE、アプリケーションプログラムとしてプログラムBを対象とし、検査パターン2は、用途として制御を対象とすることを示す。
抽出された各特性を対象とした検査パターンを選択する。図9(a)に示す特性を例に取ると、用途として制御、通信プロトコルとしてEtherCAT COE、IEC61850のGOOSE、IEEE1588、アプリケーションプログラムとしてプログラムA、B、C、D、Eが抽出されている。このため、検査パターンとして、1から7が選択される。
なお、図9では特性間で順序関係をつけ、用途を最初に抽出したが、通信プロトコル、アプリケーションプログラムのいずれでも構わない。例えば、用途、通信プロトコル、アプリケーションプログラムと順序づけ、タイムスロット特性記憶部130で抽出された特性が通信プロトコルであれば、通信プロトコルとアプリケーションプログラムのみを抽出する。あるいはタイムスロット特性記憶部130で抽出された特性がアプリケーションプログラムであればアプリケーションプログラムのみを抽出することが例示される。
(非選択)
なお、図9の検査パターンの指定において、関連づく特性を示すのではなく、関連づかない特性を指定してもよい。例えば、「IEEE1588以外のプロトコルに適用」といった条件である。このようにすることで設定の柔軟性を向上できる。
同様に、該タイムスロットにおいて、無関係の通信プロトコルのパケットは破棄(非選択)してもよい。
(検査パターンの優先順位)
なお、リアルタイムパターン検査部134の計算機資源に対して、検査パターン選択部131で選択した検査パターンのすべてを適用できない場合があり得る。
例えば、LSI(FPGA、CPLD含む)のロジック容量の制限や、RAM等の記憶容量の制限、あるいは、選択された検査パターンの照合処理時間に対して、タイムスロットの時間が短いといった時間制限が例示される。
このような場合には、検査パターンに優先度をつけて、順に選択することが例示される。この優先度付けには、運用者がセキュリティ攻撃の流行情報や統計情報に基づいて、システム稼働前に静的に定めた固定的な優先度に基づいてもよいし、あるいは動作中に変更、設定してもよい。あるいは過去の該検査パターンの利用回数、登録されてからの経過時間(例えば、新しく登録された検査パターンを最近のセキュリティ脅威として優先的に検査する)、最後に利用されてからの経過時間等によって動的に定めてもよい。あるいは、タイムスロット特性記憶部130で抽出された特性と、その抽出順序に基づいて優先度を定めてもよい。例えば、以下に例示する場合で優先度を変更してもよい。
・該検査パターンが用途に関連する場合。
・タイムスロット特性記憶部130で最初に抽出された特性が用途の場合。
・タイムスロット特性記憶部130が用途を抽出した順番が2番目(例えば、通信プロトコルの次に用途を抽出)、3番目(例えば、通信プロトコル、アプリケーションプログラムの次に用途を抽出)の場合。
あるいは、これらの指標値を重み付けして加算した結果を最終的な指標値として優先度を定めてもよい。
加えて、検査パターンの数が多ければ外部に提示してもよい。これは通信制御IC102上にレジスタをもうけ、CPU101上のソフトウェアから該レジスタにアクセス可能としてもよい。あるいはファイアウォール126から、事前に設定した送信先に電子メール等の電子手段で通知してもよいし、ファイアウォール126上でwebサーバを構築して、外部からwebブラウザ等でアクセスして確認できるようにしてもよい。あるいはファイアウォール126上にLED、アラームといった物理的手段で提示してもよい。このように外部に通知することで、運用者は検査パターンの数を調整することや、追加のファイアウォール126を配置することで、セキュリティの観点において、結果的に制御システムを適切に運用しやすくなる。
(検査パターンの切り換え方法)
検査パターンの設定方法は、予め、該検査パターンを保持する照合機能をソフトウェアまたはLSI(FPGA、CPLD含む)におけるハードウェア論理として構成し、該照合機能を有効または無効にすることが例示される。
あるいはリアルタイムパターン検査部134内で、照合対象とする受信パケットの転送経路を変えることで、照合する検査パターンを選択してもよい。
あるいは検査パターンをRAM等のストレージデバイスに記憶し、タイムスロットの切り換わりに応じて照合機能にロードする構成で、選択された検査パターンに応じて、ストレージデバイスごとの保存アドレス(ロード元アドレス)を変更する構成としてもよい。
なお、サイクル内のタイムスロットの数が多く(つまり、検査パターンの切り換えが多い)、アクセス速度の異なるストレージデバイスが多段に構成される場合に、ストレージデバイス間の検査パターンのロードをスケジュールすることが例示される。例えば、図2の構成において、FPGAを用いて通信制御IC102を構成し、検査パターンの照合機能をハードウェア回路にて実装し、ストレージデバイスとして通信制御IC102内のオンチップRAMと、メモリ104の2段で構成する場合が例示される。
一般的に、記憶容量とアクセス速度間にトレードオフが存在し、上記で言えば、FPGA内のハードウェア照合回路から見てオンチップRAMは高速にアクセス可能であるが、容量は限られている。一方、メモリ104は容量を相対的に大きくすることが可能だが、バス106を介するため、アクセス速度が遅くなる。
検査パターンの転送、ロードのスケジューリング例を図12(a)に示す。タイムスロットAからFが計画されているとして、照合回路は1つのタイムスロット分の検査パターンの容量、オンチップRAMは3つのタイムスロット分の容量があり、メモリ上は6つのタイムスロットを格納できる容量があるとする。
t0では検査パターンAを照合回路へ転送し、t2、t4、t7、t10、t12、t15も同様に各検査パターンを転送する。照合回路はt1、t3、t5、t9、t11、t13、t17でタイムスロットの検査パターンを設定され、受信パケットに対して照合する。
t6ではメモリからオンチップRAMに対し、タイムスロットD、E、F用の検査パターンが転送され、t14ではタイムスロットA、B、C用の検査パターンが転送される。例えば、t1-t0はオンチップRAMに対するアクセス時間(ロード時間)を示し、t8-t6がメモリとオンチップRAM間のアクセス時間(ロード時間)を示す。
各デバイス間のアクセス速度、転送容量、アクセス時間、タイムスロットの開始時間(t1、t3、t5、t9、t11、t13、t17)をもとに、転送開始時間(t0、t2、t4、t7、t10、t12、t15、t6、t14)を決定する。これらは検査パターンの数や個々の検査パターンのサイズ、オンチップRAM、照合回路の記憶容量にあわせて設計され得る。
なお、図12(a)ではストレージを2段としたが、3段以上でもよく、例えば、不揮発性記憶媒体105(HDD等)を加えることが例示される。
以上は、装置内で検査パターンをロードする構成を説明したが、制御ネットワーク122をまたいで検査パターンを、制御ネットワーク122上のストレージデバイス(例えば、NAS:Network Attached Storage)からロードしてもよい。
また、オンチップRAMの一部を更新用のエリアとして、照合処理と並行して検査パターンを更新してもよい。このための機能構成例を、図12(b)に示す。この場合、同時アクセスを可能とするために通信制御IC102のオンチップRAMはDual Portメモリを用いることが例示される。なお、図13に示すように、タイムスロット直前に受信したパケットの終端の処理時刻t1がt0よりも遅ければ、t2まではパケットを受信しないことが想定されるため、検査パターンを切り換えてもよい。ここで、t0とは、t2よりもフレーム間隔Interframe gapだけ前の時間である。
(ソフトウェアによる照合)
なお、伝送遅延の要求が厳しくない場合であれば、カットスルー転送ではなく、受信パケットをバッファリングするストアアンドフォワード方式によって検査パターンと照合してもよい。このような場合、図2の構成において通信制御IC102でパケットを取り込んだ後、パケットをメモリ104へ転送して、CPU101上で動作するソフトウェアで照合することが例示される。
あるいは、図2の構成と同様のプロセッサ内蔵型のFPGAで構成してもよい。このとき、当該タイムスロットで転送せずに、次のサイクル以降のタイムスロットで転送してもよい(図11)。
このようにすることで、記憶容量が相対的に大きいメモリ104で記憶される多数の検査パターンと照合することでセキュリティレベルを向上することができる。なお、このような処理を適用する場合として、所定のタイムスロットを対象とする場合が例示される。あるいはタイムスロットとは独立して、所定の用途、通信プロトコル、アプリケーションプログラムに関連するパケットを対象とすることが例示される。
なお、検査パターンとして、特定に応じた通信プロトコル用のアンチウィルスソフトを用いることが含まれる。
また、通信プロトコルの特性として、上述した用途を用いる場合、その用途と検査パターンの関係を以下のとおりとしてもよい。それぞれ前者が用途で、後者が検査パターンの特徴を示す。
・制御用途:高速検査可能。
・AI用途(学習):低速だが詳細検査可能。
・監視用途および情報収集用途:上記の中間(中速で検査内容も中庸)(タイムスロット切り換わり直前に受信したパケット)。
図10に、上述した各用途を、中継通信装置121のタイムスロットに適用した例を示す。図10では、タイムスロット1を制御用(制御用途)、タイムスロット2をAI用(AI用途(学習))、タイムスロット3を監視用(監視用途および情報収集用途)としてる。
なお、タイムスロット切り換わりと、受信パケットの処理が重なる場合(図14)の処理を述べる。
この場合はタイムスロットAの検査パターンのまま照合してもよいし、あるいはタイミングが重なったことを検知して、パケットを破棄してもよい。なお、タイミングが重なったことを検知し、外部に提示してもよい。これは通信制御IC102上にレジスタをもうけ、CPU101上のソフトウェアから該レジスタにアクセス可能としてもよい。あるいはファイアウォール126から、事前に設定した送信先に電子メール等の電子手段で通知してもよいし、ファイアウォール126上でwebサーバを構築して、外部からwebブラウザ等でアクセスして確認できるようにしてもよい。あるいはファイアウォール126上にLED、アラームといった物理的手段で提示してもよい。このように外部に通知することで、運用者は送信側の送信タイミングを調整することで通信の時間的制約等を保証しやすく改善でき、結果的に制御システムを適切に運用しやすくなる。
(サイクル)
なお、複数のタイムスロットの集合で構成されるサイクルごとに、各タイムスロットへの検査パターンを変更してもよい。
(マルチポート)
また、ファイアウォール126は通信ポートが送信部132と受信部133のそれぞれで1つずつとして説明しているが、ネットワーク中継装置121と同様に複数の通信ポートを具えてもよい。この場合、それぞれのポートごとに、タイムスロットに応じて検査パターンを変更してもよい。
(検査パターン配信用タイムスロット)
また、タイムスロットの一部は検査パターン管理装置125による検査パターンの配信用のタイムスロットとしてもよい。例えば、このタイムスロットでは検査パターンの照合をしないことが例示される。
このタイムスロットの設定は、ファイアウォール126で明示的に電子的、あるいは物理的手段のいずれか、または複数で設定してもよいし、パケット上の所定フィールドに、検査パターン配信用パケットであることを明示してもよい。これにより、ファイアウォール126は、検査パターンの配信であることを認識して、取り込むことが例示される。
そのまま破棄してもよいし、転送してもよい。なお、後段の装置がファイアウォール126でない場合は、必ず破棄することが例示される。そのために後段の装置がファイアウォール126であるかを事前に設定または通信で確認することが例示される。
検査パターンの配布は、暗号化、証明書等の、しかるべきセキュリティ手段を講じて配布することが例示される。複数のサイクルで分割して送信してもよい。更新後、意図的に検査パターンに一致する不正パケットを送信して動作検証してもよいし、そのような動作検証用のタイムスロットを設けてもよい。
(あいまい検索)
検査パターンの一部を複数の値または未定義(完全一致を求めないdon‘t care)でもよい。このようにすることで、あいまい検索や亜種のウィルス、シグネチャを検知できる。または、一つの検査パターン情報で複数のパターンを表現できるため、検査パターンの記憶容量を効率化できる。
(前後のタイムスロットから特性を推定)
なお、タイムスロットの特性抽出は、前後のタイムスロットの特性から自動抽出してもよい。例えば、サイクル内の最後のタイムスロットで、それまでのタイムスロットで時刻同期プロトコルが実行されていなければ、そのタイムスロットを時刻同期プロトコル用と推定する。
このように、全体の特性の集合を既知として、実行済みのタイムスロットで抽出されていない未抽出の特性と推定することが例示される。
あるいは、資源予約プロトコルの通信内容を見て決定してもよい。
(タイムスロットファイアウォール)
なお、ファイアウォール126は、制御ネットワーク122上に計画されたタイムスロットの全てを検査する必要はなく、一つまたは複数の所定のタイムスロットを対象に検査パターンの照合をしてもよい。
このような対象タイムスロットを限定したファイアウォール126を連続に複数設置してもよい。ファイアウォール126の機器ごとに対象タイムスロットを限定し、制御ネットワーク122上の配置を調整することで柔軟にセキュリティ対象を設定できる。
(階層化)
なお、複数のファイアウォール126を用いて、階層的に検査パターンを照合する例を図16に示す。図16は、ネットワーク構成の一部を示す。
ファイアウォール126aは、タイムスロットA、B、Cのそれぞれで検査パターンの照合をする。ファイアウォール126b、c、dは、ファイアウォール126aから転送されたパケットをそれぞれ計画されたタイムスロットで、さらに細分化したタイムスロットで検査パターンと照合する。例えば、以下のとおり転送するよう設定されている。ファイアウォール126aがタイムスロットAで受信したパケットはファイアウォール126bに転送する。タイムスロットBで受信したパケットはファイアウォール126cに転送する。タイムスロットCで受信したパケットはファイアウォール126dに転送する。
このような構成として、例えば、以下に示すとおり、ある通信プロトコル内のサブプロトコルを分担するように構成してもよい。タイムスロットAで、通信プロトコルとしてIEC61850について検査する。また、ファイアウォール126bのタイムスロットDでIEC61850のGOOSE、タイムスロットEでSampledValue、タイムスロットFで、それ以外を検査する。
あるいはファイアウォール126aは通信プロトコルで検査パターンを照合し、ファイアウォール126bは用途別にタイムスロットDで制御用途、タイムスロットEは監視用途、タイムスロットFはAIの学習用途というように、特性別に階層化してもよい。
その後、ファイアウォール126eで通信経路上、再び集約してもよいし、それぞれの宛先に転送してもよい(例えば、ファイアウォール126d)。
なお、タイムスロットごとにルーティングを変更する方法は、静的に構成してもよいし、VLANで構成してもよい。
このようにすることで、検査パターン照合の構成を柔軟にすることができ、複数のファイアウォール126で機能分散することで、セキュリティレベルを保証することができる。
(動的に判定)
また、タイムスロットだけが計画されており、各タイムスロット内の検査パターンを定めていない状況で、各タイムスロット内で通信されている内容から、検査パターンを決定することが例示される。例えば、図9の情報と、対象タイムスロットで通信されているパケットのプロトコル種別から、適用する検査パターンを決定する。
具体的には、あるタイムスロットでIEC61850 GOOSEが通信された場合に、IEC 61850のGOOSE用の検査パターン、制御用途の検査パターン、関連するアプリケーションプログラム用の検査パターンを適用することが例示される。
これは、通信をセットアップ段階と、本運用段階にわけ、セットアップ段階で判定した検査パターンとタイムスロットの対応付けを本運用段階以降に適用することが例示される。セットアップ段階、本運用段階の違いは、時間(所定時刻、稼動してからの経過期間)や、段階の切り換わりを示す通知を明示的に指示することが例示される。これは、ファイアウォール126上でのソフトウェア上の操作またはハードウェア上の操作(ボタン、物理スイッチによる設定)が示される。
(SDN活用)
なお、検査パターンは、検査パターン管理装置125から動的にファイアウォール126にアクセスして変更してもよい。これはファイアウォール126のメモリ104、通信制御IC102、不揮発性記憶媒体105上で保持する検査パターンを変更することが例示される。
このとき、検査パターン管理装置125からファイアウォール126へ通知する検査パターンの内容は、検査パターンの内容そのものに加え、以下のものを含んでもよい。該検査パターンが対応付けられる所定タイムスロットの情報、識別子を含むことや、あるいは該タイムスロットが対応づく特性(通信プロトコル、用途、アプリケーションプログラム等)を含むことが例示される。
あるいは、検査パターンそのものは含まず、タイムスロットごとに関連付けられた特性を変更して、その内容を通知してもよい。特性の変更を通知することで、ファイアウォール126で適用される検査パターンを自動で変更できる。このため、検査パターンそのものを通知する方法に比べ、簡易な方法で、かつ通信データ量を減らせるため、制御ネットワーク122のネットワーク資源(通信帯域等)の消費を抑制して設定変更できる。
このとき、検査パターン、特性の変更の履歴を記録し、現在の状態を確認できるようにすることや、過去の任意の時点で、どのような検査パターンが適用されていたかを判定できる。
(同期異常)
なお、ファイアウォール126が同期をとれず、タイムスロットを適切に管理できない場合の動作を示す。そのような場合として、以下の場合がある。
・他装置からの時刻同期プロコトルに基づいた応答や時刻情報の配信がないこと。
・最後に時刻同期してからの経過時間が所定時間以上の場合となること。
・ファイアウォール126における時刻管理デバイス(CPU101上のソフトウェアクロック、水晶振動子、オシレータ、通信制御IC102内の計時デバイス)等での異常発生。
タイムスロットを適切に管理できない場合には、以下の対応方法がある。
・各受信パケットを転送させること。
・各受信パケットを破棄させること。
・時刻同期の異常用に定義する検査パターン群と照合させること。
・検査パターンの優先度に基づいて選択した検査パターンと照合すること。
・時刻同期プロトコルの通信に関するパケットのみを転送すること。
最後に時刻同期してからの経過時間に基づいて時刻同期異常を判定するために、ファイアウォール126は経過時間のしきい値、現在の経過時間等の情報を外部に提示する手段を設けてもよい。これは通信制御IC102上にレジスタをもうけ、CPU101上のソフトウェアあるいは外部の装置から通信経由で該レジスタにアクセス可能としてもよい。
また、時刻同期の異常であることを外部に提示してもよい。これは通信制御IC102上にレジスタをもうけ、CPU101上のソフトウェアから該レジスタにアクセス可能としてもよい。あるいはファイアウォール126から、事前に設定した送信先に電子メール等の電子手段で通知してもよいし、ファイアウォール126上でwebサーバを構築して、外部からwebブラウザ等でアクセスして確認できるようにしてもよい。あるいはファイアウォール126上にLED、アラームといった物理的手段で提示してもよい。このように外部に通知することで、運用者は時刻同期異常を知ることができ、必要な調査や適切な対処をすることで、結果的に制御システムを適切に運用しやすくなる。
本実施形態によれば、タイムスロットごとに検査パターンが変わり得るため、同じパケットであってもタイムスロットごとに通過パケットの挙動が変わり得る。例えば、あるタイムスロットでは、CRC改変による異常対応処理がなされたとしても、別のタイムスロットではCRC改変がされない等である。
(無線適用)
なお、本実施形態は、TSNといったタイムスロット型の有線通信方式を対象に説明したが、5G、4GやWifi、LPWA(Low Power,Wide Area)、LoRa、SIGFOXといった無線を対象としても構わない。
(システム構成)
システム構成としては、図17に示す階層構造や、図1のようなフラットなシステム、5Gや無線通信のように物理的な接続関係がない構成が例示される。
(多重化要素)
なお、本発明ではタイムスロットにあわせて検査パターンを変えることを示したが、時分割に限らず、多重化要素にあわせて検査パターンを変更することが例示される。そのような多重化要素としては、振幅の異なる基本信号(例えば搬送波)ごとに信号を載せる場合の振幅ごとの検査パターン、異なる周波数の基本信号における該周波数ごとの検査パターン、位相の異なる基本信号における位相ごとの検査パターンが例示される。
リアルタイムパターン検査部134の機能構成として、図15の分離部150は、多重化要素にあわせて信号を分離する。リアルタイムパターン検査部151は、分離された各信号に対して検査パターンを照合する。合成部152は、分離された信号を合成する。このとき、攻撃データや不正な異常信号に関しては、合成せずに破棄することが例示される(例えば、基本の搬送波のみを送信する)。
以上の構成により、本実施形態では、あるタイムスロットで、無関係な通信プロトコルや通信特性を対象とした検査パターンに偶然一致してパケットを破棄する等の処理を避け、可用性を向上できる。また、限られた計算機資源(ストレージ容量、CPU等の処理割り当て時間)に対して、タイムスロットにあわせた検査パターンの照合に限定することで、効率よく活用しながら、セキュリティを確保できる。
特に、制御システムに本実施形態を適用した場合、セキュリティを維持しながら、計算機資源の利用効率に優れ、制御システムのリアルタイム要件を保証しながら、制御システムでの情報技術の導入を可能とする高度な制御システムを提供できる。
101…CPU、102…通信制御IC、103…PHY、104…メモリ、105…不揮発性記憶媒体、106…バス、120…中央制御装置、121…ネットワーク中継装置、122…制御ネットワーク、123…分散制御装置、124…被制御装置、125…検査パターン管理装置、126…ファイアウォール、130…タイムスロット特性記憶部、131…検査パターン選択部、132…送信部、133…受信部、134、151…リアルタイムパターン検査部、135…タイムスロット連携時刻同期部、136…検査パターン記憶部、140…通信プロトコル、141…用途、142…アプリケーションプログラム、143…検査パターン、150…分離部、152…合成部

Claims (9)

  1. 通信フレームを転送する通信制御装置において、
    前記通信フレームを受信する手段と、
    前記通信フレームを処理する時間を特定する手段と、
    特定された前記時間に対応するタイムスロットに応じた、前記通信フレームに対するセキュリティ対策を特定する手段とを有することを特徴とする通信制御装置。
  2. 請求項1に記載の通信制御装置において、
    さらに、前記タイムスロットを特定する手段を有し、
    前記セキュリティ対策を特定する手段は、特定された前記タイムスロットに応じたセキュリティ対策を特定することを特徴とする通信制御装置。
  3. 請求項2に記載の通信制御装置において、
    前記タイムスロットを特定する手段は、前記通信フレームに含まれる前記タイムスロットを特定する情報を用いることを特徴とする通信制御装置。
  4. 請求項2に記載の通信制御装置において、
    さらに、時間帯毎のタイムスロットを特定する情報を格納する手段を有し、
    前記タイムスロットを特定する手段は、前記格納する手段を用いて、前記タイムスロットを特定することを特徴とする通信制御装置。
  5. 請求項1に記載の通信制御装置において、
    さらに、前記通信フレームから当該通信フレームの特性を抽出する手段を有し、
    前記セキュリティ対策を特定する手段は、抽出された前記通信フレームの特性に応じたセキュリティ対策を特定する通信制御装置。
  6. 請求項5に記載の通信制御装置において、
    前記通信フレームの特性には、前記通信フレームの通信プロトコル、用途および当該通信フレームを利用するアプリケーションプログラムのうち少なくとも1つが含まれることを特徴とする通信制御装置。
  7. 請求項1に記載の通信制御装置において、
    さらに、セキュリティ対策を施す手段を有し、
    前記セキュリティ対策を特定する手段は、受信した前記通信フレームと予め記憶された検査パターンを照合し、
    前記セキュリティ対策を実行する手段は、前記セキュリティ対策として、前記照合の結果に基づいて、前記通信フレームの末尾の誤り検査符号を変更することを特徴とする通信制御装置。
  8. 通信フレームを送信する送信装置、前記通信フレームを転送する通信中継装置および転
    送された前記通信フレームを受信する受信装置からなる通信システムにおいて、
    前記送信装置が、前記通信フレームを送信し、
    前記通信中継装置が、前記通信フレームを受信し、
    前記通信中継装置が、前記通信フレームを処理する時間を特定し、
    前記通信中継装置が、特定された前記時間に対応するタイムスロットに応じた、前記通信フレームに対するセキュリティ対策を特定し、
    特定された前記セキュリティ対策が前記通信フレームに施されることを特徴とする通信システム。
  9. 請求項8に記載の通信システムにおいて、
    前記通信中継装置が、前記セキュリティ対策を特定するために、受信した前記通信フレームと予め記憶された検査パターンを照合し、
    前記セキュリティ対策として、前記照合の結果に基づいて、前記通信フレームの末尾の誤り検査符号が変更されることを特徴とする通信システム。
JP2019172583A 2019-09-24 2019-09-24 通信制御装置およびシステム Active JP7337627B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019172583A JP7337627B2 (ja) 2019-09-24 2019-09-24 通信制御装置およびシステム
US17/639,860 US20220329564A1 (en) 2019-09-24 2020-06-23 Communication control apparatus and system
CN202080062397.0A CN114342321B (zh) 2019-09-24 2020-06-23 通信控制装置以及***
PCT/JP2020/024603 WO2021059632A1 (ja) 2019-09-24 2020-06-23 通信制御装置およびシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019172583A JP7337627B2 (ja) 2019-09-24 2019-09-24 通信制御装置およびシステム

Publications (2)

Publication Number Publication Date
JP2021052256A JP2021052256A (ja) 2021-04-01
JP7337627B2 true JP7337627B2 (ja) 2023-09-04

Family

ID=75156514

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019172583A Active JP7337627B2 (ja) 2019-09-24 2019-09-24 通信制御装置およびシステム

Country Status (4)

Country Link
US (1) US20220329564A1 (ja)
JP (1) JP7337627B2 (ja)
CN (1) CN114342321B (ja)
WO (1) WO2021059632A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434519B (zh) * 2021-08-26 2021-12-10 西安热工研究院有限公司 一种测点标签名更新方法、***及储存介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007243459A (ja) 2006-03-07 2007-09-20 Nippon Telegraph & Telephone East Corp トラヒック状態抽出装置及び方法ならびにコンピュータプログラム
JP2016163352A (ja) 2015-03-04 2016-09-05 フィッシャー−ローズマウント システムズ,インコーポレイテッド 産業用通信ネットワークにおける異常検出、異常検出システム、及び異常検出を行う方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000060537A (ko) * 1999-03-17 2000-10-16 윤종용 무선가입자망 시스템 단말기의 액세스 채널 슬롯 제어 방법
JP4279708B2 (ja) * 2004-03-01 2009-06-17 Okiセミコンダクタ株式会社 Phs端末装置及びphsデータ受信方法
JP4328285B2 (ja) * 2004-11-19 2009-09-09 三菱電機株式会社 中継装置及び中継方法及び中継プログラム
US7489702B2 (en) * 2005-03-31 2009-02-10 Alcatel-Lucent Usa Inc. Method and apparatus for increasing radio frequency efficiency for mixed voice over internet protocol and data traffic
CN101272176B (zh) * 2007-03-21 2011-09-14 电信科学技术研究院 上行信道的初始同步方法及装置
JP5195901B2 (ja) * 2008-03-24 2013-05-15 富士通株式会社 送信形式制御方法、及び、通信端末装置
US20110211455A1 (en) * 2008-08-29 2011-09-01 Ken Nakaoka Report method and access control device and radio device using the method
JP5637681B2 (ja) * 2009-12-16 2014-12-10 キヤノン株式会社 制御装置、中継装置、それらの制御方法およびプログラム
JP2014127887A (ja) * 2012-12-27 2014-07-07 Hitachi Ltd 通信制御装置
CN104656574B (zh) * 2013-11-20 2017-12-29 中国石油天然气集团公司 一种基于时域分隙控制自动化检查与监控方法
JP6234804B2 (ja) * 2013-12-19 2017-11-22 株式会社日立製作所 通信中継装置
CN104811243B (zh) * 2014-01-26 2018-05-04 中兴通讯股份有限公司 长发光检测方法及装置
RU2581559C2 (ru) * 2014-08-01 2016-04-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ применения политик безопасности к накопителю в сети
CN104579835B (zh) * 2015-01-05 2018-02-16 北京中科网维科技有限公司 一种检测e1链路数据帧中传输通道的方法和装置
US9614853B2 (en) * 2015-01-20 2017-04-04 Enzoo, Inc. Session security splitting and application profiler
US10524025B2 (en) * 2016-06-30 2019-12-31 General Electric Company Communication system and method for scheduling communications within a time sensitive network
JP6626039B2 (ja) * 2017-06-13 2019-12-25 日本電信電話株式会社 ブラックリスト設定装置、ブラックリスト設定方法およびブラックリスト設定プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007243459A (ja) 2006-03-07 2007-09-20 Nippon Telegraph & Telephone East Corp トラヒック状態抽出装置及び方法ならびにコンピュータプログラム
JP2016163352A (ja) 2015-03-04 2016-09-05 フィッシャー−ローズマウント システムズ,インコーポレイテッド 産業用通信ネットワークにおける異常検出、異常検出システム、及び異常検出を行う方法

Also Published As

Publication number Publication date
JP2021052256A (ja) 2021-04-01
CN114342321A (zh) 2022-04-12
US20220329564A1 (en) 2022-10-13
CN114342321B (zh) 2024-03-22
WO2021059632A1 (ja) 2021-04-01

Similar Documents

Publication Publication Date Title
Bello et al. A perspective on IEEE time-sensitive networking for industrial communication and automation systems
US11799788B2 (en) Resilient network configuration for time sensitive traffic
EP3697063B1 (en) Communication control device, communication control method, and communication system
RU2595918C2 (ru) Коммутационная система, система управления коммутацией и носитель данных
EP4050436A1 (en) Control device and distributed control system
CN104081731A (zh) 网络***以及管理拓扑的方法
EP3955520B1 (en) Iot control network planning
CN110352586B (zh) 用于保留网络中的数据分组的相对定时和排序的方法和装置
JP6045950B2 (ja) 通信制御装置及び通信システム
WO2016044077A1 (en) Ethernet interface module
WO2016044066A1 (en) Ethernet interface module
CN111385222B (zh) 实时、时间感知、动态、情境感知和可重新配置的以太网分组分类
CN114449586A (zh) 一种通信调度方法、装置和存储介质
JP2009522867A (ja) ネットワークトラフィック監視用装置及び方法
JP7337627B2 (ja) 通信制御装置およびシステム
Amari et al. AeroRing: Avionics full duplex ethernet ring with high availability and QoS management
Lindgren et al. End-to-end response time of IEC 61499 distributed applications over switched ethernet
CN109818804A (zh) 一种网络监测方法及装置
Wüsteney et al. Analyzing and modeling the latency and jitter behavior of mixed industrial TSN and DetNet networks
US20230353422A1 (en) Network Switch, Communication System and Method for Operating a Communication System for Transmitting Time-Critical Data
JP2019153941A (ja) 通信制御装置及び通信制御システム
CN113994634B (zh) 用于在两个或更多个网络之间的数据传输的方法和传输装置
EP4002779B1 (en) Method and apparatus for sharing information in redundant network, and computer storage medium
Nenninger et al. A contribution to publish-subscribe based communication in industrial applications
Ahmad Assessment of Industrial Networking Technologies for Support of Time-Critical Communication

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230502

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230815

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230823

R150 Certificate of patent or registration of utility model

Ref document number: 7337627

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150