System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种报文处理方法、装置、电子设备及存储介质制造方法及图纸_技高网

一种报文处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:44890297 阅读:11 留言:0更新日期:2025-04-08 00:27
本申请涉及网络安全技术领域,尤其涉及一种报文处理方法、装置、电子设备及存储介质,用于实现多生产多消费,提高报文处理的性能。该方法包括:采用第一线程组,解析NetFlow报文,获得数据流信息,并将数据流信息封装成目标结构体,以及当确定防护对象PO组中存在目标结构体对应的目标PO时,将目标结构体和目标PO的指针集合作为写入消息,添加到消息槽;采用第二线程组,轮询消息槽,获取待处理消息,并基于待处理消息,更新双链表和大顶堆,获得PO组中的最新访问PO和热点PO,其中,双链表中的头节点对应的PO是最新访问PO,大顶堆中的顶点对应的PO是访问热度值最大的热点PO。

【技术实现步骤摘要】

本申请涉及网络安全,尤其涉及一种报文处理方法、装置、电子设备及存储介质


技术介绍

1、网络流量(netflow)是一种网络流量统计协议,用来对流经网络设备的ip流量进行测量和统计,成为网络领域最主要的ip流量分析和统计的标准。路由器将流经的数据包的关键信息,比如:源/目的地址、源/目的端口、协议类型等,重新封装成netflow协议(目前主流采用netflow v9协议)格式,并传递到后台服务器上的netflow收集器,netflow收集器负责解析还原关键信息,网络安全人员通过配置netflow服务器上的策略,检测和分析异常流量数据包,比如:拒绝服务攻击(denial of service attack,dos)、分布式拒绝服务攻击(distributed denial of service attack,ddos)、网络蠕虫病毒流量、网络扫描工具产生的大量连接请求等,通过对数据包的流向分析,网络安全人员根据不同流向,采取不同的防护和处理策略。

2、实际应用过程中,网络安全人员在netflow收集器上,需要配置多个防护对象(protection object,po),每个po所防护的ip子网和ip主机是不同的,因此根据每个配置的po信息,netflow收集器可以检测和分析当前访问po的流量数据包是否异常。

3、现有技术中,将netflow报文解析结果放到一张大表或消息队列,其中对大表加锁,会影响多线程数据读写,同时消息队列支持单生产多消费(single producer multiconsumer,spmc),不满足海量的netflow报文处理实际需求,另外,查询热点po和最新访问po缓慢,且频繁地进行热点po和最新访问po查询,还会影响netflow报文处理效率。


技术实现思路

1、本申请实施例提供一种报文处理方法、装置、电子设备及存储介质,实现了多生产多消费,能够对大量的netflow报文进行处理和快速查询到最新访问po和热点po,提高了报文处理的性能。

2、本申请实施例提供的具体技术方案如下:

3、第一方面,提供一种报文处理方法,方法包括:

4、采用第一线程组,解析netflow报文,获得数据流信息,并将数据流信息封装成目标结构体,以及当确定防护对象po组中存在目标结构体对应的目标po时,将目标结构体和目标po的指针集合作为写入消息,添加到消息槽,其中,目标po的指针集合包括:目标po的双链表位置指针和大顶堆位置指针;

5、采用第二线程组,轮询消息槽,获取待处理消息,并基于待处理消息,更新双链表和大顶堆,获得po组中的最新访问po和热点po,其中,双链表中的头节点对应的po是最新访问po,大顶堆中的顶点对应的po是访问热度值最大的热点po。

6、在一种可能的实施例中,将目标结构体和目标po的指针集合作为写入消息,添加到消息槽,包括:

7、计算目标结构体中的五元组的哈希值,并基于哈希值和消息槽的槽总数,确定目标结构体对应的槽编号,其中,五元组包括:源ip、目的ip、源端口、目的端口、协议号;

8、当确定槽编号对应的目标槽单元的容量未满时,将目标结构体和目标po的指针集合作为写入消息,采用链表头插法添加到目标槽单元。

9、通过上述方法,将解析出数据流信息通过单链表方式,添加到消息槽的每个槽单元,不同于传统的哈希桶整体加锁,采用对消息槽的每个槽单元加细粒度锁,当一个线程读写消息槽时,只是锁住消息槽的一个槽单元,不影响其它线程读写消息槽的其它槽单元,达到多生产多消费高性能,极大地避免了多线程同步锁冲突的发生。

