[发明专利]一种PCRE热切换方法、网络设备及存储介质有效
申请号: | 201911401847.X | 申请日: | 2019-12-30 |
公开(公告)号: | CN111162947B | 公开(公告)日: | 2022-08-12 |
发明(设计)人: | 杜晓宇 | 申请(专利权)人: | 北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司 |
主分类号: | H04L41/082 | 分类号: | H04L41/082;H04L9/40;G06F16/9035;G06F9/54 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 蒋姗 |
地址: | 100000 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 pcre 切换 方法 网络设备 存储 介质 | ||
1.一种PCRE热切换方法,其特征在于,应用于网络设备,所述网络设备包括:管理进程和多个工作进程,所述管理进程和所述多个工作进程中的每个工作进程均对应有同一个共享内存;所述方法包括:
所述管理进程将PCRE特征库加载至所述共享内存,更新所述共享内存中的全局数据指针的值,并保存每个工作进程的当前全局计数以及当前全局数据指针,其中,更新后的全局数据指针用于每个工作进程访问所述PCRE特征库;
所述管理进程定期获取每个工作进程各自的全局计数,并判断获取的全局计数相较于保存的所述当前全局计数是否均发生变化,其中,每个工作进程在根据所述PCRE特征库处理完成预设数量的报文处理时更新各自的全局计数;
在所有工作进程的全局计数均发生变化时,所述管理进程根据所述当前全局数据指针释放所述共享内存中已加载的PCRE特征库。
2.根据权利要求1所述的方法,其特征在于,在所述管理进程将PCRE特征库加载至所述共享内存之前,所述方法还包括:
在启动所述管理进程的过程中,所述管理进程初始化所述共享内存以及所述全局数据指针,并初始化每个工作进程各自的全局计数。
3.根据权利要求1或2所述的方法,其特征在于,所述管理进程将PCRE特征库加载至所述共享内存,包括:
所述管理进程在接收到特征库重载信号时,将所述PCRE特征库加载至所述共享内存。
4.一种PCRE热切换方法,其特征在于,应用于网络设备,所述网络设备包括:管理进程和多个工作进程,所述管理进程和所述多个工作进程中的每个工作进程均对应有同一个共享内存,所述管理进程,用于将PCRE特征库加载至所述共享内存,更新所述共享内存中的全局数据指针的值;所述方法包括:
针对每个工作进程,该工作进程在接收到待处理报文时,根据所述全局数据指针读取所述PCRE特征库中的特征数据,并利用所述特征数据对所述待处理报文进行处理;
统计已处理完成的报文数量;
在所述报文数量达到预设数量后,更新该工作进程的全局计数,所述全局计数用于指示所述管理进程是否释放所述共享内存中已加载的PCRE特征库,其中,在所有工作进程的全局计数均发生变化时指示所述管理进程释放所述共享内存中已加载的PCRE特征库。
5.根据权利要求4所述的方法,其特征在于,在根据所述全局数据指针读取所述PCRE特征库中的特征数据之前,所述方法还包括:
在启动该工作进程的过程中,该工作进程将所述共享内存映射到自身进程中的特定起始地址,并利用所述PCRE特征库提供的接口函数分配自身进程的即时编译堆栈。
6.一种网络设备,其特征在于,包括:
处理器,所述处理器上运行有管理进程和多个工作进程,所述管理进程和所述多个工作进程中的每个工作进程均对应有同一个共享内存;
所述管理进程,用于将PCRE特征库加载至所述共享内存,更新所述共享内存中的全局数据指针的值,并保存每个工作进程的当前全局计数以及当前全局数据指针,其中,更新后的全局数据指针用于每个工作进程访问所述PCRE特征库;
每个工作进程,均用于在接收到待处理报文时,根据所述全局数据指针读取所述PCRE特征库中的特征数据,并利用所述特征数据对所述待处理报文进行处理,待完成预设数量的报文处理后,更新自身的全局计数;
所述管理进程,还用于定期获取每个工作进程各自的全局计数,并判断获取的全局计数相较于保存的所述当前全局计数是否均发生变化,在所有工作进程的全局计数均发生变化时,根据所述当前全局数据指针释放所述共享内存中已加载的PCRE特征库。
7.根据权利要求6所述的网络设备,其特征在于,在启动所述管理进程的过程中,所述管理进程,还用于初始化所述共享内存以及所述全局数据指针,并初始化每个工作进程各自的全局计数。
8.根据权利要求6所述的网络设备,其特征在于,在启动每个工作进程的过程中,每个工作进程,均还用于将所述共享内存映射到自身进程中的同一起始地址,并利用所述PCRE特征库提供的接口函数分配自身进程的即时编译堆栈。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司,未经北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911401847.X/1.html,转载请声明来源钻瓜专利网。