一种基于高速缓存的工业白名单学习方法和系统技术方案

技术编号:26259540 阅读:27 留言:0更新日期:2020-11-06 17:54
本发明专利技术提供了一种基于高速缓存的工业白名单学习方法及系统,首先收集底层报上来的海量报文数据,根据不同协议进行报文关键字段数据的提取,将这些字段数据拼接成能代表这些报文特征的白名单规则;将这些海量规则生成唯一的hash值并缓存到redis中进行比对去重。通过本发明专利技术的方法或系统可以高速稳定地进行白名单学习,解决了工业网络环境下白名单识别的问题,且本发明专利技术通过对白名单的部署,可以有效防护工业网络环境,抵御网络攻击。

【技术实现步骤摘要】
一种基于高速缓存的工业白名单学习方法和系统
本专利技术涉及通信
,具体地涉及一种基于高速缓存的工业白名单学习方法及系统。
技术介绍
在项目开发中,实现白名单学习虽在处理字符串方面,Python有着优势,但其性能瓶颈也很明显,尤其在白名单学习时间持续比较久,白名单数量巨大的时候,就会出现学习加载慢,开启和结束的过程慢,学习过程中时时展示学习结果的时候慢的问题,并且随着学习进行会慢慢消耗系统资源,最终导致无法学习的问题;除此之外,当白名单数据很大,加载速度变慢,就会导致前后台学习倒计时时间不一致,出现学习状态不一致的问题,导致后台崩溃。在传统模式下,白名单加载和入库都需要与Mysql进行交互,当突然有白名单结束的信号传递过来时,进程会立即退出,这样,这些与数据库交互的线程也会立刻退出,对于Mysql而言,client没有关闭连接而突然退出Mysql是无法识别的,而这样的连接仍会被保留到最大等待时间而成为异常连接,用户在这种情况下如果重复操作将会产生大量的失效连接,并且使用ORM框架去操动数据库时,如果连接池使用了这种异常连接,会使程序本文档来自技高网...

【技术保护点】
1.一种基于高速缓存的工业白名单学习方法,其特征在于,包括如下步骤:/n步骤1:启动白名单学习监控程序;/n步骤2:白名单学习监控程序监控由端口发送的白名单学习指令信号;/n步骤3:解析白名单学习指令信号,判断该白名单学习指令信号指示开启还是关闭,如果指示开启则执行步骤4,否则向入库的队列发送关闭白名单学习指令,执行步骤11:/n步骤4:启动白名单学习的进程;/n步骤5:从Redis中获取白名单学习的配置信息;/n步骤6:启动定时器,对白名单学习的时间计时,同时加载Redis中的规则hash;/n步骤7:开启消息队列,接收底层解析的报文;/n步骤8:从报文中根据不同的协议提取关键字段拼接成白名...

【技术特征摘要】
1.一种基于高速缓存的工业白名单学习方法,其特征在于,包括如下步骤:
步骤1:启动白名单学习监控程序;
步骤2:白名单学习监控程序监控由端口发送的白名单学习指令信号;
步骤3:解析白名单学习指令信号,判断该白名单学习指令信号指示开启还是关闭,如果指示开启则执行步骤4,否则向入库的队列发送关闭白名单学习指令,执行步骤11:
步骤4:启动白名单学习的进程;
步骤5:从Redis中获取白名单学习的配置信息;
步骤6:启动定时器,对白名单学习的时间计时,同时加载Redis中的规则hash;
步骤7:开启消息队列,接收底层解析的报文;
步骤8:从报文中根据不同的协议提取关键字段拼接成白名单规则;
步骤9:对海量的白名单规则去重,生成规则的hash更新至hash字典中,放入队列;
步骤10:入库程序,对队列里的规则进行入库;
步骤11:启动第二白名单学习监控程序,当第二白名单学习监控程序监控到白名单学习停止的指令后,停止入库程序,将学习到的规则hash更新到Redis,退出白名单学习进程,否则继续执行步骤9。


2.基于权利要求1所述的一种基于高速缓存的工业白名单学习方法,其特征在于,步骤5具体为,当白名单学习进程启动时,白名单学习的配置信息被写入Redis,白名单学习进程启动后,读取白名单学习的配置信息。


3.根据权利要求2所述的一种基于高速缓存的工业白名单学习方法,其特征在于,所述白名单学习的配置信息包括白名单学习时长、等待时长和学习状态。


4.根据权利要求3所述的一种基于高速缓存的工业白名单学习方法,其特征在于,步骤6中,定时器基于学习时长对白名单学习的时间计时,当达到学习时长后退出白名单学习进程。


5.根据权利要求4所述的一种基于高速缓存的工业白名单学习方法,其特征在于,步骤6中,保存在redis中的hash以Python字典对象的形式保存,在保存前将字典转成json数据,在获取hash后转换为字典使用。


6.根据权利要求1所述的一种基于高速缓存的工业白名单学习方法,其特征在于,还包括Redis热数据处理步骤,具体为:
当白名单被删除,则重新获取白名单数据库中的白名单数据,包括获取最新的白名单规则hash值,将最新的hash值更新到Redis中...

【专利技术属性】
技术研发人员:张卫强管玉梅
申请(专利权)人:长扬科技北京有限公司
类型:发明
国别省市:北京;11

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

1