论文部分内容阅读
互联网已经成为社会基础设施,网络规模持续扩大,新应用不断涌现,对网络管理和安全提出挑战。网络流量分类(Network Traffic Classification)作为流量管理和安全防范最重要的基础技术之一,受到研究人员的广泛关注。 流量分类技术是按照特定的流量特征,识别数据包所属的应用协议类型。流量特征是流量分类的基础,特征词是当前流量分类中最有效的特征之一,目前广泛应用于基于深度包检测(DPI,Deep Packet Inspection)的流量分类系统中。然而,当前的特征词提取方法基本采用人工挖掘和简单的自动提取方法,无法满足效率与精确性要求。针对这些问题,本论文重点研究特征词产生,协议特征词选取和基于特征词的网络流量分类方法。论文的主要贡献如下: 1.针对当前的特征词产生方法无法深入理解负载内容中的隐藏语义、产生的特征词准确性差和冗余度高等问题,提出了一种无监督的流量负载分割算法SATP(SegmentationAlgorithm on Traffic Payload),用来从负载中自动产生准确精简的特征词。该算法基于自然语言处理技术的投票专家(Voting Experts)分词算法原理,在解决了统计稀疏网络数据带来的超大存储需求问题后,利用特征词独有的熵信息发现网络负载中特征词之间的边界,从而分割负载和产生特征词。实验结果表明,采用SATP算法对负载进行分割,能够有效发现负载中的相同特征词,使得分割后所有协议流量的负载描述长度均低于负载自身长度,其分割压缩比均大于1;在不降低特征词准确性的基础上,产生的特征词个数比基于n元组的产生方法低一个数量级,比基于公共子串的产生方法低两个数量级。 2.针对当前协议特征词提取方法对输入参数敏感和无法在大规模输入流量下选择协议特征词的问题,提出了一种基于规则打分的协议特征词提取算法ProWord。该算法首先将选择协议特征词常用的频率、位置和字长等逆向工程经验构建成相应的打分规则,然后基于这些打分规则生成排序模型,最后从候选特征词集合中自动挑选出得分最高的前k个特征词作为协议特征词进行输出。实验结果表明,ProWord提取的前100个特征词中能捕获到82-94%左右的协议特征词,其捕获到的协议特征词个数是传统提取方法的2-3倍,而且捕获到的协议特征词简洁度(Conciseness)均低于传统方法,在执行速度上比先前工作ProDecoder快40倍。此外,ProWord还能在混杂数据中为不同协议提取协议特征词。 3.针对当前的流量聚类方法采用流量外部属性作为流量特征,不能深入流量的内容特征进行聚类,存在应用类型细分不足的问题,本文提出了基于特征词的流量聚类方法TCBFW(Traffic Clustering Based on Feature Word)。该方法首先基于SATP算法分割负载得到的特征词构建出代表流负载内容的低维度特征向量;然后通过合理加权特征向量中的子特征来定义流相似度函数,量化各特征向量之间的距离;最后提出部分采样和核心特征标注的处理结构,基于特征向量和相似度函数,实施规模化的流量聚类。实验结果表明,TCBFW能有效聚类划分存有内容差别的协议类型,对于14种现有网络中的主要应用协议流量,TCBFW采用ROCK和DBSCAN聚类算法在提取数据集上分别获得了99.0%和90.5%的总准确率,而在混杂数据集上分别获得了85.3%和75.9%的总准确率。