(计算机科学与技术专业论文)基于边缘缓存的下载加速方案设计与实现.pdf_第1页
(计算机科学与技术专业论文)基于边缘缓存的下载加速方案设计与实现.pdf_第2页
(计算机科学与技术专业论文)基于边缘缓存的下载加速方案设计与实现.pdf_第3页
(计算机科学与技术专业论文)基于边缘缓存的下载加速方案设计与实现.pdf_第4页
(计算机科学与技术专业论文)基于边缘缓存的下载加速方案设计与实现.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

! 土? i l ? tr m st h e s i s : d e s i g na n dr e a l i z a t i o no fa c c e l e r a t e d o w nl o a ds c h e m eb a s e do ne d g ec a c h e s p e c i al t y :g q 塑p 堕! 曼s 曼i 曼坠堡星垦旦鱼! 鱼堡h n q ! q g y m a s t e rd e g r e ec a n d i d a t e :圣曼n gz h i y q n g s u p e r v i s o r : p r o f l i ul i a n h a o c o l l e g eo fi n f o r m a t i o ns c i e n c e e n g i n e e r i n g c e n t r a ls o u t hu n i v e r s i t y c h a n g s h ah u n a np r c 辣垒离盎 斟温潭褂墨慊高黟海诗耐姐荨赤姐刊酵裔器窜越 h齐江翅葡器章进岛洫。细龆潭省。男叫黪泔畔j蒸鎏鎏藩莉薜凿潞篷器藩耐夕卜,黔特哥爿回吩将高_已龄发=姗烘潴棚薄器鼋潞岛汩。商爿包l吩沽辩甜丹班汁慊潞将高忸高器慊高潞睹书刮痊丑薄墨蕊蕈。灯滞 :共国h齐墨一赳骓jc寸诗窜爵泳彳乍墨黜鸷蓝口斟黟-文丹齐叫温蚕墨藩温。 齐珠螭嗡。一燃蟠牺 ej洁。心除书卜泣卜皿 学禽劳抄弦声离月i船声毋 抖叫藉哥哥汁慊斟冰采昭,痊丑慊高黔椅器洁m。晋。垛薄 斟对采昭慊高黔泔琳茄赫画龇避彗耐妨斟冰嚣j沽础:i羞斟慊高黪游 冷爷慊高黔碍薄斟酉凿赤西。垛薄面丁延分卦慊高黔浔罨嗲碧烘磐冷哥 坍。习譬汛泣黼晋,按罢潞料时啪洒采甜慊高黟溥。国墨对对母皿草 垛藩*都豇窜封潭蔫斟慊高醇溥潘触望:哥圆锥高黟漪蛉浔洋赫_|幸蟛 冰菌薄西龄哥群蛉分泠笳瘠齐豇疑龄。 齐姝螭名;。薄黼 姐荨螭龄幽嚣卫沿。陪阿书卜洫卜 a b s t r a c t w i t ht h e w i d e s p r e a dp o p u l a r i z a t i o n o fi n t e r n e ta n d r a p i d d e v e l o p m e n to fb r o a d b a n dn e t w o r k ,t h et r a n d i t i o n a ld o w n l o a d i n gm o d e b a s e do nt h ec l i e n t s e r v e rl i m i t e st h ed o w n l o a d i n gs p e e da n dt h e e x p a n s i b i l i t yo fs y s t e m s c o n s i d e r i n gt h ep l o b l e m so f s l o wi n t e m e ts p e e d w h i c hc a u s e db yt r a d i t i o n a ln e t w o r k sc o n g e s t i o n s oo t h e rt e c h n o l o g i e s a r ep r o p o s e dt or e s o l v et h i sp r o b l e m b u tt h o s ec a n tb ew i d e l yu s e d b e c a u s eo ft h e i rd r a w b a c k s ,s oi ti sn e e d e dan e wd o w n l o a d i n gs c h e m et o s o l v et h ep r o b l e m 1 1 1 i st h e s i sp r o p o s e sa na c c e l e r a t e dd o w n l o a ds c h e m et h r o u g hs t u d y o nc d na n dp 2 ei tc o n b i n e sp 2 pa n dc d na n dt a k e sa d v a n t a g eo ft h e i r m e r i t st oc o n s t r u c tan e wr e s o u r c ed o w n l o a ds e r v i c es y s t e m i ts h o r t e n t h ed i s t a n c eb e t w e e nu s e r sa n dr e s o u r c e sb ys e n d i n gc e n t e rs e r v e r r e s o u r c e st oe d g eo fn e t w o r k m e a n w h i l e ,e d g ec a c h e rs e r v e ra n di t s u s e r s n e a r b ya u t o m a t i c a l l y c o n s t r u c tp 2 pd o w n l o a dn e t w o r k s o r e s o u r c e sb e c o m i n gm o r em a r g i n a l i z ea n dt h e nu s e r so b t a i nt h eh i g h d o w n l o a ds p e e d f i r s t l y , t h e f u n d a m e n t a l p r i n c i p l e o ft h en e t w o r kd o w n l o a d i n g t e c h n o l o g ya n di t sc u r r e n tr e s e a r c hs i t u a t i o na r ei n t r o d u c e di nt h et h e s i s , a n dt h e nt h ei m p o r t a n ts i g n i f i c a n c eo ft h ep r o j e c ti se x p a t i a t e d i tm a k e sa c o m p a r i s i o nb e t w e e np 2 pa n dc d nt e c h n o l o g y , a n dp u tf o r w a r da ni d e a w h i c hi sr e l a t e dt om e r g et h et w ot e c h n o l o g i e se f f i c i e n t l yt og e n e r a t e p e r f e c te f f e c t a n dt h e n ,an e wd o w n l o a d i n gs c h e m e i sp r o p o s e d s e c o n d l y , t h r o u g hu t i l i z i n gp 2 pc o m m u n i c a t i o nt e c h n o l o g y , t h e p r i n c i p l eo fb tt e c h n o l o g yp r o t o c o l i sa n a l y z e d a n dt h e nc o m b i n i n g w i t hc d n ,t h en e t w o r km o d eo ft h en e ws c h e m ei sp r o p o s e d ,a n dt h e f u n c t i o n a lm o d u l e so ft h ec a c h es e r v e ra r ed e s c r i b e di nd e t a i l f i n a l l y , t h em a i nc o n c e p t sa n dd e s i g n so ft h ed o w n l o a d i n gc l i e n ti n t h en e ws c h e m ea r ed e s c r i b e di nd e t a i l t h ec o m p o n e n t sa n dt h e i r m o d u l e sa r ed e s i g n e da n dr e a l i z e d ,a n dt h ed o w n l o a d i n gp e r f o r m a n c et e s t i sd o n ef o rt h en e ws y s t e m t h er e s u l to ft h et e s td e m o n s t r a t e st h es c h e m e i i n o to n l ye f f e c t i v e l ye n h a n c e sd o w n l o a ds p e e db u ta l s oc o n t r o l st h e n e t w o r kt r a f f i co fb a c k b o n en e t w o r ke f f e c t i v e l y i na d d i t i o n ,i nt e r m so f k i n d so fp r a t i c a lp r o b l e m s ,t h i sp a p e ri n t r o d u c e ss o m ei d e a sa n dm e a s u r e s o fi m p r o v e m e n ti nt h ef o r mo fd i s c u s s i o n ,f o re x a m p l e ,s u p p o r t i n gv o d a n dr e s e a r c h i n gn e t w o r ks e c u r i t y k e yw o r d sp 2 p , c d n ,e d g ec a c h e ,a c c e l e r a t e ,d o w n l o a d i n gc l i e n t 摘要 随着互联网的广泛普及和宽带网络的高速发展,传统的客户端 服务器的下载模式极大地限制了系统的下载速度和扩展性。针对传统 网络拥塞导致网络下载速度过慢等一系列问题,一些技术被提出来用 以解决这一问题,却因各自自身的缺点而无法广泛使用,这就迫切需 要一种新的下载方案来解决这个问题。 本文通过对c d n 内容分发网络技术和p 2 p 技术的研究,提出了 一种基于边缘缓存的下载加速方案。该方案将p 2 p 技术引入内容分发 网络中,利用其各自的优点,构建一个新型资源下载服务系统。将中 心服务器上的资源推送到网络边缘,缩短了用户和资源的距离。同时, 让边缘缓存服务器与邻近用户白发组建p 2 p 下载网络,将资源更加边 缘化。通过就近获取资源,提高下载速度。 首先介绍了网络下载技术的基本概念和研究现状,阐述了本课题 的课题来源及研究目标和意义。分析对比了p 2 p 技术和c d n 内容分 发网络技术,提出了将两种网络技术有效结合的观点和具体方法,给 出了一种新的下载加速方案。 其次基于p 2 p 通讯技术,对b i t t o r r e n t 协议及相关技术原理进行 了分析,同时结合c d n 网络提出新方案的网络模型,并详细分析了 缓存服务器各功能模块的具体实现。 最后提出新方案中下载客户端的主要概念与设计思路,设计并实 现了各组成部分及功能模块,同时对新系统的下载性能做了详细测 试。测试结果表明,新方案在提高下载速度的同时还能有效控制网络 流量,较好的满足了当前网络用户的需求。此外,针对各种具体问题, 本文还以讨论的形式介绍了关于今后系统设计的一些改进想法和措 施,比如增加对网络点播的支持和网络安全性能研究。 关键词p 2 p ,c d n ,边缘缓存,加速,下载客户端 目录 摘要i a b s t r a c t :i i 第一章绪论1 1 1 引言1 1 2 本课题的研究背景和主要任务1 1 2 1 传统的网络架构1 1 2 2 新兴网络技术3 1 2 3 课题的主要任务3 1 3 国内外研究现状4 1 3 1c d n 的发展4 1 3 2p 2 p 技术的发展5 1 3 3 常用下载软件简介6 1 4 论文的组织结构7 第二章b i t t o r r e n t 工作原理及协议分析一8 2 1b t 系统的原理分析8 2 2b i t t o r r e n t 协议的分析9 2 2 1 种子文件格式9 2 2 2 种子文件描述9 2 2 3 节点与t r a c k e r 的通信协议1 0 2 2 4 节点间的通讯协议1 2 2 3 本章小结1 5 第三章边缘缓存下载系统的构建1 6 3 1p 2 p 网络模型1 6 3 1 1 中心化拓扑1 6 3 1 2 全分布式非结构化拓扑1 7 3 1 3 半分布式拓扑j 18 3 1 4 全分布式结构化拓扑1 9 3 2c d n 网络模型2 0 3 2 1c d n 的网络结构2 0 3 2 2c d n 的关键技术及优点2 0 i v 3 2 3p 2 p 与c d n 的比较2 l 3 3p 2 p 与c d n 的融合2 2 3 4 边缘缓存服务器的设计2 4 3 4 1b t 下载模块2 4 3 4 2 任务管理模块2 5 3 4 3 网页服务模块2 6 3 4 4c a c h e r 选择算法2 8 3 5 本章小结2 9 第四章下载客户端的设计与实现。3 0 4 1 客户端整体框架的设计3 0 4 2s o c k e t 通讯模块31 4 3t r a c k e r 管理模块3 3 4 4b t 协议分析模块3 5 4 4 1s e e d 模块3 6 4 4 2p i e c e 模块3 9 4 4 3p e e r 模块4 0 4 5 性能测试4 3 4 6 本章小结4 4 第五章总结与展望4 5 5 1 论文及研究工作总结4 5 5 2 后续工作展望4 6 参考文献4 7 致 射5 2 攻读硕士学位期间主要成果5 3 v 硕十学位论文第一章绪论 1 1 引言 第一章绪论 一直以来,互联网都是以b ( b r o w s e r ) s ( s e r v e r ) 或c ( c l i e n t ) s ( s e r v e r ) 应用模 式为主,这样的网络结构使得信息只有通过服务器才能传递。信息要么是先集 中保存到服务器,再分别下发,要么是通过服务器上专用软件处理后才能在网络 上传送。这种集中式的网络方式带来了一系列的技术弊端:资源无法得到充分 利用,因特网最大的特点是全球互联,网络中的大多数资源不是集中在服务器上, 而是存在于用户之中;传统的c s 网络应用模式导致的服务器性能瓶颈及单点 失效等问题严重阻碍了其自身应用的发展。为了解决上述问题,p 2 p 对等网络模 式和c d n 内容分发网络逐渐走入人们的视野,成为研究的热点。 对等网络【2 】中的每个节点都拥有资源提供者和服务请求者的双重身份,整个 对等网络的服务能力是由网络节点所提供的共享资源量决定的。对等网络中的节 点数越多,提供的共享资源量越大,对等网络的服务能力也就越强。最早的无结 构对等网络g n u t e l l a 能在短短的六个月内,从最初的一千个节点迅速地增长到了 近五万个节点,形成巨大的服务能力,与对等网络的这种自我促进发展的特性是 密不可分的。 本文中介绍的基于边缘缓存的下载加速方案实际上是对p 2 p 技术的进一步 延伸,它将c d n 网络中的边缘缓存服务器资源和p 2 p 资源整合到一起,为用户 提供更好的下载服务,使下载速度更快、下载资源更丰富和下载稳定性更强。新 型下载系统可以充分利用用户之间的带宽资源,提供高质量的文件下载服务,当 下载用户数量较少时,可以依靠c d n 服务器的下载能力保证整个系统的服务质 量。 1 2 本课题的研究背景和主要任务 1 2 1 传统的网络架构 ( 1 ) c s 架构 c s ( c l i e n t s e r v e r ) 架构,即客户端和服务器结构。客户端程序负责将用户请 求提交给服务器,再将服务器返回的结果以特定形式显示给用户;服务器程序负 硕十学位论文 第一章绪论 责接收和处理客户端提出的服务请求,再将结果返回给客户端。它充分利用了客 户端和服务器的系统资源,合理分配任务,从而降低系统通讯开销。 该模式的优点是能充分发挥客户端的处理能力,客户端响应速度块,应用服 务器运行数据负荷较轻和数据的存储管理功能较为透明;缺点是只适用于局域 网,客户端需要安装专用客户端软件且软件升级维护成本高,操作系统的选择少。 此外,由于c s 体系结构不能为用户提供全面的开放环境,因此,需要开发多个 版本的应用软件来应对不同平台,高代价和低效率使其很难适应现实工作需要 了。 ( 2 ) b s 架构 b s ( b r o w s e r s e r v e r ) 架构,即浏览器和服务器结构。是与w e b 技术的发展密 不可分的一种网络结构模式,它有统一的客户端程序,将系统功能实现的核心部 分集中到服务器上,简化了系统的开发、维护和使用流程。浏览器通过w e bs e r v e r 同数据库进行数据交互,形成所谓的三层结构。这样就大大减轻了服务器的负担, 增加了系统的交互性,将客户端的维护成本和工作量降到了最低,并使系统的扩 展变得非常容易。 b s 架构的优点是易于维护和升级,成本低,操作系统可选性强。其缺点是 服务器负载重,一旦服务器崩溃,系统随即陷入瘫痪,后果严重,因此,需要大 量的备份数据库存储服务器。 ( 3 ) 代理服务器 代理服务器( p r o x y ) 是一种特殊类型的i n t e r n e t 服务器,它可以看成是网络中 的一个中转站。在一般情况下,我们使用网络浏览器直接去连接其他站点获取网 络信息时,先发送r e q u e s t 信号,然后再等待接收具体信息。如果使用代理服务 器,r e q u e s t 信号会先发送到代理服务器,由代理服务器取回所需信息再传送给 所请求的浏览器。 代理服务器的优点主要体现在三个方面:加快对网络的浏览速度,由于代 理服务器引入了缓存技术,用户访问过的内容会策略性的进行保存,有利于提高 访问速度;充当防火墙,对于使用代理服务器的局域网来说,从外部只能看到 代理服务器,而无法看到网内用户,所以代理服务器为局域网的安全起到了屏障 的作用,使网内用户对外隐匿了自己的i p 地址和个人隐私信息:突破自身i p 访问限制,提供更好的网络服务。 代理服务器在使用中的难点问题之一就是如何保证主服务器与代理服务器 的内容一致性,此外,代理服务器带来的网络安全及管理失效问题,也严重阻碍 了其自身的发展。 2 硕十学位论文 第一章绪论 1 2 2 新兴网络技术 ( 1 ) p 2 p 技术 p 2 p 技术是近年来计算机领域中的研究热点,它打破了传统的c s 模式对网 络资源的集中化管理和提供,释放了服务器的压力并降低了网络带宽负载。作为 一种分布式网络,p 2 p 网络的参与者共享他们所拥有的资源,这些资源能被网内 其它节点通过网络直接访问,使得下载资源更丰富,下载稳定性更强。然而,p 2 p 技术大肆兴起的同时,也带来了诸多问题:一是不经改进的p 2 p 业务会带来网 络流量洪流,使原本就不宽裕的网络空间变得更加拥堵不堪;二是p 2 p 技术缺 乏统一标准体系,应用模式多样化,各应用模式间互不兼容,严重阻碍了其自身 的发展应用。 ( 2 ) c d n 技术 c d n ( c o n t e n td e l i v e r yn e t w o r k ) ,即内容分发网络1 3 4 j ,它建立并覆盖在互联 网之上,由分布在不同区域的服务器群组成。其目的是通过在现有的i n t e m e t 中 增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用 户可以就近取得所需的内容,解决互联网网络拥挤的状况,提高用户访问网站的 响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等 原因所造成的用户访问网站响应速度慢的问题。同时,通过对内容和流量的有效 管理和控制,提高网络访问的稳定性,节省骨干网带宽资源。然而,c d n 网络 技术的核心仍然是基于c s 结构,而且与地域结合紧密,扩展成本高。在面对突 发流量问题时,其适应性和容错性还是存在一定缺陷。随着用户数量的不断增加, 网络规模的不断扩大,c d n 应用越来越难以满足网络用户的需求。 1 2 3 课题的主要任务 本课题来源于企业研发项目,为研发的i p v d 影视播放产品提供数据下载支 持,主要研究的内容是:从传统和新兴的网络下载技术出发,对各类下载技术优 缺点进行详细对比和分析后发现:基于传统下载技术的网络下载系统,在面对用 户群激增时,已经很难满足网络用户的各项需求了;新兴的网络下载技术在面对 可扩展性、内容版权、用户管理有效性、流量有序性等方面的问题时,又各有优 劣,难以独挡一面。 通过研究分析发现,在流量控制和内容管理方面,c d n 和p 2 p 技术可以互 补。如果能将用户之间的p 2 p 覆盖网络与c d n 相结合,组建基于c d n 的p 2 p 下载加速系统,那么流量控制、内容管理和下载稳定性等方面的问题就能迎刃而 解。而且,与纯p 2 p 下载服务提供者相比,新下载系统由于有了c d n 节点服务 器的配合,无论用户数是多是少,均可为他们提供高质量、高效率的文件下载服 务,保证系统的整体服务质量。而同单一的c d n 下载服务提供者相比,新系统 3 硕十学位论文 第一章绪论 由于融入了p 2 p 网络技术【5 ,6 1 ,在面对网络扩容和用户量激增等情况时,能有效 降低扩展成本。 本文正是沿着p 2 p 与c d n 技术融合这条思路展开,详细阐述了b i t t o r r e n t 工作原理及相关协议,从技术层面对边缘缓存下载系统和下载客户端的设计进行 了深入的研究分析,最终设计并实现了基于边缘缓存的下载加速方案。 1 3 国内外研究现状 1 3 1c d n 的发展 c d n 技术1 7 8 j 是近年来在美国首先兴起并迅速发展起来的一种解决互联网性 能不佳问题的有效技术手段。它是一种新型的网络构建方式,是经过特别优化的 网络覆盖层。总体来讲,c d n 包括分布式存储、负载均衡、网络请求重定向和 内容管理等组成要件。通过对用户的距离和服务器的负载情况的分析判断,为用 户提供高效可靠地内容服务。c d n 技术的核心是缓存服务器,位于网络边缘, 距离用户仅“一跳 之遥。采用c d n 技术,能给用户提供尽可能好的网络服务, 减轻服务器的压力,提升网站的性能和可扩展性,近几年有了快速的发展。 随着c d n 技术的不断成熟,电信运营商不断加大网络建设投入,各国际知 名厂商和企业用户纷纷进入市场。在流媒体服务、电子商务、网络游戏等各种互 联网业务的刺激与带动下,从2 0 0 4 年起,c d n 发展提速,2 0 0 5 年步入快速发 展阶段,2 0 0 7 年全球c d n 市场增长率为2 8 3 ,市场规模达到了2 5 亿美元, 2 0 0 8 年总体市场规模达到3 3 7 亿美元。在中国,自2 0 0 6 年开始,c d n 产业进 入了加速发展时期,一方面原有客户的流量和规模的扩展使得对c d n 服务的需 求在不断增加;另一方面,有大量新客户进入c d n 服务需求领域,给c d n 市 场的发展带来了新的动力。2 0 0 6 年,国内c d n 市场规模约为4 7 5 亿人民币, 相比2 0 0 5 年增长率为8 3 ,2 0 0 7 年约为8 亿人民币,2 0 0 8 年达到了1 5 亿人民 币。 c d n 技术的应用,使现有用户得到了很好的客户体验和价值提升,极大地 刺激了国内c d n 服务需求的快速增长,目前已经形成了以网通、电信、移动为 首的骨干网级c d n 服务平台,同时也促生了诸如帝联、网宿等企业级c d n 服 务平台。然而,值得我们注意的是,尽管近年来我国c d n 业务发展迅速,但目 前国内还只有5 的客户在使用c d n 服务,仅为美国的6 。这说明中国的c d n 应用率低,具有极其广阔的市场空间。 尽管国内c d n 市场未来几年将实现高速发展,但同时市场存在的一些问题 也会暴露出来。从目前发展状况来看,产业的整体发展存在以下问题:服务专 4 硕士学位论文 第一章绪论 业化有待提高,主要体现在服务种类单一,缺乏细化的服务内容,不利于形成产 业规模;运营商垄断和互联互通问题,中国移动、中国电信、中国联通和中国 网通四家独大且独立经营,造成运营商之问,南北之问的互联互通问题得不到解 决,阻碍了c d n 的推广;我国c d n 技术与国际先进国家还存在较大差距, 对c d n 在我国的发展也有一定影响。 1 3 2p 2 p 技术的发展 p 2 p 技术是一种网络新技术,依赖网络中参与者的计算能力和带宽,将各个 参与者直接连接起来交换数据或服务,是一种分布式的对等网络。其核心思想是 改变以服务器为中心的网络状态,弱化服务器作用,重返非中心化。在p 2 p 网 络中,每个节点地位相当,同时具有服务器和客户端双重性质,在获取其他节点 的资源和服务的同时也为其他节点提供资源和服务,从根本上解决了c s 模式的 应用瓶颈。p 2 p 技术p 1 2 j 具有如下几个方面的特点: 非中心化。网络中的资源分散在网内节点上,节点间的信息交互和服务的 提供都不需要服务器或其他中间件的参与,避免了应用瓶颈的出现; 可扩展性。p 2 p 网络是随着用户的不断加入而不断扩展的,用户越多,系 统资源就越丰富,服务能力就越强; 健壮性。p 2 p 网内节点的离开或加入是随机的,资源和服务是分散在网内 各个节点之中的,当网内部分节点失效时,对整个网络几乎没有影响。可以说 p 2 p 网络天生具有耐攻击性和高容错性的优点: 高性价比。p 2 p 架构可以有效利用互联网中闲散的大量普通节点进行资源 存储或计算,以低廉的成本换取高效计算和海量存储; 隐私保护。在p 2 p 网络中,所有参与者都可以充当信息中继转发器,更 好的保护了用户的隐私信息,大大提高了匿名通讯的灵活性和可靠性; 负载均衡。p 2 p 网络将原本c s 结构服务器所需的计算能力和存储能力, 分摊到了网内各个节点身上。由于资源分布在多个节点,所以能更好的保证网络 的均衡负载。 当互联网在中国刚刚起步时,p 2 p 便丌始了其正式发展的历史。1 9 9 7 年7 月,h o t l i n ec o m m u n i c a t i o n s 公司成立,研发了一种p 2 p 软件,通过它可以从别 人的计算机中直接下载所需文件。 1 9 9 8 年,美国东北波士顿大学的一年级新生、1 8 岁的肖恩范宁为了能够 解决他的室友的一个问题如何在网上找到音乐而编写的一个简单的程序,这 个程序能够搜索音乐文件并提供检索,把所有的音乐文件地址存放在一个集中的 服务器中,这样使用者就能够方便地过滤上百的地址而找到自己需要的m p 3 文 件。 5 硕十学位论文第一章绪论 1 9 9 9 年5 月,n a p s t e r 公司宣告成立。一个叫做n a p s t e r 的程序成为了人们 争相转告的“杀手程序它令无数散布在互联网上的音乐爱好者美梦成真, 无数人在一夜之内开始使用n a p s t e r 。在最高峰时n a p s t e r 网络有8 0 0 0 万的注册 用户,这是一个让其他所有网络望尘莫及的数字。这大概可以作为p 2 p 软件成 功进入人们生活的一个标志。也正是从这天起,p 2 p 开始了它曲折但极富生命力 的发展。 到了2 0 0 0 年,p 2 p 技术的发展可以说是同新月异了。到目前,基于p 2 p 技 术的各种应用软件比比皆是,人们也在不知不觉中感受到了p 2 p 作为高科技发 展载体的快乐。平常我们使用的q q 、m s n 就不提了,其他软件更是铺天盖地, 让人目不暇接。 1 3 3 常用下载软件简介 ( 1 ) 网际快车( f l a s h g e t ) 它是基于c s 架构的网络资源下载器,其关键技术是文件分割,通过同时下 载同一文件的各个部分来提高下载速度。相比之前单文件整体下载模式,这种下 载方式最多可以提高近5 倍的速度。此外,它拥有良好的文件管理能力,可以创 建多个目录将文件分类保存。刚面市时,备受用户青睐。然而,受c s 结构的瓶 颈限制,当服务器带宽压力过大时,将会陷入下载速度过慢的境况,严重时将导 致无法下载。 ( 2 ) b t ( b i t t o r r e n t ) 它采用p 2 p 原理,网内参与者同时拥有客户机和服务器双重性质。使用它 下载资源时,会利用闲置带宽将已下载部分在网内共享,上传给网内其他所需节 点。因此,加入网内下载客户越多,可共享的资源就越丰富,下载速度就越快。 正是有了这些特点,使得b t 迅速成为下载工具的首选。然而,监督失效及流量 控制的无序性,导致网络流量剧增,成为了p 2 p 技术的重大弊端,严重阻碍了 其自身的发展。 ( 3 ) 迅雷( t h u n d e o 它通过部署多个服务器镜像,利用特定搜索引擎寻找资源,实现多源下载。 一旦所下载的文件存在于镜像服务器中,则优先从镜像中下载,减轻中心资源服 务器的压力。当镜像服务器中没有所需文件时,再转到中心服务器进行下载,同 时向网内其他节点发送请求,获取资源。方面保证了网内节点的正常下载环境, 另一方面充分利用了网内空闲带宽和资源,有效降低了中心服务器的出入口带宽 资源丌销。但是,在保证节点下载速度和稳定性的同时,也会出现链接失效的问 题,导致资源无法下载,同时还增加了网内节点的负担。 6 硕十学位论文第一章绪论 1 4 论文的组织结构 本文分析了下载技术的研究现状和当前进展,在分析对比p 2 p 技术和c d n 内容分发网络技术基础上,提出了将两种网络技术有效结合的观点和具体方法, 并设计与实现了一种新的基于边缘缓存的下载加速方案。全文分为5 章,组织结 构如下: 第一章绪论。介绍了常用的网络结构模型,详细分析了p 2 p 与c d n 技术的 发展现状以及面临的问题,说明了研究课题的背景和意义,并简要叙述了本课题 的主要研究任务。 第二章b i t t o r r r e n t 工作原理及协议分析。包括工作原理的分析,种子文件格 式,节点与服务器及节点与节点问的通信协议。 第三章边缘缓存下载系统的构建。首先详细介绍p 2 p 和c d n 网络架构的特 点,提出并设计了新系统的网络结构模型,随后从系统层面对边缘缓存系统的实 现原理和各主要功能模块进行了详细的阐述。 第四章下载客户端的设计与实现。从系统模块结构层面入手,详细介绍了下 载客户端的各个模块和设计要点,结合软件发的具体开发细节,实现了一个多任 务多线程的下载客户端及其相关操作,并对系统性能做了简单测试。 第五章总结与展望。对研究工作的总结和对进一步的工作展望。 7 硕十学位论文第二章b i t t o r r e n t 1 作原理及协议分析 第二章b it t o rr e n t 工作原理及协议分析 2 1b t 系统的原理分析 b i t t o r r e n t 系统【l3 j 是p 2 p 技术的具体应用,通过利用网内节点的带宽资源传 输和共享网络资源。b i t t o r e n t 协议是一种分发文件的协议1 1 4 , 1 5 j ,通过u r l 来识 别内容,并且可以和w | e b 进行无缝交互。它基于h t t p 协议或u d p 协议,它的 优势在于,如果有多个下载者并发的下载同一个文件,那么,每个下载者也同时 为其他下载者上传文件,这样,文件源可以支持大量的用户进行下载,由于大量 的负载被均衡到了整个系统中,所以对单个节点而言只带来了少量的负载增长。 b i t t o r r e n t 系统原理如图2 1 所示。 图2 1b i t t o r r e n t 系统原理图 8 硕十学位论文第一二章b i t t o r r e n tl :作原理及协议分析 2 2b i t t o r r e n t 协议的分析 2 2 1 种子文件格式 b i t t o r r e n t 协议主要定义了种子文件格式和通讯协议【1 6 , 1 7 1 两大部分。协议中 主要采用b e n c o d i n g 编解码标准,由自带的数据结构,列表和字典三个标准组成, 其编解码对象可以是整数、字符串、列表或者字典,编码规则如下所示: 字符串。表示形式:字符串长度( 十进制) + 冒号+ 字符串,如:5 :h e l l o 就相 当于h e l l o ; 整型数据。表示形式:i + 十进制数+ e ,如:i 5 e 就相当于5 ,i 5 e 就是5 , i 一0 e 无效,0 由i o e 表示; 列表。表示形式:l + 已编码的字段+ 一e ,如1 5 :h e l l o :5 w o r l d e 就等于 【h e l l o , w o r l d 】; 字典。表示形式:一d + 关键值和对应值的列表+ e ,如: d 3 :c o w 4 :m o o n 5 :h e l l 0 5 :w o r l d e 就是 c o w :m o o n :h e l l o :w o r l d ) , 而 d 5 :h e l l o l l :a l :b e e 相当于 h e l l o :【a ,b 】) 。 2 2 2 种子文件描述 种子文件中包含t r a c k e r 地址和文件划分等信息,是客户端完成下载工作的 重要依据。用户利用b i t t o r r e n t 客户端程序打开种子文件,根据罩面的t r a c k e r 地址信息连接t r a c k e r 获取文件源信息列表,然后与列表中的节点通讯,完成目 标文件的下载。种子文件是由文件发布者制作,与对应的资源文件放在同一u r l 地址中,里面的内容以字典形式表示。其中有一些固定的字段,如表2 1 所示。 表2 1 种子文件主要字段 从表2 1 中可以看出,种子文件罩只有a n n o u n c e 和i n f o 两个必要字段,其 他字段信息都可以省略。i n f o 字段为字典编码形式,对应的是文件分割及其他信 息,针对下载文件是单文件或多文件的具体情况,其字段信息又略有不同。单文 件种子文件的i n f o 字段格式如表2 2 所示。 9 硕+ 学位论文第二章b i t t o r r e n tl :作原理及协议分析 表2 2 单一文件i n f o 字段格式 多文件种子文件的i n f o 字段格式如表2 3 所示。 表2 - 3 目录文件i n f o 字段格式 其中n a m e 字段表示保存所有下载文件的目录名。f i l e s 字段是一个列表,其 元素都是以字典形式编码,表示多文件下载中的单个文件,其字段信息如表2 - 4 不。 表2 4f i l e s 字段格式 其中,p a t h 字段记录了目标文件的存储路径。比如,目标文件是名为d m o v i e 的文件夹,包含有多个文件,假设其中某个文件的存储路径为 “d i r v d i r t m o v i e t x t ,那么所对应的p a t h 字段内容则为“d i r l ”,“d i r t ,“m o v i e t x t ”。 2 2 3 节点与t r a c k e r 的通信协议 当一个新节点刚加入到p 2 p 网络中时,第一个工作就是向t r a c k e r 服务器请 求拥有所需资源的节点i p 地址列表。一般来讲,表中返回6 0 个随机的节点地址, 在获取该地址列表后,新节点就丌始与表内节点建立连接。同样,其他节点也会 通过t r a c k e r 服务器获知新节点的i p 地址,搜索所需资源【1 8 】。在稳定状态下,节 点会每隔一定时间向t r a c k e r 服务器报告自身状态,若离开p 2 p 网络时,也会将 相关信息发送给t r a c k e r 服务器。当节点地址列表中活跃的p e e r 数目少于某个门 限值时,对应节点就要重新请求一份节点地址列表,以保证下载性能。在 b i t t o r r e n t 中,p e e r 和t r a c k e r 服务器之间采用h t t p h t t p s 或u d p 协议进行通 讯。 l o 硕十学位论文 第二章b i t t o r r e n ti :作原理及协议分析 ( 1 ) 基于h r r p 的通讯协议 p e e r 首先发送链接请求包给t r a c k e r 服务器,然后等待t r a c k e r 服务器返回 回应包。即发送r e q u e s t 数据包,等待t r a c k e r 返回r e s p o n s e 数据包,r e q u e s t 数据包中所包含的字段格式如图2 2 所示。 图2 - 2 r e q u e s t 数据包 r e q u e s t 数据包中的字段信息说明如下: i n f o h a s h :h a s h 信息,2 0 b y t e ,将对应的i n f o 信息通过s h a 算法计算后获 得; p e e r i d :节点标识信息,2 0 b y t e ,由客户端程序计算产生,具有唯一性; p o r t :节点的监听端口,一般在6 8 8 1 6 8 8 9 之问选值; i p :节点i p 地址信息; u p l o a d e d :数据上传总量( 单位:b y t e ) ; d o w n l o a d e d :数据上下载总量( 单位:b y t e ) ; l e f t :剩余下载量( 单位:b y t e ) ; c o m p a c t :表明节点是否支持紧凑的r e s p o n s e 方式; n o _ p e e r _ i d :有两种取值,l :表示返回的地址信息列表中不包含节点的i d 信息,0 :包含节点i d : e v e n t :根据不同情况分别取s t a r t e d ,c o m p l e t e d ,s t o p p e d 三种不同的值,在 发送首个r e q u e s t 数据包时必须设置为s t a r t e d ,p e e r 退出则设为s t o p p e d ,完成 下载时就设为c o m p l e t e d : p e e r n u r n :表示所请求的节点数,默认值为6 0 ,可以为0 ; t r a c k e r i d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论