(计算机应用技术专业论文)p2p流媒体直播系统节点扰动性的研究.pdf_第1页
(计算机应用技术专业论文)p2p流媒体直播系统节点扰动性的研究.pdf_第2页
(计算机应用技术专业论文)p2p流媒体直播系统节点扰动性的研究.pdf_第3页
(计算机应用技术专业论文)p2p流媒体直播系统节点扰动性的研究.pdf_第4页
(计算机应用技术专业论文)p2p流媒体直播系统节点扰动性的研究.pdf_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

原创性声明 l i i ii iir l i iii i ii iiri y 18 3 3 5 10 。 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研 究所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人 或集体已经发表或撰写过的科研成果。对本文的研究做出重要贡献的个人和集 体,均已在文中以明确方式标明。本声明的法律责任由本人承担。 学位论文作者:讯锋 同期:沙f 。年月 同 学位论文使用授权声明 本人在导师指导下完成的论文及相关的职务作品,知识产权归属郑州大学。 根据郑州大学有关保留、使用学位论文的规定,同意学校保留或向国家有关部 门或机构送交论文的复印件和电子版,允许论文被查阅和借阅;本人授权郑州 大学可以将本学位论文的全部或部分编入有关数据库进行检索,可以采用影印、 缩印或者其他复制手段保存论文和汇编本学位论文。本人离校后发表、使用学 位论文或与该学位论文直接相关的学术论文或成果时,第一署名单位仍然为郑 州大学。保密论文在解密后应遵守此规定。 学位论文作者:韵嗡 日期:伽2o 年易月v 同 摘要 摘要 近年来,随着网络的普及与发展,大批p 2 p 流媒体的应用丌始涌现,p 2 p 流 媒体直播技术作为其中一个重要分支已经成为流媒体研究的热点问题之一。 本文在p e e r c a s t 的基础上开发出了p 2 p 大规模视频直播系统一l s t r e a m 。 l s t r e a m 系统采用了分层架构,基于网络坐标g n p 与p c o o r d 相结合的节点调度 策略,以及基于激励机制的推拉相结合的数据传输策略和最少优先调度策略。 本文重点是在l s t r e a m 系统中设计出了一种新的异常检测机制,以缓解目 前p 2 p 流媒体直播系统存在的扰动性问题。由于目前在p 2 p 视频直播系统中采 用的异常检测机制主要有集中监测机制、强节点检测机制、父子节点检测机制 和监护机制,但这几种机制整体来说都是采用传统心跳的方式,这几种机制各 有弊端,主要有异常检测周期过长、节点区域性失效无法检测、系统冗余控制 报文过多和系统的控制负载率过高等问题。在这种背景之下,并结合l s t r e a m 系统各层节点的功能特点,本文提出了一种缓存数据检测( b u f f e rd a t a ) 、远 程监护、b m ( b u f f e rm a p ) 心跳相结合的异常检测机制,本文称之为b d - b m 检测 机制。由于s p ( s u p e r p e e r s ) 节点的数据来源唯一,所以采用缓存数据检测机制; 为了检测s n p ( s u p e rn o r m a lp e e r s ) 节点的整体失效,为s n p 节点增加了远程监护 机制;由于n p 节点采用p u l l 数据传输机制,邻居节点之间需要互相发送b m 信 息( 该信息主要是告诉邻居节点本节点所拥有的数据片信息) ,所以采用了蹦 心跳机制。 本文设计的b d - b m 检测机制,能够缩短节点异常检测时间,提高系统的灵 敏度,还能够检测出节点的区域性失效,减少了系统大量的控制报文,降低了 系统的控制负载率。 关键词:p 2 p ;直播;流媒体;扰动性;异常检测 a b s t r a c t a b s t r a c t i nr e c e n ty e a r s ,w i t ht h ep o p u l a r i z a t i o na n dd e v e l o p m e n to ft h en e t w o r k ,al a r g e n u m b e ro fp 2 ps t r e a m i n gm e d i aa p p l i c a t i o n sh a v eb e g u nt o e m e r g e p 2 pl i v e s t r e a m i n gt e c h n o l o g y 勰a l li m p o r t a n tb r a n c ho fs t r e a m i n gm e d i ah a sb e c o m eah o t t o p i co f r e s e a r c h b a s e do np e e r c a s ts y s t e m s ,t h ep r o j e c tt e a md e v e l o p e dl s t r e a mw h i c hi sap 2 p s y s t e mo fal a r g e - s c a l el i v ev i d e o l s t r e a ms y s t e mu s e sah i e r a r c h i c a ls t r u c t u r e i nt h e n o d es c h e d u l i n gm o d u l ep r o j e c tt e a mm e m b e rp r o p o s eaw e b - b a s e dc o o r d i n a t e so f g n p c o m b i n i n gw i t hp c o o r dn o d es c h e d u l i n gs t r a t e g y i nt h et r a n s m i s s i o na n dt h e d a t as c h e d u l i n gm o d u l et h es y s t e mu s e sa ni n c e n t i v e - - b a s e dp u s h - p u l ls t r a t e g yo f c o m b i n i n gd a t aa n dl r f aa l g o r i t h m t h ef o c u so ft h i sa r t i c l ei sh o wt od e s i g nan e wa n o m a l yd e t e c t i o nm e c h a n i s m st o e a s et h ec u r r e n td i s t u r b a n c ei s s u e so fp 2 pl i v es t r e a m i n gs y s t e m i nt h ec u r r e n tp 2 p v i d e ob r o a d c a s ts y s t e m st h e r ea r ef o u ra n o m a l yd e t e c t i o nm e c h a n i s m s t h e ya r e c e n t r a ld e t e c t i o nm e c h a n i s m ,s t r o n gn o d ed e t e c t i o nm e c h a n i s m ,f a t h e ra n ds o nn o d e s d e t e c t i o nm e c h a n i s ma n ds u p e r v i s i o nm e c h a n i s m h o w e v e r , s e v e r a lm e c h a n i s m sa l e a l lu s e dc o n v e n t i o n a lh e a r tw a y s t h e yh a v es o m ed r a w b a c k s f o re x a m p l ea n o m a l y d e t e c t i o nc y c l ei st o ol o n g , t h en o d e 啪td e t e c tr e 西o n a lf a i l u r ea n ds y s t e m r e d u n d a n c yc o n t r o l l i n gp a c k e t sa r et o om u c ha n dt h ec o n t r o l l i n gl o a dr a t e i st o o l l i g h c o m b i n i n gw i t ht h ef e a t u r e so fd i f f e r e n tl a y e r sn o d e so fl s t r c a ms y s t e m t h e p a p e rd e s i g n sa na b n o r m a ld e t e c t i o nm e c h a n i s m t h i sm e c h a n i s mi sc o m p o s e do fa v a r i e t yo fm e c h a n i s m s i ti n c l u d e s c a c h ed a t ad e t e c t i o n ( b u f f e rd a t a ) ,r e m o t e m o n i t o r i n ga n db m ( b u f f e rm a p ) h e a r t b e a td e t e c t i o nm e c h a n i s m t h et o t a ld e t e c t i o n m e c h a n i s mi sk n o w na sb d - b mm e c h a n i s m b e c a u s es p ( s u p e rp e e r s ) n o d e sh a v et h e o n l ys o u r c eo fd a t a , s ot h es y s t e mu s e sc a c h ed a t ad e t e c t i o nm e c h a n i s m t od e t e c tt h e w h o l ef a i l u r eo fs n p ( s u p e rn o r m a lp e e r s ) n o d e s ,t h es y s t e mi n c r e a s et h er e m o t e m o n i t o r i n g f o rt h es n pn o d e s a sn pn o d e su s ep u l ld a t at r a n s f e r m e c h a n i s m n e i g h b o rn o d e s n e e dt os e n de a c ho t h e rb mi n f o r m a t i o n ( t h i s i n f o r m a t i o ni st 0t e l ln e i g h b o rn o d et h a tt h en o d eh a st h ei n f o r m a t i o no fd a t a i i a b s t r a c t p i e c e s ) s oi tu s e t h eb mh e a r t b e a tm e c h a n i s m t h eb d - b md e t e c t i o nm e c h a n i s mc a l ls h o r t e nt h et i m eo fa n o m a l yd e t e c t i o n n o d e sa n dd e t e c tr e g i o n a lf a i l u r eo ft h en o d e s i tc a na l s or e d u c ec o n t r o lp a c k e t so ft h e s y s t e ma n dr e d u c e sc o n t r o l l i n gl o a dr a t eo ft h es y s t e m k e y w o r d s :p 2 p ;l i v e b r o a d c a s t ;s t r e a m i n gm e d i a ;c h u m ;a n o m a l yd e t e c t i o n i l l 目录 目录 第1 章引言1 1 1 课题背景与意义1 1 2 国内外研究现状2 1 3 本文的主要工作5 1 4 本文的结构安排6 第2 章相关背景8 2 1 流媒体观念8 2 2 流媒体系统技术8 2 2 i 应用层组播技术9 2 2 2p 2 p 技术1 0 2 3 视频直播模型的研究” 2 4l s t r e a m 的设计与实现1 3 2 4 1l s t r e a m 系统结构1 3 2 4 2 系统的功能模块1 5 2 5l s t r e a r n 系统的工作流程1 7 2 6 本章小结1 8 第3 章b d b m 检测机制的设计与实现19 3 1b d b m 检测算法原理2 0 3 2b d 检测算法2 0 3 2 ib d 检测算法描述2 0 3 2 2b d 检测算法伪代码2 1 3 2 3b d 检测算法工作流程2 3 3 3 监护算法2 4 3 3 1 监护算法描述2 4 3 3 2 监护算法伪代码2 4 3 3 3 监护算法工作流程2 5 i v 目录 3 4b m 心跳算法2 6 3 4 1b m 检测算法描述2 7 3 4 2b m 检测算法伪代码2 7 3 4 3b m 检测算法i :作流程2 8 第4 章仿真实验3 1 4 1 实验目的;3 1 4 2 实验环境3 1 4 3 实验结果3 1 4 4 本章小结3 6 第5 章总结与展望3 7 5 1 全文总结3 7 5 2 展望3 8 参考文献4 0 致谢4 3 v 图索弓 图索引 图1 1 网氏视频网吣的规模凋布1 图2 1 基1 - p r o x y 的树状应川层细播模型图1 0 图2 2 基丁p 2 p 的网状应刚层组播模玳1 0 图2 3 基于树形拓扑的数据转发树1 2 图2 4 基丁网状拓扑的数据转发图1 3 图2 5l s t r e a m 系统结构图。1 4 图2 6 数据缓冲区结构l6 图3 1 接收缓存2 l 图3 2b d 算法流稃图2l 图3 3s p 层结构示意图2 3 图3 4 监护算法流稃图2 4 图3 5 监护算法示意图2 5 图3 6n p 节点b m 表2 7 图3 7b m 算法流程图2 7 图3 8n p 层结构示意图。2 8 图4 1 异常平均检测时间3 3 图4 2 控制负载3 4 图4 3 播放流畅度3 5 v i 表索弓 表索引 表4 1 平均检测时间3 2 表4 2 控制负载率3 4 表4 3 播放流畅度3 5 v i i 引言 第1 章引言 本章首先介绍了本文的研究背景及意义,然后阐述了目前国内外流媒体播 放系统发展中存在的问题,在此基础上提出了本文的研究内容及所要做的工作, 最后介绍了本文的结构安排。 1 1 课题背景与意义 随着i n t e r n e t 的普及和网络技术的发展,互联网已经进入集视频、音频、动画 和图像等为一体的多媒体通信时代。流媒体作为一种多媒体传输技术应运而生, 流媒体一出现就以惊人的速度发展起来,一大批新兴的流媒体应用开始涌现并 成为人们生活、工作重要的组成部分,例如:网络电视、体育赛事直播、远程教育、 视频会议、网上新闻发布和网络广告等等。 2 0 1 0 年元月中国互联网络信息中心( c n n i c ) 在京发布了第2 5 次中国互 联网络发展状况统计报告。报告数据显示,截至2 0 0 9 年1 2 月,我国网民规模 达3 8 4 亿,增长率为2 8 9 i 。其中网络视频用户规模达到2 4 亿【l 】,相当于每1 6 个网民中就有一个网络视频用户( 如图1 1 所示) ,流媒体视频已经成为i n t e m e t 的主流。 华4 0 人 3 5 3 2 5 2 1 5 1 0 5 o 臣面面砸画玉画 2 0 0 8 年2 0 0 9 年 图1 1 网民视频网民的规模调查 随着流媒体视频网民的增加,市场对流媒体视频播放技术也提出了新的挑 战,尽管现有的服务器性能、网络带宽、视频编码及流媒体传输等技术已经取 得飞速发展,但流媒体的需求f 以指数级的速度增长,它的实时性、持久性、 高带宽性等需求促使流媒体相关技术需要进一步的发剧2 1 。目前影响流媒体播放 质量主要有以下几个方面: 节点管理,节点加入时仍然存在着节点选择不合理【3 】,网络应用层和物理 层存在映射不匹配问题,导致不能选出最好的节点为下层节点提供数据,从而 影响整个系统的性能【4 j 。 数据传输,现有的p 2 p 流媒体直播系统包括多种数据传输模型,典型的 有树状结构和网状结构,二者在一定程度上满足了p 2 p 直播系统的需求,但对 于大规模流媒体应用,在资源利用、传输时延和抗扰动性等方面仍面临很大的 挑战,树状结构对动态变化的网络环境极其敏感,网状结构端到端的传输时延 较大,并且两者均没有考虑节点的性能差异【5 1 。 数据调度,由于流媒体应用的数据量大,服务时间长,且对数据的播放 有较为严格的时限和顺序要求【6 】,而作为i n t e m e t 上的普通主机节点的p e e r 节点, 其服务能力有限,并且不同的p e e r 节点服务能力也具有差异性,如带宽、处理 能力并不完全相同,因此如何通过合理的数据调度来为用户提供高质量的流媒 体服务,也面临诸多困难和挑战 7 1 。 节点异常检测不及时,不准确【8 】。由于p 2 p 网络的动态性和复杂性,节 点频繁地加入退出而引起的扰动性问题一直制约着p 2 p 网络的发展和应用1 9 】,尤 其是p 2 p 网络中的节点异常退出不能准确、及时检测而引起的系统扰动性问题 尤为严重【l 。 如何能在这几方面技术取得突破,是本文研究的目标,尤其是如何缓解系 统扰动性是本文研究的重点,p 2 p 大规模视频直播系统一l s 仃e 锄正是在以上几 个方面对p e e r c a s t 系统进行了改进和完善,从而为用户提供了控制负载率更低 流畅度更高的视频播放服务。 1 2 国内外研究现状 自从张欣研在c o o l s t r e a m i n g 中提出d a t a d r i v e n 传输模型之后,流媒体技术 的研究及应用进入快速发展时期。尤其这几年来,p 2 p 流媒体播放软件如 2 引言 p p l i v e i l 】,c o o l s t r e a m i n g 等在网络中空前盛行,越来越多的人丌始从事流媒体 相关技术的研究。流媒体的广泛应用大大推动了流媒体系统技术、传输技术、 缓存调度技术的研究和发展。 流媒体系统技术 流媒体系统技术主要是指流媒体系统的架构,它定义了流媒体在一种协议 框架下是如何进行流媒体传输的。p 2 p 视频直播技术的广泛应用,推动了流媒体 系统技术向前发展,流媒体系统技术与p 2 p 视频直播技术的结合更好地实现了 实时流媒体传输。目前,基于p 2 p 视频直播的流媒体系统的体系结构已经取得 了显著的成果,国内外比较知名的系统模型有p e e r c a s t 、c o o l s t r e a m i n g 、g n u t e l l a 和a n y s e e 1 2 】。p e e r c a s t 系统采用了树状结构,数据由根节点一对多的传输到叶 子节点,节点控制采用集中模式。c o o l s t r e a m i n g 、g n u t e l l a 系统是采用网状结构 的p 2 p 技术,节点间是完全对等关系,没有设立节点的控制中心。a n y s e e 结合 了以上两种技术的优点,使用了混合式结构,即系统整体采用集中控制,系统 局部采用对等网状结构来传输数据。 流媒体传输技术 目前流媒体传输中使用的传输层协议主要有t c p 和u d p 协议【l 引。p e e r c a s t 系统使用t c p 传输流媒体控制与数据信息。p p l i v e 、p p s t r e a m 系统则使用t c p 协议传输控制信息【1 4 】,使用u d p 协议传输流媒体数据信息。r t p 协议是在互联 网上针对多媒体数据流的一种传输协议,r t c p 配合r t p 一起为流媒体数据提供 流量控制和拥塞控制服务,现在这种协议已经在很多实际系统中得到了广泛的 应用【1 5 】。 流媒体缓存调度技术 f a n 提出的s u m m a r yc a c h e 是一种分布式缓存,它是指每一个代理服务器都 要维护所有其它代理服务器所缓存的对象数据的目录,代理服务器不仅可以利 用本地缓存为用户提供服务,并且还可以利用目录信息帮助用户获得其它代理 服务器中的数据。流媒体调度策略主要分为两类:一种是静态调度( p u s h ) , 另一种是动态调度( p u l l ) 。p e e r c a s t 系统采用p u s h 调度策略,把数据从根节 点p u s h 到它的子节点。c o o l s t r e a m i n g 系统采用p u l l 调度策略,每个节点都 要维护一个b m ( b u f f e rm a p ) 信息表,b m 表记录了本节点缓存中的媒体数据 分片,各节点实时地交互b m 信息【i 们。通过比较b m 信息,定位所缺数据片位 于哪个邻居节点上,然后通过p u l l 的方式获得空缺的数据片。但是现在许多 3 引言 系统如a n y s e e 结合了两种调度策的优点而采用了混合调度技术,即混合了p u s h 与p u l l 的两种调度策略。 节点异常检测技术 国内外比较优秀的p 2 p 系统有p e e r c a s t ,c o o l s t r e a m i n g ,p p l i v e 等。这些系统 对于节点异常检测机制总结起来主要有四种: 集中检测机制 该机制是通过在系统中设置专一的服务器作为集中监测的装置,服务器中 记录着本网络中所有的节点信息,本网络中所有的节点都要定时向该服务器发 送活动报文,服务器如果收到活动报文就会刷新对应的节点信息【l 引,如果网络 中的节点正常退出,则节点会向服务器发送退出报文,然后退出,服务器收到 节点的j 下常退出报文后,则会从服务器列表中将对应节点信息删除,服务器定 时检查自己的节点列表,如果发现列表中的节点在一定的时间内没有被刷新, 则认为该节点异常退出,则会选择新的节点代替异常退出节点的位置,并通知 相关节点更新对应信息。但这种机制显然会使服务器的负担过重,如果有成千 上万台机器都定时向服务器发送活动报文,服务器则会不堪重负,所以这种集 中监测机制只适合规模比较小的系统,不适合节点数目比较多规模比较大的系 统。 强节点检测机制 由于集中监测机制存在着过度依赖服务器的问题,所以又有人提出了强节 点检测机制,这是对服务器检测机制的改进,在这种系统中会有一定数量功能 比较强大的节点,这些节点被称为强节点,强节点会比较均匀地分布在网络中 不同的区域,而且保存着本区域内所有的节点信息【1 9 】。每个强节点都会负责检 测本区域内节点的异常,本区域内的节点都会定时向对应区域内的节点发送活 动报文,强节点收到节点的活动报文后就会刷新对应节点的信息,如果有节点 正常退出,则会向对应的强节点发送退出报文,强节点收到后就会从自己的节 点列表中将退出节点的相关信息删除,如果强节点在一定时间内发现本区域的 节点没有被刷新,则会认为节点异常退出,则会删除对应节点的信息,同时向 系统报告,系统则会做出相应的处理。这种机制相对于集中监测机制来说功能 上更趋分散,在一定程度上消除了服务器的瓶颈问题,但是这种机制没有缓解 系统中心跳活动报文过多的问题。 父子节点检测机制 4 引言 这种检测机制主要是用于具有树状结构的视频直播系统【2 0 1 ,在这种系统中 节点之间形成了父子关系,父子节点之间为了能够检测出对方是否异常退出, 所以双方需要定时互相发送活动报文,以此来告诉对方自己的活动状态,如果 有一方在一定的时间内没有收到对方的活动报文信息,则认为对方异常退出, 则向系统进行报告,系统收到报告信息后会根据情况做相应的处理,由于在这 种机制中为了保证节点之间的播放时延最小,一般情况下父子节点的选取都是 就近原则,所以如果某一小区域出现整体失效的问题,很可能会出现多层父子 节点同时失效而无法检测问题,而且这种机制中父子节点之间不管有没有节点 异常都需要不停地互相发送活动报文,显然这些报文在大部分情况下都是冗余 的,所以这种机制也存在弊端。 监护机制 在使用该机制的系统中也需要有一些强节点,每个强节点负责一个区域, 由于强节点要向统计服务器发送统计数据,因此强节点必须知道它所管辖区域 内所有用户信息,如果采用每个节点都向强节点发送心跳信息的方法,显然如 果该强节点所辖区域有几千用户的情况下,强节点可能每秒都会收到几百个心 跳报文,那么强节点的负担一样也会很重,从而给强节点造成非常大的压力, 这是不能忍受的,所以在该论文的系统中提出了一种被动的监护机制,即强节 点永远认为所有节点都是活动的,除非某个节点主动发送退出信息或者其节点 告诉它这个节点已离开,它才将这个节点的信息删斛2 1 】。 在监护节点的设计上,采用2 个节点同时作为监护节点,而且这2 个监护 节点在逻辑拓扑上距离要远,以避免自己和监护节点同时因为意外情况退出。 自己就作为被监护节点定期向这2 个监护节点发送心跳消息,如果监护节点在 规定时间没有收到被监护节点的心跳信息,就认为这个节点因为意外而退出了, 须向强节点举报该节点,将出错的节点从p 2 p 网络中清除。但该机制需要为本 区域内所有的普通节点都要设置两个监护节点,代价很大,而且控制报文冗余 度也比较大。 1 3 本文的主要工作 p 2 p 网络不仅具有动态性而且比较复杂,在这种网络中节点可以自由地加入 或退出网络,这种现象引起的系统扰动性问题一直制约着p 2 p 流媒体的发展和 5 引言 应用,尤其是p 2 p 流媒体中节点异常退出不能及时、准确检测而引起的扰动性 问题尤为严重【2 2 1 。而目前的流媒体视频直播系统在节点异常检测方面大都采用 以上几种异常检测机制,而这几种机制在原理上几乎相同,都是采用了传统的 心跳机制,该机制是通过相邻或父子节点之间互相发送活动报文的方式来进行 节点异常检测,如果有一方没有在规定时间内收到邻居或父子节点发来的活动 报文,则认为对方异常退出,则系统丌始进行自我修复。但是这种机制主要存 在三个问题: 节点异常检测周期过长,既节点异常退出后系统不能及时地检测出来, 这样会使系统不能进行快速地修复。 不能检测出节点区域性失效问题,如果某一区域节点由于断电等原因导 致该区域节点整体失效,则系统无法通过这种方式检测出来。 这种机制使系统中冗余控制报文数量过多,增加了系统的控制负载率, 浪费了系统和网络宝贵的资源【2 3 】【2 4 1 。 鉴于此,本文在l s t r e a m 中设计了一套缓存数据( b u f f e rd a t a ) 及b m ( b u f f e r m a p ) 检测机制,简称为b d b m 检测机制,b d b m 检测机制减少了节点异常 退出的检测时间,提高了系统的灵敏度,降低了系统的扰动性,使整个系统的控 制负载率也明显降低,并且能够检测出节点的区域性失效,最终使用户的视频 播放界面更为清晰、流畅。这种机制相比于传统的心跳机制的优越性是显而易 见的,本文通过仿真实验对两种机制进行了对比。 1 4 本文的结构安排 本论文从以下五章分别阐述了流媒体系统相关知识、l s t r e a m 系统的框架及 功能,重点介绍了b d b m 检测机制的设计与实现,最后通过仿真实验进行了验 证: 第l 章引言。本章首先介绍了本课题的背景与意义,p 2 p 流媒体直播系统 的技术及其扰动性的研究现状,最后介绍了本文的主要工作和结构安排。 第2 章本章首先介绍了流媒体一些相关知识,然后介绍了l s t r e a m 系统的 相关内容,主要介绍了l s t r e a m 系统的整体框架,然后介绍了系统各功能模块。 第3 章本章重点介绍了b d b m 检测机制的设计与实现。首先简单介绍了 b d b m 检测机制的算法原理,工作流程,然后又对b d b m 检测机制的设计和 6 通过对实验数据的分析比较来说明两种机制的优劣。 第5 章总结与展望。对本文所做的工作进行总结,并对自己下一步要做的 工作进行展望。 7 相大背景 第2 章相关背景 本章首先介绍了流媒体一些相关知识,流媒体的定义、流媒体系统技术, 并对几种常见的视频直播模型进行了分析,然后介绍了l s t r e a m 系统的框架及各 个模块的功能及特点。 2 1 流媒体定义 流媒体( s t r e a m i n gm e d i a ) 是指应用流技术在网络上传输的多媒体文件。流 ( s t r e a m i n g ) 是对在网络上传输特别的编码数字媒体内容,主要是音频、视频、 动画、图片、文本等到最终用户的一种描述。 传统播放技术是指从服务器下载完整的文件到客户端,下载过程一般需要 几分钟或更长时间,下载完成后在客户端进行播放,而流媒体技术则是指用流 式传输的方式连续、不间断地向客户端传送音视频等多媒体文件,用户只需要 等待几十秒甚至是几秒的启动时延,就可以边观看已下载的数据,边下载后续 的流媒体数据,因此与传统流媒体技术相比,视频流媒体技术主要体现出以下 优点: 网络资源利用率比较高,以流方式进行数据传输的速率在网络稳定的情 况下基本上是不变的,这就避免了因为缺乏流量控制而引起网络局部拥塞现象 的发生; 服务更加合理化,用户可以对不太感兴趣的节目可以随时停止播放,这 样可以减少资源的浪费,较小的启动时延也更有利于用户在节目之间进行切换。 服务实时性强,只需经过几秒或者几十秒的启动时延就能利用计算机的 解压缩设备( 软件或硬件) 对压缩的流媒体数据包进行解压、重组、排序然后播放, 与此同时还能在后台连续、实时地从服务器继续下载。 2 2 流媒体系统技术 随着流媒体技术在网络中的广泛应用,网络的通信量也随着急剧增加,流 媒体数据已经占据互联网上的主要通信量。当然流媒体技术的广泛应用也向 i n t e m e t 提出了新的挑战,而组播技术则是一种应对新挑战比较理想的方案。 8 相大背景 2 2 1 应用层组播技术 1 9 8 8 年s d e e r i n g 首先提出了i p 组播通信模型【2 5 】,i p 组播是在网络层实现, 它是由路由器构造而成的组播树,由路由器在组播树的分支节点处对数据包进 行复制,同时向组播树中的直接下游节点进行转发【2 6 1 。但是由于i p 组播不易部 署,因此没有得到广泛的应用【2 7 1 。为了解决这个问题,一些专家又提出了应用 层组播【1 7 】( a p p l i c a t i o nl e v e lm u l t i c a s t ,a l m ) ,a l m 的基本思想是保持互联网 原有的简单、不可靠、单播的转发模型,在端系统的应用层实现组播转发功能1 1 9 】。 通常情况下,应用层组播模型的节点大都是普通的p c 机,因此在该模型中数据 的复制、转发功能自然就由这些p c 机来完成【2 引,应用层组播各成员之间是建立 在i p 网络之上的、能够实现组播业务逻辑的功能性网络,称之为覆盖网( o v e r l a y n e t w o r k ) ,主机基于自组织算法建立和维护这个覆盖网【2 9 1 。 相比于网络层组播,应用层组播有以下优点: 可以灵活地实现高层功能,中间转发节点支持对数据进行应用层的处理。 目前应用层组播主要集中应用于实时数据传输系统,如分布式、媒体流的分发 系统等领域,根据节点的参与方式和功能,可以分为集中式结构和洪泛式结构 【2 8 】,即p r o x y 型( 如图2 1 ) 和p 2 p 型( 如图2 2 ) 。集中式结构是在i n t c r n c t 中 策略性地放置一些性能比较高的端系统节点,即代理节点( p r o x yn o d e ) ,数据 的复制和转发任务将由这些代理节点承担,组成员节点则通过单播或者本地的 i p 组播连接到这些代理节点而获得服务;在洪泛式结构的a l m 中,每个节点一 般只将部分节点作为其邻居节点,这些维持邻居关系的信息就构成了应用层组 播的控制结构【3 0 】。 易于部署、效率高、可扩展性耐】; 用户可以根据自己的需要设计出更加灵活的组播模型,而不依赖于互联 网的底层实现【3 2 1 ; 9 相关背景 图2 1 基y - p r o x y 的树状应h j 层组橘模型图 图2 2 基于p 2 p 的网状应川层组播模弛 2 2 2p 2 p 技术 由上节可知,a l m 是在不改变现有网络层功能的前提下,在应用层增加 o v e r l a y ,从而实现了组播。在o v e r l a y 中服务模式可以是p r o x y 式结构也可以是 p 2 p 式结构两种【3 3 】。p r o x y 模式一般采用树状结构,节点之间是一种父子关系。 而p 2 p 模式则强调的是节点之间的平等关系,以自组织的方式结合在一起工作 或提供服务。p 2 p 是一种典型的分布式处理系统【3 4 1 ,按照系统中是否有作为集中 控制点的服务器,可再将其分为纯p 2 p 系统( p u r ep 2 ps y s t e m ) 和混合型p 2 p 系统( h y b r i dp 2 ps y s t e m ) 3 5 】。纯p 2 p 系统主要代表有c o o l s t r e a m i n g 、g u n e t l l a 等,在这种系统中所有的节点地位平等,它们共同构成一个分散式网络,存储、 交换、搜索等系统功能都是由节点互相配合完成的,这种网络一般采用“泛洪 ( f l o o d i n g ) ”式路由算法。纯p 2 p 系统可以有效地解决c s 模式中服务器单点失 效及瓶颈问题,但是在这种模式下一个节点的搜索请求需要经过整个网络或者 是网络中一个很大的范围才能得到结果,占用带宽显然比较多,而且可能需要 花费比较多的时吲3 们。混合p 2 p 系统代表是n a p s t e r ,在这种系统中各节点之间 1 0 相关背景 可以直接建立连接,但网络的构建需要服务器,通过服务器的集中认证,建立 索引机制。只不过服务器功能被弱化,仅用于辅助对等节点建立连接,一旦连 接成功,服务器将不再起作用,对等节点之间就可以直接进行通信【37 1 。和纯p 2 p 系统相比,混合p 2 p 系统更易于找到网络节点、更便于管理且安全性也比较好。 目前p 2 p 技术的应用大多都为混合模式。 综上所述,p 2 p 技术有以下五个优点: 性价比高:p 2 p 技术充分利用闲置的计算能力或存储空间,从而达到了高 性能计算和海量存储的目的,通过利用网络中的大量的空闲资源,在低成本的 条件下可以提供更高的计算和存储能力; 可扩展性强:随着用户数量的增加,用户的服务需求也随着增加,p 2 p 网络可以使系统整体资源和服务能力也同步地扩充,始终能够满足用户的需要, 从理论上讲,整个体系是全分布的,不存在瓶颈; 负载更为均衡:由于资源分布在多个节点,所以可以更好地实现了整个 网络的负载均衡。 更好的健壮性:p 2 p 网络是以自组织的方式建立的,它允许节点自由地加 入和退出,p 2 p 网络还可以根据网络带宽、节点数、负载等变化不断地做自适应 式的调整; 非集中式:网络中的资源和服务分散在不同节点上,在节点之间就可以 进行信息的传输和服务,避免了对服务器的过度依赖; 2 3 视频直播模型的研究 随着多媒体网络的不断发展,基于流媒体技术的大规模视频应用的市场需 求愈来愈大,由于应用层组播只需改变端系统,而无需对路由器进行任何修改, 而且它可以针对特定应用进行优化,还可以针对不同的应用使用不同的方案, 而不必像网络层组播那样必须统一到一个模型之中,因此更容易实现和推广。 于是应用层组播技术得到非常广泛的应用,大量基于应用层组播的流媒体系统 则应运而生。 本节主要研究了当前国内外常用的几种视频直播系统模型:p e e r c a s t 、e s m ( e n ds y s t e mm u l t i c a s t ) 、c o o l s t r e a m i n g 、a n y s e e 。下面将分别对四个模型进行 详细的分析。 相关背景 p e e r c a s t p e e r c a s t 使用类似g n u t e l l a 的协议,并且采用单路径数据传输机制。p e e r c a s t 采用树状拓扑结构( 如图2 3 所示) ,r 为数据源节点。节点在任何时刻都只与一 个父节点建立连接,同时向被连接的子节点报告自己的存在。然后它从父节点 获取数据,如果获得数据失败,它将从自己的备份父节点中随机选择备用父节 点并进行连接。 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 就不适用- - 1 3 8 1 。 图2 3 基于树形拓扑的数据转发树 e s m e s m 是基于应用层组播的视频直播系统,它是由卡耐基梅隆大学开发的, 以n a r a d a 应用层组播协议为核心。n a r a d a 协议在节点加入和退出覆盖网时,随 机会增加一些高质量的链路同时会删除一些质量不好的链路,通过周期性的局 部优化达到优化整个覆盖网的目标,提高了其与底层网络匹配度。卡耐基梅隆 大学的e s m 系统是使用改进后的n a r a d a 协议来完成视频直播的播放功能,但是 这类基于应用层组播技术的系统,不能很好地解决异构性和节点的动态性问题。 c o o l s t r e a m i n g c o o l s t r e a m i n g 是第一个采用纯p 2 p 机制的视频直播系统,它是基于网状拓 扑结构的( 如图2 4 所示) ,r 为数据源节点。所有加入网络中的节点构成一个 覆盖网,每个节点都拥有一定数量的父节点同时也要为一定数量的子节点提供 服务。c o o l s t r e a m i n g 采用g o s s i p 协议【3 9 】来构造这个覆盖网,这样可以使之具有 1 2 相关背景 更好的健壮性和扩展性。每个节点首先在服务器( b s ) 上注册,然后进入网络,并 得到一些邻居列表,每个节点和邻居共享媒体数据,对于节点缓冲区中的数据 使用一种“缓冲映射表”( b u f f e rm a p ) 来进行标记。节点之间以“心跳”( h e a r t b e a t ) 的方式定期交换各自的缓冲映射表,通过对比可以得到邻居节点所拥有而自己 没有的数据片,然后根据数据调度算法,选择出合适的邻居,然后向该邻居请 求得到相应的数据。 i ( p4 ) 。j s p3 、 、 7 p2 ) ,幻t p 6 ,+ _ p7 ) 、一7 、 图2 4 基于网状拓扑的数

温馨提示

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

评论

0/150

提交评论