基于K均值与双支持向量机P2P流量识别方法.doc

基于K均值与双支持向量机P2P流量识别方法.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于K均值与双支持向量机P2P流量识别方法

基于K均值与双支持向量机P2P流量识别方法   摘 要:针对目前常用于P2P流量识别的有监督机器学习方法普遍存在时间代价较高的现状,提出采用时间代价为标准支持向量机四分之一的双支持向量机来构建分类器,并采用K均值集成方法快速生成有标签样本集,组合有标签样本集构成双支持向量机的训练样本,最后利用构建好的双支持向量机分类模型进行P2P流量的识别。实验结果表明采用基于K均值集成结合双支持向量机的方法在P2P流量识别的时间代价、准确率和稳定性方面要远优于标准支持向量机。 关键词:P2P流量识别;有监督机器学习;双支持向量机;K均值集成;时间代价 0 引言 近年来,随着网络应用的疯狂增加,网络流量急剧增长,网络运营商的成本也大幅增加。然而,在所有的网络流量中,P2P流量几乎占到70%,所以如何准确地识别出P2P流量是网络流量识别中面临的一个重大难题,同时也是网络安全、流量计费、应用趋势分析等领域所面临的一个重要问题。然而,由于P2P流量不同于传统Web流量,其应用端口往往是动态变化的或者对端口以及传输数据等信息进行加密等;而且绝大数的P2P应用没有统一的网络协议标准,都是一些不公开的专有协议(比如迅雷、eDonkey等),这些都为P2P流量的识别带来了很大困难。 1 相关研究 截止到目前,P2P流量识别方法[1]主要有基于端口的识别方法、基于深层数据包检测(Deep Packet Inspection,DPI)技术的识别方法、基于网络行为的识别方法和基于机器学习的识别方法。 基于端口的识别技术主要考虑到一些网络应用是固定的端口,所以可以通过(IP,port)对来实现。然而,随着P2P技术的发展,现在的P2P软件大都是动态随机分配端口或者进行端口加密,所以这一方法已经基本失效了。 基于DPI技术常利用模式匹配算法搜索流量载荷中P2P协议的特征值,进而判断是否属于P2P流量。应用层负载特征的提取是确保DPI技术识别准确率的关键,而模式匹配算法是确保DPI技术性能的关键 。虽然DPI 技术在非加密P2P流量的识别准确率较高,然而由于需要创建动态的P2P特征库,进而通过模式匹配进行P2P流量的识别,其空间和时间代价比较高,还涉及到个人隐私,在实际应用中涉及侵权问题。 基于网络行为的识别方法[2],主要是利用P2P网络异于其他网络的一些特点进行P2P流量识别(如网络直径长、端口连接率高、TCP连接突增等)。基于网络直径的识别方法由于需要存储各节点相关信息,时间和空间代价较高,不适合高速网络中流量的识别;并且基于网络行为的识别方法易受网络动态性影响,难以找到较好的分类属性特征。 基于机器学习的方法不依赖于应用层负载信息,它利用流量统计特征建立机器学习分类模型识别P2P流量,所以如何构建良好的分类模型就成为一个非常重要的问题。机器学习方法主要分为有监督机器学习、无监督机器学习和半监督机器学习,目前常用于P2P流量识别的机器学习方法是有监督的机器学习[2]方法,主要有朴素贝叶斯、贝叶斯神经网络、C4.5决策树以及支持向量机(Support Vector Machine,SVM)[3]。然而有监督机器学习方法需要依赖大量有标签样本,并且目前应用于P2P流量识别中的大部分有监督机器学习方法时间代价较高,难以应用到高速网络中。本文提出采用时间代价为传统支持向量机的四分之一的双支持向量机方法,大大提高了识别效率。然后,采用K均值聚类集成方法快速获得有标签样本数据,利用有标签样本对双支持向量机进行离线训练,最后用训练好的分类模型进行P2P流量的识别和控制。 2 数学模型 2.1 双支持向量机 支持向量机方法是一种建立在统计学习理论(Statistical Learning Theory,SLT)基础之上的机器学习方法,目前该方法已被广泛应用于语音识别、人脸识别、文本分类和网络流量控制、信息安全等领域。 支持向量机主要基于结构风险最小化原理,能够实现用较小样本训练获得较高泛化能力的决策函数。已知有训练集T={(xi,yi)}(i=1,2,…,l),其中正输入集合表示为矩阵A(即yi=+1类),负输入集合表示为矩阵B(即yi=-1类)。标准支持向量机的目的是寻找一对最大间隔的最优超平面能将这2类样本准确分开(如图1所示),数学模型描述如下: 综上可知,TWSVM可以看成是标准支持向量机的分解,TWSVM中的每一个二次规划问题都类似于SVM,所以TWSVM算法可以看成是解决一对二次规划问题,而SVM则是解决一个二次规划问题。如果样本数相等TWSVM的时间复杂度为2(t/2)3=t3/4,而SVM的时间复杂度为t3,可见双支持向量机的时间复杂度要远低于标准支持向量机的时间复杂度,大大提高

文档评论(0)

linsspace + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档