您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 商业合同/协议 > 对等P2P协议的分析
摘要:P2P流量检测技术可分为基于流量特征的识别方法(TLI)和基于深层数据包识别方法(DPI)。TLI通过对传输层数据包进行分析并结合P2P系统所表现出来的流量特征,来识别某个网络流是否属于P2P。DPI采用协议分析与还原技术,提取P2P应用层数据,通过分析其载荷所包含的协议特征值,来判断网络流量是否属于P2P应用。DPI由于具有准确性高、健壮性好、具有分类功能,是P2P流量识别的主要方法。如果能够结合TLI和DPI的优点,就有可能设计出一个准确、高效的P2P流量实时识别算法。近年来,对等网络(P2P)的用户规模、应用类型和流量均呈爆发式增长。分析结果表明,基于P2P的语音通信软件Skype在中国同时在线用户数高达900万,P2P互联网电视(如PPLive、PPStream等)的注册用户数已超过1亿,在线收视者数达到100~500万。P2P应用类型也已经从文件共享,扩展到语音、视频等应用领域。同样,中国互联网实际流量模式分析报告表明,P2P流量已占整个互联网流量的60%。有鉴于此,国际网络设备生产商和网络服务提供商相继推出了P2P流量识别与监管产品。P2P流量检测设备包括网络缓存设备、应用层流量管理设备、流统计状态路由器和智能防火墙等。主要包括Cisco公司的NetFlow技术[1]、Allot公司的故障恢复流量管理方案[2]、CacheLogic公司的CacheLogicP2P管理方案[3]、VersoTechnologies公司的NetSpective系列产品[4]等,这些产品都使用了自行研发的深层数据包检测技术,除了在性能和识别精度上存在差别外,其技术的本质是相同的。相对来说,中国对于P2P流量识别技术的研究工作较少,不仅缺乏高质量学术论文,也缺乏高效的P2P多媒体内容识别与过滤产品。从产品角度来看,中国部分网络设备生产商虽然推出了P2P流量监控的相关产品,如CAPTECH的网络管理软件——网络慧眼CAP[5],但是由于这些产品采用的都是深层数据包检测技术,因此在性能、开销等方面存在很多问题。开展高效、准确的P2P流量(尤其是多媒体内容)实时识别与过滤相关技术研究,不仅有利于合理利用互联网基础设施、合理利用P2P技术、合理部署P2P应用,有利于制止非法内容在P2P网络中的传播,也有助于维护中国互联网的健康环境和营造一个和谐的网络社会。1对等网络流量检测的困难性对等网络是一种分布式网络,其中的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力等),这些共享资源需要由网络提供服务和内容,能被其他节点(peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源提供者(即服务器),又是资源获取者(即客户)。对等网络的代表性应用是文件共享(如Napster)。但是,P2P不仅仅是用于文件共享,它还包括建立基于P2P形式的通信网络、P2P计算或其他资源的共享等很多方面。P2P最根本的思想,同时也是它与客户/服务器模型(C/S)最显著的区别在于网络中的节点既可以获取其他节点的资源或服务同时又是资源或服务的提供者,即兼具客户机和服务器的双重身份。一般P2P网络中每一个节点所拥有的权利和义务都是对等的,包括通信、服务和资源消费。从分类来看,可以将P2P分为纯P2P和混合P2P两种模式。纯P2P网络中不存在中心实体或服务器,从网络中移去任何一个单独的、任意的终端实体,都不会给网络中的服务带来大的损失。而混合P2P网络中则需要有中心实体来提供部分必要的网络服务,如保存元信息、提供索引或路由、提供安全检验等。P2P应用的飞速发展,虽然丰富了互联网的内容,但其流量的爆发式增长和不加限制的带宽占用,不仅给互联网基础设施带来了巨大冲击,也给Internet服务提供商(ISP)和应用服务提供商(ASP)高级服务的部署带来了很多问题。此外,P2P网络也迅速成为恶意代码、黄色淫秽内容、反动信息、盗版资源等传播的沃土。因此,对等网络的快速识别与分类,不仅为运营商提高服务质量(QoS)提供技术支持,也可以为对等网络上的内容监管(如恶意代码识别、病毒防御)提供保障。但是,由于对等网络的内在特性,其流量识别存在以下特殊性:(1)不确定性由于对等网络应用的多样性(如文件共享、语言通信、视频通信)等,因此对等网络流量不仅在流量特征上,而且在行为特征上也表现出不确定性。此外,对等网络中节点的动态性也增加了对等网络流量的不确定性。这种流量的不确定性,为实现对等网络的流量识别带来了诸多困难。(2)海量性对等网络不仅应用多种多样,而且规模极大(如文件共享式P2P系统Bittortent总同时在线节点可高达100万),因此一般来说,对等网络流量均较大。对等网络流量的海量性,给流量的实时检测带来了性能问题。(3)加密性由于对等网络属于应用层,因此为了躲避内容监管,现有P2P系统均对其载荷进行了加密处理。加密特性使得常规的模式识别算法很难直接应用于对等网络中。因此,必须寻求新的流量检测技术与检测方法才能解决P2P流量识别的准确性和可靠性问题。上述特殊性使得对对等网络的流量进行正确、高效和实时识别带来了很多困难。从技术层面来看,现有P2P流量检测技术大致可分为基于流量特征的识别方法(TLI)和基于深层数据包识别方法(DPI)。此外,网络设备提供商和安全产品提供商也开展了P2P流量识别与监管的研发工作。2基于流量特征的P2P流量识别技术在P2P系统中,每个节点既是客户机也是服务器,这种节点充当双重角色的特点,也使得P2P应用在传输层表现出与其他网络应用(如HTTP、FTP、DNS、EMAIL等)不同的流量特征。因此,基于流量特征的P2P流量检测方法的基本思想是:通过对传输层数据包(包括TCP和UDP数据包)进行分析,并结合P2P系统所表现出来的流量特征,来识别某个网络流是否属于P2P。这类方法包括:TCP/UDP端口识别技术、网络直径分析技术、节点角色分析技术、协议对分析技术和地址端口对分析技术等。传输控制协议/数据报协议(TCP/UDP)端口识别技术利用第一代P2P系统多采用固定的服务端口的特点来识别P2P系统。例如,文献[5]第一次提出了P2P流量识别问题,并利用端口识别技术,对Fast-Track、Gnutella和Direct-Connect3种具有代表性的P2P系统的流量特征进行了分析。现有P2P系统所采用的常用服务端口如表1所示。由于许多P2P应用为了躲避流量审计与过滤,往往采用随机端口技术,因此TCP/UDP端口识别技术存在严重的漏报问题。网络直径分析技术利用了P2P系统所组成的逻辑网络具有网络直径大这一特点。在P2P系统中,节点之间需要建立连接。与物理连接不同,P2P系统中的连接是逻辑连接,因此所形成的P2P网络属于逻辑网络。文献[6]通过记录网络中每个节点与其他节点建立连接的情况而得到P2P系统的逻辑连接拓扑图,并计算其网络直径。文献[6]的研究结果表明,与他网络应用所形成的逻辑网络相比,P2P系统所形成的逻辑网络具有更大的直径。因此,如果网络直径超过某个门限值,则该网络中的节点就是P2P节点,相应的流量就是P2P流量。由于网络直径的计算需要记录整个网络的连接状态,因此不仅存储和计算开销大,而且也不支持P2P流量的实时识别与过滤。节点角色分析技术利用了P2P系统中每个节点具有多重角色的特点。P2P系统中的每个节点,既是客户机,也是服务器。因此,如果可以判断某个逻辑网络中具有这种双重角色的节点数,就可以确定该网络是否为P2P网络。例如,文献[6]通过记录并计算网络中同时充当客户机和服务器两个角色的节点数,发现如果该数超过某个门限值,则这些节点所形成的网络就是P2P网络,而该网络中的节点就是P2P节点,相应的流量也既是P2P流量。与网络直径分析一样,节点角色分析技术也需要记录整个网络的连接状态,因此同样面临存储与计算开销大、无法供P2P流量的实时识别与过滤功能等问题。协议对分析技术利用了P2P系统可能同时使用TCP和UDP协议的特点。实际分析结果表明,P2P系统一般采用UDP来发送命令等控制信息,而采用TCP协议来传输数据。在一般的应用中,通常一个应用极少出现同时使用UDP协议和TCP协议的情况。因此,可以利用P2P系统的这个特征来识别P2P流量。例如,文献[7]所采用的协议对分析技术中,通过判断在时间t内,某个“源-目的IP地址对”之间,是否同时使用了TCP和UDP协议。如果是,则这两个节点之间的流量就有可能是P2P流量;反之,则可能不是P2P流量。由于域名服务器(DNS)等应用也会同时使用TCP协议和UDP协议,因此协议对技术存在严重的误报问题。地址端口对分析技术也是利用了P2P系统中节点角色多样性的特点。地址端口对技术[7]的依据是,在P2P系统中,每个节点既是客户机,也是服务器。为了能够接受其他节点建立连接的请求,每个节点都需要广播自己的IP地址和提供服务的端口(记为{目的IP,目的端口},简称目的地址端口对)。而为了与其他节点建立连接,每个节点随机选择一个源端口,使用自己的IP地址(记为{源IP,源端口},简称源地址端口对),并利用其他节点所广播的IP地址和端口对信息来建立连接。由于每个节点与另外一个节点建立连接时,不论是源节点还是目的节点,都使用随机源端口技术,因此对于广播了目的地址断口对的节点A来说,与自己建立了连接的源IP地址数和源端口数应大致相同。相反,其他应用(如HTTP)往往需要建立多个连接来传送数据,因此来自于同一个源IP的节点可能采用不同的源端口,与Web服务器建立多条连接,其源IP数与源端口数往往不同。为此,在单位时间t内,如果网络流的源IP数与源端口数相同,则该流量可能就是P2P流量。地址端口对具有性能高的优点,但是缺乏实时识别与过滤的能力。除了上述有关P2P流量检测技术外,还有以下基于流量特征的P2P流量检测技术。文献[8]通过两种方法来识别BitTorrent流量:(1)许多节点向同一个节点发送大量数据且在目的节点出现握手数据包。(2)某个节点广播大量UDP数据包,并随之发送了大量握手数据包。文献[9]利用P2P系统的连接错误率等TCP流的特征来识别P2P流量。文献[10]结合Skype具有“中继”的特性,通过考察P2P流量的如下特征参数来识别网络流是否为P2P:开始时间差、结束时间差、流的速率、两个流的时间相关系数。通过实验分析,文献[10]证明具有中继特性的Skype流量具有如下特征:开始时间差一般小于5秒、结束时间差一般小于5秒、进入流的比特率与出来流的比特率大小基本相等、两个P2P流的时间相关系数不小于0.37。因此,可以利用这4个特征参数,来识别具有中继特征的Skype及其他P2P流量。3基于应用层数据检测的P2P流量识别技术基于应用层数据检测的P2P流量识别技术是通过协议分析与还原技术,提取P2P应用层数据(即P2P载荷),通过分析P2P载荷所包含的协议特征值,来判断是否属于P2P应用。因此,这类方法也叫做深层数据包检测技术(DPI)。在深层数据包检测技术中,通过对具体的P2P协议及其对应的P2P系统的载荷进行特征提取,建立特征库。对于流经的实时网络流,采用模式匹配算法,判断其中是否包含特征库中的特征串。如果特征匹配成功,该网络流就是P2P数据。文献[11-15]都采用了DPI的P2P流量识别技术。文献[11]对Gnutella、Edonkey、DirebtConnect、BitTorrent以及Kazaa的协议特征进行了分析,并据此对应用层数据进行分析来识别是否是P2P流量。文献[12]利用应用层数据分析技术,对多媒体流量进行了识别分析。此外,也有少量文献探讨了结合基于流量特征方法和基于应用层数据的检测技术。相关文献参见文献[13]和文献[14]。文献[13]对比了3种P2P流量识别技术:端口分析技术、应用层签名、传输层分析。文献[14]引入诱饵节点,并结合应用层签名分析技术对日本流行的P2P系统Winny的流量进行了分析。4两种P2P流量识别技术的优缺点及比较分析基于流量特征的检测技术的优点
本文标题:对等P2P协议的分析
链接地址:https://www.777doc.com/doc-2536706 .html