10、在一种可能的实施例中,方法还包括:

11、当确定目标槽单元的容量已满时,从目标槽单元的下一个槽单元开始,遍历消息槽的各槽单元;

12、若遍历过程中,找到容量未满的槽单元,则将写入消息,采用链表头插法添加到容量未满的槽单元;

13、若遍历结束,未找到容量未满的槽单元,则将目标槽单元的容量进行扩容,并将写入消息,采用链表头插法添加到扩容后的目标槽单元。

14、通过上述方法,不同于消息队列的固定长度,消息槽的每个槽单元的深度,支持扩缩容,在极限情况下,目标槽单元的容量已满且找不到有剩余容量的其他槽单元,可以扩容目标槽单元的容量,保证了对数据流信息的存储。

15、在一种可能的实施例中,基于待处理消息,更新双链表和大顶堆,包括:

16、基于待处理消息中的指针集合中包含的待处理po的双链表位置指针,将双链表中待处理po的节点移动到双链表的头节点;

17、对待处理po的访问热度值进行更新,基于访问热度值和待处理消息中的指针集合中包含的待处理po的大顶堆位置指针,对大顶堆中待处理po的节点位置进行更新。

18、通过上述方法,实现了最新访问po的查询,最新访问po将会放到链头,使最新访问po查询具有实时性,实现了po的热度实时查询,将访问热度值最大的热点po,推到堆顶位置,使热点po的查询具有实时性,对系统其它业务性能影响较小,为用户提供准确的信息,方便安全人员查看热度po和最新访问po,调整安全策略。

19、在一种可能的实施例中,方法还包括:

20、基于待处理消息中的指针集合中包含的待处理po的信息位置指针,将待处理消息中的待处理结构体中包含的字节数和数据包数,累加到待处理po对应的子网计数器和ip主机计数器。

21、通过上述方法,能够保证每个po中的子网计数器和主机计数器的计数准确。

22、在一种可能的实施例中,方法还包括:

23、采用第三线程组,对po组中包含的各po,分别执行以下操作:

24、计算当前时间周期下,一个po所防护的ip子网和ip主机的监控指标的目标值,其中,监控指标包括:比特每秒bps和/或包每秒pps;

25、若目标值大于对应的监控指标阈值,则向目标对象发送告警信息。

26、通过上述方法,能够准确告警。

27、在一种可能的实施例中,计算当前时间周期下,一个po所防护的子网和ip主机的监控指标的目标值,包括:

28、获得当前时间周期下,一个po所防护的ip子网和ip主机的监控指标的初始值;

29、根据前一时间周期下,一个po所防护的ip子网和ip主机的监控指标的历史值,以及初始值和影响因子,确定目标值。

30、通过上述方法,抑制了瞬时数据带来的毛刺,极大地降低了误告警的发生,分析流量趋势的变化,便于安全人员针对流量趋势变化,及时调整安全策略。

31、第二方面,提供一种报文处理装置,装置包括:

32、解析模块,用于采用第一线程组,解析netflow报文,获得数据流信息,并将数据流信息封装成目标结构体,以及当确定防护对象po组中存在目标结构体对应的目标po时,将目标结构体和目标po的指针集合作为写入消息,添加到本文档来自技高网...

【技术保护点】

1.一种报文处理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述将所述目标结构体和所述目标PO的指针集合作为写入消息,添加到消息槽,包括:

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述基于所述待处理消息,更新双链表和大顶堆,包括:

5.根据权利要求1所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述方法还包括:

7.根据权利要求6所述的方法,其特征在于,所述计算当前时间周期下,一个PO所防护的子网和IP主机的监控指标的目标值,包括:

8.一种报文处理装置,其特征在于,包括:

9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1~7中任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1~7中任一项所述方法的步骤。

...

【技术特征摘要】

1.一种报文处理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述将所述目标结构体和所述目标po的指针集合作为写入消息,添加到消息槽,包括:

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述基于所述待处理消息,更新双链表和大顶堆,包括:

5.根据权利要求1所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述方法还包括:

<...

【专利技术属性】
技术研发人员:张熹常力元佟欣哲潘永波
申请(专利权)人:天翼安全科技有限公司
类型:发明
国别省市:

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

1