CN102752216B - 一种识别动态特征应用流量的方法 - Google Patents

一种识别动态特征应用流量的方法 Download PDF

Info

Publication number
CN102752216B
CN102752216B CN201210244438.5A CN201210244438A CN102752216B CN 102752216 B CN102752216 B CN 102752216B CN 201210244438 A CN201210244438 A CN 201210244438A CN 102752216 B CN102752216 B CN 102752216B
Authority
CN
China
Prior art keywords
stream
rule
dynamic
static
identified
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210244438.5A
Other languages
English (en)
Other versions
CN102752216A (zh
Inventor
郑红霞
张广兴
杨建华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201210244438.5A priority Critical patent/CN102752216B/zh
Publication of CN102752216A publication Critical patent/CN102752216A/zh
Application granted granted Critical
Publication of CN102752216B publication Critical patent/CN102752216B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供一种识别动态特征应用流量的方法,包括下列步骤:1)根据应用在传输过程的初始阶段的流的固定特征生成静态识别规则;2)将待识别的流与所述静态识别规则和动态识别规则进行匹配,得出所述待识别的流所属的具体应用;其中,所述动态识别规则根据应用在传输过程的初始阶段的流与后续的数据传输的流的关联关系生成。与现有技术相比,本发明具有下列技术效果:1、本发明能够实时准确识别动态特征应用流量。2、本发明能够大大提高识别效率,尤其是在对大流量数据下载应用进行识别时,这种效率的提高体现的更加明显。

Description

