一种工业控制器的调度方法及装置制造方法及图纸

技术编号:28215661 阅读:23 留言:0更新日期:2021-04-24 14:58
本发明专利技术实施例公开了一种工业控制器的调度方法及装置,首先监测工作的执行体中是否存在异常执行体;然后,将异常执行体调出工作状态,进行清洗操作;最终,利用清洗后的正常执行体对工作中的其他执行体进行判定及调度,以将共模攻击转化为差模攻击,直至彻底移除差模攻击,使工作中的执行体全部为正常执行体。另外,为避免工作中执行体同时遭遇共模攻击,采用记录监测次数的方式,若监测次数达到预设值时,工作的执行体中仍然不存在异常执行体,则随机选取一个工作中的执行体假设为异常执行体,将其调出工作状态并进行清洗操作,利用清洗后的正常执行体对工作中的其他执行体进行判定和调度,从而有效防御针对所有执行体的共模攻击。击。击。

【技术实现步骤摘要】
一种工业控制器的调度方法及装置


[0001]本专利技术涉及工业控制
,特别是涉及一种工业控制器的调度方法及装置。

技术介绍

[0002]工业控制系统是计算机设备与工艺过程控制设备相结合的自动控制系统,其中,工业控制器是工业控制系统中的重要组成部分。工业控制器可由1个FPGA(Field Programmable Gate Array,可编程门阵列芯片)和多个执行体构成,其中,执行体可以为MCU(Microcontroller Unit,单片机),MCU统一由FPGA进行调度。FPGA收集工业现场数据分发给每个MCU,MCU根据现场数据进行运算处理,并将运算后生成的输出数据发送给FPGA,由FPGA传输至工业现场设备,形成对工业现场的闭环控制。
[0003]但是,随着工业控制器与外部网络的连接日益紧密、频繁,以及通信协议和系统平台趋于开放化和标准化,工业控制器的网络安全事故呈现出不断增加的趋势。目前,对工业控制器的网络安全攻击主要为差模攻击和共模攻击,其中,差模攻击指的是同一时刻只有一个执行体被攻击;共模攻击指的是同一时刻有两个及以上执行体被攻击。通常,工业控制器中包含3个执行体,采用比较执行体输出数据的传统方法,可以对差模攻击进行完全防御。但是,面对共模攻击就会发生攻击逃逸现象,尤其是3个执行体同时遭遇共模攻击时,甚至会对已经发生的攻击毫无察觉且无法恢复。例如,3个执行体同时被共模攻击后,输出数据一致,通过比较三个执行体的输出数据并不能察觉出攻击已经发生,而此时传输至现场设备的数据已经是异常的数据。r/>
技术实现思路

