(计算机应用技术专业论文)移动终端流媒体传输协议的研究与实现.pdf_第1页
(计算机应用技术专业论文)移动终端流媒体传输协议的研究与实现.pdf_第2页
(计算机应用技术专业论文)移动终端流媒体传输协议的研究与实现.pdf_第3页
(计算机应用技术专业论文)移动终端流媒体传输协议的研究与实现.pdf_第4页
(计算机应用技术专业论文)移动终端流媒体传输协议的研究与实现.pdf_第5页
已阅读5页,还剩48页未读 继续免费阅读

(计算机应用技术专业论文)移动终端流媒体传输协议的研究与实现.pdf.pdf 免费下载

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

文档简介

浙江大学硕士学位论文 摘要 流媒体技术是当前网络应用领域中的研究热点,而流媒体技术与移动终端平台的结合, 则促进了移动流媒体的发展。移动流媒体应用遵循流媒体技术的傲要求,即实时性,平滑 性和同步性。要实现这三个要求,需要开发性能优良的流媒体传输协议。 r t p 协议是传输流媒体数据的主流传输协议。它介于传输层和应用层之间,通过u d p 协议提高传输的实时性,并且在数据传输的同时,主动采集网络传输的状态信息,从而为上 层应用提供了质量控制的手段。然而r t p 协议本身并不处理这些信息,因此完整的传输框 架需要增加质量保证机制,其中主要的部分就是拥塞控制。移动终端流媒体传输协议的拥塞 控制机制不仅需要与r p 协议相结合,也需要与移动终端的性能特点相结合。通过分析与 比较现有拥塞控制机制的原理与表现,针对性地提山一种移动终端自适麻拥塞控制算法,使 r t p 协议的功能得到增强,并通过改进r t p 控制协议的1 作模式,增强了r t p 协议的可扩 展性。 由于目前通用r t p 协议类库基于多线程和s t l 技术开发,不能用在手机等移动终端开 发平台b 网此需要设计与实现一种能够应用在手机上的移动终端流媒体传输协议。这种称 为w m s r l 甲的协议完全基丁r t p 协议原理,并结合上述算法进行性能优化,从而保证传输 的服务质量。通过构造测试模型进行检验,表明w m s r t p 可以与r t p 兼容。将w m s r t p 与通用j r t p 类库进行比较,前者显示出在无线传输领域具有更强的针对性,其工作的实践 意义是显而易见的。 关键词:r t p 移动终端流媒体传输协议q o s 拥塞控制 浙江人学硕j 二学位论文 a b s t r a c t m e d i as t i a m i n gt e d l n o l o g yi so n eo f t h eh o t s p o t si nr e c e n tr e s e a r c ho fn e n o r k i n gd o m a n w i t | lt h ed e v e l o p m e n to f m o b j l ec o m m u l l i c a t i o n ,t h i st e c h n o l o g yi sa p p l j e dm o r ea n dm o r et ot h e m o b ij ed e v ;c e s m e d i as t l a m i n go nm o b i l ed e v i c ea i s of o l l o w st h et 1 1 r e ec o m m o nr e q u i r e m e n t s , w h c ha r eb e i n gr e a l 一t i m e ,n a t n e s sa n ds y n c h 巾n j z a t j o n d e s i g n i n ga h i g h p o w e rt r a n s p o n p r o t o c o ip l a y sac n l c i a lr o l ei nc a r r y i n g0 u tt h eo b j e c t r e a m et 协s p o r tp r o t o c o l ,c a l l e dr t pf o rs h o 吒i st h em a i n s t r e 砌d u r i n ga k n d so f t r a n s p o r tp r o t o c o l s j tm a k e su s eo fu d pt ot 啪s f e rm e d i ad a t a b e c a u s eu d ph e l p st oi m p r o v e t h er e a l t i l n ea b i m y a tt 1 1 es 枷e “m e ,i tc 0 1 l e c t st h es t a l ei n f o n l l “o no fn e t w o r k ,s ot h eu p p e r 1 a y e r 印p l i c a t i o n sc a nc o n t r o l t h et 啪s p o r t 矿o c e s sa c c o r d i n 刚y t h a tj sw h yr t pj st h e 矗r s tc h o i c e j nm e d i as t r e a m i n gt r a n s p o r t a t i o n s i n c er t pd o e s md e a lw i t ht h es t a t ei n f o 玎n 撕o n i t s e i j ti sn e c e s s a r 1 y t oa d d q u a l i t y o f - s e r v i c ea s s u r a n c ei no r d e rt op e 宅c tt h en 甚n s p o np r o c e s s ,a n dt h em o s ti m p o n a n tp a r t i st h ec o n g e s t i o nc o n t r 0 1 a 疗e ra i l a l y z i n gt h ee x i s t i n gc o n g e s t i o nc o n t r 0 1a l g 硎t | l i i l s ,an e w a d a p t v ea l g o r i t h m ,d e s i g n e df 砸t h em o b i l ed e v i c e ,j 8p u tf o n v a r d 1 ti n t r o d u c e st h eb a s i ct h e o r y o fc o n g e s t i o nc o n t m la n dm a k e sb e s to ft 1 1 er t pf r a m e w o r k u s i n gt h i sa l g o r t h m ,a ni n t e g r a t e t r a n s p o r tp m t o c o l l i b r a r yf 研m e d j as t r e a m i n gd a t at r a n s m i s s j o no nm o b i 】ed e v i c e sd e s i g n e da n d i m p l e m e n t e d i to v e r c o m e st h ed i s a d v a n t a g eo ft h eu n i v e r s a li 玎pj i b m n e s ,s u c ha sj r t pa i 】d c c r t p _ t h e yu s em u l t i t l l r e a da n ds t l ,w h ;c ha r en o ta v a i l a b l eo nm o b i l ed e v i c e s i ta l s o e n h a l l c e st h eq u a l i t y o f - s e r v i c ea s s u r a n c ea b i i 时f o rj tc a nj u d g et h ec o n g e s o ns t a t eo f n e t w o r k a n da d a p tt h et r a n s p o r tm e c h a n i s m t h et e s ss h o wt h a tt h ep r o t o c o l l b 偿r y ,c a i i e dw m s r t p ,i sc o m p a l i b i ew i t hj r t p ,o n eo f t h e u n i v e r s a ii 盯p1 i b r 州e s ,柚di ti sm o r es u i t a b l et 0b e 叩p i i e do nt h em o b i l ed e v i c e s np m v e st h a t w m s f u 甲i sc r e a t i v ea n dv a | u a b l e k e y w o r d s : r t p ,m o b i l ed e v i c e ,m e d i as 仃e 锄i n g ,n a n s p o r tp r o t o c o l ,q o s , c o n g e s t i o nc o n t r o l 2 浙江大学硕士学位论文 1 1 研究背景 第一章绪论 随着近年来网络的不断发展,以及计算机性能不断提高,流媒体技术逐步成为一个新的 发展热点。研究人员在这方面已经做了大量积极有效的尝试,推出了一系列相关产品,例如 多媒体会议系统、v o d 系统、数字电视等,这些都成为推动信息化社会发展的重要力量, 是信息生活最直接的表现方式。 上世纪9 0 年代末期,科技界和企业界及时抓住了移动终端产品在普通老百姓中大为普 及的历史机遇,将流媒体技术与移动终端技术紧密结合,推出了诸如手机视频点播、手机实 时监控等移动终端的流媒体产品,为流媒体应用开辟了一个更加广阔的发展空间。据业界人 十估算,到2 0 0 5 年为止,我国的移动数据通信服务用户已经达到一亿五千万,移动数据业 务占到了无线数据业务总量2 0 以上,形成了一个价值近二f 亿元的巨大市场。 1 2 研究意义与目的 尽管移动流媒体业务已经取得了极大的成果,但在度过了最初的扩张划之后,其发展中 的瓶颈问题也不断地显现出来,成为了阻碍移动流媒体发展的巨大障碍。可以把移动流媒体 业务所需要的技术分为如图1 所示的几个层次: 图1 :移动流媒体业务技术层次 浙江大学硕土学位论文 从整个行业层面上归纳,这些瓶颈主要都体现在: ( 1 ) 在网络设备层次上,需要研究外围的网络设备和终端设备产品 力更强、存储空间更大、性能更优异的移动终端设备。 ( 2 )在通讯传输层次上,需要解决如何更好地进行实时传输和通讯 程中的数据损耗,并提高媒体节目的实时性。 努力开发出计算能 尽可能降低传输过 ( 3 )在支撑技术层次上,需要开发效率更高、资源消耗更加低的媒体编解码器;从而为 用户提供更加悦耳炫目的视听产品。 ( 4 )在业务支撑层次上,需要考虑如何科学地进行计费、版权和资源管理;让用户在尽 情享受移动多媒体媒体世界的同时,不必担心自己的合法权利和收益,达到消费者 和商家的双赢。 这些问题之所以产生,最根本原因就在于和其他平台相比,移动流媒体的设备终端具有 特殊性。它们不仅型号繁多,各种设备的性能差异很大,而且计算能力有限,内存空问小, 电池容量也不足。特别是媒体数据的通信环境复杂,无线刚络非常容易受到外界信号的干扰, 增加了我们解决问题的难度。 这些瓶颈中的任何一+ 个问题得到解决,都将带动整个行业的跨越式发展。虽然在硬件问 题上产业界已经取得了日新月异的进展。但仍然不能满足市场的需要。因此,如何在软件上 找到突破口便是个口益紧迫的问题。“市场是推动研究的第一动力”。近几年,如何在以手 机为代表的移动终端l 进行高性能媒体数据传输,已经逐渐成为业界讨论的热门话题。本论 文据此设定目标,希望在现有的软硬件基础之上,研究并设计能够面向移动终端使用的流媒 体传输协议,并尽可能满足与其他媒体协议的兼容性。它目的明确,并且针对性强,直接面 向商业开发的一线。如果有所小成,那么所带来的经济效益是可以预期的。 1 。3 本文的工作 本文在分析介绍流媒体的性能、特点以及实际应削后,将集中关注各种流媒体传输协议 的特点,分析它们的优劣。在深入研究一种主要的流媒体传输协议,即r t p 协议的基础之 上,讨论分析了在无线传输中可能遇到的问题以及解决方案,并提出了一些针对移动终端平 台的改进算法。在此基础上,设计并实现一种可以在移动终端上使用的高性能移动流媒体传 输协议。这种协议的类库必须能够应用于b r e w 手机开发平台,并能够与在p c 端的其他 r t p 类库进行兼容,同时,要求该协议具备较好的拥塞控制等o o s 保证机制。 6 浙江大学硕。l 学位论文 1 4 本文的组织 本文的后续章肖将做如下安排: 第二章,对流媒体技术做一个较为概括的介绍,重点关注于移动流媒体的种类、应用和 特点;分析雨j 比较各种流媒体传输协议的性能和特点。重点介绍r t p 协议的性能、结构和 特点为后续开发下作奠定理论基础。 第三章,在r t p 协议的基础上,讨论如何扩展r t p 协议的性能。在分析了现有的一些 技术基础之上,讨论r t p 协议在移动终端使用模式上的差异,并从r t c p 的发送机制等角 度提出了一种改进的方法。 第四章,重点分析了如何用r t p 协议提供的信息对流媒体数据的无线传输进行服务质 最保证。特别是针对网络拥塞现象,分析了可能产生的原因,讨论如何去判断网络状态并采 取措施,以及选择自适应控制方法存在的问题。最后,提出了几种针对无线网络环境和手机 应用的简易算法。 第五章,在第三章和第四章研究结果的基础卜,设计并实现一种无线流媒体传输协议, 并仔细说明几个主要模块的流程和算法。该协议能够体现流媒体传输的特点,并能够融合部 分应用层的q o s 保证技术,提高协议的拥塞控制性能。同时,与现有的j r t p 协议进行了一 定程度的比较,并分析出现性能差异的原因。 第六章,总结前面几章的基本内容,分析研究t 作中还存在的问题,为今后的 。作如何 开展指明方向。 7 浙江人学砸十学位论文 第二章移动流媒体技术综述 作为流媒体在特殊终端上的一种应用,移动流媒体具备流媒体技术的一般特点和性能。 但同时移动终端的特点也决定了移动流媒体技术具有其他特点,并影响到如何没计流媒体传 输协泌。本章将按顺序对上述提到的几项内容分别进行阐述。 2 1 流媒体概念和特点 流媒体( m e d i as t r e a m i n g ) ,是一种采用“流”式传播的方式,通过网络或者特定的数 字信道下载并插放诸如音频、视频或者其他多媒体文件的丁作机制。 与传统的媒体播放方式不同,用户不需要将多媒体数据全部下载到本地后才能播放,而 仅仅将最初的若干数据先f 载到本地缓冲区中,只要数据积累到可以连续播放的要求后就可 以开始,后面的数据会根据请求不断进入到缓冲i 瓦中,从而使播放片断形成一个完整的数据 流。 流媒体技术的出现,大大降低了用户终端对存储空间的物理要求,也缩短了用户开始播 放媒体节目的等待时间。流媒体技术满足了互联网时代人们对个性化服务的要求。 流媒体具有如下特点: 实时性,即尽可能少的传输延时: 平滑性,即媒体播放要连续,中间尽可能不出现断点;或者在出现媒体流不连续的 情况时,能够采取措施予以补救; 同步性,即语音和视频要同时播放,至少在人们的感觉允许的范围内,等长时间的 音频必须能够和等长时间的视频相匹配。 虽然在大部分情况f ,这二个特定不能同时满足,甚至彼此在一定程度上冲突,但优秀 的流媒体系统总是能够找到相互之间的平衡点,从而使性能达到最优。 实现流媒体关键在丁二进行良好的流式传输。流式传输的定义很广泛,它是对通过网络传 送媒体( 如视频、音频) 的技术的总称。流式传输主要有两种不同的实现模式,即顺序流式 传输和实时流式传输: 顺序流式传输采用顺序下载方式,在下载文件的同时_ j 户可观看在线节目。在任意给定 的时刻,用户只能观看已下载的那部分,而不能跳到还未下载的部分。因此,这种方式不像 实时流式传输那样,可以在传输期间根据用户连接的速度进行调整。顺序流式传输不适合长 片段和有随机访问要求的视频节目,如电影、记录片等,它也不支持现场节目。严格地说, 它是一种点播技术。但对于短篇幅的媒体节目,如手机图片和铃声f 载等,顺序流传输得到 了普遍的应用。 8 浙江大学硕士学位论文 实时流式传输可保证媒体信号带宽与网络连接匹配,可实时观看节目。实时流与h t t p 流式传输不同,它需要专用的流媒体服务器与传输协议。实时流式传输总是实时传送,延时 相对来说非常短,适合现场直播的节目:在某些应用中,用户可对观看的内容进行快进或后 退,从而实现随机访问。理论上,实时流一经播放就不可停【 ,但可进行周期暂停,当然可 以等待的时间会受到限制并不能无限延长。因此,在一些像视频监控或者网络电视等实时 性要求较高的应州,土要都采用实时流式传输方式。 通过表1 ,可以对顺序流式传输和实时流式传输的性能做一个比较【l 】 顺序流式传输实时流式传输 i 服务器类型 h t t ps e r v e rm e d i as e r v e r 等待时间长短 播放控制不可以可以 带宽对播放的影响对下载有影响,对播放无影响很大 对丁直橘和多播的支持不支持支持 表i :流媒体传输方式的性能比较 流媒体的播放有三种方式,分为单播、组播和广播【5 】: 对于“单播”的播放方式,每个接收端与流媒体服务器建立起一对一的连接关系。每个 用户单独向服务器发山数据请求,并由服务器向该用户发送单独的数据拷贝。这对服务器的 性能提山了很高的要求,往往会遇到负载过重导致服务器崩溃的情况。因此,单播的服务器 通常会殴置一些负载平衡措施,如限制用户数目或者建立多服务器的1 二作模式。在无线网络 和广域网中,一般都应用“单播”方式。 “组播”的播放方式使得网络上的数据包数目大大减少。服务器发送同一份数据拷贝给 各个客户端。这个转发过程主要由路由器实现。在一个相对封闭的t 作场合或者局域网应用 里,例如视频会议等,“组播”是最方便的选择。 流媒体应用中很少用到广播的播放方式。因为它对接受方不加区别,这样带来了阿络带 宽的承重负担,造成网络带宽的很大浪费。 2 2 移动流媒体的发展与挑战 正冈为流媒体技术能够利用较少的存储空间播放较长的多媒体文件,它被越来越多地应 用到数据移动业务领域。在手机增值业务市场流媒体技术打破了通过发送短信、彩信、新 闻等静态图像和文字内容提供服务的传统格局,形成了一个融合r 声音、文字、图像的多功 能媒体世界。 目前,移动流媒体的主要应用包括以f 方面【1 】: 9 浙江大学硕士学位论文 ( 】) 信息服务:包括财经信息、新闻和即时体育播报、天气信息等服务。用户只须通过简 单的接入户站点即可获取大量信息,也可以通过订阅的方式使州信息推送服务。信息的内 容可以按流媒体的方式提供。 ( 2 ) 娱乐服务:包括卡通、音频、视频以及电视节目的精彩片段下载播放和在线播放。还 可以提供移动游戏、阁手机看电视等服务。 ( 3 ) 通信服务:包括含有流媒体内容的彩信、视频电话会议等,使人们的沟通更加方便, 更为丰富多彩。 ( 4 ) 监控服务:主要包括交通监控和家庭监控。交通监控使交通部门能够实时察看高速公 路和主要道路的交通状况,可查看指定道路区间的路况,并可在途中通过定位服务来检查各 路段的交通情况。家庭监控可以实时监视家庭莉i 办公室的情况。只需安装基于w e b 的数字 视频相机,并连接到i n t e m e t 上就可以通过移动终端或p c 监视家庭或办公室。 ( 5 ) 定位服务:可用来提供地图和向导服务,并且可以预览风景名胜、预定饭店和电影票 等。 移动流媒体业务的开展给移动增值服务带来了希望,“3 g ”时代的到来,为移动流媒体 业务注入了新的动力。但由于移动终端以及传输介质的特殊性,移动流媒体业务的发展过程 中存在如f 问题: ( 1 ) 无线网络带宽窄,易受外界信号干扰 对于当前国内主流2 5 g 无线网络技术,如c d m a 和g r p s ,网络传输带宽较之以前有 了很大的提高,但仍然十分有限。c d m a 虽然在理论上下载传输速率可以达到1 4 4 k b p s ,但 实际情况下,传输速率通常只能维持在7 0 k b p s 左以。而g r p s 系列的传输峰值和实际值比 c d m a 更低。并且随着使用用户的增加,网络性能将会进一步下降。另外无线网络受干扰 严重,导致网络传输的误码率大大增加,也容易造成数据丢失。【2 5 】 ( 2 ) 移动终端计算能力低,内存容量小 虽然国内市场上基于a r m 9 等芯片的高端手机已经越来越多,但a r m 7 系列芯片的手 机依旧占据主流市场。它的处理能力在几十个m i p s 左右。而且目前移动终端的内存容量通 常也比较有限。比如b r e w 手机预留给应用程序的动态内存通常在7 0 0 k b 左右;j 2 m e 手 机预留的内存在6 4 k b 到1 2 8 k b 之问;基于s y m b a 1 1 厂l i n u x ,w i n d o w sm o b t l e 等离端手机预 留给应用程序的动态分配的内存在1 4 m b 左右。 ( 3 ) 终端系统种类多,性能差异人 目前,国内外p c 主机制造越来越标准化,相同规格的产品性能趋向统一,但移动终端 平台的标准化_ 作还远未开展。常见的系统平台有s v m b i a n 、l i n u x 、w i n d o w sm o b i l e 、p a l m o s 等。这种多样化状态在很氏的一段时间内将会继续存在。为了提供一个统一的手机应用 程序运行环境,j 2 m e 与b r e w 应运而生。但不同的厂家对j 2 m e 与b r e w 的支持都存在 差异,使得跨平台应用程序开发难度非常大。 0 浙江大学硕,l 学位论文 ( 4 ) 移动终端的电池能量有限 手机设备的运算必须由电池供电才能实现。编解码处理越复杂,对手机的计算能力要求 越高,则对电池的供电能力要求出越高,j :且州户希望最好能够根据电池供电情况动态调整 流媒体的接收和处理。因此,能源管理技术也是移动流媒体的一个研究热点。 2 3 移动流媒体传输协议的分析与选择 传输协议首先是指t c p 和u d p 。其他所有传输协议都架构在t c p 彝fu d p 的基础上。 移动通讯网络是一种“e r r o r p r o n e ”【2 6 】的网络,容易发生错误,并不稳定。因此,从 保证传输可靠性角度山发,t c p 协议成了重要的选用对象。本人曾接触和实际开发过部分 手机终端应用平台,大都使用1 p 进行数据的传输。在非移动终端的应用中,t c p 协议的 使用更是普遍。 为了解决在无线环境中传输线路不同质的问题,b a k n e 和b a d r i n a t l 还提出了一种“非 直接t c p 连接”( i n d i r e c tt c p ) 的模型【2 】。即把从服务器到手机终端的t c p 连接分为两个 阶段:第阶段的t c p 连接从服务器发送方到手机基站,第二阶段的t c p 连接从基站到手 机终端。这样,在每一个阶段,t c p 路径都处r 相同性质的传输介质中,降低了处理的复 杂性。如图2 所示: 图2 :i n d 计e c t t c p 原埋 然而,尽管t c p 协议在无线环境中得到了很大的应用,它并不是一种面向实时流媒体 的传输协议。 首先,t c p 协议是基于连接的,因此在进行数据传输之前,首先要通过“三次握手” 来进行客户端和服务器的连接,这一过程必然要带来时间上的延迟。其次,作为一种较为稳 定的传输方案,t c p 自带有一定的错误处理机制,当发现有数据丢失,可以进行数据的重 传,待丢失的数据到达后再重新组合为完整的数据流;要注意这里的重传是从发送方开始的, 假如发送端的距离较远,则带来的延时会非常可观;而无线环境下的移动终端应用都足远距 浙江大学硕十学位论文 离的。再次,t c p 协议的包头较大,有4 0 个字节,电占用了一定的网络带宽,在本来就资 源有限的无线网络中,还有很大的性能提高余地。最后,南丁r 终端的移动性,倒如用户在快 速移动的火车或者飞机上面,那么手机就耍在不同的基站之间快速转移,也使得初始化时建 立的连接变得不可靠,连接的路由表要不断地调整和刷新,这样不仅带来延时,也为届续的 数据传输带来隐患。【2 7 】 因此,凡是成功应用t c p 协议的流媒体应片j ,都满足这样几个条件,即接收方有较犬 的缓存,并 ! 【网络环境较好,有较高的带宽。大的缓冲区,可以保证有充足的时间进行数据 缓冲,尤其是在需要执行重传等错误修复机制的时候。优良的网络环境下,数据丢失的儿率 大为降低,可以有效减少重传带来的延时。因此,应用t c p 协议的产品大都应用在计算机 上,并且以有线网络为传输中介;所传输的媒体文件i j 以先保存在硬盘上或者内存中,吐方 便调整播放时问。在局域网中,这种应用效果最为明显,甚至可以达到完全的实时性。 但手机电池寿命短,处理能力弱,缓冲空间小,在这样的种种限制f ,客户端的算法复 杂度也应当相应减小【2 8 】。现阶段的手机计费方法决定,手机上的流媒体应用仍然是一件较 为昂贵的消费,在商业t :客户也不愿意接受k 时间的等待,即使这一等待在其他应用上可能 显得很短。 因此,在流媒体传输中大多采用u d p 协议来降低传输的延时,提高数据的实时性。 但在另r 一个方面,直接用u d p 协议进行传输是不可靠的。对于在商业上的开发,尤其 是对大流量的视频和音频数据的传输,不可靠的服务质量将带来灾难性的后果。时断时续的 图像或声音、不同步的播放效果,都将极大地影响使用者的视觉和听觉感受,井最终影响对 产品的信任和接受。这一点与q q 、f 1 1 p 等产品有着本质上的不同。因为对于q q 的传输, 虽然要求有较高的实时性,但由于q q 所发送的主要是文本,而且是非连续数据,这样对带 宽要求并不高。而对于f t p ,虽然有着大流量的数据传输。但一则它不需要实时地发送 u 接 收,另一方面,它对数据传输出错有较高的忍受力,只要发现传输出错,就可以中断当前传 送,然后根据用户的喜好选择断点续传、覆盖或者跳过。 所咀,在移动终端上实时传输流媒体数据的时候,不能采用t c p 协议,也不能直接采 用u d p 。它需要在u d p 协议的基础上增加控制功能:或者说,需要对u d p 协议在控制层 面上进行某种程度的封装。基于这两点的考虑,一种基于u d p 的流媒体传输协议产生了, 即r t p 协议。经过不断地发展和完善,r f p 协议成为了实时流媒体传输的主流协议。 在下面的章节中,就将重点对r t p 协议进行研究和分析。 1 2 浙江大学硕十学位论立 2 4r t p 协议综述 2 4 1r t p 协议简介 r t p 协蜥3 是互联网工程任务组i e t f ( t h ej n t e h l e t e n g i n e e r i n gt a s kf o r c e ) 制定的“实 时传输协议”( r e a l “m et m s m i s s i o np r o t o c 0 1 ) 。它烛一种专f j 为交互式音频、视频、仿真 数据等实时媒体应用而设计的轻型传输协议,目前在多媒体数据传输中已经得到广泛的应 用。r t p 协议提供了端到端的实时性数据传输服务,包括有效载荷类型确认;序列号编码: 时间戳管理;数据传输监控等。 r t p 协议本身不具备独立的传输功能。它建立在u d p 协议之卜- ,通过u d p 协议的多路 播放以及数据的效验和服务功能完成传输工作。因此,它不能保证数据传输的及时有效也 不能进行其他质量保证。同时,r t p 协议也不是一一个真正意义上的应用层协议,它总是被应 用层系统所调用,与各种不同格式的媒体数据相结合,并根据这些具体的要求设置协议参数, 甚至进行扩展和修改。 所以,r 1 _ p 协议是一个介于传输层和应用层之间的协议。它在传输中的位置见如图3 所示: i p 包头 l j d p 包头j 。 卿包头 应用层包头( 可选) 数据负载 图3 ;r t p 协议网络层次 2 4 2r t p 协议的工作特点 ( 1 ) 基于组播的传输方式 r t p 协议最初是用于开发多参与者的多媒体会议系统:在一个有限的空间范隔内,系统 对话的参与者互相进行交互式数据传送,任何一方发出的数据都呵以有选择地被现场其他参 与者获得。这种场景非常适合采用组播方式。会议的负责人只要获得一个组播地址和一对端 口号就可以开展工作。组播使网络中数据包的个数减少,减少了对网络带宽的占用,因为数 据发送方只需要给出所要传播的数据的一个拷贝即可。 但是,在无线网络或者广域网中,采用组播的传输会带米路由转发上的问题。组播的数 据通过各个路由不断扩散,造成网络中的数据量迅速增加,带来网络拥塞等一系列问题。所 以组播的功能被弱化为“单播”。与服务器“连接”的客户端作为单个的实体接收数据,而 不再被看成是某个子网中的成员。 浙江大学硕士学位论文 ( 2 ) 烈端口协调机制 r t p 协议是一个结台数据传输和状态信息传输的协议。为了区别这两种不同的功能,它 采用烈端口方式,其中一个用于发送媒体数据,另一个用丁发送控制包,即满足r t c p 的需 要。这种j :作机制如图4 所示。这两个端口的选择并不随机:传输r t p 数据的端r 必须为 偶数,传输r t c p 控制信息的端口为奇数,且其数值为前者加1 。 ,+ + 、_ 、 r p 数据传输 、 j端口 、 一 文逸b 一 【r 丁p 数捌抟输 卜堕口 一 、 接受方 、r t p 控制传输j 端口 , 图4 :r t p 协议双端口工作机制 因此,r t p 协议可以分为两个并行的部分,即r t p 数据防议和r t p 控制协议。通常r t p 数据协议也被简称为狭义的彤r p 协议。 r 1 1 p 数据协议( t h e r t p d a b p r o t o c 0 1 ) :用来传输带有实时特性的流媒体数据。 r 1 1 p 控制协议( t h e r t p c o n t m lp r o t o c 0 1 ) :用来监控服务质量,并在网络对话的各 个参与者之间传递信息。r t c p 协议虽然是一个控制协议,但它对传输的控制是“低 烈度”的,不能直接控制和调整对话的参与成员;完整的控制功能需要另外开辟一 个协议层次。 显然r t p 数据协议承担了主要的数据传输任务,但r t p 控制协议却是r t p 协议里最具 特色的内容。正是r t c p 的存在,使得r t p 协议在一定程度上被认为是一种控制协议,因 为它为更高的应用层提供了各种可以进行服务质量控制的方法和手段。 ( 3 ) 良好的同步处理能力 在互联网上,发生数据丢包、次序混乱以及延时是非常常见的现象。为了处理这些问题, r t p 协议在数据协议的包头之中定义了计时信息和序列号,这样就允许接收方可以根据时间 信息重组正确的数据流。同时,这些信息也可以被用来进行统计。例如根据序列号的顺序, 可阻推断山哪个包在网络上丢失。也可以根据这些信息计算出延时、丢包率、抖动等各种有 用的信息。 ( 4 ) 复杂网络环境的适应性 一般的传输协议都假设各个接收方有相同的接收状态。然而,实际环境要远为复杂。在 同一个对话系统中,不同的参与者可能使用不同的传输速度,享用不同的网络带宽。r t p 协议不是简单地强制每个参与者都使用较低的带宽和较低的服务质量,而是引入了“混合器” 的概念,把来自不同数据源的数据混和传递,从而提高了对带宽的利用率。从接收端的角度 看,这些经过混合的数据完全可以同独立数据源平等看待。尤其是c s r c 和s s r c 等r t p 1 4 考 浙江大学硕士学位论文 包头字段的引入,使得这些混台的数据还可以区分出原始发送方,知道其中哪一个字段是来 自某个特殊的对话成员。 在有防火墙等网络安全一i 一具的情况f ,不能使用鳃播的方式传输数据,此时混合器无法 发挥作用,r t p 协议又引入r “传递器”( t r a n s i a t o r ) 的概念。在防火墙的两端各安装一个 传递器,其中外层传递器将组播的数据以安全连接的方式接收进来,而内层传递器将接受到 的数据仍然以组播的形式发送到内网用户。 另外,由于r 1 l p 协议采用组播传输方式,根据接受方性能的差异,同步数据源可以建 立起多个r t p 对话,每个对话都用组橘把媒体数据传递给性能相近的一组接收端。这样, 接收端被划分成了多个层次,每个层次可以提供不同的服务质量,例如数据的发送速率和编 码的方式等,使得结构更加清晰。这种分层处理能力降低了数据发送方的处理复杂度,增加 了服务器的适应能力。 2 4 3r t p 协议数据类型说明 2 4 3 1r t p 数据协议 r t p 数据协议通过r r p 定长数据包包头进行引导。包头格式定义如图5 所示: o12 3 0l 234567890l23456789o123456789o1 + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一十一十一+ 一+ 一十一十一十一+ 一+ 十一+ + 一十+ 一十一十+ 一十一十+ 一+ 一十一+ i v = 2 l p ix c c1 m 1 p t s e q u e n c en u m b e r + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一十一+ 一+ 一+ 一+ 一十一十一十一+ 十一+ 一十一十+ 一十一十十一+ 一十十一+ 一十一十 t i m e s t a m p + 一+ 一+ 一+ 一+ 一十一+ 一十一十一+ 一十一+ 一+ 一十一十一+ 一十一十+ 一+ 一十一+ 一+ 一r 十一+ 一+ 一+ 一+ 一+ + 一+ 一+ s y n c h r o n i z a t i o ns o u r c e( s s r c )i d e n t i f i e r + = 十= 十= + = 十= + = + = + = 十= + = + = + = + = + = + = + = + = + = + = + = + 2 + = + = + = + = + = + = + = + = + = + = :+ = + c o n t r i b u t i n gs o u r c e( c s r c )i d e n t i f i e r s + 一+ 一十一十一十一十一十一十+ 一十一十一十一十一+ 一十一+ 一十一+ 一+ + 一+ 一+ + 一+ 一+ + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 图5 :r t p 数据包包头格式 各个字段的含义说明为: v ( v e r s i o n ) :r t p 坍议版本号标记,版本号的值为2 。需要注意的是,这个值并不意味 着这是第二:版r t p 协议,= 进制字符串“1 0 ”的含义为,“l , 表示这是第一个版本的r t p 标准。“o ”表示这一个标准是面向音频信号的传输开发的。当然,实际上r t p 对于视频信 号也有着良好的传输性能。 浙江人学硕上学位沦文 p ( p a d d j n g ) :填充位,j 爿丁判断是否存在填充数据。如果该字段被置为1 ,则表示数 据包最后有不属丁有效载荷的填充内容。这样可以用于数据的加密。因为一些加密算法要求 数据块有严格的大小,边界要整齐。 x ( e x t e n s i o n ) :扩展位,表示在定长头部后面是否再接一个变长的扩展头部。假如该 位置为j ,则需要在定长的r t p 数据包头之后解析出一段变长的扩展包头,扩展包头的格式 在下文中定义。 c c ( c s r cc o u n t ) :记录了跟在定长包头厉的c s r c 列表中不同c s r c 来源的个数。 m ( m a r k e r ) :标志位。标志位的定义与盘! i l 体格式有关,通常在该格式媒体与r 1 1 p 协议 相结合的描述文档中描述。通常情况f ,它可以用来表示帧的边界,或者其他功能。 p t ( p a y l o a dt y p e ) ;说明了r t p 有效负载的类型,应用程序可以借此进行编码解压缩。 这种对应关系在 6 中有着详细的规定。一般来说,每一个r t p 对话中都使用同一个p t 值 的媒体数据,但在某些应用中媒体数据的格式发生改变,则p t 值也要改变。如果某种p t 值的数据既不在【6 】中规定,也不是_ j 户臼定义,那么它将作为1 f 法数据丢弃掉。 s e q u e n c en u m b e r :表示当前r 1 、p 包的序列号。在同一个会话l l ,每发送。个数据包, 则相应的序列号都要递增l 。序列号的初始值应该随机设定,以此增强系统抗击外部“已知 报文攻击”的能力,增加传输的安全性。 t i m e s t a m p :时间戳,表明当前数据包的第一个字节的采样时间。采样所依据的时钟必 须按线性单凋递增,以利于同步控制和计算抖动情况。 s s r c :标志同步数据源,表明不同的会话对象。s s r c 值应该随机选择,这样保持在 一个r t p 对话中,不会有相同s s r c 值的同步数据源。假如某个同步数据源在传输过程中 改变了传输地址,则它的s s r c 值也需要跟着改变,以免在后续的数据传输中形成冲突。 c s r cl - s t :用来标志同一个混和器发山的来自不同数据源的数据。由于可能有多个 c s r c ,所以其个数通过c c 字段给出。在一个对话中,c s r c 最多不能超过1 5 个。 2 4 3 2r t c p 控制协议 r t c p ,即r t p 控制协议的包头要更加复杂。因为r t c p 控制包可以分为5 种类型每 种类型对应不同的包头结构: s r ( s e n d e r r 印o r t ) :发送者报告,即由会话中一直在友送数据的同步数据源发出。它 提供对其他同步数据源的反馈信息,以及它作为一个数据发送方希望其他接收端去了解的信 息,例如所发出r t p 数据包的个数。 r r ( r e c e i v e rr e p o r t ) :接受者报告,即由对话中其他同步数据源发送的反馈信息。它 们不发出r i p 数据包,而仅仅被动地接收来自会话中其他参与者的r t p 数据包。它也需要 6 浙江大学硕士学位论文 发出各种反馈,主要是接收到数据的统计资料。 s d s ( s o u r c e d e s c n d t i o n ) :源描述报告,表明某个同步数据源的“个性化”信息,例 如c n a m e 信息可以用来唯一确定一个同步数据源。 b y e :袭示对话的参与结束。 a p p :与应用相关的控制信息。 对于这5 种不同的r t c p 包,其数据格式第一部分与r t p 包类似,也是一个定长结构, 其后跟随着的部分由r 1 p 包的类型决定,不同类型的控制包结构不同,长度不一,但不管 哪一种结构,其结尾部分必须是一个3 2 比特的边界字段。这个固定部分结构如图6 所示: 0 123 o12 3456 7890123456789 0l 2345678901 + 一+ 一+ 一+ 一十一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ + + + + +一十一+一+一+ i v = 2 l p i r cp t = r r = 2 0 x l e n g t h + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一十_ + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一 一+ 一+ 一+ 一+ 一+ 一+ s s r co fp a c k e ts e n d e r + = + = + = + = + = + = + = + = + 一+ = + = + = = 1 = + = + = + 一+ 2 = + = + = + = + 2 7 = + = + 2 t = + = + 2 = + 图6 :r t c p 公共包土结构 其中,s r 、r r 、s d e s 、a p p 和b y e 在p t 的x 部分值分别为o ,1 ,2 ,3 ,4 。 出于充分利用带宽的考虑,r 1 p 包往往不是单个发送,而是把任意类型的r t c p 控制 包组合起来,从而形成一个“队列”。接收方得到这样一个r t c p 的组合包之后,按组合包 的总长度读取,然后根据单独的r t c p 包定长包头格式分割控制信息。 但不管控制信息的发送方如何鲴台这些r t c p 控制包,r r 或者s r 总是放在r t c p 组 台包的第一个位置,且在一个同步数据源发出的r 1 p 控制流中,这两个控制包中只能选择 一个。这是两个必须要发送的控制包,以此来表达虽重要的网络传输状态信息。也借此表明 了控制包的发送者的个人身份,即是否是一个带有“服务器”性质的媒体数据发送方,是则 把s r 放在第一位,且不包含r r ;否则把r r 放在第一位,且不包含s r 。此外,s d e s 中 因为包含有c n a m e 这样一个可以唯一区别某个同步数据源的字段,也常常添加在组合控 制包中。 2 4 4r t p 协议与媒体协议的结合 每一个r t p 协议对话只传送一种媒体类型的数据,如果有多个类犁,需要多个r t p 对 话平行发送。但是,如果自己定义卜种混和类型的媒体数据,并且始终传输这一类型,则 形成了一种新的负载。【4 在一份典型的说明r t p 协议与特定媒体协议结合的文档里,通常会介绍如何通过设置 r t p 包头中的各个字段,实现两者的结台。为了适应其他一些特殊媒体格式的传输需要,有 1 7 浙江大学碗士学位论文 必要在定长的r t p 头部之外增加额外内容,可以通过设置e x t e n s j o n 位引入“扩展”机制实 现这个要求。扩展部分由一个定长的包头结构引导,它跟在c s r cl j s t 后面,即在有效负载 p a y l o a d 前面。扩展部分本身长度可变,通过扩展包头中的l e n 醇h 字段设定。它的格式定义 如图7 所示: ol 2 3 01234567890123456789 0l2 3456789oj + 一+ 一+ 一卜_ + + 一+ 一+ 一+ +

温馨提示

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

评论

0/150

提交评论