特征码失效检测方法及系统转让专利

申请号 : CN201110099505.4

文献号 : CN102136952B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 魏逢一

申请人 : 北京星网锐捷网络技术有限公司

摘要 :

本发明提供特征码失效检测方法及系统。该方法包括:DPI设备基于应用协议的特征码对数据流进行DPI识别,生成识别结果统计信息表;所述DPI设备将所述识别结果统计信息表发送至服务器;所述服务器对预定时段内获取的所述识别结果统计信息表进行分析,获取所述应用协议的可识别率的下降参数并判断所述下降参数是否达到预定标准,若达到,则获知所述应用协议的特征码失效。本发明的特征码失效检测方法及系统能够实现准确、高效的特征码有效性自动检测。

权利要求 :

1.一种特征码失效检测方法,其特征在于,包括:

步骤S1,深入包检测DPI设备基于应用协议的特征码对数据流进行DPI识别,生成识别结果统计信息表;

步骤S2,所述DPI设备将所述识别结果统计信息表发送至服务器;

步骤S3,所述服务器对预定时段内获取的所述识别结果统计信息表进行分析,获取所述应用协议的可识别率的下降参数并判断所述下降参数是否达到预定标准,若达到,则获知所述应用协议的特征码失效。

2.根据权利要求1所述的特征码失效检测方法,其特征在于,所述识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地,所述步骤S3包括:所述服务器根据所述预定时段内的所述应用协议的流量信息,获取各DPI设备在所述预定时段内识别的各应用协议的流量均值及在当前周期内各应用协议的流量值,若在至少预定数量的所述DPI设备中,所述应用协议的当前周期的流量值低于所述流量均值达到第一阀值,则获知所述应用协议的特征码失效。

3.根据权利要求1所述的特征码失效检测方法,其特征在于,所述识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地,所述步骤S3包括:根据所述预定时段内的所述应用协议的流量信息,获取在预定时段内,全部DPI设备识别的各应用协议的累计流量均值及在当前周期内的累计流量,若所述当前周期内的累计流量低于所述累计流量均值达到第二阀值,则获知所述应用协议的特征码失效。

4.根据权利要求1所述的特征码失效检测方法,其特征在于,所述识别结果统计信息表中包括所述DPI设备对数据流进行识别的应用识别信息,相应地,所述步骤S3包括: 根据所述应用协议的应用识别信息,获取在临近应用协议特征码发布的特定时段内,特定数据流中被识别成该应用协议的第一比例值;并获取在当前周期内,所述特定数据流中被识别成该应用协议的第二比例值;若所述第二比例值低于所述第一比例值达到第三阀值,则获知所述应用协议的特征码失效。

5.根据权利要求4所述的特征码失效检测方法,其特征在于,所述特定数据流为DPI设备与某外网IP、外网端口或外网IP和外网端口之间的TCP或UDP通信数据流。

6.一种特征码失效检测系统,其特征在于,包括服务器和与所述服务器连接的多个深度包检测DPI设备,其中: 所述DPI设备用于基于应用协议的特征码对数据流进行DPI识别,生成识别结果统计信息表,并将所述识别结果统计信息表发送至服务器; 所述服务器用于对预定时段内获取的所述识别结果统计信息表进行分析,获取所述应用协议的可识别率的下降参数并判断所述下降参数是否达到预定标准,若达到,则获知所述应用协议的特征码失效。

7.根据权利要求6所述的特征码失效检测系统,其特征在于,所述识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地,所述服务器包括:第一统计分析模块,用于根据所述预定时段内的所述应用协议的流量信息,获取各DPI设备在所述预定时段内识别的各应用协议的流量均值及在当前周期内各应用协议的流量值;

第一判断模块,用于若判断获知在至少预定数量的所述DPI设备中,所述应用协议的当前周期的流量值低于所述流量均值达到第一阀值,则获知所述应用协议的特征码失效。

8.根据权利要求6所述的特征码失效检测系统,其特征在于,所述识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地, 所述服务器包括:第二统计分析模块,用于根据所述预定时段内的所述应用协议的流量信息,获取在预定时段内,全部DPI设备识别的各应用协议的累计流量均值及在当前周期内的累计流量;

