计算机毕业设计论文校园网问题解决方案.docx
《计算机毕业设计论文校园网问题解决方案.docx》由会员分享,可在线阅读,更多相关《计算机毕业设计论文校园网问题解决方案.docx(41页珍藏版)》请在冰豆网上搜索。
计算机毕业设计论文校园网问题解决方案
河南大学
毕业论文
计算机应用专业
校园网问题解决方案
系部名称:
xxxxxxxx
专业:
计算机应用
作者姓名:
xxx
学号:
xxxxxxxxx
指导教师:
xxx教授xxx教授
2010年6月1日
摘要
随着网络技术的发展和人们对网络的需求,一项技术(P2P)重新走回人们的视线,很快成为最热门的网络应用之一。
有关调查表明,P2P业务己悄然占据了互联网业务总量的60%一80%,成为杀手级宽带互联网应用。
P2P业务流量在对Intemet起巨大推动作用的同时,也带来了因资源过度占用而引起的网络拥塞以及安全隐患等问题,妨碍了正常的网络业务的开展。
P2P技术占据着网络带宽的绝大部分,如何控制P2P流量,是我们在享受P2P带来的便利的同时必须要考虑的一个问题。
因此,实现P2P流量的有效识别和控制已经成为急需解决的问题。
论文正是在这种背景下,针对P2P流量特点展开的研究工作。
论文主要包含了以下内容:
1、对P2P技术进行了研究。
分别对P2P技术定义、P2P技术的四种网络拓扑模型、P2P技术特点、P2P关键技术、P2P相关协议及应用进行了分析研究。
2、详细分析了P2P流识别中存在的问题,着重研究和比较了当前存在的几种
P2P流识别方案的工作原理,以及其在P2P流识别过程中的特点和存在的问题同时介绍了几种流量控制技术和管理策略。
3、针对现有P2P流量检测方案存在的不足,提出了一种改进后的综合检测方
案,在新的方案中采用流量特性检测和深度包检测等综合识别的检测方式。
该方案克服了当前的几种P2P流识别方案的缺点,有效地提高了P2P流的识别率。
4、在论文提出的方案基础上设计了一个P2P流量识别与管理系统,该系统可
以实施有效的识别及控制。
关键词:
对等网络、P2P流量识别、深度包检测、P2P流量控制
Abstract
Withthedevelopmentofnetworktechnologyandpeople'sdemandforthenetwork,atechnology(P2P)backtothosedayspeople'sattention,andsoonbecameoneofthemostpopularnetworkapplications.Theinvestigationshowedthat,P2PhasbeenquietlyoperatingtheInternetbusinessaccountedfor60%ofatotal80%,akillerofbroadbandInternetapplications.P2PtrafficisintheIntemetanenormousroleinpromotingthesametime,italsobringsalackofresourcescausedbyover-occupiedbynetworkcongestionandsecurityrisksandotherissueshinderedthenormalnetwork'soperations.P2Ptechnologyholdsthevastmajorityofnetworkbandwidth,howtocontroltheP2Ptraffic,isthatweenjoytheconveniencebroughtbyP2Patthesametimemustbeconsideredaproblem.Therefore,theeffectiverealizationofP2Ptrafficidentificationandcontrolhasbecomeanurgentproblem.
Itisagainstthisbackgroundpaper,forthecharacteristicsofP2Ptrafficcarriedoutresearchwork.Papermainlycontainsthefollowing:
1,forP2Ptechnologyisstudied.Respectively,P2Ptechnicaldefinition,P2Ptechnology,fourkindsofnetworktopologymodel,P2Ptechnicalcharacteristics,P2Pkeytechnologies,P2P-relatedprotocolsandapplicationsareanalyzed.
2,adetailedanalysisoftheP2Pflowproblemsinidentifying,focusingonstudyandcomparethecurrentexistenceofseveral
P2Pstreamrecognitionprogramsworks,aswellasitsrecognitionintheprocessofP2Pflowcharacteristicsandproblemsofflowcontrolisalsointroducedseveraltechnologyandmanagementstrategies.
3,flowtestingprogramsforexistingP2Pshortcomings,presentsanimprovedsideaftertheComprehensiveTestCase,inthenewprogramfeaturestheuseoftrafficdetectionandintegrateddeeppacketinspectionandothertestingmethodsidentified.TheprogramtoovercomethecurrentflowofseveralP2Pidentifyoptions,effectivelyimprovedtherecognitionrateoftheP2Pflow.
4,thepaperpresentsaprogramdesignedbasedonaP2Ptrafficidentificationandmanagementsystem,thesystemcanbe
Toimplementaneffectiveidentificationandcontrol.
Keywords:
right-peernetworks,p2ptrafficidentification,deeppacketinspection,p2ptrafficcontrol
1、引言
从网络模型来看,P2P并不是新概念,它可以说是互联网整体架构的基础。
互联网最基本的协议TCP/IP并没有客户机和服务器的概念,所有的设备都是通讯的平等的一端。
在十几年前,互联网上所有的系统都同时具有服务器和客户机的功能。
然而,由于受早期计算机性能、资源等因素的限制,当互联网规模迅速扩大时,大多数连接到互联网上的普通用户并没有能力提供网络服务,从而逐步形成了以少数服务器为中心的客户机/服务器架构。
在客户机/服务器架构下,网络对客户机的资源要求非常少,因而可以使用户以非常低廉的成本方便地连接上互联网,推动了互联网的快速普及。
WWW的风靡,正是这一应用潮流的体现。
但是,随着互联网对人们生活的联系日益紧密和深入,人们需要更直接、更广泛的信息交流。
普通用户希望能够更全面地参与到互联网的信息交互中,而计算机和网络性能的提升也使其具有了现实的可能性。
在此背景下,P2P再一次受到了广泛的关注,随着网络的发展,新一代网络技术P2P得到了广泛应用。
它最直接的功能就是让用户可以直接连接到网络上的其他计算机,进行文件共享与交换。
由于它是对等的网络结构,每个节点既是服务器又是客户端,所以应用广泛,不易控制,同时占用了大量的网络带宽,加重了网络的负担。
据统计,P2P应用己占ISP业务总量的60%~80%,成为网络带宽最大的消费者[1]。
为了保证网络能正常有序的运行,有必要对P2P流量进行识别控制。
但随着加密数据和动态端口的出现,P2P流量识别技术也面临挑战。
国外P2P流量检测方面的研究工作和产品化工作都做的非常好,特别是深度数据包检测技术己经发展的非常成熟。
SubhabrataSen等人在2004年初的时候提出基于应用层签名的P2P流量识别方法。
应用层签名技术实际上是深度数据包检测技术的一种,这种方法把P2P载荷特征分为固定偏移量(fixedoffset)特征和变化偏移量(variableoffset)特征,第一步进行固定偏移量的匹配,第二步检查变化偏移量,在性能和精度上都取得了较好的效果。
T.Karagialmis和A.W.More对P2P流量行为进行分析,得出一些规律,使用这些规律识别P2P流量。
然而新一代的P2P应用可以使用任意的端口号来避开固定端口阻塞,而且越来越多的P2P应用开始加密它们的流量来穿越应用层签名匹配。
所以P2P流量识别变得越来越难。
韩国的JamesWon一KiHong等人在2003年提出一种基于传输层特征的P2P流量检测方法,该方法先通过离线统计的方式找到各种P2P应用的常用端口,然后根据这些常用的端口信息进行流量的分类。
使用该方法针对韩国当时流行的P2P软件进行了测试,但是没有给出性能参数。
国外网络设备生产商和网络服务提供商相继推出了针对P2P流量识别与监管的产品或技术。
P2P流量检测设备包括网络缓存设备、应用层流量管理设备、流统计状态路由器和智能防火墙等。
主要厂商及产品包括Cisco公司的NctFlow技术、Allot的故障恢复流量管理方案、eacheLogie公司的eaeheLogieP2p管理方案、等系列产品等。
国内对于P2P流量识别技术的研究工作较少,不仅缺乏高质量学术论文,也缺乏高效的P2P多媒体内容识别与过滤产品。
从产品角度来看,国内部分网络设备生产商虽然推出了P2P流量监控的相关产品,如华为的SecPath1SOOF防火墙、Eudemon500、1000防火墙和CAPTECH的网络管理软件—网络慧CAP,但由于这些产品在性能、开销等方面存在很多问题。
因此,开展高效、准确的P2P流量(尤其是多媒体内容)实时识别与过滤的相关技术研究,有利于合理利用互联网基础设施、P2P技术和合理部署P2P应用,有利于制止P2P严重占用网络带宽的现象,也有助于维护中国互联网的健康环境和营造一个和谐的网络社会。
2、P2P技术综述
2.1P2P技术介绍
P2P能够迅速流行的原因是:
可以将用户单个的资源组织起来,形成一个巨大的共享资源池。
P2P在20世纪70年代就已出现,其典型代表是Usenet和FidoNet这两个分散、分布的信息交换系统,而真正的P2P技术的大规模应用起源于文件交换软件NaPster[3]。
根据已有的统计报告显示P2P系统用户还在继续增长,这些统计报告中显示,被P2P文件共享程序使用的带宽已经超过了WWW应用。
P2P的应用领域很多,比如分布式计算、文件共享、分布式存储、通信(VoIP)和实时多媒体流等等。
P2P是一种分布式网络,它不同于传统的客户机/服务器模式,没有中央设备来完全控制、组织、管理和保持整个系统,取而代之将功能都分散到了每个网络的参与者,网络的参与者共享它们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源需要由网络提供服务和内容,能被其他对等节点(Peer)直接访问而无需经过中间实体。
在此网络中的参与者既是资源(服务和内容)提供者(Server),又是资源(服务和内容)获取者(Client),因此每个节点的地位都是相同的。
由于P2P技术的飞速发展,互联网的存储模式将由现在的“内容位于中心”模式转变为“内容位于边缘”模式,改变hitemet现在的以太网站为中心的状态,重返“非中心化”,将权力交还给用户。
采用P2P技术实现分布式应用有很多的好处:
1、通过节点的资源聚合,减少对中心服务器的依赖性,提高系统的扩展能力;2、使用已经部署的底层通信资源,降低系统的部署费用;3、在端系统中部署P2P应用程序,提高系统的部署能力。
2.2P2P网络的特点
与其他网络模型相比,它有以下技术特点:
分散化
网络中的资源和服务分散在所有节点上,信息的传输和服务的实现都直接在节点之间进行,可以无需中间环节和服务器的介入,避免了可能的瓶颈。
即使是在混合P2P中,虽然在查找资源、定位服务或安全检验等环节需要集中式服务器的参与,但主要的信息交换最终仍然在节点中间直接完成。
这样就大大降低了对集中式服务器的资源和性能要求。
分散化是P2P的基本特点,由此带来了其在可扩展性、健壮性等方面的优势。
可扩展性
在传统的C/S架构中,系统能够容纳的用户数量和提供服务的能力主要受服务
器的资源限制。
为支持互联网上的大量用户,需要在服务器端使用大量高性能的计算机,铺设高带宽的网络。
为此,机群、cluster等技术纷纷上阵。
在此结构下,集中式服务器之间的同步、协同等处理产生了大量的开销,限制了系统规模的扩展。
而在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩充,始终能较容易地满足用户的需要。
即使在诸如Napster等集中型架构中,由于大部分处理直接在节点之间进行,大大减少了对服务器的依赖,因而能够方便地扩展到数百万个以上的用户。
而对于纯P2P来说,整个体系是全分布的,不存在瓶颈。
理论上,其可扩展性几乎可以认为是无限的。
健壮性
在互联网上随时可能出现异常情况,网络中断、网络拥塞、节点失效等各种异常事件都会给系统的稳定性和服务持续性带来影响。
在传统的集中式服务模式中,集中式服务器成为整个系统的要害所在,一旦发生异常,就会影响到所有用户的使用。
而P2P架构则天生具有耐攻击、高容错的优点。
由于服务是分散在各个节点之间进行的,部分节点或网络遭到破坏对其它部分的影响很小。
而且P2P模型一般在部分节点失效时能够自动调整整体拓扑,保持其它节点的连通性。
事实上,P2P网络通常都是以自组织的方式建立起来的,并允许节点自由地加入和离开。
一些P2P模型还能够根据网络带宽、节点数、负载等变化不断地做自适应式的调整。
隐私性
随着互联网的普及和计算/存储能力飞速增长,收集隐私信息正在变得越来越容易。
隐私的保护作为网络安全性的一个方面越来越被大家所关注。
目前的Internet通用协议不支持隐藏通信端地址的功能。
攻击者可以监控用户的流量特征,获得IP地址,甚至可以使用一些跟踪软件直接从lP地址追踪到个人用户。
在P2P网络中,由于信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。
此外,目前解决Internet隐私问题主要采用中继转发的技术方法,从而将通信的参与者隐藏在众多的网络实体之中。
在传统的一些匿名通信系统中,实现这一机制依赖于某些中继服务器节点。
而在P2P中,所有参与者都可以提供中继转发的功能,因而大大提高了匿名通讯的灵活性和可靠性,能够为用户提供更好的隐私保护。
负载均衡
P2P网络环境下由于每个节点既是服务器又是客户机,减少了对传统C/S结构服务器计算能力、存储能力的要求,同时因为资源分布在多个节点,更好地实现了整个网络的负载均衡。
2.3P2P网络结构
P2P网络属于叠加在底层通信网络基础设施之上的重叠网络,是一个分布式、
具有互操作性的自组织系统。
P2P面临的最大挑战之一是如何在没有中心服务器的
模式下维护网络拓扑结构,以及实现内容搜索。
因此,根据网络拓扑组织形式可以
将P2P网络分为四种类型:
集中式P2P网络,全分布非结构化P2P网络,全分布结构
化P2P网络(也称作DHT网络)和混合式P2P网络。
集中式P2P网络
以Napster为代表的第一代P2P系统采用集中式网络架构,要求各对等端(Peer)都登录到中心服务器上,通过中心服务器保存并维护所有对等端的共享文件目录信息,NaPster[3]的系统结构如图2-1所示。
图2-1集中式网络拓扑框架
当某个用户需要某个文件时,首先连接到Napster服务器,在服务器进行检索,
并由服务器返回存有该文件的用户信息;再由请求者直接连到文件的所有者传输文
件。
Napster首先实现了文件查询与文件传输的分离,有效的节省了中央服务器的带
宽消耗,减少了系统的文件传输延时。
这种方式最大的隐患在中央服务器上,如果
该服务器失效,整个系统都会瘫痪。
全分布非结构化P2P网络
完全分布式非结构化拓扑的P2P网络采用了随机图的组织方式来形成一个松散的网络。
这种结构对网络的动态变化有较好的容错能力,因此具有较好的可用性。
同时,这种结构支持复杂查询,比如带有规则表达式的多关键字查询、模糊查询等。
完全分布式非结构化拓扑的P2P网络的典型代表是Gnutella。
Gnutella是一个P2P文件共享系统,它和Napster的最大区别是Gnutella没有中心服务器,它采用了基于完全随机图的洪泛(Flooding)发现和随机转发(RandomWalker)机制。
为了控制搜索消息的传输,Gnutella采用类似IP数据包中TTL(TimeTOLive)的机制来决定是否继续转发消息。
Gnutella的查询流程如图2-2所示。
非结构化分布式P2P网络存在以下缺点:
查询小时占用大量带宽,花费时间长;网络的规模扩展性差,随着网络规模的扩大,查询小时的数量急剧增加。
因此准确性和可扩展性是非结构化网络面临的两个重要问题。
图2-2Gnutlla查询流程
全分布结构化P2P网络
结构化指的是P2P网络叠加层的拓扑结构是严格控制的,资源并不是随机分散存储在节点上,而是以一种查询更加高效的方式来存储的。
网络中的共享内容用关键字(Key)来表示。
通常使用分布式哈希表(DistributedHashTablenHT),如sHA1等,为节点和关键字各分配m位的标识符,从而将存储数据的位置信息相应的部署在确定的节点上。
节点标识符(NodeID)可以通过哈希节点的IP地址产生,而关键字标识符可以通过哈希文件名或者文件内容来产生。
标识符的位数m必须足够大,才能保证两个节点或者关键字被哈希到同一个标识符上的概率可以忽略不计。
通常由NodeID与关键标志符数值最为接近的节点保存数据的存储位置信息。
每个节点维护一个很小的路由表,只存储邻居节点的NodeID和lP地址。
查询消息被节点步进式的转发给NodeID与关键字标志符接近的节点。
为了在有限逻辑跳内查找定位资源,节点之间连接都是参考特定网络拓扑结构,典型结构化P2P网络代表Tapestry、chord。
混合式P2P网络
混合式P2P网络吸取了中心化结构和全分布式拓扑的优点,选择性能较高(处理,存储,带宽等方面性能)的节点作为超级节点(superNode),在各个超级节点上存储了系统中其他部分节点的信息,发现算法仅在超级节点之间转发,超级节点再将查询请求转发给适当的叶子节点。
混合式P2P网络构成了一个层次式结构,超级节点之间构成一个高速转发层,可采用DHT方式组织,超级节点和所负责的普通节点构成若干层次。
混合式P2P网络结合了集中式拓扑的易管理性与分布式拓扑的可扩展性,在异构的P2P网络环境下是一种较好的模式选择。
通常的混合式P2P系统数据流图如图2-3所示。
图2-3混合式P2P查询流程
2.4P2P的关键技术
P2P[7]的关键技术总体可以分为资源管理查找和对等端Peer到对等端Peer的直接
传送。
资源管理查找涉及到资源标识(文件名、UID、User@hostresouree)、节点定位(服务器模式、路由模式、洪泛模式)和Ad一hoc等。
这些技术都和其网络结构、协议有密切的关系。
P2P的典型特征是无中心,在最初的P2P刚刚出现时是集中目录式结构,理论上不是纯粹的P2P的网络结构。
随着其技术的不断发展在第二代P2P出现了完全没有中央控制节点的网络结构。
但是由于前两种网络结构分别存在着自己的一些缺陷,所以目前的P2P是两层甚至三层的结构,它结合了前两种网络结构的优点,分为普通节点(oN)和超级节点(sN),每个超级节点sN连接数个普通节点ON,而SN之间有可以相互连接,这样搜索响应/排队时间较短,同时某一节点出了问题不至于网络受到很大的影响。
P2P的协议众多,每一种协议对应的客户端以及其路由算法也不相同。
P2P一般包括如下三种节点方式:
1、集中方式索引
每一个节点将自身能够提供共享的内容注册到一个或几个集中式的目录服务器中。
查找资源时首先通过服务器定位,然后两个节点之间再直接通讯。
例如早期的Napster,这类网络实现简单,但往往需要大的目录服务器的支持,并且系统的健壮性不好。
2、广播方式
没有任何索引信息,内容提交与内容查找都通过相邻接节点直接广播传递,例如Gnutella。
一般情况下,采取这种方式的P2P网络对参与节点的带宽要求比较高。
3、动态哈希表的方式
动态哈希表(DistributedHashTable,nHT)是大多数P2P网络所采取的资源定位方式。
首先将网络中的每一个节点分配虚拟地址(VID),同时用一个关键字(Key)来表示其可提供的共享内容。
取一个哈希函数,这个函数可以将KEY转换成一个哈希值H(key)。
网络中节点相邻的定义是哈希值相邻。
发布信息的时候就把(Key、VID)二元组发布到具有和H(Key)相近地址的节点上去,其中VID指出了文档的存储位置。
资源定位的时候,就可以快速根据H(Key)到相近的节点上获取二元组(Key,VID),从而获得文档的存储位置。
不同的DHT算法决定了P2P网络的逻辑拓扑,比如CAN就是一个N维向量空间,而chord是一个环形拓扑,Tapestry则是一个网状的拓扑。
P2P的另一个关键技术是对等端Peer到对等端Peer的直接传送,能够穿越防火墙和NAT(NetworkAddresSTranslation)网络,也就是客户端之间直接相连,这种思想对于C/S模型是一种颠覆性的改变。
这一特点给互联网用户带来了极大的方便,但是同时也涉及到了法律版权和资源浪费以及网络安全等问题。
2.5P2P的协议及应用
P2P的应用主要是在文件共享、IM(instantMessage)、视频分发等。
不同的应用对应不同的相关协议和软件。
下面介绍以下BT。
BitTorrent[8]是一个比较新的P2P协议,近几年来在亚洲地区发展很快,也是国内目前最流行,使用人数最多的一种P2P网络。
BitTorrent是一种分发文件的协议。
它通过URL来识别内容,可以无缝的和web进行交互,并且基于协议。
其优势是:
如果有多个下载者并发的下载同一个文件,那么,每个下载者也同时为其它下载者上传文件,这样,文件源可以支持大量的用户进行下载。
因为大量的负载被均衡到整个系统中,所以提供源文件的机器的负载只有少量增长。
BitTorrentpeer协议通过TcP协议进行操作,握手过程中,由一次握手开始,后面跟