[0004]本专利技术实施例中提供了一种工业控制器的调度方法及装置,以解决现有技术中无法防御共模攻击的问题。
[0005]为了解决上述技术问题,本专利技术实施例公开了如下技术方案:一种工业控制器的调度方法,所述工业控制器由4个执行体构成,所述方法包括:在所有执行体中随机调度3个执行体进入工作状态;监测工作的执行体中是否存在异常执行体,并记录监测次数,如果工作的执行体中存在异常执行体,将一个异常执行体调出工作状态;如果工作的执行体中不存在异常执行体,判断监测次数是否达到预设值;若监测次数达到预设值,在工作的执行体中随机选取一个作为异常执行体调出工作状态,并且,将监测次数归零重新记录;若监测次数没有达到预设值,重新监测工作的执行体中是否存在异常执行体,并记录监测次数;对调出的异常执行体进行清洗操作;所述异常执行体在完成清洗操作之后恢复为正常执行体,并作为下一次调度过程中待工作的执行体;判断待工作的执行体是否为在上一次调度过程中完成清洗操作的正常执行体,如果否,将待工作的执行体调入工作状态;重新监测工作的执行体中是否存在异
常执行体,并记录监测次数;如果是,将待工作的所述正常执行体调入工作状态;利用所述正常执行体对其他工作中的执行体进行判定以及调度。
[0006]可选地,所述监测工作的执行体中是否存在异常执行体,并记录监测次数,包括:分别获取每一个工作执行体当前的输出数据;判断是否存在当前输出数据与其他工作执行体当前输出数据均不相等的执行体,如果是,将所述当前输出数据不相等的执行体确定为异常执行体;记录监测次数,每判断一次工作中执行体当前的输出数据是否相等,监测次数的值增加1。
[0007]可选地,所述将一个异常执行体调出工作状态,包括:判断所述异常执行体的数量是否大于1,如果是,在所有异常执行体中随机选取一个,将选取出的异常执行体调出工作状态;如果否,将所述异常执行体调出工作状态。
[0008]可选地,所述对调出的异常执行体进行清洗操作,包括:将异常执行体的运行逻辑和状态恢复成初始状态;将恢复成初始状态的执行体确定为正常执行体。
[0009]可选地,所述利用所述正常执行体对其他工作中的执行体进行判定以及调度,包括:分别获取每一个工作执行体当前的输出数据;在工作的执行体中,判断是否存在当前输出数据与正常执行体当前输出数据不相等的执行体,如果存在,将不相等的所述执行体确定为异常执行体;判断所述异常执行体的数量是否大于1,如果是,在所述异常执行体中随机选取一个调出工作状态,并且,对选取出的异常执行体进行清洗操作;如果否,将所述异常执行体调出工作状态,并且,对所述异常执行体进行清洗操作;将待工作的正常执行体调入工作状态;重新执行分别获取每一个工作执行体当前的输出数据的步骤以及后续步骤,直至所有工作执行体当前的输出数据均相等为止。
[0010]一种工业控制器的调度装置,应用于由4个执行体构成的工业控制器,所述装置包括:执行体调度模块,用于在所有执行体中随机调度3个执行体进入工作状态;监测和记录模块,用于监测工作的执行体中是否存在异常执行体,并记录监测次数,调出模块,用于在工作的执行体中存在异常执行体时,将一个异常执行体调出工作状态;监测次数判断模块,用于在工作的执行体中不存在异常执行体时,判断监测次数是否达到预设值;
所述调出模块,还用于在监测次数达到预设值时,在工作的执行体中随机选取一个作为异常执行体调出工作状态,并且,将监测次数归零重新记录;所述监测和记录模块,还用于在监测次数没有达到预设值时,重新监测工作的执行体中是否存在异常执行体,并记录监测次数;清洗模块,用于对调出的异常执行体进行清洗操作;所述异常执行体在完成清洗操作之后恢复为正常执行体,并作为下一次调度过程中待工作的执行体;待工作执行体判断模块,用于判断待工作的执行体是否为在上一次调度过程中完成清洗操作的正常执行体,调入模块,用于在待工作的执行体不是在上一次调度过程中完成清洗操作的正常执行体时,将待工作的执行体调入工作状态;所述调入模块,还用于在待工作的执行体是在上一次调度过程中完成清洗操作的正常执行体时,将待工作的所述正常执行体调入工作状态;反向判定及调度模块,用于利用所述正常执行体对其他工作中的执行体进行判定以及调度。
[0011]可选地,所述监测和记录模块,包括:输出数据获取子模块,用于分别获取每一个工作执行体当前的输出数据;输出数据比较子模块,用于判断是否存在当前输出数据与其他工作执行体当前输出数据均不相等的执行体,异常执行体确定子模块,用于当存在当前输出数据与其他工作执行体当前输出数据均不相等的执行体时,将所述当前输出数据不相等的执行体确定为异常执行体;监测次数记录子模块,用于记录监测次数,每判断一次工作中执行体当前的输出数据是否相等,监测次数的值增加1。
[0012]可选地,所述清洗模块,包括:初始状态恢复子模块,用于将异常执行体的运行逻辑和状态恢复成初始状态;正常执行体确定子模块,用于将恢复成初始状态的执行体确定为正常执行体。
[0013]可选地,所述反向判定及调度模块,包括:输出数据获取子模块,用于分别获取每一个工作执行体当前的输出数据;输出数据比较子模块,用于在工作的执行体中,判断是否存在当前输出数据与正常执行体当前输出数据不相等的执行体,异常执行体确定子模块,用于当存在当前输出数据与正常执行体当前输出数据不相等的执行体时,将不相等的所述执行体确定为异常执行体;异常执本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种工业控制器的调度方法,其特征在于,所述工业控制器由4个执行体构成,所述方法包括:在所有执行体中随机调度3个执行体进入工作状态;监测工作的执行体中是否存在异常执行体,并记录监测次数,如果工作的执行体中存在异常执行体,将一个异常执行体调出工作状态;如果工作的执行体中不存在异常执行体,判断监测次数是否达到预设值;若监测次数达到预设值,在工作的执行体中随机选取一个作为异常执行体调出工作状态,并且,将监测次数归零重新记录;若监测次数没有达到预设值,重新监测工作的执行体中是否存在异常执行体,并记录监测次数;对调出的异常执行体进行清洗操作;所述异常执行体在完成清洗操作之后恢复为正常执行体,并作为下一次调度过程中待工作的执行体;判断待工作的执行体是否为在上一次调度过程中完成清洗操作的正常执行体,如果否,将待工作的执行体调入工作状态;重新监测工作的执行体中是否存在异常执行体,并记录监测次数;如果是,将待工作的所述正常执行体调入工作状态;利用所述正常执行体对其他工作中的执行体进行判定以及调度。2.根据权利要求1所述的方法,其特征在于,所述监测工作的执行体中是否存在异常执行体,并记录监测次数,包括:分别获取每一个工作执行体当前的输出数据;判断是否存在当前输出数据与其他工作执行体当前输出数据均不相等的执行体,如果是,将所述当前输出数据不相等的执行体确定为异常执行体;记录监测次数,每判断一次工作中执行体当前的输出数据是否相等,监测次数的值增加1。3.根据权利要求2所述的方法,其特征在于,所述将一个异常执行体调出工作状态,包括:判断所述异常执行体的数量是否大于1,如果是,在所有异常执行体中随机选取一个,将选取出的异常执行体调出工作状态;如果否,将所述异常执行体调出工作状态。4.根据权利要求3所述的方法,其特征在于,所述对调出的异常执行体进行清洗操作,包括:将异常执行体的运行逻辑和状态恢复成初始状态;将恢复成初始状态的执行体确定为正常执行体。5.根据权利要求4所述的方法,其特征在于,所述利用所述正常执行体对其他工作中的执行体进行判定以及调度,包括:分别获取每一个工作执行体当前的输出数据;在工作的执行体中,判断是否存在当前输出数据与正常执行体当前输出数据不相等的执行体,如果存在,将不相等的所述执行体确定为异常执行体;判断所述异常执行体的数量是否大于1,
如果是,在所述异常执行体中随机选取一个调出工作状态,并且,对选取出的异常执行体进行清洗操作;如果否,将所述异常执行体调出工作状态,并且,对所述异常执行体进行清洗操作;将待工作的正常执行体调入工作状态;重新执行分别获取每一个工作执行体当前的输出数据的步骤以及后续步骤,直至所有工作执行体当前的输出数据均相等为止。6.一种工业控制器的调度装置,其特征在于,应用于由4个执行体构成的工业控制器,所述装置包括:执行体调度模块,用于在所有执行体中随机调度3个执行体进入工作状态;监测和记录模...

【专利技术属性】
技术研发人员:周文董贵山王纵驰程鹏刘波赖军杨汶佼张汝云
申请(专利权)人:中国电子科技网络信息安全有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1