CN104348675B - 双向业务数据流识别方法及装置 - Google Patents
双向业务数据流识别方法及装置 Download PDFInfo
- Publication number
- CN104348675B CN104348675B CN201310334898.1A CN201310334898A CN104348675B CN 104348675 B CN104348675 B CN 104348675B CN 201310334898 A CN201310334898 A CN 201310334898A CN 104348675 B CN104348675 B CN 104348675B
- Authority
- CN
- China
- Prior art keywords
- frame
- frame data
- unidentified
- result
- data
- 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
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种双向业务数据流识别方法及装置,所述方法包括:对业务数据流进行帧计数,对同一帧数据进行深度包检测识别;对同一帧数据的识别结果进行结果仲裁;检测是否存在未识别出结果的帧数据,并对未识别出结果的帧数据进行深度流检测识别,得到双向业务数据流的识别结果;所述业务数据流包括上行业务数据流和下行业务数据流;对所述上行业务数据流和所述下行业务数据流的识别过程相同,且识别过程同时进行。本发明通过对业务数据流的帧数据进行深度包检测识别,并对无法识别的加密业务进行深度流检测识别,且识别的颗粒度为帧,通过综合利用DPI和DFI识别技术,对双向业务数据流均作出识别,提高了业务数据流识别的效率。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种双向业务数据流识别方法及装置。
背景技术
随着互联网业务的高速发展,各种各样的新型互联网业务层出不穷,如P2P(Peerto Peer,对等网络)业务、网页视频业务、即时通信类业务、VoIP(Voice over InternetProtocol)业务、流媒体业务、网络游戏业务等。P2P业务以及各种各样的视频类业务吞噬了大量的带宽,使得运营商不得不对骨干网进行扩容。然而,运营商的收入并没有随着网络的扩容而增加,运营商对网络管理方式的转变以及引入智能技术挖掘网络潜在价值已成必需。将网络中的各种业务识别出来并且对业务进行精细化的管理是大势所趋。
运营商要保证用户的QoS(Quality of Service,服务质量),不能够因为网络的延迟或阻塞而大幅度降低用户的体验。特别对于一些如即时通信、网络游戏等实时性要求特别高的业务,QoS要确保这些重要业务量不受延迟或丢弃,同时保证网络的高效运行。所以,在接入网侧进行业务识别就有着非常重要的意义。
现有技术中采用基于数据包应用层签名的识别技术对单向业务进行识别,包括(Deep Packet Inspection,深度包检测)技术和DFI(Deep/Dynamic Flow Inspection,深度流检测)技术,DPI技术利用各种协议在应用层表现出的独有特征进行业务识别;而DFI技术以流为基本单位使用各种流特征来对业务流进行识别。
然而,传统的业务识别只是对单向的业务进行识别,DPI技术本身存在着限制,无法识别加密的业务;DFI技术虽然可以识别加密业务,但是对业务识别的颗粒度较粗。
发明内容
(一)解决的技术问题
本发明解决的技术问题是:如何解决对业务数据流进行识别时,无法识别加密业务以及识别的颗粒度较粗问题。
(二)技术方案
为解决上述问题,本发明实施例提供了一种双向业务数据流识别方法,所述方法包括:
对业务数据流进行帧计数,在帧计数完成后,对同一帧数据进行深度包检测识别;
对同一帧数据的识别结果进行结果仲裁,得到所述帧数据的深度包检测识别结果;
检测是否存在未识别出结果的帧数据,并对未识别出结果的帧数据进行深度流检测识别,得到双向业务数据流的识别结果;
所述业务数据流包括上行业务数据流和下行业务数据流;
所述对业务数据流进行帧计数,进一步包括:
对所述上行业务数据流和所述下行业务数据流的识别过程相同,且识别过程同时进行。
优选地,所述对同一帧数据中进行深度包检测识别的内容,包括:
对所述业务数据流进行帧端口、五元组和关键字的识别;
所述对所述业务数据流进行帧端口、五元组和关键字的识别,包括:
对所述帧数据提取帧端口和五元组,对照预先存储的帧端口列表和五元组表对帧端口和五元组进行识别,同时对所述帧数据的关键字进行识别,得到帧数据的帧端口识别结果、五元组识别结果和关键字识别结果。
优选地,所述对同一帧数据进行深度包检测识别的同时,进一步包括:
提取所述帧数据的帧长,并将所述帧长保存到RAM缓存中,利用所述帧长对未识别出结果的帧数据进行深度流检测识别;
接收自身侧未识别出结果的帧数据的帧长和五元组,以及接收另一侧未识别出结果的帧数据的帧长和五元组;
利用自身侧未识别出结果的帧数据的帧长和五元组以及另一侧未识别出结果的帧数据的帧长和五元组,对未识别出结果的帧数据进行深度流检测识别。
优选地,所述对未识别出结果帧数据进行深度流检测识别,包括:
提取自身侧未识别出结果的帧数据的包特征以及提取另一侧未识别出结果的帧数据的包特征;
根据接收到的未识别出结果的帧数据的帧长对应的五元组进行哈希查询,判断所述业务数据流是否保存在包流特征缓存表中;若否,则增加一条流特征缓存表,将所述业务数据流保存到所述增加的流特征缓存表中;若是,则根据包特征获取业务数据流的前三个消息的长度,并将所述业务数据流进行分类;
根据提取的自身侧未识别出结果的帧数据的包特征和提取的另一侧未识别出结果的帧数据的包特征,以及根据业务数据流的前三个消息的长度,对业务数据流的帧数据进行分类;
根据对业务数据流的帧数据的分类结果,以及业务数据流的帧数据的五元组,对所述未识别出结果的帧数据进行识别。
优选地,所述对未识别出结果的帧数据进行深度流检测识别,之后进一步包括:
将识别出结果的帧数据在与另一侧的通信开销中进行标识;
所述接收另一侧未识别出结果的帧数据的帧长和五元组,进一步包括:
将未识别出结果的帧数据的帧长和五元组发送给另一侧;
所述将未识别出结果的帧数据的帧长和五元组发送给另一侧,包括:
对帧数据的通信开销进行过滤,将未经过标识的帧数据的帧长和五元组发送给另一侧。
本发明实施例还提供了一种双向业务数据流识别装置,所述装置包括:
下行发送设备和上行发送设备;
所述下行发送设备,用于发送上行业务数据流;
所述上行发送设备,用于发送下行业务数据流;
所述下行发送设备和所述上行发送设备均包括:
业务识别模块,用于业务数据流进行识别;
所述业务识别模块包括:
计数子模块,用于对业务数据流进行帧计数;
深度包检测识别子模块,用于对同一帧数据进行深度包检测识别;
结果仲裁子模块,用于对同一帧数据的识别结果进行结果仲裁,得到所述帧数据的深度包检测识别结果;
检测子模块,用于检测是否存在未识别出结果的帧数据;
深度流检测识别子模块,用于对未识别出结果的帧数据进行深度流检测识别;
所述业务数据流包括:所述上行业务数据流和所述下行业务数据流。
优选地,所述深度包检测识别子模块包括:
第一提取单元,用于提取所述帧数据的帧端口和五元组;
帧端口识别单元,用于根据预先存储的帧端口列表和提取的所述帧数据的帧端口对所述业务数据流进行帧端口识别;
五元组识别单元,用于根据预先存储的五元组表和提取的所述帧数据的五元组对所述业务数据流进行五元组识别;
关键字识别单元,用于对所述业务数据流进行关键字识别。
优选地,所述深度包检测识别子模块还包括:
第二提取单元,用于提取所述帧数据的帧长,并将所述帧长保存到RAM缓存中;
所述深度流检测识别子模块包括:
接收单元,用于自身侧未识别出结果的帧数据的帧长和五元组,以及接收另一侧未识别出结果的帧数据的帧长和五元组。
优选地,所述深度流识别子模块还包括:
第三提取单元,用于提取自身侧未识别出结果的帧数据的包特征以及提取另一侧未识别出结果的帧数据的包特征;
判断单元,用于根据接收到的未识别出结果的帧数据的帧长对应的五元组进行哈希查询判断所述业务数据流是否保存在流特征缓存表中;
增加单元,用于当判断单元判断出所述业务数据流未保存在流特征缓存表中,则增加一条流特征缓存表,并将所述业务数据流保存到所述增加的流特征缓存表中;
分类单元,用于当判断单元判断出所述业务数据流保存在流特征缓存表中,则根据提取的自身侧未识别出结果的帧数据的包特征和提取的另一侧未识别出结果的帧数据的包特征,以及根据包特征获取业务数据流的前三个消息的长度,对所述业务数据流进行分类;并将分类结果发送给五元组识别子模块;
所述五元组识别子模块,用于根据未识别出结果的帧数据的五元组以及所述分类结果对未识别出结果的帧数据进行识别。
优选地,所述下行发送设备和所述上行发送设备均还包括:
开销标识模块,用于将自身侧识别出结果的帧数据在与另一侧的通信开销中进行标识;
开销过滤模块,用于在将未识别出结果的帧数据的帧长和五元组发送给另一侧时,对帧数据的通信开销进行过滤,将未经过标识的帧数据的帧长和五元组发送给另一侧。
(三)有益效果
本发明提供一种双向业务数据流识别方法及装置,通过利用DPI技术对业务数据流的帧数据进行深度包检测识别,并对无法识别的加密业务利用DFI技术进行深度流检测识别,且识别的颗粒度为帧,从而解决了现有技术的识别颗粒度较粗的问题,通过综合利用DPI和DFI识别技术,对双向业务数据流均作出识别,提高了业务数据流识别的效率。
附图说明
图1是本发明实施例提供的方法流程图;
图2是本发明实施例提供的方法具体流程图;
图3是本发明实施例提供的仲裁流程图;
图4是本发明实施例提供的装置结构示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
实施例1:
为解决上述技术问题,本发明实施例提供了一种双向业务数据流识别方法,如图1所示,包括:
S1:对业务数据流进行帧计数,在帧计数完成后,对同一帧数据进行深度包检测识别;
S2:对同一帧数据的识别结果进行结果仲裁,得到所述帧数据的深度包检测识别结果;
S3:检测是否存在未识别出结果的帧数据,并对未识别出结果的帧数据进行深度流检测识别,得到双向业务数据流的识别结果;
所述业务数据流包括上行业务数据流和下行业务数据流;
所述对业务数据流进行帧计数,进一步包括:
对所述上行业务数据流和所述下行业务数据流的识别过程相同,且识别过程同时进行。
本发明实施例通过提供一种双向业务数据流识别方法,识别的颗粒度为帧,通过对业务数据流的帧数据进行深度包检测识别,对于未识别出的帧数据进行深度流检测识别,通过对双向业务数据流均作出识别,提高了业务流识别的效率。
其中,对于深度包检测识别的具体包括:对所述业务数据流进行帧端口、五元组和关键字的识别;所述对所述业务数据流进行帧端口、五元组和关键字的识别,包括:对所述帧数据提取帧端口和五元组,对照预先存储的帧端口列表和五元组表对帧端口和五元组进行识别,同时对所述帧数据的关键字进行识别,得到帧数据的帧端口识别结果、五元组识别结果和关键字识别结果。通过识别帧端口、五元组和关键字得到的识别结果中进行结果仲裁得到深度包检测识别结果,使得结果更加精确。
在对同一帧数据进行深度包检测识别的同时需要提取帧数据的帧长,以及接收自身侧和另一侧未识别出结果的帧数据的帧长和五元组,在自身侧对未识别出结果的帧数据进行深度流检测识别识别,需要根据帧数据的帧长以及另一侧未识别出结果的帧长和五元组,从而相互告知已经识别出来的帧数据以及未识别出来的帧数据,从而对未识别出来的帧数据进行进一步识别,提高了双向业务数据流的识别效率。
在对未识别出结果的帧数据进行深度流检测识别时,需要提取自身侧以及另一侧未识别出结果的帧数据的包特征,根据包特征获取业务数据流的前三个消息的长度,从而对业务数据流的帧数据进行分类,通过利用另一侧的包特征,从而避免了不必要的冗余。
在对双向业务数据流均识别出来之后,需要将识别出结果的帧数据在于另一侧的通信开销中进行标识,从而能够判断出识别出结果和未识别出结果的帧数据。另外对帧数据的通信开销进行过滤,从而可以过滤出未经过识别的帧数据的帧长和五元组发送给另一侧。节省了开支。
根据上述方法,本发明实施例提供了一种双向业务数据流识别方法的具体实施例,如图2所示,包括:
步骤101:对业务数据流进行帧计数;
业务数据流包括上行业务数据流和下行业务数据流;其中,业务数据流的下行发送设备DE只对下行业务数据流进行识别,业务数据流的上行发送设备UE只对上行业务数据流进行识别。上行发送设备和下行发送设备的内部模块相同,并且对业务数据流的识别过程相同,并且识别过程同时进行,本发明实施例以下行发送设备DE侧对下行业务数据流进行识别为例。
当下行业务数据流到达DE侧的业务识别模块时,对下行业务数据流的帧数据进行计算,每个帧都有对应的一个帧序号,在后续的识别过程中,利用帧序号来进行帧的对齐,以保证帧数据、识别结果、帧长的一一对应关系。
步骤102:帧计数完成后,对同一帧数据中的帧端口、五元组和关键字进行深度包检测识别;
帧计数完成后,下行业务数据流到达深度包检测识别模块,对下行业务数据流进行深度包检测识别,其中,对到达的帧数据进行提取帧端口和五元组,提取完成后,对照帧端口列表和五元组表对帧端口和五元组进行识别,同时对帧数据的关键字进行搜索识别,得到帧数据的帧端口识别结果、五元组识别结果和关键字识别结果。
本发明实施例的识别颗粒度为“帧”,因此每个帧数据都会输出一个深度包检测识别结果。
在对帧数据进行深度包检测识别的同时,提取该帧数据的帧长,并且默认,在协议交互阶段IP包不会分片,所一个帧数据的帧长就是这个IP包的包长,包长度凸起与计算与步骤101同时进行,提取完毕后包长到RAM缓存中。
由于上述步骤均有一定的时延,因此为了保证同一个帧的识别结果和帧长能够以一对应,需要对帧数据利用FIFO进行统一的延时,帧顺序和帧间隔保持不变。
步骤103:对得到的帧端口识别结果、五元组识别结果和关键字识别结果进行结果仲裁,得到帧数据的深度包检测识别结果;
将得到的三个识别结果进入结果仲裁,如图3所示,为对三个识别结果进行结果仲裁的流程图,通过仲裁确定该数据帧的最终的深度包检测识别结果,判断流程为:判断帧端口识别结果、五元组识别结果和关键字识别结果中,如果关键字识别结果不等于“未识别”,则仲裁结果为关键字结果;如果关键字识别结果等于“未识别”,则判断五元组识别结果,如果五元组识别结果不等于“未识别”,则仲裁结果为五元组识别结果,如果五元组识别结果等于“未识别”,则仲裁结果为帧端口结果。
步骤104:将帧数据、帧数据的深度包检测识别结果、帧长一一对应的输出业务识别模块,并将识别出结果的帧数据在于另一侧的通信开销中进行标识,并对帧数据的通信开销进行过滤;
步骤105:根据帧数据的标识检测是否存在未识别出结果的帧数据,并将未识别出结果的帧数据发送给另一侧;
此时是以下行发送设备对下行业务数据流进行发送为例,因此此时是上行发送设备将上行业务数据流中未识别出结果的帧数据发送给下行发送设备,而下行发送设备亦然。
下行发送设备接收自身侧未识别出结果的帧数据和另一侧未识别出结果的帧数据,此时发送的帧数据内容包括帧长和五元组。
步骤106:接收上行发送设备发送的的未识别出结果的帧数据,以及根据下行业务数据流未识别出结果的帧数据,对上行和下行两路分别进行五元组哈希运算;
步骤107:利用轮询机制分别提取上行发送设备发送的未识别出结果的帧数据和下行业务数据流未识别出结果的帧数据中的包特征,并将包特征和五元组分别保存到两路的缓存中;
步骤108:对帧数据的帧长对应的五元组进行哈希查询,判断是否业务数据流已经保存包流特征缓存表中;若否,则增加一条流特征缓存表,将所述业务数据流保存到所述增加的流特征缓存表中;若是,则根据包特征获取业务数据流的前三个消息的长度,并将所述业务数据流进行分类;
对业务数据流的帧数据进行分类包括:对于TCP业务数据流的同向包长进行相加,上、下、上三个消息收集完毕后发送给DFI分类器模块,UDP流的同向包包长不相加,只以第一个包的包长作为消息长度,待上、下、上三个消息收集完毕后发送给DFI分类器模块。
消息为对端一次信息交互过程中传输的数据包载荷的内容,这里的对端可以是不对等的,即C/S架构,一端客户端,一端为服务器;也可以是两个对等端,即P2P。在消息交互的过程中,相同方向的包均视为同一个消息。对于TCP包,同向的包合在一起为一个消息;对于UDP包,同向的包仅视第一个包为消息,后续同向包视为重发的包。
依靠一个业务数据流的消息交互阶段的前3个消息的包特征(长度、方向)来确定业务数据流的业务类型,从而给出业务数据流的数分类结果,即识别过程中要用到双向的消息特征。
步骤109:根据业务数据流的前三个消息的长度对业务数据流进行分类;
根据业务数据流中未识别出结果的帧数据的包特征以及根据业务数据流的前三个消息的长度,分类器利用建立好的算法模型(如决策树、SVM等),对业务数据流进行分类。
步骤110:经分类结果和未识别出结果的五元组发送给五元组识别模块,五元组识别模块根据分类结果和五元组对未识别出结果的帧数据进行识别。
下行发送设备DE侧和上行发送设备UE侧对相同的业务种类进行识别,所以DE侧和UE侧的对业务数据流的识别过程相同,为了支持对互联网主流业务的识别,业务识别模块均使用深度包检测技术(DPI)和深度流检测技术(DFI)相结合的方式。DFI技术是对业务数据流的流特征进行分析来实现对业务数据流的识别,所以就需要对流特征进行存储,特征收集满之后进行识别。对于10Gbps的吞吐量,要处理的业务数据流数目很多,如果让所有的业务数据流都进入DFI进行识别付出的代价较大,所以让DPI识别不出来的业务才进入DFI识别,即DPI和DFI采用串行的方式配合进行识别。因此提高了业务数据流识别的效率。
实施例2:
本发明实施例还提供了一种双向业务数据流识别装置,包括:
下行发送设备和上行发送设备;
所述下行发送设备,用于发送上行业务数据流;
所述上行发送设备,用于发送下行业务数据流;
所述下行发送设备和所述上行发送设备均包括:
业务识别模块,用于业务数据流进行识别;
所述业务识别模块包括:
计数子模块,用于对业务数据流进行帧计数;
深度包检测识别子模块,用于对同一帧数据进行深度包检测识别;
结果仲裁子模块,用于对同一帧数据的识别结果进行结果仲裁,得到所述帧数据的深度包检测识别结果;
检测子模块,用于检测是否存在未识别出结果的帧数据;
深度流检测识别子模块,用于对未识别出结果的帧数据进行深度流检测识别;
所述业务数据流包括:所述上行业务数据流和所述下行业务数据流。
所述深度包检测识别子模块包括:
第一提取单元,用于提取所述帧数据的帧端口和五元组;
帧端口识别单元,用于根据预先存储的帧端口列表和提取的所述帧数据的帧端口对所述业务数据流进行帧端口识别;
五元组识别单元,用于根据预先存储的五元组表和提取的所述帧数据的五元组对所述业务数据流进行五元组识别;
关键字识别单元,用于对所述业务数据流进行关键字识别。
所述深度包检测识别子模块还包括:
第二提取单元,用于提取所述帧数据的帧长,并将所述帧长保存到RAM缓存中;
所述深度流检测识别子模块包括:
接收单元,用于自身侧未识别出结果的帧数据的帧长和五元组,以及接收另一侧未识别出结果的帧数据的帧长和五元组。
所述深度流识别子模块还包括:
第三提取单元,用于提取自身侧未识别出结果的帧数据的包特征以及提取另一侧未识别出结果的帧数据的包特征;
判断单元,用于根据接收到的未识别出结果的帧数据的帧长对应的五元组进行哈希查询判断所述业务数据流是否保存在流特征缓存表中;
增加单元,用于当判断单元判断出所述业务数据流未保存在流特征缓存表中,则增加一条流特征缓存表,并将所述业务数据流保存到所述增加的流特征缓存表中;
分类单元,用于当判断单元判断出所述业务数据流保存在流特征缓存表中,则根据提取的自身侧未识别出结果的帧数据的包特征和提取的另一侧未识别出结果的帧数据的包特征,以及根据包特征获取业务数据流的前三个消息的长度,对所述业务数据流进行分类;并将分类结果发送给五元组识别子模块;
所述五元组识别子模块,用于根据未识别出结果的帧数据的五元组以及所述分类结果对未识别出结果的帧数据进行识别。
所述下行发送设备和所述上行发送设备均还包括:
开销标识模块,用于将自身侧识别出结果的帧数据在与另一侧的通信开销中进行标识;
开销过滤模块,用于在将未识别出结果的帧数据的帧长和五元组发送给另一侧时,对帧数据的通信开销进行过滤,将未经过标识的帧数据的帧长和五元组发送给另一侧。
根据先前的定义,消息是由多个包形成的,所以对包特征(包长和包方向)的处理很关键,为了避免DFI子模块接收过多冗余的信息,仅让DPI没有识别出来的帧数据进入DFI模块。UE侧业务识别模块只对上行数据进行识别,DE侧业务识别模块只对下行数据进行识别,所以如果UE侧的深度流检测识别子模块想用到下行未识别出结果的帧数据就需要DE侧的业务识别模块告知UE侧的业务识别模块该帧数据是否已经被识别出来;同理,如果DE侧的DFI识别子模块想利用上行未识别的包特征就需要UE侧业务识别模块告知DE侧的业务识别模块该帧数据是否已经被识别出来。
通常,识别结果只是作为发送优先级队列调度的依据的,所以在UE和DE之间的通信通常并不留出传输识别结果的接口。但是不论是在点对点的系统、点对多点的系统还是多点系统中,UE和DE之间肯定有一定的开销用来相互通信,我们可以利用其中开销的一部分(1比特或者多比特)用来传输业务识别情况。即UE在发送上行帧数据的同时用一定的开销来表示这一帧是否被识别出来,DE在发送下行帧数据的同时用一定的开销来表示这一帧数据是否被识别出来。这样就实现了不用更改UE和DE设备原有的接口设计就能够使得UE和DE设备之间实现业务识别信息的共享。UE侧和DE侧的业务识别模块中的DFI子模块就可以利用到另外一个方向上的包特征并且能够避免不必要的冗余。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (8)
1.一种双向业务数据流识别方法,其特征在于,所述方法包括:
对业务数据流进行帧计数,在帧计数完成后,对同一帧数据进行深度包检测识别;
对同一帧数据的识别结果进行结果仲裁,得到所述帧数据的深度包检测识别结果;
检测是否存在未识别出结果的帧数据,并对未识别出结果的帧数据进行深度流检测识别,得到双向业务数据流的识别结果;
所述业务数据流包括上行业务数据流和下行业务数据流;
所述对业务数据流进行帧计数,进一步包括:
对所述上行业务数据流和所述下行业务数据流的识别过程相同,且识别过程同时进行;
所述对同一帧数据进行深度包检测识别的同时,进一步包括:
提取所述帧数据的帧长,并将所述帧长保存到RAM缓存中,利用所述帧长对未识别出结果的帧数据进行深度流检测识别;
接收自身侧未识别出结果的帧数据的帧长和五元组,以及接收另一侧未识别出结果的帧数据的帧长和五元组;
利用自身侧未识别出结果的帧数据的帧长和五元组以及另一侧未识别出结果的帧数据的帧长和五元组,对未识别出结果的帧数据进行深度流检测识别。
2.根据权利要求1所述的方法,其特征在于,所述对同一帧数据中进行深度包检测识别的内容,包括:
对所述业务数据流进行帧端口、五元组和关键字的识别;
所述对所述业务数据流进行帧端口、五元组和关键字的识别,包括:
对所述帧数据提取帧端口和五元组,对照预先存储的帧端口列表和五元组表对帧端口和五元组进行识别,同时对所述帧数据的关键字进行识别,得到帧数据的帧端口识别结果、五元组识别结果和关键字识别结果。
3.根据权利要求1所述的方法,其特征在于,所述对未识别出结果帧数据进行深度流检测识别,包括:
提取自身侧未识别出结果的帧数据的包特征以及提取另一侧未识别出结果的帧数据的包特征;
根据接收到的未识别出结果的帧数据的帧长对应的五元组进行哈希查询,判断所述业务数据流是否保存在包流特征缓存表中;若否,则增加一条流特征缓存表,将所述业务数据流保存到所述增加的流特征缓存表中;若是,则根据包特征获取业务数据流的前三个消息的长度,并将所述业务数据流进行分类;
根据提取的自身侧未识别出结果的帧数据的包特征和提取的另一侧未识别出结果的帧数据的包特征,以及根据业务数据流的前三个消息的长度,对业务数据流的帧数据进行分类;
根据对业务数据流的帧数据的分类结果,以及业务数据流的帧数据的五元组,对所述未识别出结果的帧数据进行识别。
4.根据权利要求1所述的方法,其特征在于,所述对未识别出结果的帧数据进行深度流检测识别,之后进一步包括:
将识别出结果的帧数据在与另一侧的通信开销中进行标识;
所述接收另一侧未识别出结果的帧数据的帧长和五元组,进一步包括:
将未识别出结果的帧数据的帧长和五元组发送给另一侧;
所述将未识别出结果的帧数据的帧长和五元组发送给另一侧,包括:
对帧数据的通信开销进行过滤,将未经过标识的帧数据的帧长和五元组发送给另一侧。
5.一种双向业务数据流识别装置,其特征在于,所述装置包括:
下行发送设备和上行发送设备;
所述下行发送设备,用于发送上行业务数据流;
所述上行发送设备,用于发送下行业务数据流;
所述下行发送设备和所述上行发送设备均包括:
业务识别模块,用于业务数据流进行识别;
所述业务识别模块包括:
计数子模块,用于对业务数据流进行帧计数;
深度包检测识别子模块,用于对同一帧数据进行深度包检测识别;
结果仲裁子模块,用于对同一帧数据的识别结果进行结果仲裁,得到所述帧数据的深度包检测识别结果;
检测子模块,用于检测是否存在未识别出结果的帧数据;
深度流检测识别子模块,用于对未识别出结果的帧数据进行深度流检测识别;
所述业务数据流包括:所述上行业务数据流和所述下行业务数据流;
所述深度包检测识别子模块还包括:
第二提取单元,用于提取所述帧数据的帧长,并将所述帧长保存到RAM缓存中;
所述深度流检测识别子模块包括:
接收单元,用于自身侧未识别出结果的帧数据的帧长和五元组,以及接收另一侧未识别出结果的帧数据的帧长和五元组。
6.根据权利要求5所述的装置,其特征在于,所述深度包检测识别子模块包括:
第一提取单元,用于提取所述帧数据的帧端口和五元组;
帧端口识别单元,用于根据预先存储的帧端口列表和提取的所述帧数据的帧端口对所述业务数据流进行帧端口识别;
五元组识别单元,用于根据预先存储的五元组表和提取的所述帧数据的五元组对所述业务数据流进行五元组识别;
关键字识别单元,用于对所述业务数据流进行关键字识别。
7.根据权利要求5所述的装置,其特征在于,所述深度流识别子模块还包括:
第三提取单元,用于提取自身侧未识别出结果的帧数据的包特征以及提取另一侧未识别出结果的帧数据的包特征;
判断单元,用于根据接收到的未识别出结果的帧数据的帧长对应的五元组进行哈希查询判断所述业务数据流是否保存在流特征缓存表中;
增加单元,用于当判断单元判断出所述业务数据流未保存在流特征缓存表中,则增加一条流特征缓存表,并将所述业务数据流保存到所述增加的流特征缓存表中;
分类单元,用于当判断单元判断出所述业务数据流保存在流特征缓存表中,则根据提取的自身侧未识别出结果的帧数据的包特征和提取的另一侧未识别出结果的帧数据的包特征,以及根据包特征获取业务数据流的前三个消息的长度,对所述业务数据流进行分类;并将分类结果发送给五元组识别子模块;
所述五元组识别子模块,用于根据未识别出结果的帧数据的五元组以及所述分类结果对未识别出结果的帧数据进行识别。
8.根据权利要求5所述的装置,其特征在于,所述下行发送设备和所述上行发送设备均还包括:
开销标识模块,用于将自身侧识别出结果的帧数据在与另一侧的通信开销中进行标识;
开销过滤模块,用于在将未识别出结果的帧数据的帧长和五元组发送给另一侧时,对帧数据的通信开销进行过滤,将未经过标识的帧数据的帧长和五元组发送给另一侧。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310334898.1A CN104348675B (zh) | 2013-08-02 | 2013-08-02 | 双向业务数据流识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310334898.1A CN104348675B (zh) | 2013-08-02 | 2013-08-02 | 双向业务数据流识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104348675A CN104348675A (zh) | 2015-02-11 |
CN104348675B true CN104348675B (zh) | 2017-10-13 |
Family
ID=52503543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310334898.1A Active CN104348675B (zh) | 2013-08-02 | 2013-08-02 | 双向业务数据流识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104348675B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109076013B (zh) * | 2016-05-10 | 2021-01-15 | 华为技术有限公司 | 分组交换业务识别方法及终端 |
CN106452953A (zh) * | 2016-09-30 | 2017-02-22 | 苏州迈科网络安全技术股份有限公司 | 基于dpi技术的综合数据特征分析方法及系统 |
CN107682215B (zh) * | 2017-08-31 | 2021-07-06 | 哈尔滨工程大学 | 一种基于改进lrfu状态记录的dpi业务识别方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6917984B1 (en) * | 2000-01-07 | 2005-07-12 | Matsushita Electric Industrial Co., Ltd. | Time based multimedia objects streaming apparatus and method |
CN101645806A (zh) * | 2009-09-04 | 2010-02-10 | 东南大学 | Dpi和dfi相结合的网络流量分类系统及分类方法 |
CN101951330A (zh) * | 2010-09-27 | 2011-01-19 | 中兴通讯股份有限公司 | 双向联合检测的装置及方法 |
CN102075984A (zh) * | 2010-12-31 | 2011-05-25 | 北京邮电大学 | 用于无线局域网的优化视频业务传输的系统和方法 |
CN102215125A (zh) * | 2011-06-08 | 2011-10-12 | 中国人民解放军信息工程大学 | 网络业务管控系统 |
-
2013
- 2013-08-02 CN CN201310334898.1A patent/CN104348675B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6917984B1 (en) * | 2000-01-07 | 2005-07-12 | Matsushita Electric Industrial Co., Ltd. | Time based multimedia objects streaming apparatus and method |
CN101645806A (zh) * | 2009-09-04 | 2010-02-10 | 东南大学 | Dpi和dfi相结合的网络流量分类系统及分类方法 |
CN101951330A (zh) * | 2010-09-27 | 2011-01-19 | 中兴通讯股份有限公司 | 双向联合检测的装置及方法 |
CN102075984A (zh) * | 2010-12-31 | 2011-05-25 | 北京邮电大学 | 用于无线局域网的优化视频业务传输的系统和方法 |
CN102215125A (zh) * | 2011-06-08 | 2011-10-12 | 中国人民解放军信息工程大学 | 网络业务管控系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104348675A (zh) | 2015-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10404554B2 (en) | Transaction based network application signatures for text based protocols | |
WO2018054342A1 (zh) | 一种网络数据流分类的方法及系统 | |
CN110011931A (zh) | 一种加密流量类别检测方法及系统 | |
CN103312565B (zh) | 一种基于自主学习的对等网络流量识别方法 | |
CN101510873B (zh) | 基于支持向量机的混合式点对点流量检测方法 | |
CN101841440B (zh) | 基于支持向量机与深层包检测的对等网络流量识别方法 | |
CN104794170B (zh) | 基于指纹多重哈希布隆过滤器的网络取证内容溯源方法和系统 | |
CN105871832A (zh) | 一种基于协议属性的网络应用加密流量识别方法及其装置 | |
CN101714952A (zh) | 一种接入网的流量识别方法和装置 | |
CN104320358A (zh) | 一种电力通信网中的QoS业务控制方法 | |
CN101645803B (zh) | 点对点业务的识别方法和互联网业务识别系统 | |
CN102571946B (zh) | 一种基于对等网络的协议识别与控制系统的实现方法 | |
CN104348675B (zh) | 双向业务数据流识别方法及装置 | |
CN108289125A (zh) | 基于流式处理的tcp会话重组与统计数据提取方法 | |
CN103973589A (zh) | 网络流量分类方法及装置 | |
CN106789728A (zh) | 一种基于NetFPGA的VoIP流量实时识别方法 | |
CN108462707A (zh) | 一种基于深度学习序列分析的移动应用识别方法 | |
CN102497297A (zh) | 基于多核多线程的深度报文检测技术的实现系统和方法 | |
Zaki et al. | GRAIN: Granular multi-label encrypted traffic classification using classifier chain | |
CN113382039B (zh) | 一种基于5g移动网络流量分析的应用识别方法和系统 | |
CN110266603A (zh) | 基于http协议的身份认证业务网络流量分析系统及方法 | |
Cheng et al. | Traffic classification based on port connection pattern | |
Del Rio et al. | On the processing time for detection of Skype traffic | |
CN101854366A (zh) | 一种对等网络流量识别的方法及装置 | |
CN105049456B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |