[发明专利]一种深度报文检测方法、设备及协处理器在审
申请号: | 201310337064.6 | 申请日: | 2013-08-05 |
公开(公告)号: | CN104348677A | 公开(公告)日: | 2015-02-11 |
发明(设计)人: | 艾维·菲尔;丹尼尔·莫斯科维奇;艾米尔·扎克;莫默 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L12/26 | 分类号: | H04L12/26 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 深度 报文 检测 方法 设备 处理器 | ||
技术领域
本发明实施例涉及计算机技术,尤其涉及一种深度报文检测方法、设备及协处理器。
背景技术
深度报文检测(Deep Packet Inspection,简称DPI)技术作为网络入侵检测及应用层协议识别的核心技术,在网络与信息安全领域中发挥着日益重要的作用。DPI技术通过特征匹配算法实现对数据包的深入分析,以获得数据包的应用信息,从而实现网络优化、应用流量控制和安全检测等业务。
现有技术中,通常通过通用处理器来实现DPI业务,通用处理器中集成有匹配器,通用处理器由软件逻辑驱动匹配器来实现特征匹配。由于通用处理器往往不是专门为DPI业务而设计的,因此,为了保证通用性要求,其集成的匹配器一般也只支持通用的匹配算法,比如正则表达式匹配算法,而不能支持专门为DPI业务所设计的匹配算法,从而导致匹配性能不佳,成为业务处理的瓶颈。而且,所有的DPI业务都在通用处理器中实现,由于通用处理器资源有限,限制了DPI业务的性能。如图1所示,现有技术中DPI业务的另一种实现方式是是把DPI业务逻辑固化到硬件中去,此硬件实体可以是FPGA(Field-Programmable Gate Array,现场可编程门阵列),或者ASIC(Application Specific Integrated Circuit,专用集成电路)。例如,某设备的DPI业务逻辑分三个步骤:一、端点表匹配;二、IP端口识别;三、应用层报文文本特征匹配;四、复杂的解码后识别。可以把前三个步骤都固化到硬件逻辑中去实现,而步骤四逻辑很复杂,无法通过硬件逻辑来实现,则遗留给通用处理器来完成。可以看出,通过硬件实现逻辑固化,扩展性差:DPI业务逻辑(如上例的三个步骤变成四个步骤或者调整顺序)发生变化时,都需要重新编写硬件代码、仿真再发布到现网设备中。难以快速适应网络流量变化;而且,由于DPI业务逻辑的多个步骤分别由通用处理器用软件实现和硬件加速芯片逻辑实现,不可避免的多次通用处理器与硬件加速芯片之间的交互,导致DPI处理的时延很大。
发明内容
本发明实施例提供一种深度报文检测方法、设备及协处理器,以提高DPI的性能和扩展性。
第一方面,本发明实施例提供一种深度报文检测方法,包括:
协处理器的收发模块接收通用处理器发送的原始数据包,将所述原始数据包发送给所述协处理器的处理器核;所述处理器核调用所述协处理器的至少一个子协处理器对所述原始数据包进行应用层解析,得到所述原始数据包的应用层解析结果,所述应用层解析结果用于表示所述原始数据包的应用层信息;所述处理器核将所述应用层解析结果发送给所述通用处理器,以使所述通用处理器根据所述应用层解析结果对所述原始数据包进行处理。
在第一种可能的实现方式中,在所述协处理器的收发模块接收所述通用处理器发送的原始数据包之后,在将所述原始数据包发送给所述协处理器的处理器核之前,所述方法还包括:对所述原始数据包进行流处理;所述将所述原始数据包发送给所述处理器核,包括:将流处理后的数据包发送给所述处理器核;所述处理器核调用所述协处理器的至少一个子协处理器对所述原始数据包进行应用层解析,得到所述原始数据包的应用层解析结果,包括:所述处理器核调用所述协处理器的至少一个子协处理器对所述流处理后的数据包应用层解析,得到所述原始数据包的应用层解析结果。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述收发模块的流处理子模块对所述原始数据包进行流处理,包括:所述流处理子模块对所述原始数据包进行IP分片报文重组处理和TCP乱序报文重排处理。
结合第一方面,在第三种可能的实现方式中,所述协处理器中设置有至少两个处理器核;所述将所述原始数据包发送给所述协处理器的处理器核,包括:
根据每个所述处理器核的负荷情况从所述至少两个处理器核中选择一个处理器核,将所述原始数据包发送给被选择的处理器核。
结合第一方面,在第四种可能的实现方式中,所述处理器核调用所述协处理器的至少一个子协处理器对所述原始数据包进行应用层解析,具体包括:
所述处理器核通过所述协处理器的交换总线模块调用所述协处理器的至少一个子协处理器对所述原始数据包进行应用层解析。
结合第一方面,在第五种可能的实现方式中,所述处理器核调用所述协处理器的至少一个子协处理器对所述原始数据包进行应用层解析,得到所述原始数据包的应用层解析结果,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310337064.6/2.html,转载请声明来源钻瓜专利网。