一种识别动态特征应用流量的方法
技术领域
本发明涉及计算机网络流量监测和性能分析技术领域,具体地说,本发明涉及一种识别应用流量的方法。
背景技术
流量识别是网络流量管控的基础,提高流量识别的准确性对提高网络管理监控的有效性十分重要。传统的流量识别方法有依据固定端口识别的方法、基于数据包内容特征识别的方法以及基于流传输行为特征识别的方法等,但随着网络应用的发展,网络流量日益复杂,给流量识别带来了挑战。一方面,大量P2P等应用在传输数据时采用动态可变的端口,另一方面,一些传统的固定端口的应用如FTP等也提供了设置为非固定端口传输数据的功能,对于这些应用流量,依据固定端口识别的方法不再可用。并且,上述应用在传输数据时数据包内容也由不同数据内容决定,一般没有共同的特征,有些数据还进行了加密,这也使得基于数据包内容特征识别难以实现。而基于流传输行为特征识别则存在难以准确识别到某个具体应用的缺陷。对于P2P下载应用或FTP应用这类动态特征应用,数据传输占据了总的应用流量的绝大部分,这部分流量的准确识别对于这类应用的流量监管和控制十分重要。
因此,当前迫切需要一种能够实时准确识别动态特征应用流量的方法。
发明内容
本发明的目的是提供一种能够实时准确识别动态特征应用流量的方法。
为实现上述发明目的,本发明提供了一种识别动态特征应用流量的方法,包括下列步骤:
1)根据应用在传输过程的初始阶段的流的固定特征生成静态识别规则;
2)将待识别的流与所述静态识别规则和动态识别规则进行匹配,得出所述待识别的流所属的具体应用;其中,所述动态识别规则根据应用在传输过程的初始阶段的流与后续的数据传输的流的关联关系生成。
其中,所述步骤1)还包括:根据应用在传输过程的初始阶段的流与后续的数据传输的流的关联关系,生成所述静态识别规则和所述动态识别规则的关联信息,并将所述静态识别规则以及该静态识别规则与动态识别规则的关联关系存储在静态规则库中。
其中,所述步骤1)在实时流量识别过程之前预先执行。
其中,所述步骤2)还包括:将所述动态识别规则存储在动态规则库中,将当前待识别的流与动态规则库和所述静态规则库中的规则进行匹配,得出所述待识别的流所属的具体应用。
其中,所述步骤2)包括下列子步骤:
21)将当前待识别的流与动态规则库和静态规则库中的规则进行匹配;
22)判断当前待识别的流是否匹配了动态规则,如果是,则进入步骤23),如果否,则进入步骤24);
23)根据所匹配的动态规则识别出当前待识别的流所属的具体应用,同时记录该条动态规则的匹配情况;
24)判断当前待识别的流是否匹配了带有动态规则关联信息的静态规则,当判断为是时,进入步骤25);当判断为否时,则认为当前待识别的流不适用于所述识别动态特征应用流量的方法;
25)根据所匹配的静态规则识别出当前待识别的流所属的具体应用,同时依据步骤24)所匹配的静态规则的关联信息生成动态识别规则,并将所生成的动态识别规则加入动态规则库。
其中,所述步骤23)中,所述匹配情况是匹配次数。
其中,所述步骤24)中,当判断为否时,可以进一步将待识别的流与普通静态规则进行匹配从而识别出该待识别的流所属的具体应用。
其中,所述识别动态特征应用流量的方法还包括步骤3):定期清除在最近一个生存周期没有被匹配的动态识别规则。
其中,所述动态识别规则生存周期大于数据传输流之间的最大间隔时间。
其中,所述动态特征应用包括:P2P下载应用,涉及到多媒体数据传输的网络多媒体应用及网络游戏应用,以及可以设置非固定数据传输端口的应用。
与现有技术相比,本发明具有下列技术效果:
1、本发明能够实时准确识别动态特征应用流量。
2、本发明能够大大提高识别效率,尤其是在对大流量数据下载应用进行识别时,这种效率的提高体现的更加明显。
附图说明
图1示出了本发明一个实施例的动态特征应用流量识别方法的示意流程图。
具体实施方式
首先,简要介绍本发明进行动态特征应用流量识别的基本原理。
在实际网络中,典型的应用有迅雷、电驴等P2P下载应用,涉及到多媒体数据传输的网络多媒体应用及网络游戏应用,还有FTP这类可以设置非固定数据传输端口的传统应用,这些应用都会产生没有固定特征的数据传输流。通过分析这些应用的数据传输流,可以发现这些流在传输过程中虽然整体上没有固定特征,但在传输过程的初始阶段通常存在具有固定特征的流,如控制信息流或协商建立连接的流等,而后续的数据传输的流则与初始阶段的具有固定特征的流有固定的关联关系。为方便描述,将初始阶段的具有固定特征的流称为初始流,将后续的数据传输的流称为后续流。依据一定方法可以从初始流中得到后续流的端口和对应IP地址的信息等可以用于识别后续数据传输的流的特征信息,这样得到的特征可能只在某一次数据传输的过程中存在,因此可以看作是一种动态特征。而对于不同的应用,初始流的固定特征不同,与后续流的关联关系不同,从初始阶段的流中得到后续数据传输的流的动态特征(例如端口和对应IP地址等信息)的方法也不同。因此,首先根据固定特征准确识别出初始流所属的具体应用,然后再依据初始流中的信息,可以得到在一个时期与某一种应用准确对应的唯一的动态特征,从而准确识别出没有固定特征的后续流(即数据传输的流)所属的具体应用。
下面结合附图和具体实施例对本发明做进一步地描述。
根据本发明的一个实施例,提供了一种识别动态特征应用流量的方法,该方法中需要构建静态规则库和动态规则库,其中静态规则库在实时流量识别过程之前预先生成。动态规则库的动态识别规则在流量识别过程中根据静态规则库中的关联信息实时生成。
具体地,图1示出了该识别动态特征应用流量的方法的示意流程图,如图1所示,该方法包括下列步骤:
步骤1:依据各应用的初始流的特点生成静态识别规则以及生成该静态识别规则与后续流的动态识别规则之间的关联信息。其中,可以根据应用在传输过程的初始阶段的流与后续的数据传输的流的关联关系,生成所述静态识别规则和所述动态识别规则的关联信息。上述过程通过对应用的分析在实时流量识别过程之前预先非实时生成。静态识别规则以及静态识别规则与后续流的动态识别规则之间的关联信息存储在静态规则库中。
步骤2:将当前待识别的流与动态规则库和静态规则库中的规则进行匹配。
步骤3:判断当前待识别的流是否匹配了动态规则,如果是,则进入步骤4,如果否,则进入步骤5。
步骤4:根据所匹配的动态规则识别出当前待识别的流所属的具体应用,同时记录该条动态规则的匹配情况(例如记录该条动态规则的匹配次数),供动态识别规则维护使用(见步骤7)。
步骤5:判断当前待识别的流是否匹配了带有动态规则关联信息的静态规则,当判断为是时,进入步骤6,当判断为否时,则当前待识别的流不适用于所述识别动态特征应用流量的方法,此时可以进一步将待识别的流与普通静态规则进行匹配从而识别出该待识别的流所属的具体应用。普通静态规则指与动态识别规则没有关联的静态规则。
步骤6:根据所匹配的静态规则识别出当前待识别的流所属的具体应用,同时依据步骤5所匹配的静态规则的关联信息生成动态识别规则,并将所生成的动态识别规则加入动态规则库。
步骤7:根据每条动态识别规则的匹配情况和所设置的规则生存周期实时维护、定期检查动态规则库,清除在最近一个生存周期没有被匹配的动态识别规则,其中动态识别规则生存周期一般设置为大于数据传输流之间的最大间隔时间。这样可以避免过期的动态识别规则造成误识别。
为便于理解,下面分别以迅雷和FTP应用的识别为例,对上述实施例提出的方案的实施进行具体说明。
迅雷的一种采用动态端口的UDP数据传输,在初始阶段的流中有带有固定特征的数据包,其特征为数据包的传输层载荷的前四个字节为“0x3b 00 00 00”,而后续的数据传输流中的数据包则不再有任何内容特征,只是迅雷服务用户端沿用初始阶段这个带有固定特征的流的端口,而所用的端口都是随机设定没有规律的,迅雷服务提供端的端口和IP地址则在传输过程中都是随机变化的。要识别迅雷的这种UDP数据传输,首先生成一条静态识别规则,即传输层载荷的前四个字节为“0x3b 00 00 00”的数据包所属的流为迅雷的流,同时生成这条静态识别规则的动态规则关联信息,即以匹配这条规则的数据包的内网端口(也就是迅雷服务用户端端口)和内网IP地址(也就是迅雷服务用户端地址)作为后续迅雷的流的内网端口和内网IP地址,将这条带有动态规则关联信息的静态识别规则存入静态规则库,在实际识别过程中,先依据这条静态识别规则识别出迅雷数据传输初始阶段的流中匹配这条规则的数据包,再依据这条规则带有的动态规则关联信息,取得所匹配的数据包的内网端口,以及所匹配的数据包的内网IP地址,生成一条动态识别规则,即内网端口为所得到的端口号以及内网IP地址为所得到的IP地址的数据包所属的流为迅雷的流,将这条动态识别规则存入动态规则库,对于后续的迅雷数据传输流,通过检查动态规则库就可以依据后续流中数据包的内网端口号和内网IP地址识别成迅雷。由于在同一时间段内用户端用同一个IP地址和同一个端口号一般只会连接一种应用,通过端口号加IP地址的双重限制可以避免动态识别规则造成其他应用误识别为迅雷。迅雷数据传输过程中数据传输流都是连续产生的,将动态识别规则生存周期设置为大于数据传输流之间的最大间隔时间,就能保证在数据传输过程中每个流都能通过动态识别规则识别成迅雷。而当迅雷数据传输停止时,不再有能匹配到动态识别规则的流,经过一个生存周期不被匹配,这个动态识别规则就会被清除,避免其他应用使用同一端口而被误认为迅雷。
对于FTP,现在很多FTP应用都支持动态端口的通信,控制部分和数据部分的通信都可以通过任意端口进行,控制部分的通信端口由用户设定,数据部分的通信端口设定则分两种情况:PORT模式和PASV模式。对于控制部分的识别,与上述识别迅雷的方法类似,仍然是通过内网端口和内网IP地址的关联对应关系识别后续流,只是初始阶段的流的固定特征设为传输层载荷的前四个字节为字符串“220”,“220”是FTP命令响应码,在FTP控制部分通信的初始阶段一般都会出现。对于数据部分,后续流的端口和IP地址则可以依据初始阶段的流中的信息计算得到。举一个PORT模式传输的例子,带有后续流的端口信息的数据包传输层载荷内容为“PORT 192,168,2,74,23,174”,其中“PORT”为固定特征,“192,168,2,74”为服务器端IP地址,也就是后续流的外网IP地址为192.168.2.74,“23,174”给出了服务器端的端口信息,计算方法是23×256+174=6062,也就是后续流的外网端口是6062。对于这样的流的识别,首先生成一条静态识别规则存入静态规则库,即传输层载荷前五个字节为“PORT”的数据包所属的流为FTP,同时还生成这条规则的动态规则关联信息,即依据数据包传输层载荷中“PORT”之后的IP地址和端口号信息通过上述计算方法得到IP地址和端口号作为后续FTP的流的外网IP地址和外网端口号,在实际识别过程中,先依据这条静态识别规则识别出这个数据包,再依据静态识别规则带有的动态规则关联信息,提取出数据包的内容,根据上述计算方法得到后续流的IP地址和端口信息,生成动态识别规则存入动态规则库,后续的流依据这条动态规则就可以识别了。同样根据FTP的传输特点可以设置这条动态规则的生存周期,在FTP传输停止时可以清除这条动态规则,避免造成误识别。PASV模式与PORT模式类似,只是数据包内容中的固定特征不同,上述例子在PASV模式下的数据包内容为“227 Entering Passive Mode(192,168,2,74,23,174)”,只要改变静态识别规则,其他识别方法都与PORT模式一样,这里就不再赘述。
如上所述,通过本发明提出的方法,对迅雷、FTP等应用的动态端口数据传输流量都可以实时准确识别,而且采用这种方法,只需要对初始阶段的一个流检查数据包载荷内容,对后续流的识别只需要匹配端口和IP地址信息,不需要检查数据包载荷内容,而后续流占据了整体数据传输流量的绝大部分,因此大大提高了识别效率,在大流量数据下载时这种效率的提高体现的更明显。
除了上述具有动态端口和动态IP地址特征信息的应用流量,本发明也可用于具有其他动态特征的应用流量识别,例如一个应用前后连续的流的数据包载荷等信息具有关联关系的应用流量,也可以用本发明的方法进行识别。
本发明的其它实施例中,固定特征是:一种应用的流量固有的特征,在该应用的流量中稳定的出现,与该应用有固定的对应关系,能够用于识别该应用。动态特征是:一种应用在流量传输中动态出现的临时性特征,一般与该应用的某个固定特征有一定的关联关系,通过这种关联关系与该应用建立对应关系,从而能够用于识别该应用。为便于理解,表1给出了迅雷、emule等几种常见应用的固定特征、关联关系和动态特征。本领域技术人员应当理解,本发明所能够识别的动态特征应用并不限于表1中的几种应用。
表1
最后所应说明的是,以上所述的发明实施例仅用于说明本发明的技术方案而非限制。本领域的技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (4)

