一种深度报文检测方法及设备的制作方法

文档序号:7936619阅读:252来源:国知局
专利名称:一种深度报文检测方法及设备的制作方法
技术领域
本发明涉及通信技术领域,具体地说更涉及一种深度报文检测方法及设备。
背景技术
DPI (深度报文检测,De印Packet Inspection)是指对TCP/IP包超出报文头部的部分进行多维分析,包括报文数据分析、流分析和应用行为分析等等。相对于深度报文检测,传统的“浅度”包检测只能够识别IP地址、IP数据段长度、TCP流系列号等网络协议报头数据。而深度报文检测则通过对应用层的协议数据进行分析,可以检测到一个IP数据段所属的应用,比如网页浏览,并由此触发针对应用的动作。但对于应用的内容(比如一个网页的内容)的高效分析,现有深度报文检测技术中尚不能很好的解决,原因如下首先,现有的深度报文检测方法,其数据挖掘的操作通常对不同的报文特征组合采取不同的动作,或仅仅对特定的报文特征组合采取一定的动作。这里所述的报文特征组合可以包括源IP地址,目的IP地址,源端口号,目的端口号,报文长度,应用层协议(如 HTTP)参数内容等等。而由于一个特征组合中任意一个特征的不同取值就意味着不同的数据挖掘操作(如收集或忽略),现有深度报文检测方法需要针对一个特征集合中每个特征在一个报文中的取值进行逐个比较分析,最终判断对此报文应该采取什么样的操作,这样的串行判断引入了额外的处理时延开销。如果将该数据挖掘方法应用于一个高负载网络的网关或交换机中,这些额外的处理时延开销将在此网关或交换机中造成拥塞,从而导致掉包或数据丢失。另外,现有的深度报文检测在获得一个报文从MAC层到应用层的多个特征参数的取值后,对这些特征值的集合进行精确判断,并据此触发相应的数据挖掘操作,比如对{源 IP地址,端口号}为{192.168.0.1,123}的报文执行路由重定向操作。而由于报文的数据通常并不存在一个精确的指标(比如一个网页的内容)供深度报文检测进行精确判断,因此,现有深度报文检测技术对报文的处理范畴只能最多深入到应用层的协议参数,这就大为限制了深度报文检测的应用范围。

发明内容
本发明实施例的目的是为了克服目前深度报文检测技术的不足,从而提出另一种深度报文检测方法及设备,以将深度报文检测的内容扩展到报文应用层数据,并提高报文检测的效率,降低报文检测的时延,防止包丢失或数据丢失。为了达到上述发明目的,本发明实施例提出的一种深度报文检测方法是通过以下技术方案实现的一种深度报文检测方法,所述方法包括以报文所携带的应用数据为输入,计算得出所述报文的指纹,并与一个预设的指纹进行汉明距离比较,得到模糊判断的结果;
同时以所述报文头部及应用层协议参数的特征集合,计算获得所述报文的哈希值,并与一个预设的特征值进行比较,得到精确判断的结果;分别根据所述模糊判断和精确判断的结果,和预先设定的数据规则,进行相应的数据挖掘操作。为了实现前述发明目的,本发明实施例还提出了一种深度报文检测设备,所述深度报文检测设备是通过以下的技术方案实现的一种深度报文检测设备,所述设备包括交换平面,用于将从网口收到的报文转发给应用识别模块处理;应用识别模块,用于接收所述报文,并对所述报文进行运用分类,并按照预先配置的识别规则,将需要深度检测的报文,转发给模糊并行判断模块;模糊并行判断模块,用于处理来自应用识别模块的报文,对报文头部或应用层协议参数进行hash计算,并从报文的应用数据中提取报文指纹,并将提取到的特征组合与一个预设的特征组合并行进行精确判断和模糊判断;数据规则表,用于存储所述精确判断和模糊判断的结果的不同组合所对应的数据挖掘操作。本发明实施例通过提供一种深度报文检测方法及设备,进行高效的深度报文检测,实现对流经该设备的、属于特定应用的网络报文数据进行模糊并行判断,并根据判断结果执行复制,重定向,分析,统计,修改等数据挖掘相关操作。相比于现有的深度报文检测技术,本发明实施例将深度报文检测的覆盖范围扩展到报文的应用数据,并进行数据相似度比较,进行高效的模糊判断并根据判断结果执行相应的数据挖掘操作;另外,并行进行对报文头部的多维分析以及报文内容的模糊判断,从而显著降低了对IP报文进行深度报文检测所需要的延时。


