论文部分内容阅读
协议识别是进行有效的网络管理与控制的重要条件,由于新的P2P软件(以Skype,Emule,BitComet,迅雷为代表)开始使用加密协议和协议伪装等技术手段来防止被网管探测、识别、封堵,传统的根据协议特征码来识别的方式已经难以识别这些软件产生的流量。基于流量特征的P2P协议识别的方法是目前研究的主要方向,将机器学习的理论与模型运用到协议识别领域是发展的一个趋势。
通过对传输层数据包(包括TCP和UDP数据包)进行分析,并结合P2P系统所表现出来的流量特征,来识别某个网络流是否属于P2P。这类方法包括:TCP/UDP端口识别技术、网络直径分析技术、节点角色分析技术、协议对分析技术和地址端口对分析技术等,但是其准确性和识别率不如特征码识别。
本文就基于半监督聚类的模型运用到识别具体P2P应用的可能性进行了分析与实验,提出了一种基于Newton-Raphson方法学习特征权值矩阵的训练的办法,在依据P2P应用特征选取连接特征的基础上进一步提高系统识别准确率和召回率。在本文的实验环境下,针对具体的BitComet和Emule应用的识别器的识别率和召回率均达到了85%左右,在加密协议的识别上取得了不错的效果。
如何优化系统的识别准确率和召回率,提高系统效率是本文重点研究并试图解决的问题,主要包括以下三个方面的成果:
一、实验并分析了基于半监督学习的聚类模型在加密P2P应用识别上的效果,同时总结了一套分析P2P协议特征的办法。
二、将Newton-Raphson方法引入到连接特征的选取上,将特征权值矩阵用于距离的计算,进一步提高了训练和识别的效果。
三、基于KD-Tree的识别器的实现使得整个在线识别过程能在内核的协议层高效实现,有效的控制了系统的计算复杂度。