1.一种识别动态特征应用流量的方法,包括下列步骤:
1)根据应用在传输过程的初始阶段的流的固定特征生成静态识别规则,根据应用在传输过程的初始阶段的流与后续的数据传输的流的关联关系生成对应于静态识别规则的动态识别规则关联信息,并将所述静态识别规则以及该静态识别规则与动态识别规则的关联关系存储在静态规则库中;
2)将待识别的流与所述静态识别规则和动态识别规则进行匹配,得出所述待识别的流所属的具体应用;其中,所述动态识别规则根据应用在传输过程的初始阶段的流与后续的数据传输的流的关联关系生成;
所述步骤2)包括下列子步骤:
21)将当前待识别的流与动态规则库和静态规则库中的规则进行匹配;
22)判断当前待识别的流是否匹配了动态规则,如果是,则进入步骤23),如果否,则进入步骤24);
23)根据所匹配的动态规则识别出当前待识别的流所属的具体应用,同时记录该条动态规则的匹配情况;
24)判断当前待识别的流是否匹配了带有动态规则关联信息的静态规则,当判断为是时,进入步骤25);当判断为否时,则认为当前待识别的流不适用于所述识别动态特征应用流量的方法;
25)根据所匹配的静态规则识别出当前待识别的流所属的具体应用,同时依据步骤24)所匹配的静态规则的关联信息生成动态识别规则,并将所生成的动态识别规则加入动态规则库。
2.根据权利要求1所述的识别动态特征应用流量的方法,其特征在于,所述步骤23)中,所述匹配情况是匹配次数。
3.根据权利要求1所述的识别动态特征应用流量的方法,其特征在于,还包括步骤3):定期清除在最近一个生存周期没有被匹配的动态识别规则。
4.根据权利要求3所述的识别动态特征应用流量的方法,其特征在于,所述动态识别规则生存周期大于数据传输流之间的最大间隔时间。
CN201210244438.5A 2012-07-13 2012-07-13 一种识别动态特征应用流量的方法 Active CN102752216B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210244438.5A CN102752216B (zh) 2012-07-13 2012-07-13 一种识别动态特征应用流量的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210244438.5A CN102752216B (zh) 2012-07-13 2012-07-13 一种识别动态特征应用流量的方法

