【技术实现步骤摘要】
一种报文处理方法及网络安全设备
[0001]本申请涉及网络安全
,尤其涉及一种报文处理方法及网络安全设备。
技术介绍
[0002]当前,可通过某一过滤型网络安全设备实现对网络流量的过滤。例如,对于内部局域网,过滤型网络安全设备可以屏蔽终端对聊天应用、娱乐网站等与工作无关的网站的访问。过滤型网络安全设备通常部署在客户端与服务器之间,用于对客户端与服务器之间的网络报文进行过滤。其中,过滤型网络安全设备大多采用FPGA(现场可编程门阵列)与CPU(中央处理单元)相结合的架构模式,FPGA主要负责报文的接收与发送,以及与上游网络交换芯片的通信、与下游CPU的通信。CPU主要负责报文解析、会话新建、会话匹配以及报文过滤等业务相关的任务。
[0003]通常地,CPU在接收到输入报文时,首要任务会对输入报文的校验和进行计算和判断,以确保输入报文在网络传输过程中的完整性和正确性。在进行校验和计算时,例如,对于报文三层头(比如IPv4头,长度为20个字节)的校验和计算,由于需进行10次的内存访问操作和加法运算,会造成对CPU一定的占用。此外,在对报文四层头的校验和进行计算时,由于需要计算整个报文(报文最长约1500个字节)才能得到校验和,导致可能至少需要750次的内存访问和加法运算,这种情况下,不仅严重增加了CPU利用率,而且也增加了报文在CPU中的停留时间,从而降低了网络安全设备的过滤性能。
[0004]因此,如何解决CPU计算校验和时所导致的CPU使用率过高的问题,及减少报文在CPU中的停留时间是值得考虑的技 ...
【技术保护点】
【技术特征摘要】
1.一种报文处理方法,其特征在于,应用于网络安全设备包括的现场可编程门阵列FPGA中,所述网络安全设备还包括中央处理单元CPU,所述方法,包括:接收网络报文;对所述网络报文进行复制处理,得到复制报文;从所述网络报文中提取出用于计算校验和的目标数据;利用校验和叠加模型对所述目标数据进行处理,得到目标校验和;比对所述目标校验和与所述复制报文中的校验和;将比对结果及目标校验和封装到所述复制报文中并发送给所述CPU。2.根据权利要求1所述的方法,其特征在于,当需要对所述网络报文进行三层校验时,所述目标数据为报文三层首部数据;利用校验和叠加模型对所述目标数据进行处理,得到目标校验和,包括:对所述目标数据进行分组,得到若干组第一目标子数据,各组的第一目标子数据的位宽相同;将相邻两组的第一目标子数据进行求和处理,得到若干组第二目标子数据;将所述第二目标子数据作为新的第一目标子数据,并继续执行所述相邻两组的第一目标子数据进行求和处理,得到若干组第二目标子数据的步骤,直至最终得到一组第二目标子数据,记为第三目标子数据;根据用于三层校验的目标校验和的位宽,将所述第三目标子数据划分成高若干位的第一数据和低若干位的第二数据,其中,第二数据的位宽与所述用于三层校验的目标校验和的位宽相同;将所述第一数据和所述第二数据进行求和处理,得到第四目标子数据;若第四目标子数据的位宽与所述用于三层校验的目标校验和的位宽不相同,则将所述第四目标子数据当作所述第三目标子数据,并继续执行根据所述目标校验和的位宽,将所述第三目标子数l据划分成高若干位的第一数据和低若干位的第二数据的步骤,直至得到位宽与所述用于三层校验的目标校验和的位宽相同的第四目标子数据;根据位宽与所述目标校验和的位宽一致的第四目标子数据,确定用于三层校验的目标校验和。3.根据权利要求2所述的方法,其特征在于,根据位宽与所述用于三层校验的目标校验和的位宽一致的第四目标子数据,确定所述目标校验和,包括:对所述第四目标子数据进行取反处理,得到用于三层校验的目标校验和。4.根据权利要求1或2所述的方法,其特征在于,从所述网络报文中提取出用于计算校验和的目标数据,包括:当需要对所述网络报文进行四层校验时,从所述网络报文中提取出至少一个目标数据;其中,一个目标数据为基于所述网络报文中的报文四层首部数据和伪首部数据确定的,其他的目标数据为基于所述网络报文中的载荷数据划分得到的。5.根据权利要求4所述的方法,其特征在于,利用校验和叠加模型对所述目标数据进行处理,得到目标校验和,包括:针对每一目标数据,对该目标数据进行分组,得到若干组第一子数据,各组的第一子数
据的位宽相同;将相邻两组的第一子数据进行求和处理,得到若干组第二子数据;将所述第二子数据作为新的第一子数据,并继续执行所述相邻两组的第一子数据进行求和处理,得到若干组第二子数据的步骤,直至最终得到两组第二子数据,分别记为第三子数据和第四子数据;获取上一次计算得到的其他的目标数据的第五子数据;将所述第三子数据和所述第四子数据扩展成位宽与所述第五子数据的位宽一致的第一扩展数据和第二扩展数据;将所述第一扩展数据、第二扩展数据和所述第五子数据进行求和处理,得到该目标数据的第五子数据;根据该目标数据的第五子数据,确定用于四层校验的目标校验和。6.根据权利要求5所述的方法,其特征在于,根据该目标数据的第五子数据,确定用于四层校验的目标校验和,包括:若该目标数据为所述网络报文中最后一个用于执行所述利用校验和叠加模型对所述目标数据进行处理,得到目标校验和的步骤的数据,则根据所述用于四层校验的目标校验和的位宽,将所述第五子数据划分成高若干位的第三数据和低若干位的第四数据,其中,第四数据的位宽与所述用于四层校验的目标校验和的位宽相同;将所述第三数据和所述第四数据进行求和处理,得到第六子数据;若所述第六子数据的位宽与所述用于四层校验的目标校验和的位宽不同,则将所述第六子数据确定为新的第五子数据,并继续执行根据所述用于四层校验的目标校验和的位宽,将所述第五子数据划分成高若干位的第三数据和低若干位的第四数据的步骤,直至得到位宽与所述用于四层校验的目标校验和的位宽相同的第六子数据;将所述第六子数据进行取反处理,得到所述用于四层校验的目标校验和。7.一种网络安全设备,其特征在于,包括:现场可编程门阵列FPGA和中央处理单元CPU,所述FPGA包括:第一通信模块,用于接收网络报文;校验和生成模块,用于对所述网络报文进行复制处理,得到复制报文;从所述网络报文中提取出用于计算校验和的目标数据;利用校验和叠加模型对所述目标数据进行处理,得到目标校验和;比对所述目标校验和与所述复制报文...
【专利技术属性】
技术研发人员:王亚春,
申请(专利权)人:新华三信息安全技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。