CN102984131B - 一种信息识别方法和装置 - Google Patents

一种信息识别方法和装置 Download PDF

Info

Publication number
CN102984131B
CN102984131B CN201210447220.XA CN201210447220A CN102984131B CN 102984131 B CN102984131 B CN 102984131B CN 201210447220 A CN201210447220 A CN 201210447220A CN 102984131 B CN102984131 B CN 102984131B
Authority
CN
China
Prior art keywords
packet
timeval
pktsize
sigma
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.)
Expired - Fee Related
Application number
CN201210447220.XA
Other languages
English (en)
Other versions
CN102984131A (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.)
Tsinghua University
Huawei Technologies Co Ltd
Original Assignee
Tsinghua University
Huawei Technologies Co Ltd
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 Tsinghua University, Huawei Technologies Co Ltd filed Critical Tsinghua University
Priority to CN201210447220.XA priority Critical patent/CN102984131B/zh
Publication of CN102984131A publication Critical patent/CN102984131A/zh
Application granted granted Critical
Publication of CN102984131B publication Critical patent/CN102984131B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例公开了一种信息识别方法和装置,该方法包括:根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数;根据所述二维正态分布模型获得待识别数据包的分类特征;根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。采用本发明,可以提高加密协议识别的正确率。

Description

一种信息识别方法和装置
技术领域
本发明涉及网络通信领域,尤其涉及网络通信中的信息识别方法和装置。
背景技术
加密协议的日益成熟和广泛应用向传统的数据流的协议识别技术提出了新的挑战:首先,加密协议使用加密算法对数据流中的载荷进行加密,隐藏了关键字信息,使得传统的基于关键字的协议识别技术严重失效;其次,越来越多的应用使用私有加密协议,这些不公开的协议向传统的协议识别技术提出了挑战。因此,如何准确地识别加密协议已经成为国内外的热点。
针对加密协议识别问题,国内外研究学者提出了基于统计特征的协议识别技术。不同于基于数据包载荷的协议识别技术,基于统计特征的协议识别技术着眼于网络流,从网络流中提取大量统计特征,并利用这些统计特征实现协议识别。传统上把网络流定义为具有相同五元组(<源地址,目的地址,源端口,目的端口,协议>)的数据包的集合。基于统计特征的协议识别技术的假设前提是不同协议会有其特有的网络流统计特性,并以此来识别不同的加密协议。由于该技术引入了大量的统计信息作为基本参考因素,所以它不可避免地将机器学习的方法结合到了识别中,期望取得更好的协议识别性能。
但是现有的基于统计特征的加密协议识别技术并不能很好的抽取统计特征进行识别,错误率高。
发明内容
本发明实施例所要解决的技术问题在于,提供一种信息识别方法和装置。可以提高加密协议识别的正确率。
为了解决上述技术问题,一方面,本发明实施例提供了一种信息识别方法,包括:
根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数;
根据所述二维正态分布模型获得待识别数据包的分类特征;
根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。
另一方面,本发明实施例还提供了一种信息识别装置,包括:
建模单元,用于根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数;
特征提取单元,用于根据所述二维正态分布模型获得待识别数据包的分类特征;
识别单元,用于根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。
实施本发明实施例,具有如下有益效果:
在本发明实施例中,采用二维正态分布模型来提取数据包的统计特征,不但考虑了数据包载荷和间隔时间这两个特征,还考虑了这两个特征之间的关联的影响,使得识别的正确率可以得到显著的提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是采用某种加密协议网络流的第5个数据包的载荷大小概率分布图;
图2是采用某种加密协议网络流的第5个数据包的间隔时间概率分布图;
图3是采用某种加密协议网络流的第5个数据包的载荷大小和间隔时间联合概率分布图;
图4是本发明实施例中的信息识别方法的一个具体流程示意图;
图5是本发明实施例中的采用SVM算法的信息识别方法的一个具体流程示意图;
图6是本发明实施例中的采用决策树算法的信息识别方法的一个具体流程示意图;
图7是本发明实施例中的信息识别装置的一个具体组成示意图;
图8是本发明实施例中的建模单元的一个具体组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了更好地识别加密协议,越来越多的网络流统计特征被提出来用于训练机器学习模型。其中,数据包间隔时间和数据包载荷长度是最常用的两个特征。如图1所示,为采用某种加密协议网络流的第5个数据包的载荷大小概率分布图,图中横坐标表示载荷大小,纵坐标表示概率大小,图中的各个点代表数据包的载荷为对应载荷的概率,从图中可以看到该数据包的载荷大小满足正态分布。如图2所示,则为采用某种加密协议网络流的第5个数据包的间隔时间概率分布图,图中横坐标表示间隔时间,纵坐标表示概率大小,图中的各个点代表相邻数据包的间隔时间为对应间隔时间的概率,从图中可以看到该数据包的间隔时间也满足正态分布。
虽然上述两个特征具有区别性强、提取方便、易于处理等特点。但是许多协议在这两个特征上的区别性越来越不明显,使得基于统计特征的加密协议识别技术面临更大的挑战。单纯使用这两个特征对现有的各种加密协议并不能达到较好的识别结果。
本案发明人在对现有加密协议识别技术进行研究时发现,数据包间隔时间和数据包载荷长度并非相互独立,而是存在一定的相关性。例如,在使用相同的加密算法情况下,数据包载荷越大,数据包间隔时间越长;相同大小的数据包载荷,使用高强度的加密算法会导致数据包间隔时间变长。导致这一现象的主要原因是加密算法对数据的加密会导致一定的延时。如图3所示,为采用某种加密协议网络流的第5个数据包的载荷大小和间隔时间的联合概率分布图,图中x坐标:载荷大小,y坐标:间隔时间z坐标:概率大小,图中的各个点代表数据包的载荷为对应载荷、间隔时间为对应间隔时间的概率,从图中可以看到该联合分布也满足正态分布。
基于上述研究,本案发明人发现数据包间隔时间和数据包载荷长度的相关性也反映了采用不同协议的数据包的特性,在分类识别时增加该相关性因素可以极大地提升基于统计特征的加密协议识别的性能,应对不断增多的加密协议带来的挑战。
为了利用数据包间隔时间和数据包载荷长度的相关性提供的知识,以更好地识别加密协议,本发明实施例中提出一种新的信息识别方法。该方法利用二维正态分布对数据包间隔时间和数据包载荷长度进行拟合,充分挖掘这两个特征相关性所蕴含的知识,为基于统计特征的加密协议识别系统更好地识别加密协议奠定基础。
同时,本案发明人在研究过程中发现,采用这种二维正态分布模型不但可以对数据包采用的加密协议进行识别,还可以对数据包传输协议使用的不同应用进行识别。
基于此,如图4所示,为本发明实施例中的信息识别方法的一个具体流程示意图。该方法包括如下步骤。
101、根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数。
其中,所述数据包的类型标识用以标识传输所述数据包时使用的加密协议,也可以是所述数据包的类型标识用以标识传输所述数据包时使用的安全套接层(SecureSocketsLayer,SSL)协议的不同应用,所述不同应用包括安全套接层的超文本传输协议(HypertextTransferProtocoloverSecureSocketLayer,HTTPS)、开放虚拟专用网络(OpenVirtualPrivateNetwork,OpenVPN)和洋葱路由(TheOnionRouter,TOR)。
该训练数据集可以通过事先建立的存储有网络流信息的网络流表中获得。只是,当传输层协议为传输控制协议(TransmissionControlProtocol,TCP)时,需要剔除掉TCP协议中的三次握手数据包,一般该数据包不会被加密或进行其他处理,未携带有信息量。则此时本步骤包括:判断所述训练数据集中的数据包是否为TCP协议三次握手数据包;若判断结果为是,则剔除所述训练数据集中的所述TCP协议三次握手数据包,采用剔除后的训练数据集计算所述二维正态分布模型参数。
再根据剔除后的训练数据集计算所述二维正态分布模型参数时,具体可为:
获得所述剔除后的训练数据集中的各数据包的载荷pktsize[j],j=1~n、第j数据包与前一个数据包的间隔时间timeval[j],j=1~n,n为表征训练数据集中数据包数目的自然数;
按照如下公式计算二维正态分布模型的数据包载荷均值pktsize_mean、间隔时间均值timeval_mean、数据包载荷方差pktsize_var、间隔时间方差timeval_var和相关系数r:
timeval _ mean = &Sigma; j = 1 n timeval [ j ] n ;
pktsize _ mean = &Sigma; j = 1 n pktsize [ j ] n ;
pktsize _ var = &Sigma; j = 1 n ( pktsize _ mean - pktsize [ j ] ) 2 n ;
timeval _ var = &Sigma; j = 1 n ( timeval _ mean - timeval [ j ] ) 2 n ;
r = &Sigma; j = 1 n ( pktsize - mean - pktsize [ j ] ) ( timeval _ mean - timeval [ j ] ) / n pkrsize _ var &CenterDot; timeval _ val .
102、根据所述二维正态分布模型获得待识别数据包的分类特征。具体可以根据下式获得待识别数据包的分类特征:
feature ( x , y ) = 1 2 &pi; &CenterDot; &sigma; x &sigma; y 1 - r 2 e - 1 2 ( 1 - r 2 ) [ ( x - &mu; x ) 2 &sigma; x 2 - 2 r ( x - &mu; x ) ( y - &mu; y ) &sigma; x &sigma; y + ( y - &mu; y ) 2 &sigma; y 2 ] ;
其中,x表示所述待识别数据包的载荷,y表示所述待识别数据包与前一个数据包的间隔时,μx表示数据包载荷均值pktsize_mean,μy表示间隔时间均值timeval_mean,σx表示数据包载荷方差pktsize_var,σy表示间隔时间方差timeval_var,r表示相关系数r,feature(x,y)表示待识别数据包的分类特征。
需要说明的是,在步骤101中可以训练获得多个二维正态分布模型(即,计算多组二维正态分布模型参数),这样在本步骤中则可以根据多个二维正态分布模型获得多个分类特征。
103、根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。
在本步骤中,进行特征识别的方法可以是各种现有的方法,如支持向量机(SupportVectorMachine,SVM)分类、k均值算法等。若,前述步骤中获得分类特征有多个,则可以一般可采用SVM分类进行特征空间投影后分类。
在上述流程描述中,没有具体限制训练集中数据包的数目,该数目可以根据经验或通讯情况等条件确定。在具体过程中,该数目也是可变的,如,由于数据包一般都是一个一个顺序出现,在计算过程中可以到达一个数据包则将该数据包和之前已经到达的数据包一起计算一次二维正态分布模型的参数,直到数据包总数达到要求。比如,可以根据接收到的6个数据包作为训练集获得6个二维正态分布模型的参数,再根据6个二维正态分布模型提取待识别数据包的统计特征,再采用特征识别技术根据该统计特征进行待识别数据包的识别。
相应的,本发明实施例还公开了一种计算机存储介质,在该计算机存储介质中存储有计算机程序,执行该计算机程序可实现如上所述的信息识别方法。
如图5所示,为上述的多次计算参数的过程。本实施例用以实现对不同加密协议的识别。
201、建立用于存储网络流信息的网络流表。在网络流表中包括多个数据包的网络流信息,在该网络流信息中记录五元组(<源地址,目的地址,源端口,目的端口,协议>)。
202、利用网络流表中的数据包的信息训练二维正态分布模型,称这些数据包为训练数据集。在本例中训练数据集是一组包含加密协议标识的数据包的集合。特别说明的是,此处所称训练二维正态分布模型,即是获得二维正态分布模型的各参数。
步骤202具体可包括:
2.1、读取训练数据集中的数据包:若训练集中仍有未读取的数据包,则读取并查找在该数据包在网络流表中对应的网络流信息,并执行步骤2.2,若已读完,则执行步骤2.5;
2.2、判断数据包使用的传输层协议,若是TCP协议,则执行步骤2.3,若为UDP协议,则执行步骤2.4;
2.3、若数据包为TCP协议三次握手数据包,则返回执行步骤2.1;
2.4、更新数据包到达时间和数据包载荷;
2.5、判断已更新的数据包的数目是否大于n+1(n为预先定义的常数,用于限定用于训练二维正态分布模型的数据包的最大数目),若是,则至步骤2.7,若否,则执行步骤2.6;
2.6、在网络流表中,记录当前数据包的到达时间和数据包载荷大小,返回执行步骤2.1;
2.7、根据存储的数据包到达时间和数据包载荷大小训练二维正态分布模型,在本实施例中可训练多个二维正态分布模型,这样,在步骤203中则可以根据各个二维正态分布模型获得多个分类特征进行分类。
其中,步骤2.7具体包括:
2.7.1、初始化计数变量i=1;
2.7.2、若i<=n(n为预先定义的常数,用于限定用于需要训练获得的二维正态分布模型的最大数目,需要说明的是此处的n的具体值可以与步骤2.5中一致,也可以不同),则执行步骤2.7.3,若否则结束训练数据集建模阶段,执行步骤203;
2.7.3、初始化数组变量timevali和pktsizei,以及计数变量s=0;
在本步骤中,计数变量s用于记录训练第i个二维正态分布模型的特征的个数;
2.7.4、根据当前的网络流表中更新的数据包信息,获得数据包的载荷大小记录到pktsizei[s],将该数据包与前一个数据包的间隔时间记录到timevali[s]中,s=s+1;
2.7.5、利用下式计算数据包载荷大小均值pktsize_meani和间隔时间的均值timeval_meani
pktsize _ mea n i = &Sigma; j = 0 s pktsiz e i [ j ] s
timeval _ mea n i = &Sigma; j = 0 s timeva l i [ j ] s
利用下式计算数据包载荷大小方差pktsize_vari和间隔时间的方差timeval_vari
pktsize _ va r i = &Sigma; j = 0 s ( pktsize _ mea n i - pktsiz e i [ j ] ) 2 s
timeval _ va r i = &Sigma; j = 0 s ( timeval _ mea n i - timeva l i [ j ] ) 2 s
利用下式计算相关系数ri
r i = &Sigma; j = 0 s ( pktsize _ mea n i - pktsiz e i [ i ] ) ( timeval _ mea n i - timeva l i [ j ] ) / s pktsize _ va r i &CenterDot; timeval _ va r i
2.7.6、i=i+1,返回执行步骤2.7.2。
这样当循环结束时,则计算出n个二维正态分布模型,每个模型有5个参数。
203、利用训练得到的n个二维正态分布模型从数据包中提取n个分类特征。
具体包括:
203.1、从网络中捕获一个数据包,并在网络流表中查找对应的网络流;
203.2、判断加密协议使用的传输层协议,若是TCP协议,则执行步骤203.3,若为UDP协议,则执行步骤203.4;
203.3、若数据包为TCP协议三次握手数据包,则返回执行步骤203.1,否则执行203.4;
203.4、记录当前数据包的到达时间和数据包载荷大小,利用n个二维正态分布模型,提取网络流的特征;
具体为:203.4.1、初始化计数变量i=1;
203.4.2、若i<=n,则利用下式计算统计特征featurei,否则完成该网络流的特征提取,并返回执行步骤203.1,以识别下一个数据包的协议类型:
featur e i ( x , y ) = 1 2 &pi; &CenterDot; &sigma; x &sigma; y 1 - r 2 e - 1 2 ( 1 - r 2 ) [ ( x - &mu; x ) 2 &sigma; x 2 - 2 r ( x - &mu; x ) ( y - &mu; y ) &sigma; x &sigma; y + ( y - &mu; y ) 2 &sigma; y 2 ]
其中,x表示所述待识别数据包的载荷,y表示所述待识别数据包与前一个数据包的间隔时,μx表示数据包载荷均值pktsize_meani,μy表示间隔时间均值timeval_meani,σx表示数据包载荷方差pktsize_vari,σy表示间隔时间方差timeval_vari,r表示相关系数ri,featurei(x,y)表示待识别数据包的第i个分类特征。
203.4.3、i=i+1,返回执行203.4.2。
204、利用训练数据集训练SVM模型。本步骤与步骤202和203的执行前后无必然要求,当然,一般训练SVM模型的数据与训练二维正态分布模型的数据为相同的一组数据。
205、利用训练的SVM模型,和步骤203中计算的分类特征获得数据包的协议类型。
需要说明是,上述二维正态分布模型和SVM模型的训练可以是循环进行的,即,只要训练数据集中存在足够的数据包,则可以采用不同的数据包训练模型,每次训练模型的数据包数量也可以根据实际需要和经验进行设定。并且可以以分类正确率来评价模型的优劣。
如图6所示,则为本发明实施例中对使用SSL协议的不同应用(HTTPS、OpenVPN和TOR)进行识别的流程。在本例中,在进行分类特征提取后,采用C4.5决策树进行分类识别;并且在本例中,每次训练6个二维正态分布模型来提取分类特征。
301、从纯净的HTTPS、OpenVPN和TOR数据集中分别提取分类特征,构造训练数据集。此处纯净的意思是指该数据集中仅包括一种应用类型的数据。此处的训练数据集包括的是提取出来的分类特征,且已知该分类特征是从哪些应用数据中提取出来的。
在本步骤提取分类特征的方法可与前述的一致,提取HTTPS数据集的分类特征为:按照前述方法对HTTPS数据集进行处理,获得6个二维正态分布模型,利用HTTPS的6个二维正态分布模型,从HTTPS数据集中提取一组6维特征向量,并对其标记为HTTPS。然后,利用HTTPS的6个二维正态分布模型,从OpenVPN和TOR数据集中分别提取一组6维特征向量,并对其标记为NoN-HTTPS;将标记了HTTPS和NoN-HTTPS的数据集合并,组成HTTPS训练特征集。
提取OpenVPN数据集的分类特征过程则为:对OpenVPN数据集进行处理,获得6个二维正态分布模型;利用OpenVPN的6个二维正态分布模型,从OpenVPN数据集中提取一组6维特征向量,并对其标记为OpenVPN;利用OpenVPN的6个二维正态分布模型,从HTTPS和TOR数据集中分别提取一组6维特征向量,并对其标记为NoN-OpenVPN;将标记了OpenVPN和NoN-OpenVPN的数据集合并,组成OpenVPN训练特征集。
提取TOR数据集的分类特征过程则为:对TOR数据集进行处理,获得6个二维正态分布模型;利用TOR的6个二维正态分布模型,从TOR数据集中提取一组6维特征向量,并对其标记为TOR;利用TOR的6个二维正态分布模型,从OpenVPN和HTTPS数据集中分别提取一组6维特征向量,并对其标记为NoN-TOR;将标记了TOR和NoN-TOR的数据集合并,组成TOR训练特征集。
302、利用步骤301获取的训练特征集训练三个C4.5决策树。
具体为:利用HTTPS训练特征集训练HTTPS决策树;利用OpenVPN训练特征集训练OpenVPN决策树;利用TOR训练特征集训练TOR决策树;
303、根据步骤302训练得到的三个C4.5决策树识别三种不同的基于SSL的应用。
具体可为:
3.1、捕获一个数据包,并使用如下正则表达式
^(.?.?\x16\x03.*\x16\x03|.?.?\x01\x03\x01?.*\x0b)
匹配方法检查该数据包是否为SSL协议数据包,若是则执行下一步骤,若否则返回本步骤之始重新捕获下一数据包;
3.2、利用前述的HTTPS训练集得到的6个二维正态分布模型从该数据包中提取6维特征;
3.3、利用前述的OpenVPN训练集得到的6个二维正态分布模型从该数据包中提取6维特征;
3.4、利用前述的TOR训练集得到的6个二维正态分布模型从该数据包中提取6维特征;
3.5、将前述获得的三个6维特征分别输入到HTTPS、OpenVPN及TOR的C4.5决策树中进行识别。
其中,步骤3.5具体可包括:
3.5.1、将步骤3.2获得的6维特征输入到HTTPS决策树中进行识别,若判别为HTTPS则根据下式计算判别错误率;
errar e HTTPS = 1 - N HTTPS &Sigma; i = 1 n N i
其中,NHTTPS是HTTPS训练集中属于HTTPS的特征向量,且被划分到一个叶子结点的个数,Ni是该叶子结点中HTTPS和NoN-HTTPS的特征向量的个数。
3.5.2、将步骤3.3获得的6维特征输入到OpenVPN决策树中进行识别,若判别为OpenVPN则根据下式计算判别错误率;
errat e OpenVPN = 1 - N OpenVPN &Sigma; i = 1 n N i
其中,NOpenVPN是OpenVPN训练集中属于OpenVPN的特征向量,且被划分到一个叶子结点的个数,Ni是该叶子结点中OpenVPN和NoN-OpenVPN的特征向量的个数。
3.5.3、将步骤3.4获得的6维特征输入到TOR决策树中进行识别,若判别为TOR则根据下式计算判别错误率;
errat e TOR = 1 - N TOR &Sigma; i = 1 n N i
其中,NTOR是TOR训练集中属于TOR的特征向量,且被划分到一个叶子结点的个数,Ni是该叶子结点中TOR和NoN-TOR的特征向量的个数。
3.5.4、综合步骤3.5.1,3.5.2及3.5.3的识别结果,输出最终识别结果;
其中,步骤3.5.4具体包括:若步骤3.5.1,3.5.2及3.5.3的识别结果均为NoN-*,则输出该SSL网络流不属于HTTPS、OpenVPN及TOR;若在步骤3.5.1,3.5.2及3.5.3的识别结果中,有两个为NoN-*(NoN-*指的是上述的NoN-HTTPS和NoN-OpenVPN等),一个为SSL协议应用时,判定该SSL流为该应用;若在步骤3.5.1,3.5.2及3.5.3的识别结果中,有连个判断为SSL协议的应用时,则输出错误率更低的SSL协议应用。
在上述两个具体实施例中,在采用二维正态分布模型进行特征提取后,一个采用SVM方法进行分类识别,另一个则采用C4.5决策树方法进行分类识别。具体采用哪一种分类算法可以根据实际情况进行选择,此处仅为一种示例,不应认为是对本发明实施例的限制。
综上所述,可以理解,本发明实施例中首先使用训练数据集训练一组二维正态分布模型,然后利用这些模型提取网络流统计信息,即获得待识别数据包的分类特征,然后再采用具体分类算法进行分类识别,实现对数据包分类属性的识别。
在本发明实施例中使用二维正态分布将数据包载荷大小和数据包间隔时间巧妙地拟合在一起,充分挖掘这两个特征相关性所蕴含的信息,若运用在对加密协议的识别中,则能够极大地提升基于统计特征的加密协议识别系统的性能,应对不断增多的加密协议带来的挑战;若运用在对使用相同加密协议的不同应用中,则能够识别SSL协议的不同应用,如HTTPS、OpenVPN和TOR应用的识别。
采用本发明实施例中提供的方法可以为高速网络中高性能流量分类系统、内容监控系统的设计和实现提供技术支持。
相应的,如图7所示,为本发明实施例中信息识别装置的一个具体组成示意图。该装置1包括:建模单元10,用于根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数;特征提取单元12,用于根据所述二维正态分布模型获得待识别数据包的分类特征;识别单元14,用于根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。
其中,如图8所示,建模单元10可包括:包筛选模块100,用于判断所述训练数据集中的数据包是否为TCP协议三次握手数据包,若判断结果为是,则剔除所述训练数据集中的所述TCP协议三次握手数据包;参数计算模块102,用于采用剔除后的训练数据集计算所述二维正态分布模型参数。
其中,参数计算模块102具体用于,获得所述剔除后的训练数据集中的各数据包的载荷第j数据包与前一个数据包的间隔时间timeval[j],j=1~n,n为表征训练数据集中数据包数目的自然数;按照如下公式计算二维正态分布模型的数据包载荷均值pktsize_mean、间隔时间均值timeval_mean、数据包载荷方差pktsize_var、间隔时间方差timeval_var和相关系数r:
timeval _ mean = &Sigma; j = 1 n timeval [ j ] n ;
pktsize _ mean = &Sigma; j = 1 n pktsize [ j ] n ;
pktsize _ var = &Sigma; j = 1 n ( pktsize _ mean - pktsize [ j ] ) 2 n ;
timeval _ var = &Sigma; j = 1 n ( timeval _ mean - timeval [ j ] ) 2 n ;
r = &Sigma; j = 1 n ( pktsize - mean - pktsize [ j ] ) ( timeval _ mean - timeval [ j ] ) / n pktsize _ var &CenterDot; timeval _ val .
其中,特征提取单元12具体用于根据下式获得待识别数据包的分类特征:
feature ( x , y ) = 1 2 &pi; &CenterDot; &sigma; x &sigma; y 1 - r 2 e - 1 2 ( 1 - r 2 ) [ ( x - &mu; x ) 2 &sigma; x 2 - 2 r ( x - &mu; x ) ( y - &mu; y ) &sigma; x &sigma; y + ( y - &mu; y ) 2 &sigma; y 2 ] ;
其中,x表示所述待识别数据包的载荷,y表示所述待识别数据包与前一个数据包的间隔时,μx表示数据包载荷均值pktsize_mean,μy表示间隔时间均值timeval_mean,σx表示数据包载荷方差pktsize_var,σy表示间隔时间方差timeval_var,r表示相关系数r,feature(x,y)表示待识别数据包的分类特征。
上述的数据包的类型标识用以标识传输所述数据包时使用的加密协议,或/和,所述数据包的类型标识用以标识传输所述数据包时使用的SSL协议的不同应用,所述不同应用包括HTTPS、OpenVPN和TOR。
相应的,本发明实施例还提供了一种信息处理装置,包括处理器和存储器,该处理器用于根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数;根据所述二维正态分布模型获得待识别数据包的分类特征;根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。该存储器用于存储上述处理过程中需要存储的数据。
应当理解,上述装置实施例中描述的术语和特征与前述方法实施例中的一致,此处不做赘述。
在本发明实施例中,采用二维正态分布模型来提取数据包的统计特征,不但考虑了数据包载荷和间隔时间这两个特征,还考虑了这两个特征之间的关联的影响,使得识别的正确率可以得到显著的提高。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (11)

1.一种信息识别方法,其特征在于,所述方法包括:
根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数;
根据所述二维正态分布模型获得待识别数据包的分类特征;
根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。
2.如权利要求1所述的方法,其特征在于,所述根据训练数据集获得二维正态分布模型参数包括:
判断所述训练数据集中的数据包是否为传输控制协议TCP三次握手数据包;
若判断结果为是,则剔除所述训练数据集中的所述TCP协议三次握手数据包,采用剔除后的训练数据集计算所述二维正态分布模型参数。
3.如权利要求2所述的方法,其特征在于,采用剔除后的训练数据集计算所述二维正态分布模型参数包括:
获得所述剔除后的训练数据集中的各数据包的载荷pktsize[j],j=1~n、第j数据包与前一个数据包的间隔时间timeval[j],j=1~n,n为表征训练数据集中数据包数目的自然数;
按照如下公式计算二维正态分布模型的数据包载荷均值pktsize_mean、间隔时间均值timeval_mean、数据包载荷方差pktsize_var、间隔时间方差timeval_var和相关系数r:
timeval _ mean = &Sigma; j = 1 n timeval [ j ] n ;
pktsize _ mean = &Sigma; j = 1 n pktsize [ j ] n ;
pktsize _ var = ( &Sigma; j = 1 n pktsize _ mean - pktsize [ j ] ) 2 n ;
timeval _ var = ( &Sigma; j = 1 n timeval _ mean - timeval [ j ] ) 2 n ;
r = &Sigma; j = 1 n ( pktsize _ mean - pktsize [ j ] ) ( timeval _ mean - timeval [ j ] ) / n pktsize _ var &CenterDot; timeval _ var .
4.如权利要求3所述的方法,其特征在于,所述根据所述二维正态分布模型获得待识别数据包的分类特征包括:
根据下式获得待识别数据包的分类特征:
feature ( x , y ) = 1 2 &pi; &CenterDot; &sigma; x &sigma; y 1 - r 2 e - 1 2 ( 1 - r 2 ) [ ( x - &mu; x ) 2 &sigma; x 2 - 2 r ( x - &mu; x ) ( y - &mu; y ) &sigma; x &sigma; y + ( y - &mu; y ) 2 &sigma; y 2 ] ;
其中,x表示所述待识别数据包的载荷,y表示所述待识别数据包与前一个数据包的间隔时,μx表示数据包载荷均值pktsize_mean,μy表示间隔时间均值timeval_mean,σx表示数据包载荷方差pktsize_var,σy表示间隔时间方差timeval_var,r表示相关系数r,feature(x,y)表示待识别数据包的分类特征。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述数据包的类型标识用以标识传输所述数据包时使用的加密协议。
6.如权利要求1至4中任一项所述的方法,其特征在于,所述数据包的类型标识用以标识传输所述数据包时使用的安全套接层SSL协议的不同应用,所述不同应用包括安全套接层的超文本传输协议HTTPS、开放虚拟专用网络OpenVPN和洋葱路由TOR。
7.一种信息识别装置,其特征在于,所述装置包括:
建模单元,用于根据训练数据集获得二维正态分布模型参数,所述训练数据集包括具有类型标识的数据包,所述二维正态分布模型参数包括数据包载荷均值、间隔时间均值、数据包载荷方差、间隔时间方差和相关系数;
特征提取单元,用于根据所述二维正态分布模型获得待识别数据包的分类特征;
识别单元,用于根据所述训练数据集和所述待识别数据包的分类特征对所述待识别数据包进行特征识别,获得所述待识别数据包的类型标识。
8.如权利要求7所述的装置,其特征在于,所述建模单元包括:
包筛选模块,用于判断所述训练数据集中的数据包是否为TCP协议三次握手数据包,若判断结果为是,则剔除所述训练数据集中的所述TCP协议三次握手数据包;
参数计算模块,用于采用剔除后的训练数据集计算所述二维正态分布模型参数。
9.如权利要求8所述的装置,其特征在于,采所述参数计算模块具体用于,
获得所述剔除后的训练数据集中的各数据包的载荷pktsize[j],j=1~n、第j数据包与前一个数据包的间隔时间timeval[j],j=1~n,n为表征训练数据集中数据包数目的自然数;
按照如下公式计算二维正态分布模型的数据包载荷均值pktsize_mean、间隔时间均值timeval_mean、数据包载荷方差pktsize_var、间隔时间方差timeval_var和相关系数r:
timeval _ mean = &Sigma; j = 1 n timeval [ j ] n ;
pktsize _ mean = &Sigma; j = 1 n pktsize [ j ] n ;
pktsize _ var = ( &Sigma; j = 1 n pktsize _ mean - pktsize [ j ] ) 2 n ;
timeval _ var = ( &Sigma; j = 1 n timeval _ mean - timeval [ j ] ) 2 n ;
r = &Sigma; j = 1 n ( pktsize _ mean - pktsize [ j ] ) ( timeval _ mean - timeval [ j ] ) / n pktsize _ var &CenterDot; timeval _ var .
10.如权利要求9所述的装置,其特征在于,所述特征提取单元具体用于根据下式获得待识别数据包的分类特征:
feature ( x , y ) = 1 2 &pi; &CenterDot; &sigma; x &sigma; y 1 - r 2 e - 1 2 ( 1 - r 2 ) [ ( x - &mu; x ) 2 &sigma; x 2 - 2 r ( x - &mu; x ) ( y - &mu; y ) &sigma; x &sigma; y + ( y - &mu; y ) 2 &sigma; y 2 ] ;
其中,x表示所述待识别数据包的载荷,y表示所述待识别数据包与前一个数据包的间隔时,μx表示数据包载荷均值pktsize_mean,μy表示间隔时间均值timeval_mean,σx表示数据包载荷方差pktsize_var,σy表示间隔时间方差timeval_var,r表示相关系数r,feature(x,y)表示待识别数据包的分类特征。
11.如权利要求7至10中任一项所述的装置,其特征在于,所述数据包的类型标识用以标识传输所述数据包时使用的加密协议,或/和,所述数据包的类型标识用以标识传输所述数据包时使用的SSL协议的不同应用,所述不同应用包括HTTPS、OpenVPN和TOR。
CN201210447220.XA 2012-11-09 2012-11-09 一种信息识别方法和装置 Expired - Fee Related CN102984131B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210447220.XA CN102984131B (zh) 2012-11-09 2012-11-09 一种信息识别方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210447220.XA CN102984131B (zh) 2012-11-09 2012-11-09 一种信息识别方法和装置

Publications (2)

Publication Number Publication Date
CN102984131A CN102984131A (zh) 2013-03-20
CN102984131B true CN102984131B (zh) 2015-11-25

Family

ID=47857878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210447220.XA Expired - Fee Related CN102984131B (zh) 2012-11-09 2012-11-09 一种信息识别方法和装置

Country Status (1)

Country Link
CN (1) CN102984131B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104714977B (zh) * 2013-12-17 2019-03-19 日本电气株式会社 一种实体与知识库项的关联方法及装置
CN106953854B (zh) * 2016-12-15 2019-10-18 中国电子科技集团公司第三十研究所 一种基于svm机器学习的暗网流量识别模型的建立方法
CN108596218B (zh) * 2018-04-09 2022-05-03 高新兴智联科技有限公司 一种射频数据和视频数据的车辆身份识别方法及系统
CN108667747A (zh) * 2018-04-28 2018-10-16 深圳信息职业技术学院 网络流应用类型识别的方法、装置及计算机可读存储介质
CN109391700B (zh) * 2018-12-12 2021-04-09 北京华清信安科技有限公司 基于深度流量感知的物联网安全云平台

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101345704A (zh) * 2008-08-15 2009-01-14 南京邮电大学 基于支持向量机的对等网络流量检测方法
CN101510841A (zh) * 2008-12-31 2009-08-19 成都市华为赛门铁克科技有限公司 端到端流量识别方法和系统
CN101695035A (zh) * 2009-10-21 2010-04-14 成都市华为赛门铁克科技有限公司 流量识别方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030196148A1 (en) * 2002-04-12 2003-10-16 Carol Harrisville-Wolff System and method for peer-to-peer monitoring within a network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101345704A (zh) * 2008-08-15 2009-01-14 南京邮电大学 基于支持向量机的对等网络流量检测方法
CN101510841A (zh) * 2008-12-31 2009-08-19 成都市华为赛门铁克科技有限公司 端到端流量识别方法和系统
CN101695035A (zh) * 2009-10-21 2010-04-14 成都市华为赛门铁克科技有限公司 流量识别方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
P2P流量的识别与检测技术的研究;王孝伟;《重庆大学硕士学位论文》;20090615;全文 *
基于方差分析和支持向量机技术的P2P流量检测;吴敏 等;《计算机科学》;20100815;全文 *

Also Published As

Publication number Publication date
CN102984131A (zh) 2013-03-20

Similar Documents

Publication Publication Date Title
CN102984131B (zh) 一种信息识别方法和装置
US8797901B2 (en) Method and its devices of network TCP traffic online identification using features in the head of the data flow
CN102035698B (zh) 基于决策树分类算法的http隧道检测方法
CN101841440B (zh) 基于支持向量机与深层包检测的对等网络流量识别方法
CN105871832A (zh) 一种基于协议属性的网络应用加密流量识别方法及其装置
CN102315974A (zh) 基于层次化特征分析的tcp、udp流量在线识别方法和装置
CN101714952B (zh) 一种接入网的流量识别方法和装置
CN104052639B (zh) 基于支持向量机的实时多应用网络流量识别方法
CN105281973A (zh) 一种针对特定网站类别的网页指纹识别方法
CN110348526B (zh) 一种基于半监督聚类算法的设备类型识别方法和装置
CN104102700A (zh) 一种面向因特网不平衡应用流的分类方法
CN110290022A (zh) 一种基于自适应聚类的未知应用层协议识别方法
CN105024993A (zh) 一种基于向量运算的协议比对方法
CN104348741A (zh) 基于多尺度分析和决策树的p2p流量检测方法和系统
CN108881192A (zh) 一种基于深度学习的加密型僵尸网络检测系统及方法
CN109981474A (zh) 一种面向应用软件的网络流量细粒度分类系统及方法
CN104468567B (zh) 一种网络多媒体业务流识别和映射的系统及方法
CN104283897A (zh) 基于多数据流聚类分析的木马通信特征快速提取方法
CN105516020A (zh) 一种基于本体知识推理的并行网络流量分类方法
CN106789242A (zh) 一种基于手机客户端软件动态特征库的识别应用智能分析引擎
CN110034966A (zh) 一种基于机器学习的数据流分类方法及系统
CN107070897A (zh) 入侵检测系统中基于多属性哈希去重的网络日志存储方法
CN110266603A (zh) 基于http协议的身份认证业务网络流量分析系统及方法
Mohd et al. Towards a flow-based internet traffic classification for bandwidth optimization
Liu et al. An approach based on the improved SVM algorithm for identifying malware in network traffic

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151125

Termination date: 20181109