Publications (2)

Publication Number Publication Date
CN102752216A CN102752216A (zh) 2012-10-24
CN102752216B true CN102752216B (zh) 2015-11-04

Family

ID=47032120

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210244438.5A Active CN102752216B (zh) 2012-07-13 2012-07-13 一种识别动态特征应用流量的方法

Country Status (1)

Country Link
CN (1) CN102752216B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103856370B (zh) * 2014-02-25 2017-02-15 中国科学院计算技术研究所 一种应用流量识别方法及其系统
CN103929373A (zh) * 2014-03-20 2014-07-16 江苏省未来网络创新研究院 一种精确识别网络应用流量的方法
US10038616B2 (en) * 2014-09-25 2018-07-31 Microsoft Technology Licensing, Llc Managing classified network streams
CN106506520B (zh) * 2016-11-24 2019-09-20 迈普通信技术股份有限公司 一种基于单点登录的认证方法及装置
WO2018103825A1 (en) * 2016-12-06 2018-06-14 Huawei Technologies Co., Ltd. System and method for low memory and low traffic overhead heavy-hitter detection
CN110381008B (zh) * 2018-04-13 2022-02-25 海南波克科技有限公司 一种基于大数据的网络安全动态防御系统及方法
CN114785742B (zh) * 2022-06-21 2022-09-16 闪捷信息科技有限公司 访问地址信息加载方法、流量处理方法和电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101035111A (zh) * 2007-04-13 2007-09-12 北京启明星辰信息技术有限公司 一种智能协议解析方法及装置
CN101202652A (zh) * 2006-12-15 2008-06-18 北京大学 网络应用流量分类识别装置及其方法
CN102045363A (zh) * 2010-12-31 2011-05-04 成都市华为赛门铁克科技有限公司 网络流量特征识别规则的建立方法、识别控制方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7503071B1 (en) * 2003-10-01 2009-03-10 Symantec Corporation Network traffic identification by waveform analysis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202652A (zh) * 2006-12-15 2008-06-18 北京大学 网络应用流量分类识别装置及其方法
CN101035111A (zh) * 2007-04-13 2007-09-12 北京启明星辰信息技术有限公司 一种智能协议解析方法及装置
CN102045363A (zh) * 2010-12-31 2011-05-04 成都市华为赛门铁克科技有限公司 网络流量特征识别规则的建立方法、识别控制方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《VOIP流量识别》;陈丽珊等;《软件》;20110630;第32卷(第6期);第1页-第2页 *
《基于SIP的VOIP流量识别方法研究》;陈敏等;《计算机应用研究》;20070430;第24卷(第4期);全文 *