第二判断模块,用于若判断获知所述当前周期内的累计流量低于所述累计流量均值达到第二阀值,则获知所述应用协议的特征码失效。

9.根据权利要求6所述的特征码失效检测系统,其特征在于,所述识别结果统计信息表中包括所述DPI设备对数据流进行识别的应用识别信息,相应地,所述服务器包括:第三统计分析模块,用于根据所述应用协议的应用识别信息,获取在临近应用协议特征码发布的特定时段内,特定数据流中被识别成该应用协议的第一比例值;并获取在当前周期内,所述特定数据流中被识别成该应用协议的第二比例值;

第三判断模块,用于若判断获知所述第二比例值低于所述第一比例值达到第三阀值,则获知所述应用协议的特征码失效。

10.根据权利要求9所述的特征码失效检测系统,其特征在于,所述特定数据流为DPI设备与某外网IP、外网端口或外网IP和外网端口之间的TCP或UDP通信数据流。

说明书 :

特征码失效检测方法及系统

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种特征码失效检测方法及系统。

背景技术

[0002] 近年来,互联网技术的高速发展使得广域网上承载的应用种类和应用量在不断增加,例如网页浏览、网络游戏、视频会议、VOIP(Voice Over Internet Protocol,网络电话)、电子邮件、P2P(Peer-to-Peer,点对点)应用等等。而企业、网吧、学校等接入广域网的链路出口带宽往往是有限的,为了合理、有效地分配这有限的广域网链路带宽,优先保证关键应用的正常运作,广域网接入网关设备通常需要将其承载的应用数据流分门别类,进而根据应用优先级来进行QOS(Quality of Service,服务质量)控制,最终实现优先保证关键应用带宽需求的目的。因此数据流应用协议的识别成了如今网关设备一项不可或缺的重要功能。
[0003] 应用识别是指对网络中的数据流量进行分析,从而识别出数据流的应用协议类型的一种技术。传统的应用识别采用的是端口识别,这种识别能达到较高的性能,但是现在大量的应用层协议为了避免识别,逃避防火墙的检查,不再使用固定端口进行通信,比如BitTorrent、eMule等P2P协议,其采用动态端口进行通信,越来越多诸如此类协议的产生,使得端口识别已无能无力,并且端口识别通常有较高的误判率,因此近年来很多的研究工作都致力于开发新的方法来识别应用层协议,DPI技术便是目前应用极为广泛的一种应用识别技术。
[0004] 深度包检测(DPI)技术在分析数据包头的基础上,增加了对应用层数据的分析,当IP数据包、TCP或UDP数据流经过基于DPI技术的网络设备时,DPI引擎通过深入读取IP包载荷的内容来对OSI 7层协议中的应用层信息进行分析,从而识别出IP包的应用层协议。针对不同的协议类型,DPI识别技术可划分为基于“特征码”的识别技术,应用层网关识别技术和行为模式识别技术,其中,基于“特征码”的识别技术是最为常用的一种。当基于应用协议的“特征码”进行DPI识别时,“特征码”的准确率决定了DPI识别的准确率。而通常情况下,应用协议的“特征码”有可能因为软件的更新换代而发生变化,如果DPI设备不能及时更新该应用协议的特征码,就会导致该应用的数据流无法识别或识别不全。
[0005] 现有技术中,通常由DPI设备的维护人员(通常是DPI设备的厂商)定期以手工的方式验证应用协议的特征码是否发生变化。这种方法会给维护人员带来很大的工作量,而且效率很低下,如果验证不够及时的话,就会使得特征码的更新不够及时,最终影响到DPI识别的准确率。

发明内容