通过下面结合附图对其示例性实施例进行的描述,本发明上述特征和优点将会变得更加清楚和容易理解。图1为本发明实施例一种深度报文检测方法流程图;图2为本发明实施例深度报文检测模糊判断和精确判断的实施示意图;图3为本发明实施例一种深度报文检测设备的示意图;图4为本发明实施例另一种深度报文检测设备的组成示意图;图5为本发明实施例深度报文检测设备应用时钟同步的实施示意图。
具体实施例方式下面结合附图对本发明作进一步详细说明。如图1所示,为本发明实施例一种深度报文检测方法,所述方法包括S101.以报文所携带的应用数据为输入,计算得出所述报文的指纹,并与一个预设的指纹进行汉明距离比较,得到模糊判断的结果;S102.同时以报文头部及应用层协议参数的特征集合,计算获得所述报文的哈希值,并与一个预设的值进行比较,得到精确判断的结果;
4
S103.分别根据所述模糊判断和精确判断的结果,和预先设定的数据规则,进行相应的数据挖掘操作。如图2所示,作为本发明的一种实施方式,本发明实施例所揭示的模糊并行判断的深度报文检测方法利用现有的文本相似度比较技术,比如simhash[l][2]或 shingling[3]技术,以一个报文所携带的应用数据为输入,计算提取一个报文指纹,并与一个预设的指纹进行汉明距离比较,从而实现模糊判断。而对于报文头部及应用层协议参数的特征集合则采取普通的哈希(Hash)算法计算,获得一个哈希值,并也与一个预设的值进行比较,实现精确判断。这样,多个特征参数的计算比较(精确判断)与多个字节的报文内容的相似度比较(模糊判断)同时进行,从而实现并行判断。具体说来,本发明实施例提出的基于模糊并行判断的深度报文检测方法的关键步骤如下1、预先设定一个特征组合作为执行某次数据挖掘操作的比较标准,比如报文IP 地址为192. 168.0. 1,报文内容接近于” She is nice”;2、对预设的特征组合分别进行Hash和Simhash (或类似的算法)操作,获得特征值ho和f0。其中ho用来作为精确判断(比如”报文IP地址为192.168.0.1”)的比较标准。f0作为模糊判断的比较标准,比如对于任何与f0的汉明距离(Hamming Distance)小于等于3的报文指纹,其代表的报文内容都视为接近于”She is nice”,其中,汉明距离可以灵活根据实际应用设置,并不限于3 ;3、对每个输入的报文进行跟步骤2类似的哈希算法计算,得出输入报文的特征值 hi 禾口 η ;4、将从每个输入报文上所产生的对应特征值组合与预设的特征组合并行进行精确判断(即对hl,h0进行简单的大于,小于,等于等逻辑判断)和模糊判断(即对fl,f0进行求汉明距离计算-HD(fl,f0))5、根据判断结果实现不同的数据挖掘操作。如图2所示,对输入报文N-I进行并行的精确和模糊判断后所对应的为数据挖掘操作1 ;而对输入报文N,由于其报文指纹fl相对于预设特征指纹的汉明距离大于3,进行并行的精确和模糊判断后所对应的为数据挖掘操作2。作为模糊判断的判断标准,汉明距离代表的是一个可根据具体应用改变的指标, 图2中的HD(fl,f0) <=3只是一个示例,实际应用中可根据不同的报文内容相似度的定义而做不同设置。本发明实施例通过提供一种深度报文检测方法,进行高效的深度报文检测,实现对流经该设备的、属于特定应用的网络报文数据进行模糊并行判断,并根据判断结果执行复制、重定向、分析、统计、修改等数据挖掘相关操作。相比于现有的深度报文检测技术,本发明实施例将深度报文检测的覆盖范围扩展到报文的应用数据,并进行数据相似度比较, 进行高效的模糊判断并根据判断结果执行相应的数据挖掘操作;另外,并行进行对报文头部的多维分析以及报文内容的模糊判断,从而显著降低了对IP报文进行深度报文检测所需要的延时。另外,如图3所示,本发明实施例还提供了一种深度报文检测设备,所述设备包括交换平面,用于将从网口收到的报文转发给应用识别模块处理;应用识别模块,用于接收所述报文,并对所述报文进行运用分类,并按照预先配置的识别规则,将需要深度检测的报文,转发给模糊并行判断模块;模糊并行判断模块,用于处理来自应用识别模块的报文,对报文头部或应用层协议参数进行hash计算,并从报文的应用数据中提取报文指纹,并将提取到的特征组合与一个预设的特征组合并行进行精确判断和模糊判断;数据规则表,用于存储所述精确判断和模糊判断的结果的不同组合所对应的数据挖掘操作。如图3所示为本发明的一个具体实施实例,该实施例可以作为一个具有深度报文检测功能,通过多个(^bit网络接口以局域网(LAN)或广域网(WAN)链接的2_7层报文转发设备,所具有的主要模块说明如下交换平面100将从RX接口接收到的报文转发给应用识别模块101处理,对于从各 TX接口输入的报文则根据报文的MAC或IP地址转发往一个(ibit网口。应用识别模块101从RX接口输入报文,并采用普通的深度报文检测应用识别技术,对报文进行运用分类。然后按照一个可配置的规则,对一部分应用(如FTP下载)的报文不做后续处理,而直接通过TX接口返回给交换平面100。如果是一些重点观察运用(如 http web浏览)的报文,则转发给模糊并行判断模块102。模糊并行判断模块102处理来自应用识别模块101的报文,按照前述深度报文检测方法所描述的过程,对报文头部或应用层协议参数进行hash计算,并从报文内容中提取报文指纹(采用simhash或类似方法),并将提取到的特征组合与一个预设的特征组合并行进行精确判断和模糊判断。数据规则表103用来存储不同的精确判断和模糊判断结果的不同组合所对应的数据挖掘操作,模糊并行判断模块102输出的精确和模糊判断结果在此模块映射为不同的操作,比如报文重定向,报文拷贝等。数据挖掘操作模块104则执行数据规则表103所输出的不同操作。进一步优选地,该设备还包括主控模块105,通过一个高速数据通道如PCIE总线, 和101-104模块交互,用于自定义或实时配置运用识别规则,并行模糊判断的预设特征组合,数据规则表及其映射的数据挖掘操作。本发明实施例通过提供一种深度报文检测设备,进行高效的深度报文检测,实现对流经该设备的、属于特定应用的网络报文数据进行模糊并行判断,并根据判断结果执行复制、重定向、分析、统计、修改等数据挖掘相关操作。相比于现有的深度报文检测技术,本发明实施例将深度报文检测的覆盖范围扩展到报文的应用数据,并进行数据相似度比较, 进行高效的模糊判断并根据判断结果执行相应的数据挖掘操作;另外,并行进行对报文头部的多维分析以及报文内容的模糊判断,从而显著降低了对IP报文进行深度报文检测所需要的延时。如图5所示,为本发明实施例深度报文检测设备应用于时钟同步的协同操作,增加IEEE1588时钟同步模块200,时钟同步模块200与网络中的IEEE1588主时钟203按照 IEEE1588协议[4]通过时钟同步报文进行交互,从而实现微妙级别的分布式精确时间同步。时钟同步模块200可以为所述深度报文检测设备的数据挖掘操作模块104提供高精度的时间戳。根据时钟同步报文在上一个深度报文检测设备(201)接受数据挖掘操作的高精度时间戳,下游深度报文检测设备(20 在这个报文进行处理时,可以根据已经同步了的本地时间,进行与时间相关的各项操作,比如进行201- > 202的单向报文传播延时测量, 支持限定时间间隔的对同一报文的数据挖掘操作,或者根据上一次操作的类型和发生的时间,确定在当前时间所要进行的操作。另外,本发明实施例还可以运用在网络防火墙,网络入侵检测,网络单向延时测量,互联网用户行为分析系统,互联网应用识别及数据统计分析等领域中,以实现网络报文的应用分析,提高报文转发效率。本发明所属领域的一般技术人员可以理解,本发明以上实施例仅为本发明的优选实施例之一,为篇幅限制,这里不能逐一列举所有实施方式,任何可以体现本发明权利要求技术方案的实施,都在本发明的保护范围内。需要注意的是,以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施方式
仅限于此,在本发明的上述指导下,本领域技术人员可以在上述实施例的基础上进行各种改进和变形,而这些改进或者变形落在本发明的保护范围内。
权利要求
1.一种深度报文检测方法,其特征在于,所述方法包括以报文所携带的应用数据为输入,计算得出所述报文的指纹,并与一个预设的指纹进行汉明距离比较,得到模糊判断的结果;同时以所述报文头部及应用层协议参数的特征集合,计算获得所述报文的哈希值,并与一个预设的特征值进行比较,得到精确判断的结果;分别根据所述模糊判断和精确判断的结果,和预先设定的数据规则,进行相应的数据挖掘操作。
2.如权利要求1所述的方法,其特征在于,所述方法还包括对所述的应用数据进行Simhash计算,获得报文指纹,并与所述由报文头部及应用层协议参数计算而来的哈希值作为一个特征组合,作为执行数据挖掘操作的判断依据。
3.如权利要求2所述的方法,其特征在于,所述汉明距离根据应用报文的内容相似度设置。
4.如权利要求3所述的方法,其特征在于,所述预先设定的数据规则存储于一数据规则表中,所述数据规则表存储所述精确判断和模糊判断的结果的不同组合所对应的不同数据挖掘操作。
5.如权利要求1至4任意一项所述的方法,其特征在于,所述报文包括同步时钟报文, 所述同步时钟报文用来同步本地时间,并根据所述同步时钟报文的模糊判断和精确判断的结果,进行与时间相关的预定操作。
6.如权利要求5所述的方法,其特征在于,所述同步本地时间具体包括利用一时钟同步模块,与网络中的IEEE1588主时钟根据IEEE1588协议通过所述时钟同步报文进行本地时间的同步。
7.一种深度报文检测设备,其特征在于,所述设备包括交换平面,用于将从网口收到的报文转发给应用识别模块处理;应用识别模块,用于接收所述报文,并对所述报文进行运用分类,并按照预先配置的识别规则,将需要深度检测的报文,转发给模糊并行判断模块;模糊并行判断模块,用于处理来自应用识别模块的报文,对报文头部或应用层协议参数进行hash计算,并从报文的应用数据中提取报文指纹,并将提取到的特征组合与一个预设的特征组合并行进行精确判断和模糊判断;数据规则表,用于存储所述精确判断和模糊判断的结果的不同组合所对应的数据挖掘操作。
8.如权利要求7所述的设备,其特征在于,所述设备还包括主控模块,用于自定义或实时配置所述识别规则,并行模糊判断的预设特征组合,数据规则表及其映射的数据挖掘操作。
9.如权利要求8所述的设备,其特征在于,所述设备还包括数据挖掘操作模块,用于执行数据规则表所输出的数据挖掘操作。
10.如权利要求7至9任意一项所述的设备,其特征在于,所述设备还包括时钟同步模块,用来与网络中的IEEE1588主时钟根据IEEE1588协议通过所述报文进行本地时间的同步,为所述数据挖掘操作模块提供时间戳,其中,所述报文为时钟同步报文。
全文摘要
本发明实施例公开了一种深度报文检测方法及设备,用于网络通信和数据挖掘领域,所述方法包括以报文所携带的应用数据为输入,计算得出所述报文的指纹,并与一个预设的指纹进行汉明距离比较,得到模糊判断的结果;同时以报文头部及应用层协议参数的特征集合,计算获得所述报文的哈希值,并与一个预设的特征值进行比较,得到精确判断的结果;分别根据所述模糊判断和精确判断的结果,和预先设定的数据规则,进行相应的数据挖掘操作。通过本发明实施例,实现将深度报文检测的覆盖范围扩展到报文应用层数据,实现模糊判断,并提高报文检测的效率,降低报文检测的时延,防止包丢失或数据丢失。
文档编号H04L12/26GK102413007SQ20111030757
公开日2012年4月11日 申请日期2011年10月12日 优先权日2011年10月12日
发明者李卓群 申请人:上海奇微通讯技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1