Also Published As

Publication number Publication date
CN102752216A (zh) 2012-10-24

Similar Documents

Publication Publication Date Title
CN102752216B (zh) 一种识别动态特征应用流量的方法
CN102315974B (zh) 基于层次化特征分析的tcp、udp流量在线识别方法和装置
CN103873320B (zh) 加密流量识别方法及装置
CN101035111B (zh) 一种智能协议解析方法及装置
Qin et al. Robust application identification methods for P2P and VoIP traffic classification in backbone networks
CN101282331B (zh) 基于传输层特征的p2p网络流量识别方法
CN101202652A (zh) 网络应用流量分类识别装置及其方法
EP3157195B1 (en) Communication protocol testing method, and tested device and testing platform thereof
CN101605067A (zh) 网络行为主动分析诊断方法
CN103618792B (zh) 数据流的识别方法及设备
CN102938764A (zh) 应用识别处理方法及装置
CN102984269B (zh) 一种点对点流量识别方法和装置
CN105429950A (zh) 一种基于动态数据包采样的网络流量识别系统和方法
KR101891981B1 (ko) 온라인 게임 패킷 분석 시스템 및 방법
CN104333483A (zh) 互联网应用流量识别方法、系统及识别装置
CN104994016A (zh) 用于分组分类的方法和装置
CN104901897A (zh) 一种应用类型的确定方法和装置
CN101854366B (zh) 一种对等网络流量识别的方法及装置
CN101854330A (zh) 互联网的网络应用采集与分析方法及系统
CN104243225A (zh) 一种基于深度包检测的流量识别方法
CN112291226A (zh) 一种网络流量的异常检测方法及装置
CN101771697B (zh) 基于模式匹配方式的网络数据流识别方法
Li et al. Parsing application layer protocol with commodity hardware for SDN
CN103532937B (zh) 应用识别验证方法及装置
CN105357166B (zh) 一种下一代防火墙系统及其检测报文的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant