(计算机系统结构专业论文)集群流媒体缓存中流会话共享与流协议研究.pdf_第1页
(计算机系统结构专业论文)集群流媒体缓存中流会话共享与流协议研究.pdf_第2页
(计算机系统结构专业论文)集群流媒体缓存中流会话共享与流协议研究.pdf_第3页
(计算机系统结构专业论文)集群流媒体缓存中流会话共享与流协议研究.pdf_第4页
(计算机系统结构专业论文)集群流媒体缓存中流会话共享与流协议研究.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(计算机系统结构专业论文)集群流媒体缓存中流会话共享与流协议研究.pdf.pdf 免费下载

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

文档简介

华中科技大学硕士学位论文 摘要 随着流媒体服务的爆炸式增长,传统的流服务模式一客户端流媒体服务器呈 现出新的问题:首先,随着客户的大量增长,流媒体服务器的负载越来越大,服 务器响应越来越慢,导致流服务的实时性得不到保证;其次,客户端的播放延迟 增大,严重影响了流媒体服务的“流”特性;其三,传统的一点( 流媒体服务器) 对多点( 客户端) 无法实现流服务的共享,无形间增加了广域网络的带宽消耗和流媒 体服务器的负载;其四,在带宽波动大、网络延迟大的广域网环境下难以实现稳 定、实时的流服务。 为了解决上述问题,同时与传统的服务器f 客户端流服务模式相兼容,本文采 用缓存代理服务器技术实现了集群流媒体缓存代理服务器系统。该系统引入集群 架构以提供全局的、可扩展的缓存代理服务机制;实现了缓存代理端的流媒体传 输协议:采用动态共享运行缓冲区算法实现了分层缓存机制( 全局磁盘缓存和内存 缓存) 以支持更多稳定、实时的并发流;利用流会话共享机制实现了客户请求聚集, 从而减少磁盘0 同时能服务更多的客户;提出了单一流映像,以支持预取流和缓 存流的统一,从而保证代理端服务流对客户的完全透明;设计并实现了基于包反 馈信息的流数据预取机制,从而减少了客户端的“r e b u 蛐8 ”次数;提出了适合 于缓存代理服务器的流缓存准入控制策略,保证了流服务的q o s 。 目前国内还没有实际可用的流媒体缓存代理系统。与国外同类流媒体缓存代 理系统相比,本系统有明显的优势:( 1 ) 引入的流会话共享机制可以提供更多稳定 的并发流;( 2 ) 提出的动态共享运行内存缓存机制能支持客户诸求聚集和流会话共 享;( 3 ) 前缀缓存技术和段机制的缓存技术的有机融合实现了缓存数据的高效存取 管理;( 4 ) 网络流预取策略和缓存准入控制机制提高了缓存结构的智能性。 系统采用c c 十+ 语言实现了基于l i n u x 平台的集群流媒体缓存代理系统。实验 测试表明,该系统具有良好的可扩展性,减少了客户端播放过程中的网络延迟和 抖动以及服务器端的网络负载,同时提高了流服务质量。 关键字:集群,流媒体,缓存,流协议,流会话共享,预取 华中科技大学硕士学位论文 a b s t r a c t w i t ht h ee x p l o s i v eg r o w t ho ft h em u l t i m e d i as t r e a m i n gs e r v i c ei nt h ep a s tf e w y e a r s ,t h et r a d i t i o n a lc l i e n t s e r v e rt o p o l o g ya r c h i t e c t u r eh a st h ef o l l o w i n gp r o b l e m s : f i r s t l y , w i t l lt h ei n c r e a s eo f c l i e n t t h el o a do f s t r e a m i n gs e w e ri sh e a v i e ra n dh e a v i e r , w h i c hc a u s e st h es l o w r e s p o n s ef o rs t r e a m i n gs e r v e ra n d c a l ln o tg u a r a n t e et h er e a l t i m e o fs t r e a m i n gs e r v i c e ;s e c o n d l y , t h ei n c r e a s eo f p l a y b a c kd e l a ys e r i o u s l ya f f e c t s t h e c h a r a c t e r i s t i c so f s t r e a m i n gs e r v i c e ;t h i r d l y , t r a d i t i o n a l m o d e ss u c h a so n e p o i n t ( s t r e a n l i n gs e r v e r ) y sm u f i p l ep o i n t ( c l i e n t ) c a m a o ts h a r et h ed i f f e r e n ts e s s i o n s , w h i c hc o n s u m e sm o r eb a n d w i d t h sa n dh e a v i e st h el o a do fs t r e a m i n gs e r v e r ;l a s t l y , u n d e rt h ep o o rw a n e n v i r o n m e n t ,t h i sa r c h i t e c t u r ec a r ln o tp r o v i d es t a b l ea n dr e a l - t i m e s t r e a m i n gs e r v i c e t oa d d r e s st h ep r o b l e m sm e n t i o n e da b o v e ,n o t m o d i f y i n gt h em o d e o fc l i e n t s e r v e r a ta 1 1 t h i sp a p e r i m p l e m e n t sc l u s t e r - b a s e ds t r e a m i n gc a c h i n gp r o x ys e r v e rs y s t e mw i t h t h et e c h n i q u eo f c a c h i n gp r o x ys e r v e r , i nt h i ss y s t e m ,w ei n t r o d u c e sc l u s t e ra r c h i t e c t u r e t o p r o v i d eg l o b a l a n ds c a l a b l e s t r e a m i n gc a c h i n gp r o x ys e r v i c em e c h a n i s m ;w e i m p l e m e n ts t r e a m i n gm e d i at r a n s f e rp r o t o c o lo nc a c h i n gp r o x ye n d ;w ei m p l e m e n t l a y e r e dc a c h i n gm e c h a n i s m ( g l o b a ld i s kc a c h i n ga n dm e m o r yc a c h i n g ) u s i n gd y n a m i c s h a r i n gr u n n i n gm e m o r y b u f f e ra l g o r i t h mt os u p p o r tm o r es t a b l ea n dr e a l - t i m ep a r - d l e l s t r e a m s ;w ei m p l e m e n tc l i e n tr e q u e s ta g g r e g a t i o nb ym e a n so fs t r e a m i n gs e s s i o n s h a r i n gt or e d u c ed i s ki 0a n ds e r v em o r eu s e r ;w ep r o p o s es i n g l es t r e a m i n gi m a g et o s u p p o r t t h eu 对每o f p r e - f e t c h i n g s t r e a m i n g a n d c a c h i n gs t r e a m i n g ,w h i c hg u a r a n t e e st h e p r o x ys t r e a m i n g o ft r a n s p a r e n c yf o rc l i e n t ;w e d e s i g n a n di m p l e m e n t s t r e a m i n g p r e f e t c h i n gm e c h a n i s mb a s e do np a c k e tf e e d b a c ki n f o r m a t i o nt or e d u c et h en u m b e ro f r e b u f f e r i n g o nc l i e n te n d ;w em i l gf o r w a r ds t r e a m i n gc a c h i n ga d m i s s i o nc o n t r o l p o l i c yf i tf o rs t r e a m i n gc a c h i n gp r o x y s e r v e rt og u a r a n t e et h eq o so f s t r e a m i n gs e r v i c e c u r r e n t l y , t h e r ei sn o ta v a i l a b l es t r e a m i n gc a c h i n gp r o x ys e r v e ri nc h i n a c o n t r a s t t o f o r e i g ns t r e a m i n gc a c h i n gp r o x ys e r v e r , o u rs y s t e mh a st h ef o l l o w i n gp r o m i n e n t a d v a n t a g e s :( 1 ) i n t r o d u c e ds t r e a m i n gs e s s i o ns h a r i n gm e c h a n i s ms u p p o r t sm o r es t a b l e , r e a l t i m e p a r a l l e ls t r e a m s ;( 2 ) p r o p o s e dd y n a m i c s h a r e d r u n n i n gm e m o r yc a c h i n g i i 华中科技大学硕士学位论文 m e c h a n i s mc a l lp r o v i d et h es u p p o r tf o rc l i e n tr e q u e s ta g g r e g a t i o na n ds t r e a m i n gs e s s i o n s h a r i n g ;( 3 ) t h ec o m b i n a t i o n o f p r e f i xc a c h i n ga n ds e g m e n t b a s e dc a c h i n gt e c h n i q u e s i m p l e m e n t e f f i c i e n t s t r e a m i n gc a c h i n g d a t a a c c e s s i n ga n dm a n a g e m e n t ;n e t w o r k p r e f e t c h i n gp o l i c ya n dc a c h i n ga d m i s s i o n c o n t r o lm e c h a n i s m i m p r o v e t h ei n t e l l i g e n c e o f s t r e a m i n gc a c h i n g w ei m p l e m e n tp r o x ys y s t e mo nt h el i n u xp l a t f o r mw i t hc c 抖l a n g u a g e t h e p e r f o r m a n c et e s tp r e s e n t st h a to u rs y s t e m h a se x c e l l e n ts c a l a b i l i t y , r e d u c e st h en e t w o r k d e l a ya n dj i t t e rd u r i n gc l i e n tp l a y b a c ka n d w o r k l o a do f s t r e a m i n gs e r v e r a d d i t i o n a lo l t r s y s t e mi m p r o v e s t h eq o so f s t r e a m i n gs e r v i c ea p p a r e n t l y k e yw o r d s :c l u s t e r , s t r e a m i n gm e d i a , c a c h e ,s t r e a m i n gp r o t o c o l ,s t r e a m i n gs e s s i o n s h a r i n g ,p r e f e t c h i n g 1 1 1 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的 研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个 人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体, 均已在文中已明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文版面使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有 权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和 借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密口,在年解密后适应本授权书。 本论文属于 不保密影 不保密彤 ( 请在以上方框内打“4 ”) 月l 日 土2 日 易口d 戳严 嚣 位期 氰争嚣 睁飙| 日 士勿 游日 、斟 名月 签芦嫦咿 藿i 学弧 华中科技大学硕士学位论文 1 绪论 本章首先分析当前流媒体服务中存在的问题,然后概述流媒体缓存代理系统 的国内外研究现状以及未来发展方向,最后在此基础上提出集群流媒体缓存代理 系统。 1 1 问题提出 在利用i n t e r a c t 对分布在各地计算机上的信息进行访问时,服务器过载、网络 捐j 塞、响应时间过长等问题会严重阻碍访问质量的提高。特别是由于现有i n t e r n e t 缺乏实时通信所必需的对延迟、抖动的支持,带来了用户可感知的低回放质量, 大大限制了流媒体传输的普及。 传统的客户一服务器流服务模式存在如下的问题t 客户端播放延迟大,播放 抖动频繁;流媒体服务器负载重;网络拥塞。然而从客户的角度看需要降低播放 启动延迟,减少“r e b u f f e r i n g ”次数等;从网络的需求看需要减少广域网范围的带 宽需求,减少网络拥塞:从流媒体服务器方面看需要减轻服务器负载,提高最大 并发流数。 缓存代理技术是解决上述难题的有效方法,缓存代理的核心单元是局域网内 进行调度与管理的代理服务器和进行数据缓存的缓存服务器。当用户向远程服务 器发送对特定对象的请求时,代理服务器首先对该请求进行处理。如果可能,代 理服务器将把请求重定向到缓存服务器并由它使用已缓存的内容对该请求进行服 务;否则,代理服务器就将该请求转发给最合适的上层代理服务器或远程服务器。 本文研究在集群架构下,结合流媒体服务器的最新技术和缓存代理的相关原 理,引入国际最前沿的流媒体缓存代理技术,实现了集群流媒体缓存代理服务器。 该系统采用国际标准的流媒体控制交互协议r t s p ( r e a lt i m es t r e a m i n gp r o t o c 0 1 ) 和流媒体传输协议r t p r t c p ( r e a lt i m et r a n s p o r tp r o t o c o l r e a lt i m et r a n s p o r t c o n t r o lp r o t o c 0 1 ) 。 1 2 流媒体缓存代理系统国内外研究现状 1 2 1 国内研究现状 文献【3 】将基于协作的多媒体缓存代理技术引入无线网络,提出一种新的分区 缓存管理模型。它设计了可为移动客户提供高效流式媒体服务的m o b i l e c a c h e 系 统,并提出一种基于分区的缓存管理模型。该模型为参与协作的每个代理引入静 华中科技大学硕士学位论文 态分区,并采用一种集中式的管理策略周期性更新,从而保证系统以全局优化的 方式高效稳定的协作。该缓存代理管理模型的核心目标是提高代理的协作效率和 无线环境f 流式媒体的质量。 传统的流媒体代理的管理、调度和缓存功能都由同一台服务器去承担,但该 结构缺点很明显:第一,用户请求的所有数据f 包括已缓存数据) 都要通过代理服务 器转发,严重占用了其系统资源,易产生的瓶颈。第二,可扩展性差,其缓存容 量受到代理服务器可挂接硬盘数限制。第三,由于代理服务器要负责提供多种服 务,其系统资源占用较多,必然会严重影响其缓存服务质量;同时服务器的多功 能性也易造成其平均无故障时间的下降,影响系统稳定性。文献 4 】为适应流媒体 网络缓存特点,解决现有缓存代理方案所存在的问题,提出了使用附网存储的流 媒体缓存代理技术。结构如图i i 所示。 图1 i 附网缓存模型示意图 1 2 2 国外研究现状 贝尔实验室开发的流媒体缓存系统t 4 1 采n 了如下的技术:( 1 ) 流对象的分段用 于缓存;( 2 ) 用m e m o r yr i n gb u f f e r 的机制实现客户请求聚集;( 3 ) 用数据传输速 率控制的技术填充客户的初始缓冲区来减少播放启动延迟。系统模块图如图1 2 所 示。 t 0 倚n c 1 1 日亿 图1 2 流媒体缓存系统模块示意图 2 华中科技大学硕士学位论文 文献5 实现了一个分布式的协作流缓存。它通过软件的方式将许多分布式的 流缓存整合成一个可容错的、可扩展的缓存。该系统专注于缓存数据放置和替换 机制。在整个系统中,融合了下列新的技术:( 1 ) 实现了一个高效的随机分布式的 数据分布策略;( 2 ) 实现了一个考虑了影片c l i p 流行度和影片c l i p 内部流行度的新 型的、容错的多媒体数据分布策略;( 3 ) 实现了一个基于段( s e g m e n t ) 再次访问倾向 性的本地替换策略;( 4 ) 实现了一种动态数据替换或莺分布的机制。它可以以最小 的开销在分布式缓存中找到相应的数据。系统架构如图1 3 所示 图1 ,3 分布式流缓存架构 文献【6 提出了自组织的协作式缓存结构。该系统提出7 - - 种技术使缓存系统 更好的支持流媒体服务:( 1 ) c h u n k - s e g m e n t 技术:流对象由多个c h u n k 组成。而 每个c h u n k 又由多个s e g m e n t 组成。这样带来磁盘空间的竞争减少,因而磁盘可以 用来最有效的缓存很大流对象的最流行的部分;( 2 ) d y n a m i c c a c h i n g 技术:基于两 个流请求在时间连续上可能的相关性,引入t e m p o r a l d i s t a n c e 的概念,进而可以隐 藏在这些请求之间的t e m p o r a l d i s t a n c e ,用一个流来服务多个在时间上连续的相似 请求。这样节省了代理服务器的带宽,减少了代理服务器的资源消耗,提高了代 理服务器的性能;( 3 ) s e t f - o r g a n i z i n gc o o p e r a t i v ec a c h i n g 技术:提出了可扩展的状 态分发机制,该机制使得松耦合的缓存形成一个对不同客户透明的缓存系统。 文献【7 首先提出了p r e f v cc a c h i n g 的概念。缓存流行影片的最初始的音,视频 帧当缓存代理服务器接收到客户的流请求时,代理服务器开始发送r t p ( r e a lt i m e t r a n s p o r tp r o t o c 0 1 ) 数据包流给客户的同时从原始服务器请求后续的数据流。采用这 种技术的代理系统相比其它的系统有如下优势:( 1 ) 在原始服务器和代理系统之侧 的“网络弱服务”模型中,可以减少延迟、吞吐量和丢包率;( 2 ) 可以使得对客户 端的回放缓冲区实行“向前平滑”。 华中科技大学硕士学位论文 文献f 8 1 首次提出了s e g m e n t - b a s e d c a c h i n g 的概念。流媒体文件由相同大小的 b l o c k 组成,而s e g m e n t 由不同数目的b l o c k 组成。缓存准入和替换策略在综合考虑 引用频率和段距离文件的大小的基础上给每个段赋一个不同的值。这种基于段的 缓存策略不但增加了字节命中率,而且也降低了延迟播放的请求客户数。 文献【9 】首次较详细的论述了联合服务器和缓存代理进行视频服务的相关问 题。文中用仿真的方式详细比较了b a t c h 、p a t c h i n g 和p r e f i x 技术之间的关系。但 这种联合调度需要服务器的多播支持,并且在系统部署中需要修改原始服务器, 对用户的透明性不好,这些缺点限制了系统在实际中的使用。 文献 i o 】首次采用了“类集群”架构实现流媒体缓存代理服务器m i d d l e m a n 。 它由许多代理服务嚣和单一的协调器组成。协调器负责实时跟踪代理服务器的内 容和在整个系统范围内进行缓存替换的决策;代理服务器负责与用户交互和管理 视频文件。系统架构图如图1 4 所示。 圈1 4 “类集群”代理架构 l o e a l p r o x ys e r v e r 1 3 文章的框架结构 第一章全面概述了传统流媒体服务模式中存在的问题,仔细分析了流媒体缓 存代理系统的国内外研究现状以及未来发展方向。提出了集群流媒体 缓存代理系统。 第二章简单分析了流媒体传输的基本概念和相关特点,并在此基础上论述了 国际标准的流媒体控制交互协议r t s p 和流媒体传输协议r t p ,r t c p 。 第三章着重讨论了缓存代理服务器的系统结构与功能模块。重点论述了系统 中各节点的功能及客户r t s p 请求的处理流程。同时从实现的角度详细分析了控制 节点和缓存节点中的模块结构、功能及其它们之间的相互关系。 第四章深入研究了缓存代理服务器的流会话共享机制,从缓冲区生命期管理、 4 9 9 9 固固 华中科技大学硕士学位论文 d s r m c 缓冲区动态回收、内存缓存置换策略、内存缓存状态变迁和流状态变迁及 缓存准入控制策略等方面进行详细的论述。 第五章详尽探讨了缓存代理服务器的流协议实现,从单一流映像、r t p r t c p 协议处理及流预取机制等方面进行详细的论述。 第六章具体描述本系统的测试实例,并对系统性能进行了评测和分析。 第七章对全文进行总结并展望了未来的工作;最后是致谢和参考文献。 5 华中科技大学硕士学位论文 2 流式传输和流媒体传输协议分析 本章将要阐述流式传输的基本概念和特点。并从实现的角度分析国际标准的 流媒体交互控制协议r t s p 和流媒体传输协议r t p r t c p 。 2 1 流式传输基础 流媒体实现的关键技术就是流式传输。流式传输定义很广泛,现在主要指通 过网络传送媒体f 如视频、音频) 的技术总称。其特定含义为通过i n t e r n e t 将影视节目 传送至t j p c 机。实现流式传输有两种方法:实时流式传输( r e a l t i m es t r e a m i n g ) 和顺序 流式传输( p r o g r e s s i v es t r e a m i n g ) 。一般说来,如视频为实时广播,或使用流式传输 媒体服务器,或应用如r t s p 的实时协议,即为实时流式传输。如使用h t t p ( h y p e r t e x tt r a n s f e rp r o t o c 0 1 ) 服务器,文件即通过顺序流发送。顺序流式传输是顺 序下载,在下载文件的同时用户可观看在线媒体,在给定时刻,用户只能观看已 下载的部分,面不能跳到还未下载的部分,顺序流式传输不象实时流式传输在传 输期问可以根据用户连接的速度做调整。由于标准的h t t p 服务器可发送这种形式 的文件,也不需要其他特殊协议,它经常被称作h t t p 流式传输。 顺序流与实时流相比,唯一好处是能够直接利用现有的软件资源,即任何w e b 服务器都可以兼作流媒体服务器。而后者由于其专门面向网络流媒体的设计雨越 来越显出其优势,其优势表现在以下几个方面: 1 实时流有更高的网络传输效率 实时流一般是通过u d p ( u s e rd a t a g r a mp r o t o c 0 1 ) 传输的,而u d p 是一种轻量 级的传输协议,它将传输质量( 比如拥塞控制、差错控制等) 的控制权交给了用户层, u d p 还支持多播,这使实时流服务器可以利用有限的带宽将现场节目同时传送到 许多个用户。相比之下,顺序流是使用t c p ( t m n s f e rc o n t r o lp r o t o c o d 方式,其底 层诸多的传输控制对于多媒体应用来说不但不必要,反而会浪费网络带宽。另外, u d p 包在互联网络上比t c p 包有着更高的路由优先权。 2 实时流有着更高的系统资源利用效率 实时流的实现是专门为多媒体传输优化的,包括磁盘、内存和网络等等。实 时调度的结果使系统资源利用率大为提高。一个设计良好的实时流服务器支持的 并发用户个数,比为传输小文件而设计的w e b 服务器通常要高2 3 倍。 3 实时流会给用户带来更好的服务质量 由于实时流的流控功毹,服务器能够自动调整电影的质量等级。比如说在网 络比较拥塞时,服务器能自动丢掉视频帧当中的一些非关键帧。这样客户仍然能 华中科技大学硕士学位论文 够欣赏连续的电影,而不会有顺序流中不断出现的“r e b u f f e r i n g ”的干扰。 4 实时流能够较好地保证电影的版权 顺序流给用户以下载和保存的可能,而这在实时流中要困难得多。 2 2 流媒体传输协议 2 2 1 实时传输协议r t p 与r t c p r t p 是i n t e r n e t 上针对多媒体数据流的一种传输协议。r t p 被定义为在一对一或 一对多的传输情况下工作,其目的是提供时间信息和实现流同步。r t p 通常使用 u d p 来传送数据,当应用程序开始一个r t p 会话时将使用两个端口:一个给r t p , 一个给r t c p 。r t p 本身并不能为按顺序传送数据包提供可靠的传送机制,也不提 供流量控制或拥塞控制,它依靠r t c p 提供这些服务。通常r t p 算法并不作为一个 独立的网络层来实现,而是作为应用程序代码的一部分。实时传输控制协议r t c p 和r t p 一起提供流量控制和拥塞控制服务。在r t p 会话期间,各参与者周期性地传 送r t c p 包。r t c p 包中含有已发送的数据包的数量、丢失的数据包的数量等统计 资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷 类型。r t p 和r t c p 配合使用,能以有效的反馈和最小的开销使传输效率最佳化。 2 2 2 实时流协议r t s p 实时流协议r t s p 定义了客户和服务器程序之间如何进行媒体播放控制的交 互。r t s p 通常和r t p 结合起来使用。服务器和客户在r t s p 命令通道上交换控制 信息,而服务器通过r t p 协议来完成数据传输。r t s p 和h t t p 协议在很多方面相 似,其主要的一点不同是h t t p 协议是单向的,即请求只由客户机发出,服务器 只负责响应:而对于r t s p ,客户机和服务器都可以发出请求,即r t s p 可以是双 向的。一个r t s p 客户服务器的标准通信模式如图2 1 所示。 图2 1r t s p 客户朋务器标准通信模式 华中科技大学硕士学位论文 2 2 3 流媒体体系结构 衡量流媒体特性的几个最重要的标准就是同步、管理和播放的性能。在可管 理数量的空间存储文件同时,使视频和声音组件尽量小,可在计算机或通过网络 连接正确播放。为有效解决这些问题,开发出两种技术:流体系结构和编码解码 器( c o d e c ) 。体系结构为媒体发布提供整体架构和同步机制,编码解码器是体系 结构内更小的组件。例如,q u i c k t i m e 与w i n d o w sm e d i a 属体系结构,而s o r e n s o n v i d e o 与m p e g 4 为视频编码解码器,r e a l a u d i o 和w m a ( w i n d o w sm e d i aa u d i o ) 是 声音编码多媒体体系结构涉及数字视频的处理和同步。多媒体体系结构有时被称 为格式,其实这是一种误解,格式指特定体系结构下采用某种编码算法生成的文 件结构。除此之外,体系结构还控制计算机如何处理流媒体,如文件转换、视像 如何在屏幕上播放。尽管不同体系结构有着诸多共同点,其间也存在很多差别。 有些专用于网页视频回放,有些更适合于v c d ,并且在特定系列计算机上发挥最 佳。没有一个最好的体系结构,只有最适合用户的应用体系。 流式文件格式经过特殊编码,使其适合在网络上边下载边播放,而不是等到 下载完整个文件才能播放。可以在网上以流的方式播放标准媒体文件,但效率不 高。将压缩媒体文件编码成流式文件,必须加入一些附加信息,如计时、压缩和 版权信息。 2 3 小结 本章主要介绍了流式传输的基本概念,在此基础上与传统的顺序流作了相关 的比较,揭示了流传输优于顺序传输的三个特点:有更高的网络传输效率:有着 更高的系统资源利用效率;给用户带来更好的服务质量,指出了流传输适合于网 络流媒体传输。然后从协议规范的角度阐述了实时流媒体协议r t s p 和实时流传输 协议r t p r t c p 的特征。最后从音视频格式和管理方面简单介绍了流媒体的体系结 构。 华中科技大学硕士学位论文 3 集群流媒体缓存代理服务器系统结构和功能模块 基于扩展性、可靠性和性能上的考虑,本系统采用集群可扩展框架。为了兼 容当前主流的流媒体服务器,本系统采用了国际标准的流媒体协议r t s p , r t p r t c p 。下面分别对系统结构和功能模块进行详细的说明。 3 1 系统结构 图3 1 展示了本文提出的基于集群的流媒体缓存代理服务器c s c p s ( c l u s t e r - b a s e ds t r e a m i n gc a c h i n gp r o x ys e r v 盯) 。它由四种类型的节点组成:客户请 求节点c r n ( c l i e n t r e q u e s t n o d e ) 、缓存调度节点c d n ( c a e h e d i r e c t o r n o d e ) 、流缓 存节点s c n ( s t r e a m i n g c a c h i n g n o d e ) 和原始服务器节点o s n ( o r i g i n s e r v e r n o d e ) 。 在下面的论述中,首先简单描述一下每种节点类型的功能,然后介绍了基于该结 构的客户流请求处理流程。 图3 1 流媒体缓存代理服务器体系结构 9 华中科技大学硕士学位论文 3 1 1c s c p s 系统节点功能 c r n :根据用户的播放行为,客户端播放软件产生相应的r t s p 命令( 如 d e s c r i b e 、p l a y 、p a u s e 、t e a r d o w n 等) ,并按照r t s p 协议的格式将该命令包发送 到v o ds e r v e r 。在客户端配置了流代理的情况下,流代理服务器拦截到该命令包, 并由它充当v o ds e r v e r 对其进行相关的处理。 c d n :c s c p s 系统的单一入口点,即客户端只要在流代理设置中将代理设置 为c d n ,客户可以透明的访问整个缓存代理系统。该节点主要有三个功能:( 1 ) 当 系统中没有缓存客户请求的影片,则c d n 根据一定的负载平衡算法,将该流请求 调度到某一个合适的缓存节点上执行;( 2 ) 当系统中缓存了客户请求的影片,将该 请求调度到有该影片数据的节点上;( 3 ) 在系统运行过程中,定期收集必要的信息, 进行全局磁盘缓存置换。 s c n :接收来自c d n 的r t s p 请求包,解析并提取有用的信息,然后直接向 客户端发送r t s p 响应包,同时在缓存命中的情况下直接将流数据发送给客户,否 则发送请求给原始服务器请求流数据。 0 s n :即v o ds e r v e r ,提供对客户的流媒体服务。 3 1 2 客户r t s p 请求处理流程 相比传统的流服务器一客户模式,在流服务器流代理服务器一客户模式下, 流请求处理发生了很大的变化。在图3 1 中以最传统的、最经典的播放流程来阐明 r t s p 请求的流程:当用户需要在线点播影片的时候,c r n 发送标准的r t s p 命令 包给预先设置的流代理服务器,也就是c d n ( ) 。c d n 在全局的对应表( 该表的条 目信息是影片,节点i p 对) 中查找该影片对应的缓存节点,假如没有对应的s c n , 根据负载调度算法选择一个缓存节点s c n ,然后将该请求发送到s c n 节点( ) : 假如找到相应的节点s c n ,则直接发送请求到s c n ,。此时s c n 节点开始处理 r t s p 请求,对应上述两种情况,后续的处理也要考虑以下两种情况: 缓存命中:由于s c n 缓存了请求影片的部分或全部,它可以直接发送r t s p 响应和流数据给客户( ) 。 缓存未命中:s c n 节点向原始服务器发r t s p 请求( ) ,旦收到r t s p 请求, 原始服务器开始解析并处理该请求,向s c n 节点发送r t s p 响应和相应的流数据 f ) ,这时s c n 节点在缓存这些流数据的同时提供对客户的流服务( ) 。 华中科技大学硕士学位论文 3 2 功能模块 为了提高系统的扩展性,系统采用了分层化的方法明晰系统中各个模块在系 统中的层次,模块化的方法明确系统中各个模块在系统中的功能。从宏观上看, 整个系统模块分为两部分:控制节点和缓存节点。下面分别对其进行阐述。 3 2 1 控制结点模块分析 根据t c p 协议规范,应用层数据的发送和接收必须在通信双方通过三次握手 建立好连接之后才能进行。控制节点首先和客户端建立t c p 连接,之后得到客户 端r t s p 请求,在进行调度之前,必须分析客户端r t s p 请求内容,根据内容结合 流媒体对象定位表找到最适合调度的缓存节点机,然后将请求转发给该节点机, 但缓存节点在此之前并没有与客户端建立t c p 连接,所以简单的转发并不能解决 问题。现有的解决方法有两种:第一种方法是t c p 拼接( t c ps p l i c i n g ) ,这种方法 要求控制节点在集群中充当客户端和缓存节点之间的第七层交换机( l a y e r - 7 s w i t c h ) ,即控制节点在将r t s p 请求转发到缓存节点之前先与该节点建立好t c p 连接,然后利用两个t c p 连接通道在客户端和缓存节点之间传递r t s p 消息。第 二种是t c p 传递( t c ph a n d o f f ) ,这种方法要求控制节点在转发客户端r t s p 请求 之前,先将其与客户端建立好的连接“传递”到缓存节点机,让缓存节点感觉和 客户端建立了连接。两种方法各有利弊:第一种方法要求控制节点必须主动与缓 存节点建立连接,并且缓存节点的响应消息都必须经过前端机转发给客户机,在 数据量很大时控制节点难免成为瓶颈,这种方法的优点是不需要修改缓存节点操 作系统内核,所以通常比较稳定。后一种方法中缓存节点的响应消息不经过控制 节点而直接通过网关返回给客户,减小了客户端响应延迟且降低了前端机的负载, 但需要修改缓存节点的操作系统内核,不但降低了系统稳定性而且使得软件跨平 台移植困难。由于控制结点实际需要转发的数据量较小( 它只转发r t s p 消息,不 转发流媒体数据) ,本系统采用t c p 拼接方式实现了控制结点端基于内容的调度。 为了避免内核层与应用层之间频繁的数据拷贝以及减少上下文切换开销,系 统在l i n l l ) ( 操作系统内核b s d 网络层实现了控制结点模块。控制节点模块主要包 括:( 1 1 连接管理模块;( 2 ) r t s p 协议分析模块;( 3 ) 调度模块;( 4 ) 负载收集模 块;( 5 1 全局置换模块。这些模块的结构与关系如图3 2 所示。 连接管理模块负责在l i n u x 内核网络b s d 套节字层监听客户端连接请求,并 与客户端建立t c p 连接,并从该连接网络包中提取出应用层数据( t c p 协议头后数 据1 ,之后激活r t s p 协议分析模块并将提取出的数据交由r t s p 协议分析模块处 理。r t s p 协议分析模块解析客户端d e s c r i b e 命令并获取其中s d p 信息,从而得 华中科技大学硕士学位论文 到客户端点播的流媒体对象名称,然后激活调度模块并将流媒体对象名传给该模 块分析。调度模块查找媒体对象定位表,如果从表中找到对应的流媒体对象名, 泷明客户端请求命中某台缓存节点,否则说明新请求到来。在命中的情况下,调 度模块激活连接管理模块创建到该缓存节点的t c p 连接,连接管理模块负责将之 前提取出的应用层数据捎带上客户端i p 地址通过新建立的t c p 通信管道发送给缓 存节点;在未命中的情况下,调度模块调用负载收集模块获得缓存节点当前负载 状况f 综合考虑已有连接数目c 和缓存空间利用率u ,负载因子l 的算法定为:l = c u ) ,并激活连接管理模块创建到l 值最小的缓存节点的t c p 连接,之后将前 面提取出的应用层数据捎带上客户端口地址通过新建立的t c p 通信管道发送给该 缓存节点。负载收集模块负责定时与缓存节点通信以获得集群缓存节点负载信息, 并及时更新缓存节点负载表,同时还为调度模块提供缓存节点受载数据。当一定 数目的缓存节点的空间利用率达到预定阈值时,激活全局置换模块,由全局置换 模块通过连接管理模块向缓存节点发出全局置换命令( 通过u d p 协议) 。 三= 数据流+ 控制流 图3 2 控制节点模块结构 3 2 2 缓存结点模块分析 主要包括r t s p 连接管理模块、r t p 会话管理模块、分层的缓存管理模块、负 载监视模块和全局置换接收模块五个模块。下面分别描述五个模块及其他们之间 的关系。 1 r t s p 连接管理模块 从流媒体服务器的角度看,流媒体缓存代理服务器充当的是客户的角色;从 客户的角度看,流缓存代理服务器充当的是服务器的角色。在充分考虑到这个特 点的基础上,精心设计了两个子模块;r t s p 客户端和r t s p 服务器。前者由一个 类c c l i e n t c m x 完成与流媒体服务器方面的控制交互;后者由一个类c s e r v e r c n x 完 华中科技大学硕士学位论文 成与客户端的控制交互。 2 r t p 会话管理模块 r 翠会话管理模块在缓存代理服务器中是一个重要的协议处理部件,它包含 从原始服务器流预耿模块、客户端流数据发送模块、准入控制模块、以及缓存交 互模块,如图3 3 所示。 ! 二二二二二:毒控制信号! 二二二 数据口模块 图3 3 缓存节点模块结构 3 缓存管理模块 缓存管理模块在缓存代理服务器中扮演着一个核心的作用。在整个系统中, 针对目前大多数流缓存系统中,只考虑了磁盘缓存,而忽视了内存缓存的情况, 本文提出了分层缓存管理思想:因为可用的磁盘空间比较大,可以存放大量的流 数据。所以磁盘缓存负责存储、管理、置换这些流数据,最终的目的是保存系统 中最流行的影片数据。与磁盘相比,可用的物理内存空间比较小,不能存放大量 的数据,需要精心设计内存管理模型,以最小的内存空间和时间开销获得最大的 性能。在其中提出了流会话共享、用户请求聚集等技术。具体描述见4 2 节。 4 负载监视模块 负载监视模块对外与控制节点负载收集模块通信,对内与磁盘缓存管理模块 通信以获取缓存空间利用率,并通知控制结点负载收集模块。 华中科技大学硕士学位论文 5 全局置换接收模块 浚模块接收控制节点全局置换模块消息,并通知磁盘缓存管理模块中置换模 块进行置换操作。 3 3 小结 针对目前流媒体缓存代理服务器中普遍存在的可扩展性、高性能等方面的问 题,本章提出了基于集群架构的流媒体缓存代理服务器。文中从系统结构和功能 模块两个方面阐述了缓存代理服务器的结构和设计主题。在系统结构中,着重介 绍了系统中客户请求节点、缓存调度节点、流缓存节点和原始服务器节点的功能 定义和在此集群架构下客户r t s p 请求的处理流程;在功能模块中,首先比较了 t c p 拼接和t c p 传递技术的特点,并进一步将基于内容的调度机制引入控制节点, 有效的提高了系统调度r t s p 请求的效率。然后再详细描述

温馨提示

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

评论

0/150

提交评论