本发明涉及计算机技术和网络数据处理,特别是一种基于工业审计系统的会话池管理方法及装置。
背景技术:
1、目前,随着工业信息化的快速发展,工业化与信息化的融合趋势越来越明显。工业审计系统作为面向工业控制网络的硬件产品,通过流量及协议解析等途径,便可实时监测网络会话,及时发现异常行为并进行报警。
2、工业审计系统通常以旁路方式部署,但由于工控系统资产复杂、设备种类繁多,镜像过来的流量异常庞大,为实现数据的实时监控,通常底层会对封装的会话、数据流等存储结构进行频繁的申请与释放,但该操作会导致用户空间的虚拟内存中产生大量内存碎片,同时降低系统整体运行的性能。
技术实现思路
1、针对在工业审计系统运行中以会话为单位的内存对象会进行频繁地申请初始化释放,进而产生大量内存碎片,审计系统本身又需要长期运行状态,碎片化内存影响操作系统底层资源的调度分配效率等性能内存问题,提出一种基于工业审计系统的会话池管理方法及装置,减少内存碎片,提高系统运行性能。
2、本发明公开了一种基于工业审计系统的会话池管理方法,其包括:
3、步骤1:建立会话池;
4、步骤2:对会话池进行划分;
5、步骤3:为会话节点设置标识;
6、步骤4:基于设置的标识,循环使用会话节点。
7、进一步地,所述步骤1包括:
8、步骤11:启动工业审计系统,配置加载导入;工业审计系统提供按照当前工业环境流量预期进行会话划分的内存配置导入,并分配session.prealloc分配整体内存后,按照配置分配通信协议的内存;
9、步骤12:数据流解码模块解析结果输入,数据流量流入审计系统后解码模块将proto-alproto-func以及流量的五元组信息打包发给会话池,进行存储,并通知会话池内存管理开始处理,包括数据流管理器进行整个工业审计系统流的调度与会话池同步协商;
10、步骤13:radix-tree建立动态刷新,会话池填充后,radix-tree根据会话池传来的内存地址和节点信息建立起基数树,并随着流与会话的刷新动态进行刷新;
11、步骤14:数据流管理器交互管理会话,通过与步骤11至步骤13进行交互,不断刷新当前工业审计系统中数据流的属性值;该属性值包括老化时间。
12、进一步地,所述步骤2包括:
13、根据生产环境,按照通信数据种类划分sesssion.prealloc;通信数据的协议节点支持可配置添加。
14、进一步地,所述步骤3包括:
15、在当前协议内存块内,采用slab分配器算法按照单个会话为object划分会话节点;并为会话节点设置enable、using、unable三种状态;enable用于标识初始化后或者老化回收后的可用节点;using用于标识正在使用记录信息的节点;unable用于标识刚老化或者清空信息后的节点。
16、进一步地,所述步骤4包括:
17、保持和数据流管理器进行交互,数据流管理器提供数据流超时的计时器用于同步会话超时;超时的会话节点标识成unable状态;待数据流管理器通知会话池当前数据流其它处理完毕后,将当前会话节点标识为enable状态。
18、本发明还公开了一种基于工业审计系统的会话池管理装置,适用于上述任一项所述的基于工业审计系统的会话池管理方法,其包括:
19、会话节点管理标识模块,用于使用radix-tree,对工业审计系统数据流解码模块输出的以传输层协议、应用层协议和应用接口分层构建radix-tree,叶子节点为指向会话项的唯一标识,每一个会话项为一个entry。
20、进一步地,还包括会话节点扩充模块;
21、所述会话节点扩充模块,用于当会话节点扩充超出session.prealloc空间值时,使用bubby分配器算法向系统申请新的内存,然后将新的内存块按照协议与应用分类,采用slab分配器算法,申请会话节点内存,并将会话节点在radix-tree中刷新;当会话节点扩充超出单个协议分配的内存最大值时,找到session.prealloc空间目前最大的分配地址,然后申请一块新的协议内存块,并根据存储会话func将其更新进入radix-tree。
22、进一步地,还包括会话释放模块;
23、所述会话释放模块分为三种释放方式,一是按协议释放,在radix-tree找到该协议快的首尾地址时进行释放;二是整体按照seesion.prealloc进行释放;三是会话池发生扩充,按照radix-tree中记录的最大内存地址进行释放。
24、进一步地,还包括会话上报模块;
25、所述会话上报模块,用于根据配置,将解码过程中各会话释放模块记录的会话节点通过写入分布式日志处理系统的节点中,由该分布式日志处理系统将会话数据入库,在数据库中存储。
26、进一步地,还包括会话显示模块;
27、所述会话显示模块,用于对会话进行显示。
28、由于采用了上述技术方案,本发明具有如下的优点:减少内存碎片,提高系统运行性能。
1.一种基于工业审计系统的会话池管理方法,其特征在于,包括:
2.根据权利要求1所述的基于工业审计系统的会话池管理方法,其特征在于,所述步骤1包括:
3.根据权利要求2所述的基于工业审计系统的会话池管理方法,其特征在于,所述步骤2包括:
4.根据权利要求1所述的基于工业审计系统的会话池管理方法,其特征在于,所述步骤3包括:
5.根据权利要求1所述的基于工业审计系统的会话池管理方法,其特征在于,所述步骤4包括:
6.一种基于工业审计系统的会话池管理装置,适用于权利要求1-5任一项所述的基于工业审计系统的会话池管理方法,其特征在于,包括:
7.根据权利要求6所述的基于工业审计系统的会话池管理装置,其特征在于,还包括会话节点扩充模块;
8.根据权利要求7所述的基于工业审计系统的会话池管理装置,其特征在于,还包括会话释放模块;
9.根据权利要求6所述的基于工业审计系统的会话池管理装置,其特征在于,还包括会话上报模块;
10.根据权利要求6所述的基于工业审计系统的会话池管理装置,其特征在于,还包括会话显示模块;