[0006] 针对上述缺陷,本发明提供一种特征码失效检测方法及系统,以实现准确、高效的特征码有效性自动检测。
[0007] 本发明提供一种特征码失效检测方法,其特征在于,包括:
[0008] 步骤S1,DPI设备基于应用协议的特征码对数据流进行DPI识别,生成识别结果统计信息表;
[0009] 步骤S2,所述DPI设备将所述识别结果统计信息表发送至服务器;
[0010] 步骤S3,所述服务器对预定时段内获取的所述识别结果统计信息表进行分析,获取所述应用协议的可识别率的下降参数并判断所述下降参数是否达到预定标准,若达到,则获知所述应用协议的特征码失效。
[0011] 根据本发明的另一方面,还提供一种特征码失效检测系统,包括服务器和与所述服务器连接的多个DPI设备,其中:
[0012] 所述DPI设备用于基于应用协议的特征码对数据流进行DPI识别,生成识别结果统计信息表,并将所述识别结果统计信息表发送至服务器;
[0013] 所述服务器用于对预定时段内获取的所述识别结果统计信息表进行分析,获取所述应用协议的可识别率的下降参数并判断所述下降参数是否达到预定标准,若达到,则获知所述应用协议的特征码失效。
[0014] 根据本发明的特征码失效检测方法及系统,通过由DPI设备生成识别结果统计信息表,并由服务器定期对与其连接的所有DPI设备的识别结果统计信息表进行整合处理,以根据预定标准来判断各种应用协议的特征码是否已失效,能够及时、有效地对特征码是否失效进行自动检测,从而确保DPI识别的准确率。

附图说明

[0015] 图1为应用本发明特征码失效检测方法的网络架构图。
[0016] 图2为本发明特征码失效检测方法的流程图。
[0017] 图3为流量曲线图的示意图。

具体实施方式

[0018] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图,对本发明的技术方案进行清楚、完整地描述。
[0019] 图1为应用本发明特征码失效检测方法的网络架构图。如图1所示,该网络中包括服务器(云服务器)和与服务器连接的多个DPI设备(云端)。其中,DPI设备分布于互联网(Internet)的各个地方,每一个DPI设备都是云服务器的一个客户端,并且与一个特定的企业、网吧或学校的局域网相连,其对特定企业、网吧或学校访问Internet的数据流进行识别,以做相应的服务质量保证(QOS)流量控制,从而优先保证关键应用的正常运作。
[0020] 图2为本发明特征码失效检测方法的流程图。如图2所示,该特征码失效检测方法包括以下步骤:
[0021] 步骤S1,DPI设备基于应用协议的特征码对数据流进行DPI识别,生成识别结果统计信息表;
[0022] 具体地,DPI设备对所有流经设备的数据流进行基于特征码的DPI识别,根据识别结果生成预定周期(Period_flowrate周期)内的识别结果统计信息表,该识别结果统计信息表中例如包括所述DPI设备识别出应用协议的流量信息和/或对数据流的应用识别信息,其中,应用识别信息为所有通过DPI识别出其应用协议的数据流的识别信息以及DPI未识别出其应用的数据流的信息。优选地,流量信息为每个预先设置的Period_flowrate周期内DPI识别出的各应用协议的流量大小;应用识别信息包括数据流建立时间,数据流的外网IP、外网端口和协议类型,以及DPI设备识别出的该数据流的应用协议,如果未识别出来,则标识“未知”。
[0023] 步骤S2,所述DPI设备将所述识别结果统计信息表发送至服务器;
[0024] 具体地,DPI设备根据上载周期(Period_upload周期)向服务器发送识别结果统计信息表,其中Period_upload周期优选与Period_flowrate周期相同。
[0025] 步骤S3,所述服务器统计预定时段(Time-recent)内获取的识别结果统计信息表进行分析,获取所述应用协议的可识别率的下降参数并判断所述下降参数是否达到预定标准,若达到,则获知所述应用协议的特征码失效。
[0026] 优选地,认为此处检测获得的特征码为可能失效,即由管理员对这些特征码进行进一步地检测,以提高对于特征码是否失效的判断准确度。
[0027] 具体地,服务器中预先设置有用于判断特征码是否失效的判断标准,该判断标准包括判断方式和判断阀值。服务器每隔Period_upload周期收集旗下所有DPI设备反馈回来的识别结果统计信息表。服务器根据预先设置的判断方式,对识别结果统计信息表中的相关信息进行相应的统计分析,以获取在最近一个Period_flowrate周期内各应用协议的可识别率及在Time-recent时段内各应用协议的可识别率,从而获取最近一段时间(即Period_flowrate周期)内各应用协议的可识别率下降参数,其中,该应用协议的可识别率可通过多种参数或方式来体现,应与判断方式对应。服务器进一步通过比较所获取的可识别率的下降参数与判断阀值的差值来判断应用协议的特征码是否失效,即若某一应用协议的可识别率的下降参数大于或等于判断阀值,则获知该应用协议的特征码失效,反之,则获该应用协议的特征码仍有效。
[0028] 根据上述实施例的特征码失效检测方法,通过由DPI设备生成识别结果统计信息表,并由服务器定期对与其连接的所有DPI设备的识别结果统计信息表进行整合处理,以根据预定标准来判断各种应用协议的特征码是否已失效,能够及时、有效地对特征码是否失效进行自动检测,从而确保DPI识别的准确性。
[0029] 进一步地,在上述实施例的特征码失效检测方法中,识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地,步骤S3包括:
[0030] 步骤S31,服务器根据所述预定时段(Time-recent)内的所述应用协议的流量信息,获取各DPI设备在所述预定时段内识别的各应用协议的流量均值及在当前Period_flowrate周期内各应用协议的流量值,若在至少预定数量的所述DPI设备中,所述应用协议的当前周期的流量值低于所述流量均值达到第一阀值,则获知所述应用协议的特征码失效。
[0031] 具体地,服务器根据DPI设备反馈的识别结果统计信息表,为每一个DPI设备识别出的每一种应用协议统计其在一段时间(Time_recent)内各Period_fowrate周期的流量值,并根据该多个流量值绘制该应用协议在Time_recent时段的流量曲线图。图3为流量曲线图的示意图,如图3所示,该流量曲线图中包括应用协议的多个Period_fowrate周期内流量值。通过该流量曲线图可获知在最近一个Period_fowrate周期的流量值相比于该流量曲线均值是否下降达第一预定比例(Percent_flowrate_down)。进一步地,统计全部DPI设备中,该应用协议在最近一个Period_fowrate周期的流量值相比于该流量曲线均值下降达预定比例的DPI设备的数量,若该数量达到全部DPI设备的第二预定比例(Percent_dev_down),则认定该应用协议的特征码失效。
[0032] 进一步地,在上述实施例的特征码失效检测方法中,识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地,步骤S3包括:
[0033] 步骤S32,根据所述预定时段内的所述应用协议的流量信息,获取在预定时段内,全部DPI设备识别的各应用协议的累计流量均值及在当前周期内的累计流量,若所述当前周期内的累计流量低于所述累计流量均值达到第二阀值,则获知所述应用协议的特征码失效。
[0034] 具体地,服务器根据DPI设备反馈回来的信息,为每一种DPI可识别的应用协议,统计其在Time_recent时段的各个Period_flowrate周期内所有DPI设备的累计流量总值,然后根据累计流量总值描绘在Time_recent时段内的流量曲线图,如果该应用协议在最近一个Period_flowrate周期内的累计流量相比于在Time_recent时段内的累计流量均值下降达一定比例(即预定的第二阀值),则认定该应用协议的特征码已经失效。而且,此处假设在Time_recent内DPI设备总量不变,若当该DPI设备的总量发生变化时,则可以在统计Time_recent时段的各个Period_flowrate周期内所有DPI设备的累计流量总值时,将各周期的总流量除以该Period_flowrate周期的DPI设备数量;相应地,所计算得最近一个Period_flowrate周期内的累计流量也应除以当前Period_flowrate周期的DPI设备数量。
[0035] 进一步地,在上述实施例的特征码失效检测方法中,当识别结果统计信息表中包括所述DPI设备对数据流进行识别的应用识别信息时,步骤S3包括:
[0036] 步骤S33,根据所述应用识别信息,获取在临近应用协议特征码发布的特定时段内,特定数据流中被识别成该应用协议的第一比例值;并获取在当前周期内,所述特定数据流中被识别成该应用协议的第二比例值;若所述第二比例值低于所述第一比例值达到第三阀值,则获知所述应用协议的特征码失效。
[0037] 其中,所述特定数据流为DPI设备与某外网IP、外网端口或外网IP和外网端口之间的TCP或UDP通信数据流。具体地,特定时段优选为应用协议的特征码刚刚发布后的一段时期。若在该特定时段内,有X%(Percent_flow)的DPI设备与某外网IP、外网端口或外网IP和外网端口之间的TCP或UDP通信被识别成该应用,如果在最近一个Period_flowrate周期内,这个比例的下降幅度达到一定阀值(Percent_flow_change),则认定该应用协议的特征码已经失效。
[0038] 虽然在上述实施例的步骤S31、步骤S32、步骤S33中分别例示了三种不同的服务器根据应用协议的流量信息或应用识别信息判断应用协议的可识别率的下降参数是否达到预定标准的步骤,但本领域的技术人员应当理解,除单独采用一种判断步骤之外,采用以上三种判断步骤中的任意两个或三个的结合(结合方式可以为“与”或“或”),或任意其它的判断步骤均能够实现上述实施例的特征码失效检测方法。
[0039] 下面以云服务器综合采用步骤S31和步骤S33两种判断方式(当按照任何一种方式判断获知特征码失效时,均认定特征码失效)为示例,对上述实施例的特征码失效检测方法进行进一步说明。
[0040] 例如,按以下数值设定周期及阀值:Period_flowrate为1天,Period_upload为1天,Time_recent为30天,Percent_dev_down为,30%Percent_flowrate_down为50%,Percent_flow为90%,Percenr_flow_change为20%。进一步假设有100台DPI设备,即与云服务器连接的云端有100个,其中DPI可识别的应用协议有A和B两种,且应用协议A的特征码为aaaaa,应用协议B的特征码为bbbbb。当执行上述实施例的特征码失效检测方法时,包括以下步骤:
[0041] 100台DPI设备对所有流经的数据流进行DPI识别,并统计应用协议A和应用协议B在1天内的流量大小信息,获取流量信息和应用识别信息记录。具体地,表1为流量信息记录内容,表2为应用识别信息记录内容。
[0042] 表1
[0043]应用协议名 流量大小(KB) 流量开始时间 流量结束时间
应用协议A 102,220 2011-2-8 00:00:00 2011-2-9 00:00:00
应用协议B 200,330 2011-2-8 00:00:00 2011-2-9 00:00:00
[0044] 表2
[0045]数据流建立时间 外网IP 应用协议名
2011-2-811:00:02 2.2.2.2 应用协议A
2011-2-811:10:02 3.3.3.3 应用协议B
2011-2-811:18:02 4.4.4.4 未知
[0046] 在表1中,“流量结束时间”减去“流量开始时间”即为Period_flowrate,在本示例中为1天;在表2中,由于外网服务器通常只会提供比较单一的网络服务,因此作为服务器唯一标识的IP地址也可以在一定程度上标识其所承载的服务的应用协议类型,所以在本示例中仅记录了数据流五元组中的外网IP,但本领域的技术人员应该理解也可记录其他数据流标识信息。标识为“未知”的表示DPI设备无法识别的数据流。
[0047] DPI设备每天定时将以上记录信息传送给云服务器。
[0048] 云服务器对所接收的信息进行以下处理:
[0049] 对于应用协议A,分别统计100个DPI设备近期30天的流量曲线图。当超过30个DPI设备(Percent_dev_down为30%)的流量曲线图中出现流量值相比于流量均值下降达到50%的情况,则服务器推断应用协议A的特征码已经过期失效。
[0050] 对于应用协议B,也分别统计100个DPI设备近期30天的流量曲线图。虽然个别DPI设备的流量曲线图中出现流量值相比于流量均值下降达到50%的情况,但由于出现此情况的DPI设备的数量远未达到30个,则服务器推断应用协议B的特征码仍有效。
[0051] 应用协议A的特征码刚刚发布时,DPI设备与外网服务器2.2.2.2的通信100%被识别成应用协议A,而目前DPI设备与外网服务器2.2.2.2的通信数据流中被识别成应用协议A的数据流仅剩下70%,超过了指定的下降20%的阀值,因此服务器推断应用协议A的特征码已经失效;应用协议B的特征码发布至今,DPI设备与外网服务器3.3.3.3的通信始终被识别成应用协议B,因此服务器推断应用协议B的特征码仍有效。
[0052] 至此,服务器获知应用协议A的特征码可能已过期失效,此时可进一步地由维护人员进行人为的验证,如果确实已经失效,则需要更新相应的特征码,并下发到所有DPI设备中,以确保DPI设备应用识别的准确性。
[0053] 在上述实施例的特征码失效检测方法中,虽然例示了根据应用协议的流量信息及应用识别信息判断应用协议的可识别率的下降比例是否达到预定标准这一步骤完全由服务器来执行,但本领域的技术人员应当理解,将该步骤中的部分内容由DPI设备来执行也能够实现上述实施例的特征码失效检测方法。
[0054] 本发明还提供一种特征码失效检测系统,该系统包括服务器和与所述服务器连接的多个DPI设备,其中:
[0055] 所述DPI设备用于基于应用协议的特征码对数据流进行DPI识别,生成识别结果统计信息表,并将所述识别结果统计信息表发送至服务器;
[0056] 所述服务器用于对预定时段内获取的所述识别结果统计信息表进行分析,获取所述应用协议的可识别率的下降参数并判断所述下降参数是否达到预定标准,若达到,则获知所述应用协议的特征码失效。根据上述实施例的特征码失效检测系统,通过由DPI设备生成识别结果统计信息表,并由服务器定期对与其连接的所有DPI设备的识别结果统计信息表进行整合处理,以根据预定标准来判断各种应用协议的特征码是否已失效,能够及时、有效地对特征码是否失效进行自动检测,从而确保DPI识别的准确性。
[0057] 进一步地,在上述实施例的特征码失效检测系统中,识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地,服务器包括:
[0058] 第一统计分析模块,用于根据所述预定时段内的所述应用协议的流量信息,获取各DPI设备在所述预定时段内识别的各应用协议的流量均值及在当前周期内各应用协议的流量值;
[0059] 第一判断模块,用于若判断获知在至少预定数量的所述DPI设备中,所述应用协议的当前周期的流量值低于所述流量均值达到第一阀值,则获知所述应用协议的特征码失效。
[0060] 进一步地,在上述实施例的特征码失效检测系统中,识别结果统计信息表中包括所述DPI设备识别出的应用协议的流量信息,相应地,服务器包括:
[0061] 第二统计分析模块,用于根据所述预定时段内的所述应用协议的流量信息,获取在预定时段内,全部DPI设备识别的各应用协议的累计流量均值及在当前周期内的累计流量;
[0062] 第二判断模块,用于若判断获知所述当前周期内的累计流量低于所述累计流量均值达到第二阀值,则获知所述应用协议的特征码失效。
[0063] 进一步地,在上述实施例的特征码失效检测系统中,识别结果统计信息表中包括所述DPI设备对数据流进行识别的应用识别信息,相应地,服务器包括:
[0064] 第三统计分析模块,用于根据所述应用协议的应用识别信息,获取在临近应用协议的特征码发布的特定时段内,可正确识别所述应用协议的DPI设备的比例均值;和在当前周期内可正确识别所述应用协议的DPI设备的比例值;
[0065] 第三判断模块,用于若判断获知所述第二比例值低于所述第一比例值达到第三阀值,则获知所述应用协议的特征码失效。
[0066] 进一步地,在上述实施例的特征码失效检测系统中,特定数据流为DPI设备与某外网IP、外网端口或外网IP和外网端口之间的TCP或UDP通信数据流。
[0067] 本领域的技术人员应当理解,服务器也可同时包括上述三个统计分析模块和判断模块中的任意多个统计分析模块及判断模块,以同时按照不同方式执行判断,并综合考虑所获得的多个判断结果,通果采取“和”或“或”的方式获取最终判断结果。
[0068] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。