(计算机软件与理论专业论文)基于p2p网络的流媒体关键技术研究.pdf_第1页
(计算机软件与理论专业论文)基于p2p网络的流媒体关键技术研究.pdf_第2页
(计算机软件与理论专业论文)基于p2p网络的流媒体关键技术研究.pdf_第3页
(计算机软件与理论专业论文)基于p2p网络的流媒体关键技术研究.pdf_第4页
(计算机软件与理论专业论文)基于p2p网络的流媒体关键技术研究.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(计算机软件与理论专业论文)基于p2p网络的流媒体关键技术研究.pdf.pdf 免费下载

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

文档简介

哈尔滨t 稗大学硕+ 学位论文 摘要 近些年来,随着网络环境的不断改善,流媒体应用得到了飞速发展。从基 于代理服务器的流媒体组播方案到现在比较流行的基于p 2 p 网络的流媒体组播 方案,其发展速度十分迅猛。关于流媒体的许多关键技术也得到了长足的发展。 如流媒体的编码技术,数据缓存技术和数据分发技术。其中,基于p 2 p 网络的 流媒体数据分发策略更是当前研究的热点。根据数据分发的拓扑结构可以将其 划分为以树或多树结构为主和以网状结构为主的两类。但是,树结构是高度易 损的,其适用于稳定性高且规模小的环境。网状结构虽然比较稳定,但其控制 开销巨大,对网络造成的负载大。 本文将设计一种新的流媒体数据分发策略树网结合的流媒体数据分发 策略( t d s ) 。该策略通过域内根节点( s u b r o o t ) 有效的将树结构与网结构组 织在一起,充分发挥两种结构各自的特点。t d s 可以根据网络情况的变化,动 态的调整数据传输结构。t d s 充分利用网络资源,分散了源节点控制开销,有 效的降低了系统控制开销,优化了数据传输路径,提高了服务质量。 另外,本文提出的新策略在o p n e t 仿真工具上进行了模拟实验。本文将详 细的介绍如何在o p n e t 仿真工具上对该策略进行模拟实验建模,如何构建 p e e r c a s t ,d o n e t 和t d s 系统的进程模型。最后,通过实验结果验证了t d s 系 统的有效性。 关键词:对等网络;流;树结构;网结构 哈尔滨t 程大学硕十学位论文 a b s t r a c t i nr e c e n ty e a r s ,a l o n gw i t ht h en e t w o r ke n v i r o n m e n tp r o g r e s s i v ei m p r o v e m e n t , t h el i v es t r e a m i n ga p p l i c a t i o nh a so b t a i n e dr a p i dd e v e l o p m e n t f r o mt h et r a d i t i o n a l m u l t i c a s tp o l i c yb a s e do np r o x ys e r v e rt ot h ep r e s e n tq u i t ep o p u l a rp o l i c yb a s e do n p 2 pn e t w o r ki t sd e v e l o p m e n ts p e e di s e x t r e m e l ys w i f t m e a n w h i l em a n yk e y t e c h n o l o g i e so fl i v es t r e a m i n ga l s oh a v em a d ec o n s i d e r a b l ep r o g r e s s ,s u c ha sc o d i n g t e c h n o l o g y ,b u f f e r i n gt e c h n o l o g ya n dt h ed a t ad i s t r i b u t i o nt e c h n o l o g y a m o n gt h e m , t h ed a t ad i s t r i b u t i o np o l i c yb a s e do nt h ep 2 pn e t w o r ki st h ec u r r e n th o ts p o t b a s e d o nt h et o p o l o g yo fd i s t r i b u t i o ni tc a nb ed i v i d e di n t ot w om a i nt y p e s ,t h et r e eo r m u l t i - t r e es t r u c t u r ea n dt h em e s hs t r u c t u r e b u tt h et r e es t r u c t u r ei sh i g h l yv u l n e r a b l e i ti ss u i t a b l ef o rt h ee n v i r o n m e n to fh i 【g hs t a b i l i t ya n ds m a l ls c a l e a l t h o u g hm e s h s t r u c t u r ei sq u i t es t a b l e ,i t sc o n t r o lc o s t sa r eh u g ea n di tc a nm a k eh u g eb u r d e no nt h e n e t w o r k t h i sd i s s e r t a t i o np r e s e n t st h ed e s i g no fan o v e lp 2 pl i v es t r e a m i n gp o l i c y , t r e e - m e s hb a s e dp 2 ps t r e a m i n gd a t ad i s t r i b u t i o ns c h e m e ( t d s ) t h i ss t r a t e g y o r g a n i z e sb o t ht h et r e es t r u c t u r ea n dt h em e s ht o g e t h e rt h r o u g hs u b _ r o o t ,a n dc a l l s t h e i rr e s p e c t i v ea d v a n t a g e si n t of u l lp a y t d sc a na d j u s td a t at r a n s m i s s i o ns t r u c t u r e d y n a m i c a l l ya c c o r d i n gt ot h en e t w o r kc h a n g e i tc a n :m a k et h eb e s to fn e t w o r k r e s o u r c e s ,d i s p e r s et h es o u r c en o d ec o n t r o lc o s t s ,r e d u c et h es y s t e m sc o n t r o lc o s t s , o p t i m i z et h ed a t at r a n s m i s s i o ns t r u c t u r ea n di m p r o v et h eq u a l i t yo f s e r v i c e m o r e o v e r ,t h es i m u l a t i o ne x p e r i m e n to ft h i sn e ws t r a t e g yh a sb e e nc a r r y i n go u t o nt h eo p n e ts i m u l a t i o nt 0 0 1 t 1 1 i sd i s s e r t a t i o nw i l li n t r o d u c eh o wt oc r e a t et h e e n v i r o n m e n to fs i m u l a t i o na n dh o wt oc o n s t r u c tt h ep r o c e s sm o d e lo fp e e r c a s t , d o n e ta n dt h et d ss y s t e m f i n a l l y ,i tc a nc o n f i r mt h et d ss y s t e mv a l i d i t y t h r o u g ht h ee x p e r i m e n t a lr e s u l t k e yw o r d s :p 2 p ;s t r e a m i n g ;t r e e - b a s e ds t r u c t u r e ;m e s h - b a s e ds t r u c t u r e 哈尔滨工程大学 学位论文原创性声明 本人郑重声明:本论文的所有工作,是在导师的指导下,由作 者本人独立完成的。有关观点、方法、数据和文献的引用己在文中 指出,并与参考文献相对应。除文中己注明引用的内容外,本论文 不包含任何其他个人或集体己经公开发表的作品成果。对本文的研 究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人 完全意识到本声明的法律结果由本人承担。 作者( 签字) :勒娘马 日期: 乙9 秒7 年弓月侈日 哈尔滨工程大学 学位论文授权使用声明 本人完全了解学校保护知识产权的有关规定,即研究生在校 攻读学位期间论文工作的知识产权属于哈尔滨工程大学。哈尔滨 工程大学有权保留并向国家有关部门或机构送交论文的复印件。 本人允许哈尔滨工程大学将论文的部分或全部内容编入有关数据 库进行检索,可采用影印、缩印或扫描等复制手段保存和汇编本 学位论文,可以公布论文的全部内容。同时本人保证毕业后结合 学位论文研究课题再撰写的论文一律注明作者第一署名单位为哈 尔滨工程大学。涉密学位论文待解密后适用本声明。 本论文( 口在授予学位后即可口在授予学位1 2 个月后 口 解密后) 由哈尔滨工程大学送交有关部门进行保存、汇编等。 作者( 签字) :靴鹏导师( 签字) :裂毛乙弦 日期:加口c 7 年弓月侈日加d 7 年乡月j 乡日 哈尔滨t 稗大学硕十学伊论文 第1 章绪论 1 1流媒体技术发展现状 流媒体是指采用流式传输方式在网络环境播放的媒体格式。流媒体应用的 过程( 如图1 1 ) 是指发送源用一个视频传送服务器把节目进行压缩编码,然 后分散到各个数据包中传送到网络上。用户通过解压设备对这些数据进行解压 后,还原原始媒体数据进行播放的过程。这个过程产生的一系列相关数据包称 为“流”。在采用流式传输方式的系统中,用户不必像采用下载方式那样等到 整个文件全部下载完毕,而是只需经过几秒或几十秒的启动延时即可在用户端 进行回放。此时多媒体文件的剩余部分将在后台服务器继续下载。 磊萧 i7 、丽了、) 理 么 爻件拆分 流媒体文件源 二二二二二 厂一j数据:黍维l j 啾粥_ q ! 甜 j 1 2 一 翼墨 三歹客广,端缓存;环境卜 1 二“1 “ 协议刳装打包jf坍议解剖 、 图1 1 流媒体系统图 流媒体应用主要包括三方面的技术:( 1 ) 流媒体的编码技术;( 2 ) 流媒 体的缓存技术;( 3 ) 流媒体的数据分发技术。 ( 1 ) 流媒体编码技术 编码技术是流媒体应用的初始部分。其主要分为:自适应编码技术 ( a d a p t i v ee n c o d i n g ) 、分层编码技术l c ( l a y e r e dc o d i n g ) 和多描述编码技 术m d c ( m u l t i p l ed e s c r i p t i o nc o d i n g ) 。 ( a ) 自适应编码的主要思想是根据网络的实时状况调整编码器的参数生 成适当的视频流”1 。由于是重新编码,自适应编码有很大的灵活性,允许通过 多种方式实现多种码率。由于自适应编码计算复杂度非常高,所以对视频点播 类应用几乎无法使用,一般只在特定的多播环境下才可以使用“,。 哈尔滨t 程大学硕十学位论文 ( b ) 分层编码:分层编码是把原始视频编码成多层码流,其中一个为基 本层,可以独立解码;其它层码流可以是平行的,也可以是层次型的,但都必 须和基本层结合才能得到更高质量的解码流”1 。这些基本层可以从三个方面增 强视频质量,主要有时域扩展性分层、空间扩展性分层和质量扩展性分层”。 通常情况下,分层编码的每一个分层要么完全传输,要么完全丢弃,否则由于 编码端和解码端预测图像的不一致,解码视频会出现漂移误差。由于分层编码 有较好的可伸缩性,同时也有良好的编码效率,因此得到了广泛研究”。 ( c ) 多描述符编码起源于2 0 世纪7 0 年代,是由美国贝尔实验室在研究 电话网络中的语言编码问题时提出的。多描述符编码是把原始视频编码成多个 独立的视频流,每个视频压缩流都能够单独解码,并且多个视频流合在一起能 够得到更高质量的解码视频。如果某些信道的数据包出错、丢失或因阻塞延迟 而不能正常实时地到达解码端,解码器可以从其它能够正确接收到的描述中恢 复出视觉上可接受的重建图像:如果所有信道的码流都可以被接收到,则可重 建出高质量的图像,从而使图像传输的鲁棒性得到很大的改善1 。 多描述编码的主要优点有两个”1 : 能够适应端对端不同的网络带宽。 提高视频数据传输的健壮性。 多描述符编码的数据可以放在不同的服务器上,如果用户码率足够大,它 可以从多个服务器得到多描述编码的多个不同的码流,然后合起来解码得到更 高质量的视频。同时多描述符编码还可以绕过端到端直接传输时的带宽限制, 有利于多服务器同时对同一个客户进行服务。许多系统如b u l l e t “、 s p li t s t r e 锄n “、c o o p n e t n 一等使用多描述编码算法来提高系统的鲁棒性及节点负 载的均衡性。多描述符编码的缺陷是冗余度一般比较大,特别是对高质量视频。 这样,降低了数据传输的效率。另一方面,其算法复杂度高,对实际应用带来 了困难。多描述编码的研究还有很大的发展空间。随着研究的逐渐深入,可以 不断拓展多描述编码的应用范围,更好地发挥出多描述编码的良好性能。 ( 2 ) 流媒体缓存技术 流式传输的实现需要缓存。因为i n t e r n e t 以包传输为基础进行异步传输, 对一个实时a v 源或存储的a v 文件,在传输中它们要被分解为许多包。由于 网络是动态变化的,各个包选择的路由可能不尽相同,故到达客户端的时间延 哈尔滚i f 挥大学碛十学传论文 迟也就不等,甚至先发的数据包还有叮能后到。为此,要使用缓存系统来弥补 延迟和抖动产生的影响,并保证数据包的顺序正确,使媒体数据能连续输出, 不会因为网络拥塞而便播放出现停顿。 ( a ) 缓存区的设计大概可以分为以下三种方式“”: 固定大小缓存 固定大小缓存的基本原理是:当一个请求到达时,在内存中分配块事先 预定好长度的缓冲区来缓存数据,期望为后续酌请求提供服务。匿定大小缓存 技术e l j 于缓冲区的大小是固定的,从而可能造成内存资源的浪费。 闻隔缓存 间隔缓存的基本原理是:以两个相邻的请求定义为一个请求对,根据请求 对之间的时间差来动态调整缓冲区的大小,从而提高内存的利用率。间隔缓存 技术尽管考虑了用户的访问模式,并且做到了动态调整缓冲区的大小,但是仍 然没有考虑到不同缓冲区之间的共享。 共享缓冲区缓存 共享缓冲区缓存在综合考虑前两种技术的优点和不足之后提出了一种提 高已有缓冲区利用率的方法。它定义了缓冲区的三种状态,帮构造状态、运行 状态和空闲状态,并且实现了缓冲区大小的动态调整,同时给出了缓冲区共享 的公式化的方法。 在基于p 2 p 流媒体传输系统中,常采用的是第一种缓存策略。但对于缓冲 区的大小设置有一定的要求。若缓冲区设置的过大,会造成内存资源的浪费; 若设置豹太小,会造成整个系统缓存效率的降低。 ( b ) 在基于p 2 p 流媒体传输系统中,常采用的初始化缓存策略有”弋 深度缓冲 浅缓冲 适度缓冲 开启延迟( s t a r t u pl a t e n c y ) 是指用户从请求播放到系统开始回放的这 段延迟。在深度缓冲策略中,用户的开启延迟较大,等待的时间会较长。但接 放的连续性好。浅缓冲的开启延迟小,但由于缓存间隔短,会影响后继数据的 获取,降低服务质量。适度缓存对前两种策略进行了综合,在降低开启延迟的 同时兼顾播放质量。 哈尔滨丁挥丈学硕士学位论文 ( c ) 在撼于p 2 p 流媒体传输系统中,缓存替换算法常采用的策略有1 : 贪心策略( g r e e d ys t r a t e g y ) 在贪心策略中,用户总是优先请求缓存区中离当前播放时间( p l a y b a c k t i m e ) 最近的来获得的流媒体数据包。这种策略的优点是可以使用户及时获得 将要播放的数据,傈证播敖效槊的连续髋。但是,从全局考虑,这种策略存在 着严重的不足。如果所商的用户均优先请求离自己当前播放时间最近的数据, 会使请求方过于集中蔼数据掬有方编少,这样会造成数据流逶受阻,增热包获 得的延迟进而会影响播放质量。 稀商优先策略( r a r e s tf i r s ts t r a t e g y ) 在稀有优先策略中,用户总是优先请求拥有者最少的数据包。这种策略的 优点是用户可以按所处的网络情况进 亍动态的数据包请求,并显优先请求获取 比较困难的数据包,可以保证数据获得的完整性。然而,在当前网络中拥有者 比较少的数据包通常离当前播放时间比较远,流行程度比较低。这样,该策略 与贪心策臻正好稆反。但它髑新蕊箍嚣 蠢惩褶葡,郎请求的过于集中,并且还 会增加临近播放时间数据包的获取延迟,影响播放质量。 混合簧臻( m i x e ds t a t e g y ) 混合策略综合了贪心策略与稀有优先策略的优点。在混合策略中,通常将 缓存区划分成两个区域,在离播放时闻近的区域中采矮稀有忧先策略,在另 个区域中采用贪,心策略。这样,可以在当前拥有者较多的数据包序列中,优先 请求最稳有的,丽在数据包拥有糟较少的数据包序列中,优先请求离播放时闻 最近的数据包。萁优点是分散了数据请求的同时兼顾了播放旗量。但其面樯两 个重要问题:一是如何进行两个区域大小的划分,只有恰当的划分才能得到良 好豹效采;勇一个是控铡开销问题,因为处理过程会增热系统酶控制开镑。 ( 3 ) 流媒体数据分发技术 流媒体豹数据分发策略主要可以分为树结椽、多挺结构期网结构三耩。鹭 前,比较流行的基于p 2 p 网络的流媒体数据分发策略是以网结构为基础的。对 分发策略的磷究是一个热点也是本文研究的重点越题。在籍嚣麓章节中会详缨 的对箕进行介绍“蜘。 4 哈尔滨1 :稗大学硕十学位论文 1 2 课题研究背景 国际上对于网络流媒体的专门研究是从9 0 年代开始的,根据实时性要求 和视频传输的方向基本上可以分为三大类研究:一类是实时交互应用r t i ( r e a l t i m ei n t e r a c t i v e ) ,例如多人网络视频游戏,是双向交互、低延时的 应用;第二类是实时流媒体传输r t s ( r e a l - t i m es t r e a m in g ) ,例如视频会议 系统、实况转播系统,是单向的、低延时的系统;第三类是非实时流媒体传输 n r t s ( n o n er e a l t i m es t r e a m i n g ) ,例如视频点播,是单向的,传输开始阶 段播放允许一段时间的延迟,播放开始后视频数据需要连续不断地满足播放的 要求。本文主要是针对第三类应用,即非实时流媒体传输进行分析和研究,当 然相关的研究也有助于对其它两类流媒体的研究和应用。所涉及的技术包括了 流媒体编码技术,数据缓存技术和数据分发技术。同时这些技术也互相影响, 相互结合,共同完成流媒体传输过程m ,。 在数据分发策略中,i p 多播也许是最有效的途径;然而它的扩展却因为许 多现实上的和政治上的因素而受到限制,例如缺乏动力去安装具有多播能力的 路由来承担多播任务。因此研究者们开始关注应用层上的解决方案,通过使参 与者们合作来建立一个在单播通道之上的重叠网络来实现所谓的多播m ,。作为 i p 多播的替代方案,开始时许多网络构建算法大多使用树状结构来实现数据传 递。但由于用户结点会轻易地离开或崩溃,所以树结构是高度易损的,其应用 规模十分有限。同时虽然像森林和网状这样的复杂结构能部分地解决问题,但 其本身的实现却过于复杂,节点控制开销巨大,所以经常会给网络带来很大的 负载。可见,若能有效的综合两种各自的优点将会大大提高系统的性能。 1 3 主要研究工作及内容安排 本文的组织结构如下: 第1 章是绪论。主要介绍流媒体技术发展现状以及研究的课题背景。 第2 章是流媒体的数据分发策略。该章对流媒体的数据分发技术进行了详 细的介绍。 哈尔滨t 稃大学硕十学何论文 第3 章是一种改进的流媒体数据分发策略。主要介绍了一种新的流媒体数 据分发策略。它结合了树状结构与网状结构各自的优点,提高了系统的性能, 是本文的核心内容。 第4 章是实验环境的搭建。主要介绍了如何在仿真工具o p n e t 上搭建模拟 实验环境,证明本文在上一章节所提想法的正确性和可行性。 第5 章是实验过程和结果分析。这一章对模拟实验的过程进行详细的实例 描述,充分阐述改进系统在实验环境的运行过程。最后,通过模拟实验的运行 结果,分析改进系统的性能。 6 哙尔滨了:鬻大学蟊萋+ 学伊论文 第2 章流媒体的数据分发策略 霉前,基于p 2 p 网络豹流媒体数据分发策略大概可以划分为3 类”鳓:( 1 ) 以树结构为基础;( 2 ) 以多树结构为基础;( 3 ) 以网状结构为基础。 2 1 1 单组播树结构 基于树的架构是由流媒体的多播演化而来的,也就是播放同一频道的节点 组成一棵树,提供广播的源节点为这棵树的根。每个节点可以为下层几个节点 提供数据。在初期的视频流媒体分发方案中,多采用基予组播树的拓扑结构, 其典型代表如n i c e 啪、z i g z a g ”、p e e r c a s t 恤。等。但这种架构仍然会对上层的结 点造成太大的负担,而且在节点动态拥入和退出的情况下树不易维护。另外还 存在传输延迟问题,所以树的高度不能太大。基于单组播树的数据分发方法研 究的主要问题是如何设计组播树构造方法和组播协议,以达到特定的性能指标 要求。此外还包括如何增强系统的容错性,即如何减少节点离开或失效行为对 其它节点的影响。 图2 1 树状结构数据传输拓扑图 在树结构的分发策略中,底数据发布源( s ) 组织一个树结构的逻辑覆盏 网络,数据由s 开始依次向下传输,如图2 1 。p e e r c a s t 为最早提出的一种组 播树构造协议:新节点加入时从源服务器( 霹根节点) 出发沿缰撵树进行搜索, 哈尔滨:1 :稃大学硕十学位论文 直到发现某个非饱和节点为止,并让新节点作为该节点的子节点加入系统;当 节点主动离开系统时,首先向其父节点进行注销并向其每个子节点发送一条重 定向消息,以便让它们直接加入离开节点的父节点或从根节点重新开始加入搜 索过程;对于节点的失效:在所有父子节点之间维持心跳功能,如果在某段时 间内收不到父节点的心跳信号,就认为父节点已经失效并重新向根节点发起加 入搜索过程。其存在的问题是在父节点退出或失效时,将暂时中断子树上的节 点数据传输,并且由于组播树的维护代价较高,导致子孙节点服务被中断的时 间较长旧,。 n i c e 是一种分层结构的分布式自适应组播树构造协议,它把参与活动的节 点划分为多个簇,每个簇的大小为k ,k 作为系统参数指定。从最底层位置开始, 把位于该层次的节点划分为多个簇,从每个簇中挑选出一簇首节点,该节点自动 成为上一层簇的簇成员,依此类推形成多个层次的簇;源服务器节点位于分层簇 的最高层。在数据分发过程中,源服务器是整个组播树的根节点,系统中的每个 p e e r 节点均直接从其簇首节点获取数据。新节点在加入时,从根节点开始搜索, 直到在最底层的某个簇中找到合适位置;节点在离开或失效时,仅需要经过簇内 协商即可为其子节点找到新的父节点;当节点的加入离开行为使得簇的大小不在 k 范围时,需要进行簇的拆分或合并。n i c e 协议中对组播树的维护和管理是分布 自治的,每个节点只需要维护其父子节点以及同一簇内其它节点的状态信息;当 父节点离开或失效时子节点不需要与根节点进行联系,仅通过簇内协商即可重新 加入系统。n i c e 的缺陷是层次越高的节点,其负载越重。对于最高层次的节点 而言,当系统规模很大时,它可能成为系统的性能瓶颈。 由于n i c e 协议对组播树的维护会导致负载不均衡问题,位于树根上的节 点会承受更高的负载压力,于是出现了新的分层组播构造协议z i g z a g ,其与 n i c e 协议的主要区别如下:通过定义每个簇下属节点和外部下属节点,树中每 个节点只向萁外部下属节点转发数据。簇的维护成本低并独立于节点总数,将 由节点离开或失效而造成的组播树的修复工作限制在局部区域,其控制协议开 销低,新节点可快速加入组播树。 为减少组播树中节点离开或失效时子节点服务被中断的时间,提出了一种基 于对组播树进行主动重建的中断恢复方案,它让组播树中的每个中间节点预先为 每个子节点计算出将来的父节点,以便当节点退出系统时,服务被中断的子节点 哈尔滨t 稃大学硕士学伊论文 就可以直接与其将来的父节点进行联系,从而能够快速地重新加入系统。 对于如何为每个子节点预先计算将来父节点的问题,要考虑每个节点可带 子节点个数( 度) 的约束,把上述问题归结为带度约束的生成树问题,并提出 了相应的算法。 为减少节点离开失效或链路故障对p e e r 节点播放质量的影响,b a n e r j e e 等 提出了一种联合随机转发( r a n d o m i z e df o r w a r d i n g ) 技术及n a r 触发 ( t r i g g e r e d n a z ) 机制的流媒体直播数据分发系统s p a s ,在s r m s 系统中,每 个节点除了给其子节点转发数据外,还从系统中随机挑选出固定数目的p e e r 节 点并以较小的概率向这些节点转发数据:而对任一节点而言,在给另一节点所转 发的每个数据包中还须捎带一些数据元信息,用以表示节点己正确收到了该数据 包之前的哪些数据包:该节点在收到该数据包后用该数据包中所附带的元信息与 其缓冲区内容进行比较,即可检查出缓冲区中还缺少哪些数据包,从而向节点发 送n a k 消息以便请求传输那些空缺了的数据包。在s r m s 中以多大的概率向固定 数目的p e e r 节点转发数据是系统设计的一个关键,如果概率选择过大则可能会 导致节点接收到大量的重复报文,从而造成带宽资源的浪费;如果概率选择过小, 当节点离开失效或链路发生故障时,子节点可能需要经历较长的等待时间才能有 机会发送n a k 报文,从而使得传输服务被中断的时间较长。 2 3 2 多组播树结构 构建多个组播树的视频流媒体网络方案典型代表是微软研究院的 c o o p n e t 瞄:和s p l i t s t r e a m 。这两个方案都建立在多描述编码m d c ( m u l t i p l e d e s c r i p t i o n c o d i n g ) 的基础上。多个组播树结构的最大好处在于 它能提供良好的容错性,这对于拓扑结构呈动态变化的对等网络系统来说是非 常重要的。采用m d c 编码的媒体流,这些佃c 流在解码时不存在依赖关系,并 分成多个层分别传输于多棵树上,每个节点从它所在的多棵树上获取数据,然 后再将各层数据整合,还原成可以播放的媒体数据,如图2 2 所示。对任一节 点而言,其接收到的m d c 子流数量越多,则播放质量越好;当某棵组播树上的 父节点离开或失效时,只会导致一条m d c 子流的数据传输被中断,节点还可以 从其它组播树上继续接收其它的m d c 子流,在这种情形下除了画面质量会有所 9 哈尔滨t 稃大学硕十学伊论文 下降外,某些层的数据缺失不会造成媒体数据无法播放,只会影响其播放质量, 这在很多情况下是用户可以忍受的。对于多棵组播树的组织和维护,主要由中 心索引服务器集中承担,节点在加入或重新加入时均向中心索引服务器提交请 求,以获取多个或单个父节点。此外,针对节点带宽资源异构的问题, p a d m a n a b h a n 等还提出了一种基于分层m d c 编码的多棵组播树数据分发方案, 以解决不同节点对不同播放质量等级的要求。 、 :slj 人、 i a jb ) 人、飞、 c :i d 、) :e ) 、- 、j 、。7 、_ 一, 图2 2 多树结构数据传输拓扑图 s p it s t r e a m 与c o o p n e t 类似,它在源服务器端采用佃c 编码对媒体数据 进行编码,并让每棵组播树对应传输一条m d c 子流。而区别在于,s p l i t s t r e a m 中的p e e r 节点只在某一棵组播树中充当中间节点,参与数据转发,而在其余 组播树中只作为叶节点接收数据,尽量降低节点动态性对其它节点造成的影 响。由于s p l i t s t r e a m 多个组播树在实际上是通过结构化网络路由机制p a s t r y 旧 来建立的,树上每一个路径均是通过路由报文经过的节点构成的,所以可能造 成中间的路由节点并不对该项流媒体节目感兴趣,反而需承担数据中转的任 务。此外,依赖结构化路由机制建立的组播树,如果树中的路由节点资源不足, 会降低其子孙节点的性能。 相对基于单棵组播树的数据分发方案,多棵组播树的数据分发方案的优点 为是可以充分利用系统中每个节点的带宽资源,采用m d c 编码可以减少节点动 态性对系统中其它节点播放质量的影响,但多棵组播树的维护开销大于单树方 案,且维护操作相对复杂旧,。 1 0 哈尔滨t 稃大学硕+ 学伊论文 2 3 3 网状结构 图2 3 网状结构数据传输拓扑图 无论是单组播树拓扑还是多组播树的流媒体分发方案,即使采用了一些组 播树维护方法,但在系统节点存在较高扰动的情况下,依然不能满足视频播放 o s 的要求。对此,众多基于网状拓扑结构( 如图2 3 ) 的流媒体分发方案涌 现出来,较为典型的系统包括d o n e t n 、a n y s e e 协,、m t r e e b o n e ”等。它们的主要 思想均为利用g o s s i p ”协议来构造一个随机拓扑结构。在传输过程中,每个节 点交换本地已缓存的数据位图b m ,节点根据播放进度和数据位图向邻居节点发 起数据请求,从多个节点并行接收媒体内容数据,从而对每个节点来讲,形成 一个多对多的数据传输模型。d o n e t 是网状拓扑结构流媒体分发系统的一个典 型系统。它利用轻量级的g o s s i p 协议来构建一个应用层的覆盖组播网。它包 含三个主要模块:( 1 ) 负责维护系统中部分其它在线节点的成员节点管理 ( m e m b e r s h i pm a n a g e r ) 模块;( 2 ) 负责与邻居节点建立协作关系的伙伴管理 ( p a r t r ie r s h i pm a n a g e r ) 模块:( 3 ) 负责和其它节点进行数据交换的数据调 度模块。在网中的每个节点都维护两张表,其中一张是系统中的部分在线节点 的成员关系列表,另外一张是和本节点交换媒体数据的伙伴关系列表。系统节 点利用可扩展成员管理协议s c a m ( s c a l a b l eg o s s i pm e m b e r s h i pp r o t o c 0 1 ) 来得到其它节点状态信息。当新节点加入系统时,将被多次重定向,从而每个 节点拥有均匀分布的局部节点视图。在d o n e t 中,视频数据被分割成相同大小 的片断,用缓存映射b m 来表示节点是否拥有某个片断的数据。节点和邻居通 过不断交换b m 来了解相互间的缓存情况。节点根据邻居的b m 情况和在线状态 哙尔滨:珲大学颈十学伊论文 来对邻居节点列表进行管理。在数据调度过程中,优先调度副本数相对较少的 志容分片,并且在多个拥有这个分片的提供者中,以拉( p u l l ) 的方式优先阍 可用带宽高和在线概率较大的节点请求并获得数据。但由予网状随机拓扑并没 有与底层物理网络的拓扑匹配,将导致拓扑结构不匹配引发的种种阀题隗t 。 在数据获取和调度方式中,由于媒体数据分片是自视频源开始,经过应用 层中多跳应用层的中继传送到节点中的,这将导致播放延时积累。一种推拉相 结合的方法涵,将传递的数据分片分为可p u l l 和可雕s 嚣两种,在节点初次加 入系统时,采用p u l l 的方法得到数据,在经过一段时间之后采用两种方式进 行数据传送。与单组播树和多缀播树的方案相比,基于露状拓扑的传输方案具 有更高的鲁棒性,在存在高节点扰动的情况下,对节点播放平滑度造成的影响 相对较小。其缺点是系统的控制开销较大,对网络带来的负载高,。 2 4 小结 本章主要介绍了流媒体的数据分发技术。其是当前研究的热点,也是本文 研究的主要凌容。本鬻详缨的介绍了树结擒、多树结构和隧结构的主要特点和 各自的适用环境。在下一章中,本文会针对树结构与网结构各自存在的缺点提 出一种改进策略,即树网结合的流媒体数据分发策略。 1 2 哈尔滨t 程大学硕+ 学位论文 i f 第3 章一种改进的流媒体数据分发策略 基于p 2 p 网络的流媒体数据分发策略从数据传输拓扑结构上可以分为树和 网两种。其中树状结构的典型代表是p e e r c a s t 系统;网状结构的代表是d o n e t 系统。但这两种结果都有各自的缺点和局限性。 3 1 树结构流媒体数据分发策略 3 1 1p e e r o a s t 系统 p e e r c a s t 是非盈利站点提供一款免费p 2 p 流媒体软件。从传输协议来看, p e e r c a s t 只是简单地采用h t t p 方式传送视频、音频数据流,并没有考虑到流 媒体数据传输的特性,采用适合流传输的实时流放协议r t s p ( r e a lt i m e s t r e a m i n gp r o t o c 0 1 ) 或者端对端协议r t p r t c p 。诸如象p p l i v e 、p p s t r e a m 以及o i c o ,这些在占国内流媒体市场高达5 9 的p 2 p 流媒体平台流媒体系统 都是以p e e r c a s t 系统为基础,并对其算法、通信机制做了一定的优化。 一个p e e r c a s t 可以同时转播多个频道。由于p e e r c a s t 集合了客户端和服 务器功能,所以一个p e e r c a s t 可以同时是广播者、转播者和收听者。 p e e r c a s t 网络架构可分为三层。 第一层是y p 。y p 从广播者中收集频道信息,是整个网络的根。 第二层是广播者。广播者向y p 发送频道信息,这样y p 就能有一个完整的 广播者的列表。 第三层是转播者收听频道。每个广播者维护一份转播者的列表。 3 。1 2 主要算法描述 算法描述: ( 1 ) 节点的加入与退出 哈尔滨t 稗大学硕十学伊论文 当一个p e e r c a s t 节点第一次加入p e e r c a s t 网络时,它会先与广播这个电 台的i p 建立连接。由于这个广播者是不变的,所以至少会有一个特定的连接。 如果广播者是满负荷的,那么这个节点可以通过这个广播者同其他转播同一电 台的节点建立连接。通常会建立8 个连接。而此时广播者相当于b t 软件的一 个原始种子。 与本节点转播同一频道的节点( 也就是邻居) 的信息保存在c h a n h i t l i s t 中,其中c h a n h i t l i s t 是一份c h a n h i t 的链表,每个c h a n h it 保存一个相关结 点的信息。h i t 的意思是你想收听的频道的广播者或转播者。 ( 2 ) 拥塞控制 当o u t p u t 队列超过5 0 时进入拥塞控制模式。系统丢弃一些i n c o m i n g 包, 并根据包类型和跳数来给o u t g o i n g 包区分优先值。当o u t p u t 队列降到2 5 时, 系统会关闭拥塞控制模式。 ( 3 ) 优先权控制 转播时间更久的节点比刚开始转播的节点拥有更高的优先权,这体现在 t t l 上。刚开始转播的节点广播的包的t t l 值为1 ,而这个t t l 值每5 分钟会 递增1 。这样转播时间超过3 5 分钟的结点会有着最高的t t l 值7 。 ( 4 ) 节点间的通信 节点间的通信通过发送和接收控制信息包来实现。p e e r c a s t 专用协议p c p 规定了控制信息包的类型和格式。 s e r v m g r 负责分配、删除和使用s e r v e n t 对象,每个s e r v e n t 对象负责一 个具体的连接,而其中包的发送、接收和解析工作由p c p s t r e a m 来实现。 ( 5 ) 传输者的选择 在建立初始连接之后,节点需要选择一个最佳的节点来传输频道数据。选 择的顺序依次如下: 本地转播者。 邻居转播者。 本地广播者。 邻居广播者。 比如说如果找到邻居转播者就不用继续往下找,然后从其中选取出最佳的 节点作为传输对象,其他作为备用传输者。 1 4 哈尔滨t 程大学硕十学伊论文 l 如果这个传输者退出例络,那么必须重新按上次方法选择下一个传输者。 由于备用传输者较多,所以当节点动态退出网络时不会造成太大的影响。 3 1 3 性能分析 基于树状结构的流媒体数据分发策略,拓扑结构十分简单,易于维护,在 较稳定的环境下其平均数据获取延迟较低并且对网络的负载也很小。但其扩展 性不好,不适于波动性较大的环境。节点动态加入和退出的情况下树不易维护。 另外还存在传输延迟问题。它是流媒体技术早期应用的代表。多树结构虽然可 以部分缓解树状结构的缺点,但其在根本上依然不能解决这些问题。 3 。2 网结构流媒体数据分发策略 3 2 1d o n e i 系统 最近,g o s s i p 算法已经成为p 2 p 系统中信息多播传播的流行解决方案。在 一个典型的g o s s i p 算法中,一个结点将新信息发给一组随机选择的结点,这 些结点会在下一轮中作相似的事情,直到所有结点都收到信息。d o n e t 的成员 管理中使用了g o s s i p 协议。d o n e t 中的数据传输方法也部分受到g o s s i p 概念 的影响。但无论如何,不能将g o s s i p 机制直接用于流传输,因为随机的传送 数据会带来大量的冗余,而这对于有高带宽需求的流应用来说更加严重。d o n e t 中,使用了一个有力伙伴的选择算法和一个低开销的调度算法,以便于在大量 减少冗余的情况下智能地从众多伙伴中接收数据。在这样的机制中,视频数据 由一些种子结点在有异步需求的结点中传播。同时,一个或多个节点能够一起 为一个新结点提供缓冲数据,并能随着提供者的增多增强系统的能力。d o n e t 的目标是通过半同步的结点,达到实时流媒体传输。在实际的i n t e r n e t 实现 中,d o n e t 的能力有很大的增强。 哈尔滨工程大学硕士学位论文 j ! 鬟壤囊巍骥黼簇 彳 钮凶并蛐 一卜、8 羹畿 m 哥葛甜 l j 礤确r 审 t 、:篓。一”“。“”附“”“ p 碰扫鳓盼1 f s 铲 一。 1 嚣l 管 【帐揪l 呻皂哟船 】 丁王 王 王 ip ) ( pa 俯) ( p a r t n e r : 圈3 1d i m 岍系统的结点架构闰 图3 1 是一个d o n e t 节点中的系统架构图。其中有三个重要模块:( 1 ) 成 员管理模块( m e m b e r s h i pm a n a g e r ) 。负责维护网络中一部分结点的相关信息; ( 2 ) 伙伴管理模块( p a r t n e r s hipm a n a g e r ) 。负责与网络中的其他结点建立 并维护伙伴关系;( 3 ) 调度器( s c h e d u le r ) 。负责视频数据传输过程的调度工 作。一个i ) o n e t 节点的角色相对于视频流中的每一个分段,既可以是分段的接 收者也可以是提供者,或二者皆是。节点角色的确定会根据分段的可用性信息 动态地调整。分段的可用性信息会在节点及其伙伴之间周期性地传递。但是最 初提供资源的节点是分段的提供者。 3 2 2 主要算法描述 ( 1 ) 节点的加入和成员的管理 每个d o n e t 结点都有自己的一个唯一标识符( u n iq u ei d e n t if i e r ) ,并且 维护着一个缓存用来存储d o n e t 网络中一部分活跃成员的标识符。在一个简单 的节点添加算法中,一个新加入的节点首先去和源节点联系。节结点会随机地 从自己的m c a c h e ( 活跃成员列表) 中挑选出一个代理节点,井将新加入的节点 连接重定向到这个代理节点上。新节点会从代理节点上获得一个成员的列表 把其中的成员视为候选伙伴。之后,与这些候选伙伴建立连接,由此确定了自 1 6 哈尔滨t 稗大学硕+ 学佗论文 己在m 络中的伙伴关系。 以下两种事件可能引起m c a c h e 中记录的更新:( 1 ) 在会话( g o s s i p ) 过 程中,某条记录即将被传递给其他结点;( 2 ) 一个代理结点即将把某条记录传 递给新加入的结点。 ( 2 ) 缓存映像的表示和交换 图3 2d o n e t 中的伙伴关系实例 图3 2 是d o n e t 中伙伴关系的一个例子。在d o n e t 网络中,伙伴关系和数 据传输方向都不是固定的。一个视频流被分解为多个定长的分段。节点缓存中 各个分段的可用性信息被表示为一个缓存映像b m ( b u f f e rm a p ) 。每个节点会 和它的伙伴不断地交换各自的b m 。之后,通过调度算法,确定从哪个伙伴处接 收哪个分段。 对于实时的多媒体流来说,d o n e t 结点中的媒体播放过程是一个半同步的 过程。假设每个分段包含了一秒钟的视频信息,一个具有1 2 0 个分段长度的滑 动窗口便可以有效地构成一个缓存,而滑动窗口

温馨提示

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

评论

0/150

提交评论