您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 房地产 > 网络流量分类国内外研究现状
网络流量分类国内外研究现状摘要近年来,随着互联网的迅猛发展,大数据(TheBigData)时代已经到来,越来越多的新型网络应用逐渐兴起,网络规模不断扩大,网络组成也越来越复杂。网络流量分类技术作为增强网络可控性的基础技术之一,不仅可以帮助网络运营商提供更好的服务质量,而且能够对网络进行有效的监督管理,确保网络安全。本文介绍了国内外关于网络流量分类方法以及算法的研究现状,据此以望给相关领域的人提供一定的参考和帮助。关键词大数据TheBigData网络流量分类国内外研究现状随着TheBigData的概念的提出,网络流量分类研究的关注程度也水涨船高。在复杂的网络计算机环境中,尤其是云计算环境中,网络流量分类技术对于确保网络和系统的安全性有着极为重要的作用。网络流量分类技术在现代网络安全和管理体系中扮演着极为重要的角色。它能有效地处理很多网络安全问题包括合法截取和入侵检测等问题。比如,网络流量分类可以用作检测服务攻击,蠕虫病毒传播,网站入侵,垃圾邮件传播。此外,网络流量分类在现代网络管理体系中同样扮演着极为重要的作用,如服务质量控制(QoS)。鉴于网络流量分类在网络系统中发挥如此至关重要的作用,网络流量分类技术的需求也越来越大。网络流量分类是指按照网络的应用类型(比如、TFTP、P2P等),将基于TCP/IP协议的网络通信产生的双向UDP流或TCP流进行分类。网络流量分类技术虽然在很久以前就已经被提出,而且相关的分类技术也已经大量被提出,但是随着网络的复杂性越来越大,尤其是云计算的提出,使得网络分类技术面临新的机遇和挑战。因此,分析网络流量分类的国内外研究现状就显得极为必要了。一、网络流量分类国内研究现状国内学者对于网络流量分类的算法以及技术研究虽然历时不长,起步较晚并缺乏一定的系统性,但仍以方兴未艾之势不断完善和深入,尤其是近几年,在相关领域也取得了一些突破性的进展。(1)基于决策树的网络流量分类传统的基于端口和基于深度包检测的网络流量分类方法因为p2p及载荷加密等技术的流行而变得失效。基于“网络流”统计特征和机器学习的方法因为能够有效地解决这些问题而成为了流量分类领域的新方向。于孝美,陈贞翔,彭立志[1]提出基于C4.5决策树算法,根据训练集中属性的信息增益比率构建分类模型,按属性对检测数据进行预测,通过查找分类模型实现对网络流量的分类。吴耿[2]首次将C4.5_cs决策树算法应用到网络流量的分类当中,并根据流量分类这一实际背景给出了一种计算C4.5_cs代价矩阵的方法。相比其他方法,采用C4.5_cs算法的流量分类器具有更高的“字节分类准确率”,适合于不平衡流量的分类。朱欣、赵雷、杨季文[3]针对网络流量数据大、动态变化性高的问题,提出一种基于数据挖掘技术——概念自适应快速决策树(CVFDT)的网络流量识别方法。CVFDT适合于处理流动数据,随数据样本分布的变化更新模型,并能处理概念漂移。赵小欢,夏靖波,李明辉[18]针对传统的单一分类算法需要构建基于特定假设的某种模型,算法对于待分类数据的分布要求高,不能满足复杂多变的网络流量的分类要求。他们采用多决策树组合的随机森林算法实现网络流量分类。(2)基于机器学习的网络流量分类关于基于机器学习的网络流量分类算法主要分为三个方面:贝叶斯方法、神经网络、支持向量机(SupportVectorMachineSVM)三种。对于这三种方法,国内一些学者根据不同的一些网络提出一些新的见解和改进方法。1.贝叶斯方法邓职洁,王勇,陶晓玲[4]三人针对传统网络流量方法不能很好地满足高速网络流量分类的实时性和准确性要求,提出了一种基于FPGA二次加权朴素贝叶斯网络流量分类方法。提高分类精度的同时具有更好的实时性。张立仿,张喜平,柴旭清等人[5]针对传统的基于传输层端口和基于特征码的流量分类技术准确率低、应用范围有限等缺点,提出了使用树扩展的贝叶斯分类器的方法,该方法利用网络流量的统计属性和基于统计理论的贝叶斯方法构建分类模型,并利用该模型对未知流量进行分类。佘锋,王小玲[14]提出了基于半监督学习的网络流量分类方法,传统的基于NB分类的监督学习方法用少量已标记的例子产生的分类器,往往不能归纳以前没出现的流类型,因此提出了一个不用于传统半监督学习应用的结合监督和非监督的方法。2.神经网络胡婷[6]在基于神经网络的网络流量分类方法中引入了检测精度高的有监督的误差方向传播算法(Back-PropagationAlgorithm,BP算法)改进了自组织、自适应性强的无监督的自组织映射(Self-OrganizingMapping,SOM)方法。胡婷,王勇,陶晓玲[12]提出了基于SSOM的网络流量分类方法,自组织映射网络SSOM(Supervisedself-OrganizingMaps)是一种人工神经网络方法能使输出层中获取神经元的选择更容易,各类别之间划分更清晰,从而提高分类性能。3.支持向量机王涛,程良伦[7]提出了基于快速SVM的大规模网络流量分类方法,利用比压缩算法对初始训练样本集进行聚合与压缩,建立具有权重信息的新样本集,在损失尽量少原始样本信息的前提下缩减样本集规模,进一步利用基于权重的SVM算法训练流量分类器。欧阳广,李倩倩,满君丰[9]提出了基于DDAG-SVM(DecisionDirectedAcyclicGraph)的网络流量分类方法顾成杰,张顺颐[15]针对网络环境中存在大量噪声和网络流量中存在过多的冗余特征属性,提出了一种具有特征有效度的模糊支持向量机(FW-FSVM),并将FW-FSVM应用于网络流量分类领域。基于单一的算法或者某个理论有时候无法满足复杂的网络流量分类要求因此,也有些学者根据两个或者多个算法或者理论结合起来提出不同的网络流量分类方法如李国平,王勇,陶晓玲[10]提出了基于DPI(deeppacketinspection)和机器学习的网络流量分类方法。邱婧,夏靖波,柏骏[13]提出了基于SVM决策树的网络流量分类方法除了上述网络流量分类方法的研究与发现,还有一些其他学者通过不同的视角提出新的网络流量分类方法。如胡婷,王勇,陶晓玲[8]提出了基于BP算法的网络流量分类方法(GA-LM)剌婷婷,师军[11]出了基于GA-CFS(geneticalgoriyhm)和AdaBoost(adaptivebossting)算法的网络流量分类方法。丁要军,蔡皖东[16]针对互联网流量标注困难以及单个聚类器的泛化能力比较弱提出一种基于互信息(MI)理论的选择聚类集成方法,以提高流量分类的精度。顾成杰,张顺颐,高飞,王晓军[17]提出了一种混沌粒子群优化算法(CPSO-BP),并将该算法应用于认知网络环境中对于网络流量进行精确分类,以实现对以业务为中心的认知网络的可管控性。渠文龙[19]首次将模式识别算法应用在网络流量分类领域中,并综合的比较了各种模式识别算法在不同情形下网络流量分类中的效率及准确性。二、网络流量分类国外研究现状国外的网络流量分类方法的相关研究由于起步的比较早,因此也形成了一定地系统方法和理论体系,传统的网络流量分类技术主要依靠于检测不同应用所依靠的特定端口号,或者侦测有效载荷中的IP数据包的签名字符串。而如今,面对现代化网络中动态端口、数据加密以及隐私保护措施的出现,这些技术将面临巨大的问题。国外的一些学者和专家根据当前的网络环境复杂性提出了一些新的网络流量分类研究方法。(1)基于端口号的流量分类方法传统的流分类方法依赖于对TCP或UDP数据包中端口号的分析,将熟知的端口号(IANA[20])进行映射来识别不同的应用类型。2004年,Sen[21]等人对KazaaP2P协议进行实验,测得默认的P2P端口号只占测试总流量的30%左右。2005年,Moore和Papagiannaki[22]通过实验测得:使用官方的IANA列表进行基于端口号的分类,其准确率不超过70%。Madhukar和Williamson[23]证实了使用端口号分类的方法,对于他们实验时30%-70%的流量都无法识别。(2)基于有效负载的流量分类方法为了避免对端口号的过分依赖,提出了基于有效分类方法。该方法通过分析包的有效负载是否包含已知应用的特殊签名进行流分类,具有较高的准确性。虽然该方法具有很高的分类准确率,但分析代价太大。为了降低计算代价,可将其与一些分析代价较低的分类方法结合使用,先过滤出一些很容易分析出的流量,以减少计算开销。Moore和Papagiannaki[22]使用了一种端口号和有效负载相结合的技术来识别网络应用,实验测得69%的流可以通过端口号映射的方式被正确分类,在分析端口号的基础上分析流的前1kByte信息可将分类准确率提高到79%,对于上述两种方式都无法分类的流,分析其负载的全部内容可将其正确分类,分类的准确率接近100%。基于有效负载的分类方法虽然避免了过分依赖端口号所带来的问题,但其自身也存在一定的限制:它只能识别那些已知的非加密流量,而无法分类其他未知流量;此外,这种方法无法应用于私有协议或加密流量,而且直接分析应用层的内容会带来隐私侵犯和安全性等问题。(3)基于主机行为的流量分类方法2004年,Karagiannis[23]等人提出了基于P2P流量的连接模式来识别P2P应用类型的方法。实验采用了两个主要的启发式来检测不同流的行为特征。第一个启发式检测同时使用TCP和UDP两种传输层协议进行数据传输的{源IP,目的IP}对,第二个启发式用于监控IP,port}对的连接模式。该方法不仅可以有效识别99%的P2P流和超过95%的P2P字节,而且还可以识别基于有效负载方法未能识别出的P2P流。2005年Karagiannis[24]等人又提出了一个新的基于主机传输层行为模式进行流分类的方法,并称之为BLINC。该方法在社会层、功能层及应用层对主机行为进行分析。其中,社会层主要分析某一台主机在一定时间内与哪些其他主机进行通信,以及与某些特定主机进行通信的一批主机的集合;功能层主要分析一台特机在网络中是提供服务的一方、请求服务的一方,还是二者兼有;应用层将前两层分析后得到的信息和传输层端口信息结合起来推断原始应用的类型。使用该方法进行流量分类,可以识别出所有实验数据中80%-90%的流量,并且准确率超过95%。(4)基于机器学习的流量分类方法1.无监督机器学习方法2004年,McGregor[25]等人以包长、包间隔时间、流持续时间等作为统计特征,利用EM(期望最大化)算法[26],通过无监督学习的方式将流量按其类型(如批量传输、小规模传输等)进行了分类。2005年,Zander[27]等人采用了一种AutoClass[28]方法,AutoClass是一个无监督的贝叶斯分类器,使用EM算法决定数据对象应该属于最优簇。该方法使用NetMate[29]工具计算流的特征值,并采用SFS(sequentialforwardselection)方法选择较优的属性集。实验将获取的流统计数据传给分类器进行学习,学习和分类的结果再作为下一次分类的评估标准。机器学习的时间越长,则分类准确性越高,一旦达到某个标准,就可以对后续的输入数据流自动分类。2007年,Erman[30]等人提出了针对网络核心流量分类的解决方案,在网络核心的入口点和出口点按照流量类别(如Web,P2P,FTP等)来识别和区分网络流量。实验采用了K-Means算法,以平均包长、流持续时间、平均包间隔时间等作为特征值,并取得了较好的实验效果,对服务器到客户端的单向流量识别的流准确率达到了95%。目前比较常用的聚类算法有很多,它们在聚类速度、聚类效果等方面具有各自的特点。2006年,Erman[31]等人比较了K-Means、DBSCAN[32](density-basedspatialclusteringofapplicationswithnoise)和AutoClass这三种聚类算法。K-Means算法是一个划分算法,DBSCAN算法是一个基于密度的方法,而AutoClass则是一个基于概率模型的算法。实验结
本文标题:网络流量分类国内外研究现状
链接地址:https://www.777doc.com/doc-4367603 .html