CN108173705A - 流量引流的首包识别方法、装置、设备及介质 - Google Patents
流量引流的首包识别方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN108173705A CN108173705A CN201711216942.3A CN201711216942A CN108173705A CN 108173705 A CN108173705 A CN 108173705A CN 201711216942 A CN201711216942 A CN 201711216942A CN 108173705 A CN108173705 A CN 108173705A
- Authority
- CN
- China
- Prior art keywords
- packet
- data
- recognition rule
- recognition
- rule
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/028—Capturing of monitoring data by filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种流量引流的首包识别方法、装置、设备及介质,所述方法包括:当接收到应用流量的首包数据时,从所述首包数据中提取指定的第一包特征;以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则;所述首包识别规则库包括:固定端口识别规则和/或DNS解析识别规则;当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别。本发明能够保证应用流量引流的时效性。
Description
技术领域
本发明涉及数据网络领域,具体涉及一种流量引流的首包识别方法、装置、设备及介质。
背景技术
目前互联网用户的服务器和出口带宽资源有限,链路稳定性和实时性不高,因此用户往往会租用几条电信或联通的更优质的链路用于高实时性和高稳定性的重要业务,租用普通的链路用于不重要业务,以提高工作效率和网络资源利用率。在这种场景下,用户需要使用引流功能根据应用类型及用户策略将流量引至合适的链路来达到目的。对业务流量进行引流首先要在首包识别出该流量所属应用,只有在首包识别出流量的所属应用,才能够将相应流量引入到优质链路或普通链路中,并且不会造成连接的中断。
针对上述需求,目前主要是采用基于DPI(Deep Packet Inspection,深度报文检测)应用识别技术结合五元组的关联信息表来实现首包识别,进而达到引流目的。该首包识别的方法主要是将DPI识别结果作为主要依据,利用DPI 识别结果,和根据应用属性提取的五元组信息中的某一个成关联表。后续流量可以通过匹配关联表在首包识别出对应应用,从而根据用户策略来完成引流。存在以下问题:
1)、时效性差,仅基于DPI识别结果进行首包识别,不能第一时间在首包识别出连接所属应用,进而导致不能在第一时间对首包实现引流,导致连接中断,原因如下:对于TCP(Transmission Control Protocol,传输控制协议) 连接来说,DPI应用识别方法至少要在第四个包才能够识别出具体应用,这是由于建立连接的三次握手数据包没有应用层数据,而DPI识别依赖于应用层数据。对于UDP(User Datagram Protocol,用户数据报协议)连接来说,DPI应用识别方法,只能实现部分应用的首包识别,这是由于某些应用的特征不在第一个数据包,而在后续数据包上。
2)、误识别率高
对于C/S(客户端/服务器)类应用,只提取五元组信息中的目的IP(InternetProtocol,网络之间互连的协议)用于首包识别,如果该服务器还有其他应用,则会导致误识别;对于P2P类应用,不同的用户其源端口有可能是不同的,只提取五元组中的源端口进行首包识别,误识别的概率比较大。
发明内容
本发明的目的是为了克服现有技术的不足,提供一种流量引流的首包识别方法、装置、设备及介质,能够保证应用流量引流的时效性。
依据本发明的一个方面,提供一种流量引流的首包识别方法,
当接收到应用流量的首包数据时,从所述首包数据中提取指定的第一包特征;
以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则;所述首包识别规则库包括:固定端口识别规则和/或DNS解析识别规则;
当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别。
可选地,本发明所述方法中,所述方法还包括:
当接收到应用流量的首包数据时,在所述首包数据中提取指定的第三包特征,根据所述第三包特征查找在先配置的关联表,当在所述关联表中查找到相应的匹配项时,根据查找的匹配项进行首包识别;否则,执行从所述首包数据中提取指定的第一包特征的操作;所述关联表中包括五元组信息与应用的映射关系。
可选地,本发明所述方法中,所述首包识别规则库还包括:深度解析识别规则和/或关联识别规则;
所述方法还包括:当未匹配成功时,对所述首包数据进行DPI深度识别;
在DPI深度识别的结果中,确定指定的第二包特征;
根据确定的所述第二包特征,在所述首包识别规则库中匹配深度解析识别规则和/或关联识别规则;
根据匹配到的首包识别规则,对所述首包数据进行识别。
可选地,本发明所述方法中,根据匹配到的首包识别规则,对所述首包数据进行识别后,还包括:
将所述首包数据的五元组信息中至少三项信息和识别结果存入所述关联表,以对所述关联表进行更新。
可选地,本发明所述方法中,从所述首包数据中提取的所述第一包特征,包括:用于匹配固定端口识别规则的固定端口信息,和/或,用于匹配DNS解析识别规则的域名信息。
可选地,本发明所述方法中,所述DPI深度识别的结果:五元组信息、所属应用的协议ID和命中规则ID。
确定的所述第二包特征包括:用于匹配深度解析识别规则的IP和端口信息,和/或,用于匹配关联识别规则的源IP、源端口、目的IP和目的端口中的其中一个或多个信息。
可选地,本发明所述方法中,所述当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别,并进行首包识别结果标记;所述对首包数据进行 DPI深度识别,识别后进行DPI识别结果标记。
可选地,本发明所述方法中,所述方法还包括:
当接收到应用流量的数据包时,判断所述数据包是否为首包数据;若是首包数据,执行当接收到应用流量的首包数据时的操作;若不是首包数据,判断该数据包是否已进行首包识别结果标记或者进行DPI识别结果标记,如果已标记,按标记时选择的链路进行引流,如果未标记,则进行DPI深度识别。
可选地,本发明所述方法中,根据匹配到首包识别规则对所述首包数据进行识别,包括:
在匹配到的首包识别规则中,获取规则所描述的所属应用的ID;
根据所述应用的ID确定所属应用,完成对所述首包数据的识别。
可选地,本发明所述方法中,所述首包识别规则库通过云端同步更新各项规则。
依据本发明的另一个方面,提供一种流量引流的首包识别装置,包括首包识别模块,
所述首包识别模块,用于当接收到应用流量的首包数据时,从所述首包数据中提取指定的第一包特征;
以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则;所述首包识别规则库包括:固定端口识别规则和/或DNS解析识别规则;
当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别。
可选地,本发明所述装置中,所述首包识别模块还用于当接收到应用流量的首包数据时,在所述首包数据中提取指定的第三包特征,根据所述第三包特征查找在先配置的关联表,当在所述关联表中查找到相应的匹配项时,根据查找的匹配项进行首包识别;否则,执行从所述首包数据中提取指定的第一包特征的操作;所述关联表中包括五元组信息与应用的映射关系。
可选地,本发明所述装置中,所述首包识别规则库还包括深度解析识别规则和/或关联识别规则,
所述装置还包括:DPI识别模块,
所述DPI识别模块用于当未匹配成功时,对所述首包数据进行DPI深度识别;
在DPI深度识别的结果中,确定指定的第二包特征;
根据确定的所述第二包特征,在所述首包识别规则库中匹配深度解析识别规则或关联识别规则;
根据匹配到的首包识别规则,对所述首包数据进行识别。
依据本发明的第三个方面,提供一种流量引流的首包识别设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的流量引流的首包识别程序,所述流量引流的首包识别程序被所述处理器执行时实现上述所述的方法的步骤。
依据本发明的第四个方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有流量引流的首包识别程序,所述流量引流的首包识别程序被处理器执行时实现上述所述的方法的步骤。
与现有技术相比,本发明的效果如下:
本发明提出的流量引流的首包识别方法、装置、设备及介质,本发明通过从首包数据中提取指定的第一包特征与首包识别规则库的DNS解析规则和固定端口规则进行匹配,使得部分流量不依赖于DPI深度识别结果准确及时的首包识别,从而保证了应用流量引流的时效性。
本发明结合DPI深度识别利用首包识别规则库的深度解析规则和关联识别规则进行应用流量的首包识别,能够更为完善有效地对应用流量进行首包识别。
所述关联表中包括至少三项五元组信息与应用的映射关系,提高了首包识别率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的一种流量引流的首包识别方法的流程图;
图2是本发明第二实施例提供的一种流量引流的首包识别方法的流程图;
图3是本发明第三实施例提供的一种流量引流的首包识别方法的流程图。
图4是本发明第四实施例提供的一种流量引流的首包识别装置的原理框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术应用流量的首包识别时效性差的问题,提出一种流量引流的首包识别方法,参见图1所示:
步骤S01:当接收到应用流量的首包数据时,从所述首包数据中提取指定的第一包特征;
步骤S02:以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则;所述首包识别规则库是指针对不同应用流量进行首包识别所依赖的识别规则的集合,所以首包识别规则库不是数据库,它是一种条件的描述。所述首包识别规则库包括:固定端口识别规则和/或DNS(Domain Name System,域名***)解析识别规则,深度解析识别规则和/或关联识别规则;
步骤S03:当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别。本发明是根据应用类型不同进行不同维度的解析识别,从而快速准确地输出识别结果。
步骤S04:当未匹配成功时,对所述首包数据进行DPI深度识别,即对于不能通过第一包特征进行首包识别的流量需要进行DPI深度识别;
在DPI深度识别的结果中,确定指定的第二包特征;
根据确定的所述第二包特征,在所述首包识别规则库中匹配深度解析识别规则或关联识别规则;
根据匹配到的首包识别规则,对所述首包数据进行识别。
在本发明的一个具体实施例中,本发明实施例,从所述首包数据中提取的所述第一包特征,包括:用于匹配固定端口识别规则的固定端口信息,和/或,用于匹配DNS解析识别规则的域名信息。
所述固定端口识别规则适用于财经软件、网络游戏等流量,因为对于财经软件、网络游戏等流量,其服务器相对固定,并且一般使用固定的端口,因此可以通过固定的端口号进行首包识别。此种识别方法需要找到应用使用的端口。
所述DNS解析识别规则适用于网页邮箱、网页音频等HTTP流量,对于网页邮箱、网页音频等HTTP流量,在请求获取资源之前会发送DNS请求,因此可以通过解析域名服务器返回的DNS响应获取IP地址信息,从而实现此类HTTP
(HyperText Transfer Protocol,超文本传输协议)流量的首包识别。此种识别方法需要找到应用请求DNS的信息,并对DNS响应进行解析获取IP地址信息。
确定的所述第二包特征包括:用于匹配深度解析识别规则的IP和端口信息,和/或,用于匹配关联识别规则的源IP、源端口、目的IP和目的端口中的其中一个或多个信息。
所述深度解析识别规则适用于SIP(Session Initiation Protocol,会话初始协议)、FTP(File Transfer Protocol,文件传输协议)、网页视频等流量,对于SIP、FTP、网页视频等流量,会有信令流和数据流两条连接,信令流的数据中包含数据流的IP和端口信息,因此可以通过解析信令流获取数据流的IP 和端口,从而实现此类流量的首包识别。此种识别方法需要找到信令流,并且解析获取数据流的IP和端口。
所述关联识别规则适用于P2P(peer-to-peer networking,对等计算机网络)类的流量和客户端-服务器类应用,对于P2P类的流量,其流量的源IP、源端口是相同的,因此对此类应用的第一条连接通过DPI深度识别后,记录其源 IP、源端口,后续流量如果有相同的源IP和源端口则识别为相同的应用;对于客户端-服务器类的应用,其目的IP是相对固定的,记录其目的IP用于后续流量的识别;这种首包识别的方法称为关联识别。此类识别方法需要在DPI识别结果的基础上,记录相关的五元组信息。
所述深度解析识别规则和关联识别规则是依赖于DPI深度识别的结果。
所述DPI深度识别指利用DPI识别规则库对数据包进行DPI识别。所述DPI 识别规则库指包含多个应用类别的协议特征规则库,是应用在流量层面上的特征集合。
DPI深度识别方法主要是对应用流量的“指纹”特征进行匹配,进而识别应用。DPI深度识别对首包识别过程送入的数据包进行识别,如果识别成功,则输出识别结果,对该数据所属的连接进行DPI深度识别结果标记,并记录该连接的五元组信息,将识别结果和五元组信息返回到首包识别进行处理。如果是UDP 流量并且是在首包识别出应用,则可以进行引流处理;如果识别失败,则为该数据包随意选择链路,但是必须保证属于同一条连接的数据包都在同一条链路上。
由于一条连接中有效指纹信息都在该连接的前部分的数据包中,后面部分的数据包多为数据,不包含有效的指纹信息,因此DPI深度识别过程只对一条连接中的前16个数据包进行DPI识别规则库的匹配识别,无论是否识别成功,都会进行DPI识别结果标记,只是识别成功的需要将识别结果返回给首包识别模块进行处理,而识别失败的则直接选择链路输出。DPI深度识别过程中需要维护DPI识别规则库,所述DPI识别规则库可以通过云端实时同步最新数据,以保证规则的有效性。
在本发明的一个具体实施例中,本发明实施例,所述DPI深度识别的结果包括:五元组信息、所属应用的协议ID和命中规则ID。
在本发明的一个具体实施例中,本发明实施例,所述根据匹配到首包识别规则对所述首包数据进行识别,包括:
在匹配到的首包识别规则中,获取规则所描述的所属应用的ID(身份标识号);
根据所述应用的ID确定所属应用,完成对所述首包数据的识别。
可能地/可选地:本发明实施例,所述当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别,并进行首包识别结果标记。
可能地/可选地:本实施例,所述首包识别规则库通过云端同步更新各项规则。本发明的首包识别方法,利用首包识别规则库,结合使用DNS解析、深度解析、固定端口、关联识别四种识别方法,能够有效地对应用流量进行首包识别,同时利用云端同步技术,保证了首包识别规则库和DPI识别规则库的有效性和实时性,提高了首包识别的准确性和及时性针,为应用流量的正确引流或统计提供了保证,提高了用户的工作效率和网络资源利用率。
在本发明的第二实施例中,提供一种流量引流的首包识别方法,参见图2 所示,本实施例,还包括:当接收到应用流量的首包数据时,在所述首包数据中提取指定的第三包特征,根据所述第三包特征查找在先配置的关联表,当在所述关联表中查找到相应的匹配项时,根据查找的匹配项进行首包识别;否则,执行从所述首包数据中提取指定的第一包特征的操作;所述关联表中包括五元组信息与应用的映射关系。
可能地/可选地:本实施例,根据匹配到的首包识别规则,对所述首包数据进行识别后,还包括:
将所述首包数据的五元组信息中至少三项信息和识别结果存入所述关联表,以对所述关联表进行更新,从而提高了识别率。例如,将所述首包数据的五元组信息中传输层协议、源IP、源端口和识别结果存入所述关联表,或者将所述首包数据的五元组信息中传输层协议、目的IP、目的端口和识别结果存入所述关联表。所述关联表如下表所示:
本发明输入是未知或待测的应用流量;输出是带具体应用标记的流量或者是带有DPI深度识别标记的未识别流量数据;首包识别过程依赖于首包规则库中的规则和关联表中的关联映射信息,用于处理未知流量数据中的首包数据;首包识别流程处理结果(输出)分两种情况,其一,是能够成功的识别出应用流量所属具体应用并标记输出。其二,是未识别的应用流量,输出到DPI深度识别进行进一步的处理。DPI深度识别处理流程接收来自首包识别处理流程的未识别流量数据,并依赖于DPI识别规则库进行深度识别,识别结果返回给首包识别处理流程,首包识别接收来自DPI深度识别处理的识别结果,再次结合首包规则库进行深度解析或关联识别,将识别结果输出同时更新关联表。
在首包识别的过程中需要维护首包识别规则库和关联表两个文件,首包规则库和DPI识别规则库均可从云端进行实时同步,以保证其规则的有效性和实时性。
在本发明的第三实施例中,提供一种流量引流的首包识别方法,参见图3 所示,本实施例还包括,当接收到应用流量的数据包时,判断所述数据包是否为首包数据;若是首包数据,执行当接收到应用流量的首包数据时的操作;若不是首包数据,判断该数据包是否已进行首包识别结果标记或者进行DPI识别结果标记,如果已标记,按标记时选择的链路进行引流,如果未标记,则进行 DPI深度识别。所述若是首包数据,执行当接收到应用流量的首包数据时的操作与第一实施例或第二实施例相同,本实施例在此不再赘述。
本发明首包识别过程中首先判断接收到的数据包是否为首包数据,如果是首包数据,则进行关联表匹配,若匹配成功则可以确定其所属应用,根据匹配结果对该连接进行首包识别结果标记后按用户的流量策略选择链路;
若匹配失败后从所述首包数据中提取指定的第一包特征;以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则,匹配成功后进行首包识别结果标记后按用户的流量策略选择链路,当未匹配成功时,对所述首包数据进行DPI深度识别;在DPI深度识别的结果中,确定指定的第二包特征;根据确定的所述第二包特征,在所述首包识别规则库中匹配深度解析识别规则或关联识别规则。
如果数据包不是首包数据,则判断该数据包所属的连接是否已经进行首包识别和DPI识别结果的标记,如果已经标记则直接对该连接按照之前的链路进行引流,如果没有标记则进行DPI深度识别处理,对于DPI深度识别返回的识别结果,根据首包识别规则库提取的第二包特征信息,主要是连接的五元组信息,以及其所属应用,并更新关联表。
在本发明的第四实施例中,提供一种流量引流的首包识别装置,参见图4 所示,包括首包识别模块1和DPI识别模块2,
所述首包识别模块1主要包括首包识别引擎、首包识别规则库和关联表;
所述首包识别引擎用于进行关联表匹配、进行首包识别规则库匹配、根据判断或者匹配结果对数据包进行对应的处理、根据DPI深度识别的结果更新关联表。
所述首包识别规则库包括固定端口识别规则、DNS解析识别规则、深度解析识别规则和关联识别规则。
所述关联表中包括五元组信息中的至少三项信息与应用的映射关系。
所述首包识别模块,用于当接收到应用流量的首包数据时,从所述首包数据中提取指定的第一包特征;
以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则(固定端口识别规则或DNS解析识别规则);
当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别。
可能地/可选地:本实施例,所述首包识别模块还用于当接收到应用流量的首包数据时,在所述首包数据中提取指定的第三包特征,根据所述第三包特征查找在先配置的关联表,当在所述关联表中查找到相应的匹配项时,根据查找的匹配项进行首包识别;否则,执行从所述首包数据中提取指定的第一包特征的操作。
可能地/可选地:本实施例,根据匹配到的首包识别规则,对所述首包数据进行识别后,还包括:
将所述首包数据的五元组信息中至少三项信息和识别结果存入所述关联表,以对所述关联表进行更新,从而提高了识别率。
所述DPI识别模块2主要包括DPI识别引擎和DPI识别规则库,所述DPI 识别引擎用于对数据包进行DPI识别,输出识别结果(五元组信息、所属应用的协议ID和命中规则ID)。
所述DPI识别规则库指包含多个应用类别的协议特征规则库,是应用在流量层面上的特征集合。其作用是提供给DPI识别引擎根据待识别的流量进行识别操作。可以通过云端实时同步最新数据,以保证规则的有效性。
所述DPI识别模块用于当未匹配成功时,对所述首包数据进行DPI深度识别;
在DPI深度识别的结果中,确定指定的第二包特征;
根据确定的所述第二包特征,在所述首包识别规则库中匹配深度解析识别规则或关联识别规则;
根据匹配到的首包识别规则,对所述首包数据进行识别。
本发明所述首包识别引擎如何进行关联表匹配、进行首包识别规则库匹配、根据判断或者匹配结果对数据包进行对应的处理、根据DPI深度识别的结果更新关联表与第二实施例相同,本实施例在此不再赘述。
为了对本发明所述方法的实施过程进行更详尽的说明,下面分别通过四个示例对本发明实施例所述方法进行详细说明:
示例一:IMAP(Internet Mail Access Protocol,Internet邮件访问协议) 流量首包识别
未知流量的首包进入到首包识别模块后,获取其端口为143,通过进行首包识别规则库的匹配,命中端口规则,确定其为IMAP流量,实现了该未知流量在首包识别模块的识别,从而可以根据引流规则对该流量选择对应链路输出。下面是固定端口规则示例:
-Layer4Tcp-ProtocolID 99-RuleID 1-RuleType Port
-Port 143
输出ProtocolID所对应的应用为IMAP协议应用;
其中,
Layer4:第四层所采用的协议;
ProtocolID:这条规则命中后输出的协议ID,即所属的应用;
RuleID::这条规则的ID编号,识别一个协议可有多个规则进行组合,因为一个协议可能存在多个特征,每条规则对应一个特征;
RuleType::规则类型,(Relate表示关联识别,DepthParse表示深度识别,DnsParse表示DNS解析,Port表示固定端口方式)。
示例二:163邮箱的流量
对访问163邮箱的流量进行首包识别,在提取第一包特征时,会发现这条流是承载在HTTP协议之上的,那么可以提取这条流量的域名信息进行DNS解析了,于是会提取这条流量的五元组信息+域名信息去首包识别规则库里去匹配。因此,所述首包数据的第一包特征是:五元组+规则需要的信息。
示例三:FTP(File Transfer Protocol,文件传输协议)数据流量首包识别
该未知流量在提取第一包特征时,在首包数据规则库中未匹配成功,则该流量进入DPI识别模块进行DPI深度识别,通过DPI深度识别获取该流量所属应用的信息(包括:五元组信息、DPI识别出应用的协议ID和命中规则ID),将该信息发送给首包识别模块,首包识别模块根据DPI识别模块返回的、信息去首包识别规则库中进行匹配,对于首包识别规则库命中的规则将会采用深度解析的方法对流量进行五元组的解析和提取,然后将提取的五元组信息和所属应用ID更新至关联表中;由于该流量无法在首包识别,因此在DPI识别模块任意选择链路输出;如果DPI识别模块无法识别该流量,也会在DPI识别模块任意选择链路输出。
示例四:关联识别
下面是关联识别规则示例:
-Layer4Tcp-ProtocolID 20-RuleID 1-RuleType Relate
-DPIProtocolID 111–DPIRuleID 1
-RelateItem NULL:NULL:LocalIP:LocalPort:Tcp
其中,DPIProtocolID:经过DPI识别后的协议ID;也作为匹配条件;
DPIRuleID:DPI命中的规则ID;也作为匹配条件;
RelateItem:关联识别项,即匹配的条件;
在经过DPI深度识别过后,将五元组信息+DPIProtocolID+DPIRuleID发送到首包识别模块,首包识别模块通过将五元组信息+DPIProtocolID+DPIRuleID 信息结合关联识别项条件(目的IP+目的端口)与首包识别规则库中的规则进行匹配,如果命中这条规则,最后会输出这条规则的ProtocolID,即协议为20的应用。
在本发明的第五实施例中,提供一种流量引流的首包识别装置,所述首包识别模块还用于当接收到应用流量的数据包时,判断所述数据包是否为首包数据;若是首包数据,执行当接收到应用流量的首包数据时的操作;若不是首包数据,判断该数据包是否已进行首包识别结果标记或者进行DPI识别结果标记,如果已标记,按标记时选择的链路进行引流,如果未标记,则进行DPI深度识别。所述若是首包数据,执行当接收到应用流量的首包数据时的操作与第四实施例相同,本实施例在此不再赘述。
在本发明的第六实施例中,提供一种流量引流的首包识别设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的流量引流的首包识别程序,所述流量引流的首包识别程序被所述处理器执行时实现上述所述流量引流的首包识别方法的步骤。
由于在第一实施例、第二实施例和第三实施例中均已经对流量引流的首包识别方法做了具体说明,本实施例在此不再赘述。
在本发明的第七实施例中,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有流量引流的首包识别程序,所述流量引流的首包识别程序被处理器执行时实现上述任一项所述的流量引流的首包识别方法的步骤。
由于在第一实施例、第二实施例和第三实施例中均已经对流量引流的首包识别方法做了具体说明,本实施例在此不再赘述。
本实施例中,所述的存储介质可以包括但不限于为:ROM、RAM、磁盘或光盘等。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (15)
1.一种流量引流的首包识别方法,其特征在于:
当接收到应用流量的首包数据时,从所述首包数据中提取指定的第一包特征;
以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则;所述首包识别规则库包括:固定端口识别规则和/或DNS解析识别规则;
当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别。
2.根据权利要求1所述方法,其特征在于:所述方法还包括:
当接收到应用流量的首包数据时,在所述首包数据中提取指定的第三包特征,根据所述第三包特征查找在先配置的关联表,当在所述关联表中查找到相应的匹配项时,根据查找的匹配项进行首包识别;否则,执行从所述首包数据中提取指定的第一包特征的操作;所述关联表中包括五元组信息与应用的映射关系。
3.根据权利要求2所述方法,其特征在于:所述首包识别规则库还包括:深度解析识别规则和/或关联识别规则;
所述方法还包括:当未匹配成功时,对所述首包数据进行DPI深度识别;
在DPI深度识别的结果中,确定指定的第二包特征;
根据确定的所述第二包特征,在所述首包识别规则库中匹配深度解析识别规则或关联识别规则;
根据匹配到的首包识别规则,对所述首包数据进行识别。
4.如权利要求2或3所述的方法,其特征在于,根据匹配到的首包识别规则,对所述首包数据进行识别后,还包括:
将所述首包数据的五元组信息中至少三项信息和识别结果存入所述关联表,以对所述关联表进行更新。
5.如权利要求1所述的方法,其特征在于,从所述首包数据中提取的所述第一包特征,包括:用于匹配固定端口识别规则的固定端口信息,和/或,用于匹配DNS解析识别规则的域名信息。
6.如权利要求3所述的方法,其特征在于,所述DPI深度识别的结果:五元组信息、所属应用的协议ID和命中规则ID。
确定的所述第二包特征包括:用于匹配深度解析识别规则的IP和端口信息,和/或,用于匹配关联识别规则的源IP、源端口、目的IP和目的端口中的其中一个或多个信息。
7.根据权利要求3所述方法,其特征在于:所述当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别,并进行首包识别结果标记;所述对首包数据进行DPI深度识别,识别后进行DPI识别结果标记。
8.根据权利要求7所述方法,其特征在于:所述方法还包括:
当接收到应用流量的数据包时,判断所述数据包是否为首包数据;若是首包数据,执行当接收到应用流量的首包数据时的操作;若不是首包数据,判断该数据包是否已进行首包识别结果标记或者进行DPI识别结果标记,如果已标记,按标记时选择的链路进行引流,如果未标记,则进行DPI深度识别。
9.根据权利要求1或3所述方法,其特征在于:根据匹配到首包识别规则对所述首包数据进行识别,包括:
在匹配到的首包识别规则中,获取规则所描述的所属应用的ID;
根据所述应用的ID确定所属应用,完成对所述首包数据的识别。
10.根据权利要求1或2或3或8所述方法,其特征在于:所述首包识别规则库通过云端同步更新各项规则。
11.一种流量引流的首包识别装置,其特征在于:包括首包识别模块,
所述首包识别模块,用于当接收到应用流量的首包数据时,从所述首包数据中提取指定的第一包特征;
以所述第一包特征为匹配条件,在预先配置的首包识别规则库中匹配首包识别规则;所述首包识别规则库包括:固定端口识别规则和/或DNS解析识别规则;
当匹配成功时,根据匹配到首包识别规则对所述首包数据进行识别。
12.根据权利要求11所述装置,其特征在于:所述首包识别模块还用于当接收到应用流量的首包数据时,在所述首包数据中提取指定的第三包特征,根据所述第三包特征查找在先配置的关联表,当在所述关联表中查找到相应的匹配项时,根据查找的匹配项进行首包识别;否则,执行从所述首包数据中提取指定的第一包特征的操作;所述关联表中包括五元组信息与应用的映射关系。
13.根据权利要求11或12所述装置,其特征在于:所述首包识别规则库还包括深度解析识别规则或关联识别规则,
所述装置还包括:DPI识别模块,
所述DPI识别模块用于当未匹配成功时,对所述首包数据进行DPI深度识别;
在DPI深度识别的结果中,确定指定的第二包特征;
根据确定的所述第二包特征,在所述首包识别规则库中匹配深度解析识别规则或关联识别规则;
根据匹配到的首包识别规则,对所述首包数据进行识别。
14.一种流量引流的首包识别设备,其特征在于:包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的流量引流的首包识别程序,所述流量引流的首包识别程序被所述处理器执行时实现如权利要求1至10中任一项所述的方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有流量引流的首包识别程序,所述流量引流的首包识别程序被处理器执行时实现如权利要求1至10中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711216942.3A CN108173705A (zh) | 2017-11-28 | 2017-11-28 | 流量引流的首包识别方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711216942.3A CN108173705A (zh) | 2017-11-28 | 2017-11-28 | 流量引流的首包识别方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108173705A true CN108173705A (zh) | 2018-06-15 |
Family
ID=62524631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711216942.3A Pending CN108173705A (zh) | 2017-11-28 | 2017-11-28 | 流量引流的首包识别方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108173705A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110768875A (zh) * | 2019-12-27 | 2020-02-07 | 北京安博通科技股份有限公司 | 一种基于dns学习的应用识别方法及*** |
CN111092785A (zh) * | 2019-12-05 | 2020-05-01 | 深圳市任子行科技开发有限公司 | 数据监测方法及装置 |
CN111371649A (zh) * | 2020-03-03 | 2020-07-03 | 恒为科技(上海)股份有限公司 | 一种深度包检测方法及装置 |
CN111786985A (zh) * | 2020-06-28 | 2020-10-16 | 厦门市美亚柏科信息股份有限公司 | 一种解析tcp和udp数据的方法、装置及存储介质 |
WO2021047402A1 (zh) * | 2019-09-10 | 2021-03-18 | 华为技术有限公司 | 应用识别方法、装置及存储介质 |
CN115378884A (zh) * | 2022-04-27 | 2022-11-22 | 国家计算机网络与信息安全管理中心 | Dns报文处理方法、装置、处理设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148854A (zh) * | 2010-10-19 | 2011-08-10 | 华为数字技术有限公司 | 对等节点共享流量识别方法和装置 |
CN102325124A (zh) * | 2011-05-23 | 2012-01-18 | 北京网康科技有限公司 | 一种支持引流功能的应用识别设备及方法 |
CN104320304A (zh) * | 2014-11-04 | 2015-01-28 | 武汉虹信技术服务有限责任公司 | 一种易扩展的多方式融合的核心网用户流量应用识别方法 |
CN105610808A (zh) * | 2015-12-24 | 2016-05-25 | 成都科来软件有限公司 | 一种基于动态域名解析的网络流量识别方法及*** |
CN106452953A (zh) * | 2016-09-30 | 2017-02-22 | 苏州迈科网络安全技术股份有限公司 | 基于dpi技术的综合数据特征分析方法及*** |
-
2017
- 2017-11-28 CN CN201711216942.3A patent/CN108173705A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148854A (zh) * | 2010-10-19 | 2011-08-10 | 华为数字技术有限公司 | 对等节点共享流量识别方法和装置 |
CN102325124A (zh) * | 2011-05-23 | 2012-01-18 | 北京网康科技有限公司 | 一种支持引流功能的应用识别设备及方法 |
CN104320304A (zh) * | 2014-11-04 | 2015-01-28 | 武汉虹信技术服务有限责任公司 | 一种易扩展的多方式融合的核心网用户流量应用识别方法 |
CN105610808A (zh) * | 2015-12-24 | 2016-05-25 | 成都科来软件有限公司 | 一种基于动态域名解析的网络流量识别方法及*** |
CN106452953A (zh) * | 2016-09-30 | 2017-02-22 | 苏州迈科网络安全技术股份有限公司 | 基于dpi技术的综合数据特征分析方法及*** |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021047402A1 (zh) * | 2019-09-10 | 2021-03-18 | 华为技术有限公司 | 应用识别方法、装置及存储介质 |
US11863439B2 (en) | 2019-09-10 | 2024-01-02 | Huawei Technologies Co., Ltd. | Method, apparatus and storage medium for application identification |
CN111092785A (zh) * | 2019-12-05 | 2020-05-01 | 深圳市任子行科技开发有限公司 | 数据监测方法及装置 |
CN110768875A (zh) * | 2019-12-27 | 2020-02-07 | 北京安博通科技股份有限公司 | 一种基于dns学习的应用识别方法及*** |
CN111371649A (zh) * | 2020-03-03 | 2020-07-03 | 恒为科技(上海)股份有限公司 | 一种深度包检测方法及装置 |
CN111786985A (zh) * | 2020-06-28 | 2020-10-16 | 厦门市美亚柏科信息股份有限公司 | 一种解析tcp和udp数据的方法、装置及存储介质 |
CN115378884A (zh) * | 2022-04-27 | 2022-11-22 | 国家计算机网络与信息安全管理中心 | Dns报文处理方法、装置、处理设备及存储介质 |
CN115378884B (zh) * | 2022-04-27 | 2023-09-15 | 国家计算机网络与信息安全管理中心 | Dns报文处理方法、装置、处理设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108173705A (zh) | 流量引流的首包识别方法、装置、设备及介质 | |
CN102307123B (zh) | 基于传输层流量特征的nat流量识别方法 | |
CN102724317B (zh) | 一种网络数据流量分类方法和装置 | |
CN110855576B (zh) | 应用识别方法及装置 | |
CN112714045B (zh) | 一种基于设备指纹和端口的快速协议识别方法 | |
CN105162626B (zh) | 基于众核处理器的网络流量深度识别***及识别方法 | |
CN104320304B (zh) | 一种易扩展的多方式融合的核心网用户流量应用识别方法 | |
CN101741744B (zh) | 一种网络流量识别方法 | |
CN107819646A (zh) | 一种分布式传输的网络流量分类***和方法 | |
CN103139315A (zh) | 一种适用于家庭网关的应用层协议解析方法 | |
CN110213212A (zh) | 一种设备的分类方法和装置 | |
CN105847078B (zh) | 一种基于dpi自学习机制的http流量精细化识别方法 | |
CN102148854B (zh) | 对等节点共享流量识别方法和装置 | |
CN102075404A (zh) | 一种报文检测方法及装置 | |
EP2485432B1 (en) | A method and apparatus for communications analysis | |
CN101645806A (zh) | Dpi和dfi相结合的网络流量分类***及分类方法 | |
CN106330584A (zh) | 一种业务流的识别方法及识别装置 | |
CN104994016A (zh) | 用于分组分类的方法和装置 | |
CN111953552B (zh) | 数据流的分类方法和报文转发设备 | |
CN101184000A (zh) | 基于报文采样和应用签名的互联网应用流量识别方法 | |
CN106789242A (zh) | 一种基于手机客户端软件动态特征库的识别应用智能分析引擎 | |
CN108462615A (zh) | 一种网络用户分组方法和装置 | |
CN101582897A (zh) | 一种深度报文检测方法和装置 | |
CN105245551B (zh) | 一种基于dns和包长组合的应用识别方法 | |
US20100290353A1 (en) | Apparatus and method for classifying network packet data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180615 |