发明内容
为克服现有协议识别中基于端口识别信息分散、精度低的缺陷,本发明提出一种多协议数据分类识别的方法和系统。
根据本发明的一个方面,提出了一种多协议数据分类识别的方法,包括:
步骤10)、将网络流数据包按顺序拼接,截取每个网络流连接应用层的负载数据构成输入向量;
步骤20)、利用文本类协议数据高层语义信息将所述输入向量集合解析成可比较的结点序列集合;
步骤30)、基于结点序列的相似性规则将所述结点序列集合中相似的结点序列合并成一个新的结点序列;
步骤40)、利用结点序列的自归类算法将所述相似合并后的结点序列集合按协议类别分类;
步骤50)、对每一个分类结果的集合进行特征提取操作,识别出所述输入向量的协议类型。
其中,步骤10)还包括:
捕获网络中数据包,通过拼流操作将网络流数据包按顺序拼接,截取每个网络流连接应用层的负载数据前64字节数据构成一个输入向量;其中,每个连接将生成2个不同方向的输入向量。
其中,步骤20)进一步包括:
根据文本类协议数据高层语义信息,定义判断文本类和非文本类协议数据的规则,将输入向量分为文本类协议数据和非文本类协议数据;基于文本类数据中的语义信息,定义一组解析规则,将一个网络流连接的输入向量解析成一维的可比较的结点序列。
其中,步骤30)进一步包括:定义结点序列相似性规则,基于两个结点序列的相似性结果,将结点序列集合划分为多个相似子集合,并将相似子集合合并为一个新的结点序列。
其中,步骤40)进一步包括:利用结点序列的自归类算法将所述相似合并后的结点序列集合按协议类别分类,根据“同一个网络流连接的两个方向 的数据属于相同协议”,通过计算连接矩阵并递归遍历,将经过相似处理后的结点序列归为多个类。
其中,步骤50)进一步包括:以每个按协议划分后的同协议类作为特征提取对象,以字符集合和字符串集合组成的序列表示特征,在类内通过将特征可能性较小内容过滤后,进行词频统计,将含最大词频词的结点序列子集合作为一个子组进行对齐和合并操作,形成一个特征。
其中,所述文本类协议数据需要满足:所述输入向量中可见字符占总字符比重大于ρ%,其中,ρ的取值范围为35到60,一般取50;并且所述输入向量中可见字符后紧接不可见字符情况的出现总次数小于β次,其中,β取值范围为7到12,一般取10。
其中,步骤20)还包括:
步骤210)、将所述输入向量集合排序,合并相同的输入向量;
步骤220)、对于每个输入向量,将输入向量中的不同的连续字符序列解析为不同类型的结点,形成结点序列集合;
步骤230)、在所述结点序列集合中,合并相同的结点序列,所述输入向量集合被解析成结点序列集合。
其中,所述结点序列相似性规则包括:
结点序列长度和类型分布均相同,并且值信息满足方程β1*IEN+β2*VEN>=β3*NEN,两结点序列相似;其中,IEN为值相同的IDENTIFIER类型结点数量,VEN为值相同的其它类型结点数量,NEN为所有类型值不同的结点数量,并且其中,β3>β2>β1,一般地,β3=2,β2=1,β1=0.49。
其中,步骤30)还包括:
步骤310)、将结点序列集合按照结点序列的长度信息、结点序列中结点类型信息以及结点值信息进行排序;
步骤320)、根据所述相似性规则,将等长且类型序列相同的连续结点序列划归为同一个组;
步骤330)、对于每个划分的组,将相似结点序列分到同一个子组,将每个结点序列子组合并为一个新的结点序列,如果合并时对应位置上结点值不相同,在合并得到的新结点序列对应位置上使用选择集合进行描述,选择集合中包含子组中所有该位置结点的取值;
步骤340)、处理选择集合,根据如下原则将选择集合升级为变量,表示该位置内容为可变信息:选择集合大小大于β,其中,β的取值范围为10到25,一般取20;或者选择集合中所有字符串长度相同,且选择集合大小大于β,其中β的取值范围为5到10,一般取7。
其中,步骤40)还包括:
步骤410)、将结点序列集合按原连接方向分为两组,每一组看作一个维度,构成一个结点序列组成的二维结构;
步骤420)、每个合并后的结点序列对应一组包括源IP、源端口、目的IP和目的端口的4元组,上述结点序列的二维结构对应一个4元组集合组成的二维结构;
步骤430)、所述4元组集合的二维结构的连接矩阵每个元素的值为元素坐标对应的两个4元组集合的交集大小;若坐标为(i,j)处的矩阵元素值大于零,表示第i行第j列相连,则所有相连的行列对应的4元组结点序列属于相同协议。
其中,步骤50)还包括:
步骤510)、构造非特征字符串词典,将所有特征可能性较小的字符串加入词典用于过滤非特征字符串;
步骤520)、对类内剩余结点序列的值信息字符串,通过词典过滤非特征字符串,统计剩余字符串频率;
步骤530)、将类中含最高频率字符串的结点序列单独取出作为一个子组,类内剩余部分作为一个新类;
步骤540)、对子组进行对齐操作,定位同时出现在所有结点序列中而且出现顺序一致的字符串序列,这些字符串所在结点为对齐点;
步骤550)、将对应位置对齐点连成线,把子组剩余内容划分为多个独立部分,合并这些独立部分为新结点,所得对齐点和新结点构成的结点序列即为特征。
其中,步骤540)还包括:选取一个结点序列作为基本序列,其中所有对齐点必然出现在基本序列中;设置两个数据结构,第一个用于记录基本序列每一个字符串出现在多少个序列中,第二个用于记录基本序列每个字符串出现在其他序列中的所有位置,所有其他序列逐个和基本序列进行比较,并维护 所述两个数据结构的信息;遍历第一个数据结构,找出所有值等于输入序列总数K的字符串,那么这些字符串构成的集合一定包含结果对齐点集合;根据第二个数据结构中记录的位置信息,从中找出一个每行位置递增的矩阵来获得近似对齐点;所得位置矩阵对应的字符串为所求对齐点。
根据本发明的另一方面,提出了一种多协议数据分类识别的系统,包括:
网络流数据截获装置,用于将网络流数据包按顺序拼接,截取每个网络流连接应用层的负载数据构成输入向量;
解析装置,用于利用文本类协议数据高层语义信息将所述输入向量解析成可比较的结点序列集合;
比较合并装置,基于结点序列的相似性规则将所述结点序列集合中相似的结点序列合并成一个新的结点;
归类装置,利用结点序列的自归类算法将所述相似合并后的结点序列集合按协议类别分类;
特征提取装置,用于对每一个分类结果的集合进行特征提取操作,识别出所述输入向量的协议类型。
其中,所述解析装置进一步包括:根据基于文本类协议数据高层语义信息判断文本类和非文本类协议数据,将输入向量分为文本类协议数据和非文本类协议数据;基于文本类数据中的语义信息,将一个网络流连接的输入向量解析成一维的可比较的结点序列。
其中,所述比较合并装置进一步包括:根据定义的结点序列相似性规则,基于两个结点序列的相似性结果,将结点序列集合划分为多个相似集合;基于结点序列的相似性将结点序列集合中相似的结点序列合并成一个新的结点序列。
其中,所述归类装置还可以包括:利用结点序列的自归类算法将所述相似合并后的结点序列集合按协议类别分类,根据“同一个网络流连接的两个方向的数据属于相同协议”,通过计算连接矩阵并递归遍历,将经过相似处理后的结点序列归为多个类。
其中,所述特征提取装置还可以包括:以每个按协议划分后的同协议类作为特征提取对象,以字符集合和字符串集合组成的序列表示特征,在类内通过将特征可能性较小内容过滤后,进行词频统计,将含最大词频词的结点 序列子集合作为一个子组进行对齐和合并操作,形成一个特征。
本发明基于“内容和结构高度相似的数据属于同一个协议”和“同一网络流两个方向上的数据属于同一个协议”的原则,对原始网络流数据进行自动分类,并基于分类结果进行特征的自动提取。与基于端口方法导致的信息分散和结果精度不高相比,由于协议特征内容具有较强的稳定性,大量同协议的数据将在相似合并阶段合并在一起,分类结果中信息将更为集中,据此提取的特征更为有效,结果精度更高。
具体实施方式
下面结合附图和具体实施例对本发明提供的一种多协议分类识别的方法和系统进行详细描述。
随着计算机和网络应用的普及,网络中应用协议层出不穷,为了满足网络流协议快速匹配的需求,在根据本发明的实施例中,提出一种基于内容属性特征的文本类协议分类识别的方法和系统,其中,系统简称TPCAD。其中,对原始数据按协议类别分类是特征表示与提取的前提,特征的提取总是针对某个特定协议的数据进行的,特征提取可以高速的进行网络流识别,并且可以对单个未知网络流进行识别。
当前对原始数据按协议类别分类识别的方法是基于端口的粗分类,该方法存在有效信息分散和精度不高的缺点。为避免基于端口方法的不足,根据本发明的实施例提出一种对原始数据按文本进行多协议分类识别的方法,包括以下步骤:
(一)、捕获网络中数据包,通过拼流操作将网络流数据包按顺序拼接在 一起,截取每个网络流连接应用层负载数据的前64个字节数据构成一个输入向量,由于一个网络流连接有两个方向,因而每个连接将生成2个输入向量。
(二)由于发现文本类协议数据中的特殊语义信息有助于寻求新的有效的协议数据分类方法,自定义了一组判断文本类和非文本类协议数据的规则,将输入数据分为文本类协议数据和非文本类协议数据;基于文本类数据中的语义信息,定义一组解析规则,将一个网络流连接的输入向量解析成一维的可比较的结点序列。
(三)、定义结点序列相似性比较规则,给出两个结点序列的相似性结果,据此可将结点序列集合划分为多个相似集合,相似集合内结点序列间相似;可以基于结点序列的相似性规则将结点序列集合中相似的结点序列合并成一个新的结点序列。
(四)、利用结点序列的自归类算法将相似合并后的结点序列集合按协议类别分类;基于“同一个网络流连接的两个方向的数据属于相同协议”的原理,通过计算连接矩阵并递归遍历,将经过相似处理后的结点序列归为多个类,每个类内所有结点序列属于相同协议。
(五)、对每一个分类结果类进行特征提取操作:以字符集合和字符串集合组成的序列表示特征;以每个按协议划分后的同协议类作为特征提取对象,在类内通过将特征可能性较小内容过滤后,不断进行词频统计,每次将含最大词频词的结点序列子集合作为一个子组进行对齐和合并操作形成一个特征,直到类内为空。
以下将对上述步骤进行详细说明,以下所述实施例的特征不应该被理解为对本发明的限制,而是本发明的一种较佳的实施方式。
在上述步骤(二)中,表明本发明以文本类协议数据为处理对象。通过对原始输入数据的分析发现,输入数据可以分为两类:文本类协议数据和非文本类协议数据。文本类协议指的是富含高层语义信息,表现出一定的人可读性的协议,如内容中以可见字符占主体,存在大量空格和换行字符等的协议。该类协议数据可以根据这些内容特点方便的进行解析,从中抽取数据的结构信息和内容信息,达到对数据更为准确的分类。对非文本类协议,由于协议数据中各字段边界通过约定方式确立,从数据内容中难以直接区分,加之各字段内容表现出较强的随机性,所以难以进行结构解析。对文本类协议和非 文本类协议数据间的判别,根据经验数据,本发明定义以下规则:
(a)、输入向量中可见字符占总字符比重大于ρ%,ρ的取值范围为[35,60],一般取50;(b)、输入向量中可见字符后跟不可见字符情况的出现总次数小于β次,β取值范围为[7,12],一般取10;
如果同时满足两条件,那么输入向量为文本类协议,否则为非文本类协议。
上述步骤(二)中结点定义为表示输入向量解析结果的数据结构,描述输入向量的语义信息和每个部分的具体内容,拥有类型和值两个属性,其中值属性表示的就是相应的字符串内容。
如图1所示,上述步骤(二)又可分为如下步骤:
1)将输入向量集合排序,合并相同输入向量;
2)对每个输入向量按以下规则进行解析:
a)将URL和由数字和’.’组成的版本信息解析成IDENTIFIER类型结点;
b)将连续的空白字符串解析成WHITE类型结点;
c)将连续的大小写英文字母字符串解析成ALPHA类型结点;
d)将连续的数字字符串解析成NUM类型结点;
e)将连续的标点符号串解析成PUNC类型结点;
f)将连续的其他字符解析成BIN类型结点;
g)将连续的类型为ALPHA的,值为可读有意义单词的若干个结点合并为SENTENCE类型结点;
3)在结点序列集合中,合并相同的结点序列;
4)输入向量集合最终被解析成一个结点序列集合。
一个具体例子如表1所示,表中给出了6个输入向量样例,并给出解析后得到的结点序列。
表1 解析模块输入输出示例
\x10HTTP/1.1 401 Authorization Required\x0d\x0aDate:Thu,31 May 2007 08:0
|
\x01REPORT MEDIAINFO/1.0\x0d\x0aCID:090C120C8050B1998E1E198D3005F3A766819 |
\x01FRIN 0 danny223nate.com 100898341\x0d\x0a
|
\x10220 raptor.gallo-domain.gallodisplays.com Microsoft ESMTP MAIL S
|
\x10220 smtp1.tessera.com modusGate ESMTP Receiver Version 4.4.568.3
|
\x10220 premail4.smrn.com ESMTP Postfix(California Business and Pro
|
其中,\x10和\x01表示流方向,后面内容为协议数据。
其中,两个连续
符号之间的内容为一个结点的值,‘
’作为分隔符使用。
步骤(三)首先需要定义相似比较函数,用于判断两个结点序列的相似性。对于结点序列而言,可以用于比较的信息包括结点序列的总长度信息、结点的类型信息以及结点的值信息。因为本发明认为相似的结点序列属于相同协议,因而对相似函数的准确性要求很高,所以本发明的实施例根据实验反馈数据,对两个结点序列定义如下相似规则:
(a)、结点序列长度不相同时不相似;
(b)、长度相同时,对应序列位置上存在类型不相同结点时不相似;
(c)、长度和类型分布均相同时,比较值信息,定义IEN为值相同的IDENTIFIER类型结点数量,VEN为值相同的其他类型结点数量,NEN为所有类型值不同的结点数量,如果满足方程β1*IEN+β2*VEN>=β3*NEN,那么两结点序列相似,否则不相似;其中β3>β2>β1,一般取β3=2,β2=1,β1=0.49。
如图2所示,上述步骤(三)又可分为如下步骤:
1)、将结点序列集合按照结点序列的长度信息、各结点序列中结点类型信息以及各结点值信息进行排序;
2)、对排序后的结点序列进行相似合并:
(a)、根据相似规则,将排序结果中等长且类型序列相同的位置连续的结点序列划归为同一个组;
(b)、对每个划分的组进行相似性处理:利用相似规则计算结点序列间的相似关系,将相似结点序列分到同一个子组,然后将每个结点序列子组合并为一个新的结点序列;合并时如果对应位置上结点值不相同,那么在合并得到的新结点序列对应位置上使用选择集合进行描述,选择集合中包含所有该位置结点的取值;
(c)、处理选择集合:该步骤将根据一组预定义原则确定是否将选择集合升级为变量,以表示该位置内容为可变信息。其中,预定义规则如下:
i.如果选择集合大小大于β,则集合升级为变量,其中β的取值范围为[10, 25],一般取20;
ii.如果选择集合中所有字符串长度相同,且选择集合大小大于β,则集合升级为变量,其中β的取值范围为[5,10],一般取7。
3)、判断当前过程中是否有合并发生,如果有则转1),否则退出。
一个具体例子如表2所示,表中给出了3组相似内容合并前后的变化。
表2相似比较合并模块输入输出示例
步骤(四)的主要功能是将经过相似合并处理后的结点序列按协议类别归类,归类过程基于原理“同一个网络流连接的两个方向的数据属于相同协议”。
如图3所示,步骤(四)又可分为如下步骤:
1)将结点序列按原连接方向分为两组,将每一组看作一个维度,构成一个结点序列组成的二维结构,P表示一个相似合并后的序列(图3-a);
2)每个合并后的结点序列对应一组(源IP,源端口,目的IP,目的端口)4元组,将结点序列用4元组集合表示,则构成一个4元组集合组成的二维结构,T表示一个4元组(图3-b);
3)对4元组集合的二维结构计算连接矩阵,连接矩阵每个元素的值为元素坐标对应的两个4元组集合的交集大小(图3-c);根据连接矩阵计算连通子集合。若坐标为(i,j)处的矩阵元素值大于零表示第i行第j列相连,那么所有相连的行列对应的4元组集合(结点序列)称为连通子集合,均属于相同协议。通过递归遍历,输出所有相连的4元组集合,将所有相连的4元组集合转为序列,将序列按协议分类结果,于是每一个连通子集合对应一个协议类别划分结果(图3-d-e-f)。
步骤(五)的主要目的是从上述分类后的每个类中提取协议特征用于网 络流识别。和Justin Ma的基于统计模型的特征表示方法不同,本发明的实施例定义特征为如下序列:
F1,F2,F3,……,Fn
其中,Fi,i∈[1,n]表示一个字符集合或字符串集合,
匹配时,可将上述特征序列理解为一个非确定自动机(NFA)的状态。一个自动机状态转移例子如图4所示,其中Si状态对应Fi集合或字符串。图4中圈内点表示字符,横线表示字符串,字符集合内字符间无序,而字符串集合中字符串内各字符间有序。初始时,如果待匹配网络流数据第一个字符属于F1集合,那么状态转入S1,否则转入失败状态SF。如果后续的流数据仍属于F1集合,那么状态维持在S1内,如果后续流数据属于F2字符串集合中任意字符串起始字符,那么状态转入S2,否则当前数据与当前特征不匹配,转入失败状态SF。如果当前数据能够匹配至特征的终止状态Sn,那么认为成功匹配,当前网络流为当前特征对应协议。由于特征字符串的存在,以及字符集合范围的控制,使得这种特征具有较强的协议描述能力。
为从分类结果的类中的结点序列集合中获得上述表示形式的特征,步骤(五)又可分为如下步骤:
1)构造非特征字符串词典:在本发明的实施例的特征定义中,字符串可以作为特征内容,但并非所有字符串都是特征内容,将所有特征可能性较小的字符串加入词典用于过滤非特征字符串;由于特征内容很少表现为有意义单词形式,当前非特征字符串词典由常见英语单词及其复数形式和分词形式组成的26万个词条组成;
2)对类内剩余结点序列的值信息字符串,首先通过词典过滤非特征字符串,然后统计剩余字符串频率;
3)将类中含最高频率字符串的结点序列单独取出作为一个子组,类内剩余部分作为一个新类;
4)对子组进行对齐操作:对齐操作指的是定位同时出现在所有结点序列中而且出现顺序一致的字符串序列,这些字符串所在的结点称为对齐点,表3为一个对齐点计算结果示例,黑体即为对齐点。
表3 对齐点计算结果示例
如果希望求取的对齐点序列是最长对齐点序列,那么该问题即为最长公共子序列问题(Longest Common SubSenquence,LCS)。对输入为K个长为N的串时,LCS问题的复杂度为O(K*NK),由于复杂度过高,本发明将通过一个近似方法求解LCS的近似解,近似方法复杂度为O(K*N2),步骤如下:
a)选取一个结点序列作为基本序列,根据对齐点的定义,最终结果中的所有对齐点必然出现在基本序列中;
b)设置两个数据结构,第一个用于记录基本序列每一个字符串出现在多少个序列中,第二个用于记录基本序列每个字符串出现在其他序列中的所有位置,所有其他序列逐个和基本序列进行比较,并维护上述数据结构的信息;
c)遍历第一个数据结构,找出所有值等于输入序列总数K的字符串,那么这些字符串构成的集合一定包含结果对齐点集合;
d)交错情况处理,由于这种通过统计出现次数的方法来计算得到的对齐点可能存在交错的情况,例如当只存在序列AB和序列BA时,虽然A和B在两个序列中都出现了2次,但最长公共子序列长度仅为1,因为这两个长为1的对齐点出现交错。为消除交错情况,本发明将根据第二个数据结构中记录的位置信息,从中找出一个每行位置递增的矩阵来获得近似对齐点,可以确保不会出现上述交叉情况;
e)所得位置矩阵对应的字符串即为所求对齐点。
一个对齐点计算的例子如下:
假设输入为3个序列,分别为:
ACDB
ABDC
ADBC
选择第一个序列为基本序列,那么第一个数据结构的内容为:3 3 3 3;
第二个数据结构的内容为:0 3 2 1
0 3 1 2
当前在第二个数据结构中存在3个每行位置递增的矩阵,分别是:
0 3 0 2 0 1
0 3, 0 1, 0 2
任选其一作为结果。
实际操作中为从左至右按递增顺序获得一个结果,为0 3/0 3。
对齐后的合并操作。在获得了对齐点之后,将对应位置上的对齐点连成一组竖线,可将子组中结点序列的非对齐点内容分割为多个部分,合并操作的任务就是将这些被分割出的独立部分合并成一个新的结点。目前的合并算法采用的是字符取值范围合并的方法,即生成的新结点的字符取值范围包含被合并的独立部分中出现的所有字符,而且尽可能小。另外合并前先处理合并内容两端的WHITE类型结点,如果所有序列均存在WHITE类型结点,那么在合并结果中将包含WHITE类型结点。一个具体的例子如表4所示,其中4-a表示一个根据高频字符串划分的子组,4-b表示根据计算所得对齐点进行的待合并内容的划分结果,4-c表示合并结果;
5)如果当前新类非空,转2),否则退出。
表4-a子组对齐后合并前数据
表4-b子组对齐后待合并内容的划分
对齐点连成的分割线如上所示,待合并内容为两两分隔线内的内容
表4-c子组合并结果
根据本发明的实施例提出的一种文本类协议分类和识别的系统,包括:
网络流数据截获装置,用于从网络路由器上截获网络通信数据包,并按包序拼接成完整网络流,最后截取每个完整网络流起始N字节数据组成输入向量作为协议特征发现和提取方法的输入。其中N的取值可根据需要设置为不同数值,如64、256和1024等,本专利取N为较小的整数64。
解析装置,利用文本类协议数据高层语义信息将所述输入向量解析成可比较的结点序列集合;其中,定义判断文本类和非文本类协议数据的规则,将输入向量分为文本类协议数据和非文本类协议数据;基于文本类数据中的语义信息,定义一组解析规则,将一个网络流连接的输入向量解析成一维的可比较的结点序列。
比较合并装置,基于结点序列的相似性规则将结点序列集合中相似的结点序列合并成一个新的结点序列;其中,定义结点序列相似性规则,基于两个结点序列的相似性结果,将结点序列集合划分为多个相似集合;基于结点 序列的相似性将结点序列集合中相似的结点序列合并成一个新的结点序列。
归类装置,利用结点序列的自归类算法将相似合并后的结点序列集合按协议类别分类;基于“同一个网络流连接的两个方向的数据属于相同协议”原理产生的“同协议关系”,将经过比较合并处理后的结点序列集合划分为多个类,每个类中结点序列属于相同协议。
特征提取装置,用于对归类装置输出的类进行处理,通过对非特征内容的过滤,词频统计,以及分组、对齐和合并操作,从每个类中提取一个或多个特征;其中,以每个按协议划分后的同协议类作为特征提取对象,以字符集合和字符串集合组成的序列表示特征,在类内通过将特征可能性较小内容过滤后,进行词频统计,将含最大词频词的结点序列子集合作为一个子组进行对齐和合并操作形成一个特征。
数据集为国内某骨干路由器上1小时内截获的100G广域网原始数据,共941,502条网络流数据,等分为两份,每份470,751条,分别用于训练和测试。由于仅使用各网络流负载起始64字节数据,所以两个系统的输入均为64字节的输入向量集合。在该数据集下,本发明的文本类协议内容特征自动发现和提取系统TPCAD获得比Justin Ma方法更好的原始数据分类和网络流识别结果。
表5给出了TPCAD和Justin Ma方法在训练数据集上对原始数据分类效果的对比结果。
表5-a Justin Ma方法在数据集上的类别划分结果
表中数据第一项表示最后产生的该协议的识别模型数量,第二项表示该协议用于产生识别模型的数据占该协议数据总量的百分比。
从表5的对比结果可知,在广域网数据下,相比Justin Ma方法,TPCAD 系统:
1)能从原始网络数据中自动分离出更多的协议;
2)对每个分离出的协议,用于构造识别器的原始数据量占总量的百分比更大,信息利用率更高;
3)对每个分离出的协议,最后自动生成的网络流识别模型更少,信息更集中。
使用训练过程获得的特征,图5给出了TPCAD和Justin Ma方法在测试数据集下对原始网络流数据识别精度的对比结果,图5-a示出TPCAD和JustinMa两模型的错误率对比结果;图5-b示出TPCAD和Justin Ma两模型的准确率对比结果;图5-c示出TPCAD和Justin Ma两模型的召回率对比结果。从图5的对比结果可知,广域网数据下,无论在错误率、准确率还是在召回率,TPCAD都优于Justin Ma方法。
表6给出了TPCAD和Justin Ma方法时间开销的对比数据,可见TPCAD方法无论在训练时间还是识别匹配时间上都优于Justin Ma方法。
表6Justin Ma方法和TPCAD时间开销对比
时间开销(秒) |
Justin Ma-PD
|
Justin Ma-MP
|
TPCAD |
训练时间 |
194.89 |
4273.297
|
47.547 |
识别时间 |
9.953 |
15.36 |
5.01 |
实验结果表明,对SMTP协议的识别,Justin Ma方法错误率为10%左右,而本发明所用方法的错误率在1%左右。
最后应说明的是,以上实施例仅用以描述本发明的技术方案而不是对本技术方法进行限制,本发明在应用上可以延伸为其他的修改、变化、应用和实施例,并且因此认为所有这样的修改、变化、应用、实施例都在本发明的精神和教导范围内。