(计算机应用技术专业论文)基于rtp的流媒体实时传输机制研究与实现.pdf_第1页
(计算机应用技术专业论文)基于rtp的流媒体实时传输机制研究与实现.pdf_第2页
(计算机应用技术专业论文)基于rtp的流媒体实时传输机制研究与实现.pdf_第3页
(计算机应用技术专业论文)基于rtp的流媒体实时传输机制研究与实现.pdf_第4页
(计算机应用技术专业论文)基于rtp的流媒体实时传输机制研究与实现.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

(计算机应用技术专业论文)基于rtp的流媒体实时传输机制研究与实现.pdf.pdf 免费下载

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

文档简介

昆明理工大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下( 或 我个人) 进行研究工作所取得的成果。除文中已经注明引用的内 容外,本论文不合任何其他个人或集体已经发表或撰写过的研究成 果。对本文的研究做出重要贡献的个人和集体,均已在论文中作了明 确的说明并表示了谢意。本声明的法律结果由本人承担。 学位论文作者签名:剪啼 日期:2 ,年4 月 关于论文使用授权的说明 日 本人完全了解昆明理工大学有关保留、使用学位论文的规定,即: 学校有权保留、送交论文的复印件,允许论文被查阅,学校可以公布 论文的全部或部分内容,可以采用影印或其他复制手段保存论文。 ( 保密论文在解密后应遵守) 铋签名:班黻作者签名型连 日期:型垒垒月乙旦 注:此页放在封面后目录前。 7,【 基于r t p 的流媒体实时传输机制研究与实现 摘要 由于因特网的普及及日益增长的对多媒体服务的需求,因特网上的流媒体技 术已经吸引了越来越多的关注,自从2 0 世纪九十年代初被提出以来,流媒体技术 已在世界范围内得到广范应用。流媒体技术可广泛用于网上新闻发布、电子商务、 远程医疗、在线直播、网络广告、网上电台、远程教育、实时视频会议等,它彻 底改变了传统互联网只能表现文字和图片的缺陷,而可集音频、视频及图文于一 体。流媒体技术将成为未来互联网应用的主流,并将推动互联网整体架构的革新。 实时地传送多媒体数据流是流媒体技术地主要特点之一,但是一般的i n t e r n e t 协 议无法实现,r t p ( r e a l ti m et r a n s f e rp r o t o c a l ) 正是由i e f t 制定用于传输实 时的多媒体数据的协议,此外r t p 协议还可用于解决音频和视频数据的同步问题。 对r t p 协议的研究也就成为研究流媒体技术的关键之一。 本课题研究目标是结合多点视频会议系统的应用实际,基于r t p 实时传输协 议,对实时传输机制进行研究与实现。本论文,研究了流媒体技术为了解决视频 流和音频流实时交互问题而提出的r t p r t c p 实时传输协议实时传输控制协议。 详细讨论了r t p r t c p 协议及其软件实现。讨论了如何对基于r t p 协议封装的视频 音频流媒体数据进行处理,以较好的解决视频流和音频流在实时交互的过程中面 临的延时、丢包、失序、抖动、以及音频和视频不同步的问题。此外本论文还对 在视频监控、视频点播等流媒体技术的应用中保证流媒体的实时传输和传输质量 有。定的参考价值。 关键词:r t p r t c pm e d i as t r e a m i n g 基于r t p 的流媒体实时传输机制研究与实现 a b s t r a c t b e c a u s es u c c e s so fi n t e m e ta n dd e m a n df o rt h em u l t i m e d i as e r v i c ei n c r e a s e d d a yb yd a y , s t r e a m i n gm e d i a st e c h n o l o g ya b s o r bm o l ea n dm o r ec o n c e r n sa tt h e i n t e r a c t s i n c et h eb e g i n n i n go f1 9 9 0 sw a sp r o p o s e d ,s t r e a mm e d i at e c h n o l o g yg e t w i d ea p p l i c a t i o nf a nw o r l d w i d ea l r e a d y i tc a nb eu s e di no n l i n en e w sb r i e f i n g e x t e n s i v e l yt h a tm e d i a st e c h n o l o g yf l o w s , e - c o n l m e r c e ,t e l e - m e d i e i n e ,b r o a d c a s t i n g d i r e c t l y , a d v e r t i s e m e n to f t h en e t w o r k ,o n l i n er a d i os t a t i o n ,t e l e e d u e a t i o n ,r e a l t i m e v i d e oc o n f e r e n c eo n l i n e ,e t c ,i th a sc h a n g e dt h ed e f e c tt h a tt r a d i t i o n a li n t e r n e tc a r lo n l y d i s p l a yt h ec h a r a c t e r sa n dp i c t u r ec o m p l e t e l y , a n dc a ni n c o r p o r a t ea u d i of r e q u e n c y v i d e oa n dp i c t u r ea n dt e x ti n t oa no r g a n i cw h o l e i tw i l lb e c o m et h em a i n s t r e a mu s e di n i n t e r a c ti nt h e 血t u r et h a tm e d i a st e c h n o l o g yf l o w s a n dw i l lp r o m o t et h ei n n o v a t i o n w h i c hi n t e m e tb u i l du pw h o l l y c o n v e ym u l t i m e d i ad a t a f l o wp e r s o nw h om e d i a s t e c h n o l o g ys h e d so n eo ft h em a i nc h a r a c t e r i s t i c sr e a l - t i m e ,b u tg e n e r a li n t e r a c t a g r e e m e n ti su n a b l et or e a l i z e ,r t p ( r e a l t i m et r a n s f e rp r o t o c 0 1 ) i sj u s tm a d et h e a g r e e m e n tu s e df o rt r a n s m i t t i n gt h er e a l - t i m em u l t i m e d i ad a t ab y 皿f li na d d i t i o nr t p a g r e e m e n tc a i l a l s ob eu s e df o rs o l v i n gt h es y n c h r o n o u sp r o b l e m so ft h ea u d i o f r e q u e n c ya n dv i d e od a t a t h es t u d yo nr t pa g r e e m e n tb e c o m e sa n ds t u d i e st of l o w o n eo f t h ek e y st om e d i a st e c h n o l o g yt o o t h i sg o a li nr e s e a r c ho fs u b j e c ti st oc o m b i n et h ea p p l i c a f i o nr e a l i t yo fs o m e v i d e oc o n f e r e n c es y s t e m sm o r e ,t r a n s m i tt h ea g r e e m e n tw h e nr t pi sr e a l ,c a r r yo n r e s e a r c ha n dr e a l i z ei nt r a n s m i t t i n gt h em e c h a n i s mi n r e a lt i m ei nb a s e i nt h i s p a p e r 。w et a l ka b o u tt h er t pp r o t o c o lw h i c hi su s e df o rt r a n s m i t t i n gt h er e a l t i m e m u l t i m e d i aa n dd i s c u s sh o wt or e a l i z ei ti np r o g r a m w ee x p r e s sh o wt od i s p o s et h e v i d e oa n da u d i om u l t i m e d i aw h i c hi sp a c k e to nr t p a g r e e m e n t ,i no r d e r t od e a lw i t ht h e p r o b l e m so fd e l a y ,l o s t ,m i s o r d e r ,u n s y n c h r o n i z a t i o na n ds oo n w h a t sm o r e ,t h i s p a p e r i su s ef o rv i d e om o n i t o rs y s t e ma n dv i d e oo nd e m a n ds y s t e m k e yw o r d :r t p r t c pm e d i as t r e a m i n g 2 基于r t p 的流媒体实时传输机制研究与实现 1 1 流媒体技术概要 第一章绪论 作为多媒体和网络领域的交叉学科,流媒体技术的应用和研究得到了迅猛的 发展。多媒体使计算机能够处理声音、文字、图像和视频,以丰富的声、文、图 信息和方便的交互性极大地改善了人机交互界面,改变了人们使用计算机的方式, 从而为计算机进入人类生活和生产的各个领域打开了方便2 _ 1 3 ,给人们的工作、 生活和娱乐带来了深刻的变化。随着网络宽带化的发展趋势,人们不再满足于信 息高速公路中仅有文本、图像或声音这一类简单的信息,而越来越希望更直观、 更丰富的新一代信息的表现形式,流媒体技术由此便应运而生。 1 1 1 流媒体的概念 流媒体( s t r e a m i n gm e d i a ) ,就是应用流技术在网络上传输的多媒体文件。流 ( s t r e a m i n g ) 是对在网路上传输特别编码的数字媒体内容,如音频、视频、动画片、 图形、照片、文本到最终用户的一种描述。只要是用流服务器传输媒体,通过网 络向用户计算机连续、实时传送数据包,用户能够立即、不中断播放,并且不需 要固定的存储空间在最终用户的磁盘上,都可以说是流。一个以流方式传输的媒 体文件数据包在开始装入后只需经过几秒或几十秒的启动延时就能利用计算机上 的解压设备( 硬件或软件) 对压缩的媒体数据包解压、重组、排序后进行播放和观看。 此时后台就会边收取多媒体数据包,边连续播放。用播放一系列连续的媒体片段 ( c l i p ) 来代替等待一个完全的媒体文件下载后再播放。前一个片段播放后就从缓存 空间丢弃,以腾出更多的空间用来接受组成下一个片段的数据包。可见,流技术 主要应用在多媒体数据传输上。 1 1 2 流媒体的应用现状及发展趋势 从1 9 9 5 年推出第一个互联网流媒体播放器以来,流媒体应用有了爆炸性增长。 据统计,目前互联网每周约有4 5 万小时的广播节目,5 8 个美国电视台提供w e b 广播,3 4 个电视台提供点播服务。有近半数的跨国公司在内部使用流媒体实现w e b 广播。正如几年前的i p 网络和w e b 技术,流媒体应用正处于持续高速增长时期。 来自国际权威机构的调查显示,2 0 0 3 年在网上访问流媒体的人数增加了6 5 ,西 方网络发达国家访问流媒体的人数己达到1 8 亿,约占网民的l 3 ,在亚洲流媒体 基于r t p 的流媒体实时传输机制研究与实现 的访问用户也迅速增加到3 5 0 0 万人将近网民的1 6 。 与用户增长相呼应,去年互联网上视频流媒体技术应用增长幅度达2 5 1 。据 自扬基集团的预测,流媒体有望在最近几年成为发展的热点,该领域的营业额将 会在2 0 0 5 年达到3 l 亿美元。这样巨大的市场正吸引越来越多的企业参与竞争。 目前流媒体技术主要用于远程教育、宽带视频点播、互联网直播、实时视频 会议等方面 1 远程教育 将信息从教师端传递到远程的学生端,需要传递的信息包括各种类型的数据: 如视频、音频、文本、图片等。由于当前网络带宽的限制,流媒体无疑是最佳的 选择。 2 宽带视频点播 随着计算机的发展,y o i ) 技术逐渐应用于局域网及有线电视网中,虽然a v o d 技术趋于完善,但音、视频信息的庞大容量阻碍了v o d 技术的发展。由于流媒体 经过了特殊的压缩编码,使得它很适合在互联网上传输,在视频点播方面我们完 全可以遗弃局域网而使用互联网。随着宽带网和信息家电的发展,流媒体技术会 越来越广泛地应用于视频点播系统。 3 互联网直播 从互联网上直接收看体育赛事、重大庆典、商贸展览等。网络带宽问题一直 困扰着互联网直播的发展,随着宽带网的不断普及和流媒体技术的不断改进,互 联网直播已经从试验阶段走向了实用阶段并能够提供较满意的音视频效果。流 媒体技术在互联网直播中充当着重要的角色。无论从技术还是市场上考虑,现在 互联网直播是流媒体众多应用中最成熟的一个。 4 视频会议 市场上的视频会议系统有很多,这些产品基本都支持t c p i p 网络协议,但采 用流媒体技术作为核心技术的系统并不占多数。流媒体并不是视频会议必须的选 择,但是流媒体技术的出现为视频会议的发展起了很重要的作用。 2 0 0 4 年年底,中国第二代中国教育和科研计算机网正式开通,这是世界上规 模最大的纯i p v 6 互联网,它以每秒1 0 g 的传输速率( 相当于每秒传送1 5 个v c d 光 盘存储的信息) 连接全国2 0 个主要城市的核心节点,为全国几百所高校和科研单 位提供高速i p v 6 网络接入服务,高速连接国内外下一代互联网。通过下一代互联 网,人们将进一步享受到,高清晰度电视、强交互点到点视频语音综合通信、智 能交通、环境地震监测、远程医疗、远程教育等流媒体网络应用带来的好处。因 基于r t p 的流媒体实时传输机制研究与实现 此可以预测流媒体技术将成为未来互联网应用的主流,并将推动互联网整体架构 的革新 113 流媒体传输的特点及方式 流媒体的特征是数据量大,对传输的实时性要求较高。因此通过i n t e r n e t 网 络传送流媒体数据与传统的传输相比具有以下特点: ( 1 ) 普通的多媒体数据必须进行预处理才能适合流式传输。目前网络的带宽 对多媒体巨大的数据流量来说还显得远远不够,另外,不同的多媒体文件也不支 持流式传输,由此必须对多媒体数据进行预处理。预处理包括两个方面:一是采用 先进高散的压缩算法减少多媒体文件的大小:二是向文件加入流式信息。 ( 2 ) 流式传输的实现需要缓存。这是因为i n t e r n e t 以包传输为基础进行的连续 的异步传输,对一个数据量大的视频文件来说在传输中可能要被分解为若干个 包。由于网络带宽的动态变化各个包选择的路由可能不同,到达客户端的时间 也会有所偏差,甚至后发的数据先到达。因此为了弥补延时和抖动对多媒体传输 质量的影响,在流媒体传输技术中使用了缓冲技术来保证数据包的顺序正确,从 而使媒体数据能连续输出,而不会因为网络拥塞使播放出现停顿。 ( 3 ) 流式传输的实现需要合适的传输协议。在i n t e r n e t 上传输视频流时需要 相应的传输协议,所涉及的协议主要有:网络层的i p 协议、r s v p 协议等:传输层的 t c p u d p ,r t p r t c p 协议:应用层的r t s p ,h m s 等。t p 提供了在i n t e r n e t 上传送 u d p t c p 数据包的公共平台,u d p t c p 是用于传送r t p r t c p r t s p 数据包的低层传输 协议。这些协议结合起来可眺提供i n t e r n e t 上的视频流服务。 目前,流媒体传输有两种基本模式:顺序流式传输( p r o g r e s s i v e s t r e a m i n g ) 和 实时流式传输( r e a l t i m es t r e a m i n g ) 。实时流式传输指保证媒体信号带宽与9 6 9 络 连结匹配,使媒体内容可被实时观看到。实时流式传输需要专用的流媒体服务器 与传输协议,特别适合现场事件,也支持随机访问。用户可以控制浏览的内容。 一般来说如视频为实时广播,或使用流式传输服务器,或应用如r t s p 、r t p 的实 时协议,即为实时流式传输。而顺序流式传输是使用h t t p 服务器顺序下载文件。 在下载文件的同时,用户可观看已下载的那部分,而不能跳到还未下载的剩余部 分,顺序流式传输不可根据用户的连接速度作调整,严格来讲,它不是真正意义 上的流式传输技术。 1 1 4 实时流媒体数据对网络陛能的要求 实时流媒体数据对网络性能的要求主要有: 实时流媒体数据对网络性能的要求主要有: 基于r t p 的流媒体实时传输机铝4 研究与实现 l 。带宽 未压缩的实时数字视频要求以数十兆的速率传送。一个以m p e g l 方式压缩的 数字视频流需要i m b p s - i 5 m b p s 的传输带宽,雨h 2 6 1 标准的压缩数字视频流需要 6 4 k b p s - 2 m b p s 的传输带宽。从实际应用来看,使用m p e g 一1 压缩的数字视频,以1 4 m b p s 左右传送带宽可以提供比较满意的效果。 2 传输延迟 对于交互视频应用来说,i t u 标准建议最大的端到端总延迟不要超过1 5 0 m s 。 其中信源的压缩打包需要3 0 m s 左右,实际网络传输延迟只能在6 0 m s 左右a 3 时严性 流数据的通信是面向连续比特流的,要求数据之间有严格的时间关系所以要 求通信网络能满足多媒体数据流的传输实时性,收的应用环境下也能保证传输的 实时性。特别是在多发多 4 可靠性 流媒体数据不象常规的数据传送不允许出错,而是可以有一定的差错,只要 不影响信息的理解。由于降低了可靠性,延迟可以相对减小。 5 同步 包含有两种同口步:流内同步是保持单个流内部的关系,梭照j 是的延时和抖动 来传送流:流间同步是不同媒体之间同步( 主要是音频和视频) ,主要利用时间戳和 播放缓冲相结合的方式。 1 2 论文内容概述 1 2 1 选题的背景及意义 本论文的选题是基于个采用m p e g 4 协议的多点视频会议系统的研究。 视频会议是利用会议电视系统设备和通信网召开会议的一种信息交流方式。 在召开视频会议时,处于两地或多个不同地点的与会者,既可以听到对方的声音, 又能看到对方的形象,同时还能看到对方会议室的场景,以及展示的实物、图片、 表格、文件等,就像是在同一处参加会议,与平时开会的“面对面”的情形相似, 能使与会的代表具有真实感和亲切感。 多点视频会议系统是视频会议系统中的种,它允许三个或三个以上不同地 点的参加者同时参与会议。多点视频会议系统一个关键技术是多点控制问题,多 点控制单元( m c u ) 在通信网络上控制各个点的视频、音频、通用数据和控制信 基于r t p 的流媒体实时传输机制研究与实现 号的流向,使与会者可以接收到相应的视频、音频等信息,维持会议正常进行。 视频会议是融计算机技术、通信网络技术、微电子技术等于一体的产物,它 要求将各种媒体信息数字化,利用各种网络进行实时传输并能与用户进行友好的 信息交流。随着视频会议系统技术的发展以及高速i p 网络及i n t e r n e t 的迅猛发 展,各种数字数据网、分组交换网、i s d n 以及a t m 的逐步建设和投入使用,使视 频会议的应用与发展进入了一个新的时期,同时,市场对视频会议的接受能力也 上升到一个新水平。 目前,视频会议系统主要用于以下几个方面: 远程商务会议应用 视讯业务最普遍最广泛的应用,适用于一些大型集团公司、外商独资企业等 在商务活动猛增的情况下,逐步利用视讯会议方式组织部分商务谈判、业务管理 和远程公司内部会议。 远程教育应用 利用视讯会议开展教学活动,使更多、更大范围的学生能够聆听优秀教师的 教学,在美国、欧洲较为流行,许多大学建有其远程教育网络,数百万学生通过 交互视讯会议系统接受教育。另外,远程培训在各大企业也越来越受到关注。 远程医疗应用 用视讯业务实现中心医院与基层医院就疑难病症进行会诊、指导治疗与护理、 对基层医务人员的医学培训等等。高质量的视讯业务使医生、护士在不同地方同 时协同工作成为可能。远程医疗对于一些中小医院有着重要的意义,可以得到大 医院的医学专家的咨询和会诊。 项目协同工作应用 也是进行远程项目管理的非常好的工具,突出特点是资源共享。项目组的成 员能进行远程协作,使地理上分开的工作组以更高的速率和灵活性以电子方式组 织起来。许多美国大公司与其分公司间通过数字链路,利用桌面视讯会议,实现 整个公司的办公自动化,相关人员可以在屏幕上共同修改文本、图表。 政府行政会议应用 我国幅员辽阔,各级政府会议频繁,视讯会议系统是一种现代化召开会议的 多快好省的方法,它可使上级文件内容即时下达,使下级与会者面对面地讨论和 深刻领会上级精神,使上级指示及时得到贯彻执行。运营商用视讯业务的条件。 但是从视频会议实现来看,传统的i p 网络并没有提供q o s 保障。它最初是为 简单数据通信而设计的,是开放、共享的,它的特点就是“尽力而为”。要在这 基于r t p 的流媒体实时传输机制研究与实现 样的网络环境上提供大量的实时多媒体通信服务,必须要有一些附加的措旌。目 前的流媒体技术为解决实时交互问题也提出了一系列地解决方案。r t p p t c p ( 实 时传输协议实时传输控制协议) 也是i p 网的实时传输措施之一,r t p 是u d p 上 运行的协议,它对数据进行包封装;r t c p 控制协议与r t p 数据协议配合使用,它 提供对数据传输质量的反馈信息,以便应用系统采取相应策略与处理。 正是在这样的基础环境中,对流媒体实时传输机制进行研究,利用当前的协 议实现一个相应的原型无疑是有意义的。 1 2 2 研究的内容 在本论文中,主要研究的内容有: 1 流媒体技术及其特点。 2 流媒体的实时传输机制、r t p 实时传输协议。 3 r t p 协议基于多点视频会议系统的实现,其中对基于r t p 协议封装的音视 频流媒体数据处理部分进行详细的讨论。 1 2 3 论文的结构 本论文共分六章。各章节内容的安排如下: 第一章:概述。介绍流媒体技术以及本课题的研究背景,本文完成的工作及内 容安排 第二章:流媒体实时传输及控制协议。介绍当前流媒体网络实时传输协议。详 细介绍了r t p r t c p 协议的报文结构。 第三章:实时传输协议r t p r t c p 的软件实现。熏点介绍t r t p r t c p 协议实现的 数据结构、r t p 中时间戳的选择、序号的选择以及r t c p 的报文结构。 第四章:基于r t p 的多点视频会议系统的总体设计。重点介绍了多点视频会议 系统的系统框架,以及主要技术实现。并且介绍了系统中服务器端和客户端的程 序模块。这章主要是阐述在多点视频会议系统中如何实现r t p 协议。给出了系统程 序的整体框架。 第五章:多点视频会议系统中的流式音频和视频实时处理。本章详细介绍了 在多点视频会议系统中对采用了r i p 协议封装后流式音频和视频数据的处理。文章 介绍了要进行实时的流式音频和视频数据传输所要解决的数据采集、数据压缩、 音视频数据丢失、失序、重传处理以及音视频数据的同步。 第六章:总结与展望。对本文所作的工作加以总结,对下一步的工作提出建议 基于r t p 的流媒体实时传输机制研究与实现 第二章流媒体网络实时传输及控制协议分析 流媒体数据流包括音频流、视频流,是人们利用视觉和听觉来获取信息的一 种通信方式,它较之其它信息传递方式,具有确切性、直观性及高效率等特点。 由于流媒体数据流传输的太信息量和有限的传输带宽,使得视频、音频的压缩编 码、传输信道和网络协议的选择、以及基于w i n d o w s 操作平台的软件实现成为了基 于网络的流媒体数据流传输应用中的关键技术。其中,传输信道和网络协议的选 择至关重要,它将影响到多媒体数据流传输的实时性能和通过网络传输以后客户 端接收的多媒体数据流质量 下图给出了基于网络的流媒体数据流传输的基本模型。本章将针对基于网络 的流媒体数据流传输应用中的网络传输协议及控制协议的选择作以具体分析。 i 音频视频数据采集 i i 音频视频数据处理 l 音频视频数据编码 ll 音频视频数据解码 f 应用层 fi 应用层 | | 传输与网络层 i 传输与网络层 i数据链路层与网络适配层卜_二三乎数据链路层与网络适配层 图2 1基于网络的流媒体数据流传输的基本模型。 2 1 传输层的重要性分析 我们知道,i s o 组织制订的0 s i ( o p e ns y s t e mi n t e r c o n n e c t i o n ) 网络参考模 型,将网络共分成7 层结构,从下而上依次为:物理层、数据链路层、网络层、传 输层、会话层、表示层及应用层。各层的功能都相互独立,每一层所实现的功能 对上面一层来说都是透明的,每一层都只关心下一层所提供的服务。物理层的任 务是透明地传输比特流,数据链路层的任务是通过各种协议,在两个相邻节点闭 的线路上无差错地传送以帧为单位的数据,它们的功能已经由传输介质和网卡固 化了,不能通过编程的方法进行改变,所以在编程设计时就不需要考虑这两层;网 络层的任务是选择适当的路由,完成数据的打包和传送,在这一层n e t w a r e 使用i p x 协议,u n i x 和w i n d o w s 贝u 使用i p 协议:传输层的任务是根据子网的特性最佳地利用 1 2 基于r t p 的流媒体实时传输机制研究与实现 网络资源,并以可靠和经济的方式为两端主机建立传输连接,以透明的方式传送 报文,在这一层n e t w a r e 使用s p x 协议,而w i n d o w s 贝u 使用t c p u d p 协议,u n i x 贝q 使 用t c p 协议:会话层的任务是确定相互连接的主机之间信息的传递方式,即:全双 工、半双工和单工,在局域网中一般不用考虑:表示层的任务是进行传输数据格式 化和代码转换,一般用于异种机之间的通信,微机之间就不存在这些问题,所以 这一层也不需要考虑;应用层的任务是确定进程之间通信的性质以满足用户的需 要,它是我们编程的任务,但无需做协议的选择。由此看来,为了保证基于网络 的多媒体数据传输的实时性和质量,传输层协议的选择是整个设计和实现的关键。 i n t e r n e t 在i p 层之上使用了两种传输协议:一种是传输控制协议t c p ( t r a n s m i s s i o nc o n t r o lp r o t o c 0 1 ) ,它是面向连接的网络协议:另一种是用户数 报文u d p ( u s e rd a t a g r a mp r o t o c 0 1 ) ,它是无连接的网络协议。 2 2t c p 协议的局限及u d p 的优势 t c p 协议是面向连接的协议,被用于各种网络上提供有序可靠数据传输的虚电 路服务。虽然如果有足够大的缓冲区、充足的网络带宽,在t c p 协议上,接近实时 的视频传输也是可能的。然而,如果在丢包率较高、网络状况不好的情况下,利 用t c p 协议进行适时的视频音频通信几乎是不可能的。主要有以下几个方面的原 因: t c p 的重传机制 我们知道,在t c p i p 协议中,当发送方发现数据丢失时,它将要求重传丢失 的数据包。然而这将需要一个甚至更多的周期( 根据t c p i p 的快速重传机制,这将 需要三个额外的帧延迟) ,这种重传对于实时性要求较高的多媒体数据通信来说几 乎是灾难性的,因为接收方不得不等待重传数据的到来,从而造成了延迟和断点。 t c p 的拥塞控制机制 t c p 的拥塞控制机制在探测到有数据包丢失时,它就会减小它的拥塞窗口。而 另一方面,视频、音频在特定的编码方式下,产生的编码数量( 即码率) 是不可能 突然改变的。正确的拥塞控制应该是变换视频、音频信息的编码方式,调节视频、 音频信息的帧频或视频图像幅面的大小等等。 t c p h 文头的大小 t c p 不适合于实时视频传输的另一个缺陷是,它的报文头l e u d p 的报文头大。 t c p 的报文头为4 0 个字节,而u d p 的报文头仅为1 2 个字节。并且,这些可靠的传输 层协议不能提供时间戳( t i m es t a m p ) 和编解码信息( e n c o d i n gi n f o r m a t i o n ) ,而 基于r t p 的流媒体实时传输机制研究与实现 这些信息恰恰是接收方( 即客户端) 的应用程序所需要的。因此t c p 是不适合于多媒 体数据流信息的实时传输的。 启动速度慢 即便是在网络运行状态良好、没有丢包的情况下,由于t c p 的启动需要建立连 接,因而在初始化的过程中,需要较长的时间,而在一个实时多媒体数据流传输 应用中,尽量少的延迟正是我们所期望的。由此可见,t c p 协议是不适合用来传输 实时多媒体数据流数据的,为了实现视频数锯的实时传输,我们需要寻求其它的 途径。 相t k t c p 协议而言,u d p 是一种无连接的数据报投递服务,虽然没有t c p 刃b 么 可靠,并且无法保证实时视频传输业务的服务质量( q o s ) 但是,由于u d p 的传输延 时低于t c p ,能与视频流很好地匹配。因此,在实际应用中,用u d p 协议来传输音 频视频媒体应该是一个不错的选择。黼对于一些控制信息,对实时性要求不高, 更要求可靠性的,则可以用t c p 协议来传输。 2 3r t p r t o p 协议 为了支持网络实时传输服务,提供数据实时传输的标准,1 9 9 6 年i e t f 的视频 音频工作组制订y r t p 实时传输协议。在r f c l 8 8 9 中,r t p 被定义为紧密相关的两 个部分: 1 实时传输协议r t p ( r e a l t i m et r a n s p o r tp r o t o c 0 1 ) ,用来传输具有实时 特点的数据,包括音频、视频。 2 r t p 控制协议r t c p ( r t pc o n t r o lp r o t o c 0 1 ) ,通过r t c p 携带的信息,实时 监测音频、视频数据包的延时、抖动、丢包状况,以及网络的带宽变化情况,从 而可在应用层对视频源的发送参数做出调整,适应网络的变化。 2 3 1r t p 协议 23 1 1r t p 协议在传输层的位置 r t p 位于u d p 协议之上,它是一种应用型的传输层协议,并不提供任何传输可 靠性的保证和流量的拥塞控制机制。r t p 通常是利用低层的u d p 协议在传输层为传 输音频、视频数据,这样它不仅可以利用u d p 协议的端口号和校验和,还可以利用 u d p 传输延时慢的传输实时音频视频流的优点。如图2 2 所示,r t p 可以看成是传输 层的予层。由多媒体应用程序生成的声音和电视数据块被封装在r t p 信息包中,每 个r t p 信息包被封装在u d p 消息段中,然后再封装在i p 数据包中。 1 4 基于r t p 的流媒体实时传输机制研究与实现 应用层 传输层匕罟 互联网层 物理层 图2 2r t p 在t c p i p 模型中的位置 在具体实现时,可把r t p 执行程序看成是应用程序的一部分,把r t p 集成到应 用程序中。在发送端,必须把执行r t p 协议的程序写入至0 创建r t p 信息包的应用程 序中,然后应用程序把r t p 信息包发送到u d p 的套接接口,如图2 3 所示:同样,在 接收端,r t p 信息包通过u d p 套接接口输入到应用程序,需要把执行r t p 协议的程序 写入到从r t p 信息包中抽出媒体数据的应用程序中。 应用层 垦! 旦 传输层 套接口 u d p 互联网层 物理层 图2 3r t p 和u d p 之间的接口 以用r t p 传输g 7 2 3 i 的声音为例来说明它的工作过程。g 7 2 3 1 取3 0 毫秒的编 码数据为一个数据块,即在一个数据块中有2 4 0 个字节的声音数据。应用程序需要 为这块声音数据添加r t p 标题生成r t p 信息包,这个标题包括声音数据的类型、顺 序号和时间戳。然后r t p 信息包被送到u d p 套接接口,在那里再被封装在u d p 言息包 中。在接收端,应用程序从套接接口处接收r t p 信息包,并从r t p 信息包中抽出声 音数据块,然后使用r t p 信息包的标题域中的信息正确地译码和播放声音。 2 3 1 2r i p 协议的报文格式 r t p 报文格式如图2 4 所示 02 34 8 1 62 43 1 vpxc c m载荷类别( p t )序号( s n ) 时戳( t i m e s s t a m o ) 同步源标识( s s r c ) 贡献源标识清单c s r c 扩展头 用户数据报 基于r t p 的流媒体实时传输机制研究与实现 图2 4r t p 的报文格式 r t p 报文实际上是由一个2 个字节的固定头和用户数据组成,固定头中各域的 具体意义如下: 版本( v ) :2 位标识r t p 协议的版本号。 填充标志( p ) :1 位如果该位被设置为1 ,说明在分组后增补了零填充,从 而使分组达到要求的长度;填充的最后字节指明了填充的长度。 扩展位( x ) :l 位如果该位被设置,在固定报文头后插入固定报文头。 源c s r c 数目( c c ) :4 位表示固定报文头后作用源c s r c 标示符数目。 标记( m ) :l 位该位保留未被使用。 负荷类型( p t ) :7 位接受端据此来判断媒体类型,如果是编码数据,则p t 决 定着接收端使用的解码器。 序列号( s n ) :1 6 位每发送一个r t p 信息包,序列号就加l ,接收端可以用它来 检查信息包是否有丢失以及按顺序号处理信息包。例如,接收端的应用程序接收 到一个r t p 信息包流,这个r t p 信息包在序列号8 6 和8 9 之间有一个间隔,接收端就 知道信息包8 7 和8 8 已经丢失,并且采取措施来处理丢失的数据。序列号的初始值 是随机产生的,原因有二,一是使用随机的序号可以避免重放,当某次会话的分 组在网络上延时后,却被稍后的另一次会话所接受,就会遇到重放的问题;另一 个原因是使用随机的起始号可以提高安全性,使攻击者猜测序号信息更为困难。 时间戳( t i m e s t a m p ) :3 2 位它反映r t p 数据信息包中第一个字节的采样时刻 ( 时间) 。接收端可以利用这个时间戳来去除由网络引起的信息包的抖动,并且在 接收端为播放提供同步功能。r t p 规定,一次会话的初始时间戳必须随机选择,但 协议并没有规定时间戳的单位,也没有规定关于该值的精确解释,而是由负载类 型来确定时钟的粒度。这样,各种应用类型就可以根据需要选择合适的输出计时 精度。例如,在r t p 上传输音频数据时,可以选定逻辑时间戳速率与采样速率相同, 这样做是合理的。但是,当传输视频数据是,必须使时间戳速率大于每帧一个滴 答。这样才能使图像回放更为平滑。最后,如果数据是在同一个时刻采样的,协 议标准还允许两个分组具有相同的时间戳值。例如,如果一个大帧被分为多个小 分组,这时,时间戳值就可出现重复,因为该帧就在同一时刻录制的,所以每个 分组中的时间戳值是相同的。 同步源标识( s y n c h r o n i z a t i o ns o u r c ei d e n t i f i e rf o rt h eo r i g i n a t o r , s s r c ) :3 2 位它用来标识r t p 信息包流的起源,在r t p 会话或者期间的每个信患包 流都有一个清楚的s s r c s s r c 不是发送端的i p 地址,而是在新的信息包流开始时 基于r t p 的流媒体实时传输机制研究与实现 源端随机分配的一个号码。 作用源标识( c o n t r i b u t i n gs o u r c ei d e n t i f i e rf o rt h ep a y l o a d ,c s r c ) :该 域最多可有1 5 项,每项的长度为3 2 位,列举出产生该r t p 数据包的所有源,如携带 多个源的混音数据时,将各个源的s s r c 列在c s r c 中,以便接收端辨别。 通过r t p 报文头的结构我们注意到:r t p 报文中没有一个“长度”字段,这是 因为r t p 把数据分段的任务交给了底层的协议u d p 去处理了,由u d p 协议进行数 据的分段,再组成若:v + u d p 数据包进行传输。 2 3 ,1 3r t p 协议的特点 r t p 协议的设计遵循c l a r k 和t e r m e n h o u s e 提出的a l f & i l p ( a p p l i c a t i o nl e v e l f r a m i n ga n di n t e g r a t e dl a y e rp r o c e s s i n g ) 原则,即:集成共性,个性扩展。在 实现时r t p 与应用程序紧密结合,根据应用的特点和要求构造与剪裁控制策略,提 高会话质量和网络服务的公平性。 总的来说,r t p 协议具有以下特点: 1 、简单性 r t p 协议不具备运输层的完整功能,其本身也不提供任何机制来保证实时地传 输数据,不保证服务质量,而是依赖下层协议提供的服务来完成这些任务。它不 保证提交或防止乱序提交,也不假设下层网络是可靠的并且提交的分组是有序的。 r t p 报文甚至不包括长度和报文边界的描述,而是依靠下层协议提供长度标识和长 度限制。另外,r t p 协议将部分运输层协议功能( 比如流量控制) 上移到应用层完成, 简化了运输层处理,提高了该层效率。 2 、灵活性 r t p 协议的数据报文和控制报文使用相邻的不同端口,数据流和控制流分离, 这样大大地提高了协议的灵活性,处理也简单。 3 、支持多播 如果下层网络支持,r t p 可支持采用多播的传送方式将实时数据传送到多个目 的地,满足多媒体会话的需要。 4 、可扩展性 r t p 协议通常为一个具体的应用提供服务,通过一个具体的应用进程实现,而 不作为o s i 体系结构中单独的一层来实现,r t p 只提供协议框架,开发者可以根据 应用的具体要求对协议进行充分的扩展。 r t p 协议的使用领域有:简单多播音频会议,音频视频会议,混合器和解释器。 尽管最初r t p 是为满足多用户多媒体会议应用程序的需要而设计的,但它并不局限 1 7 基于r t p 的流媒体实时传输机制研究与实现 在这类应用中。r t p 还可用于连续数据存储、交互分布式仿真、实时控制测量等。 2 3 2r t c p 协议 2 ,3 2 1r t c p 协议的分组 r t p 协议是用户携带实时特征数据,与之配套的是实时传输控制协议( r t c p ) 。 r t c p 作为r t p 的一部分e h r f c l 8 8 9 指定,它用于监视网络的服务质量和在正在进行 的与会者中传递信息。r t c p 的基本做法是周期性的向会话的所有参加者传送控制 分组,采用和数据分组相同的配送机制来发送控制分组。 r t c p 的分组类型共分为五种: 1 s r :发送端报告报文 2 r r :接收端报告报文 3 s d e s :源端描述报文 4 b y e :与会者退出报文 5 a p p :特定应用报文 s r 分组格式 如图2 5 所示。它由三个数据段组成:r t c p 分组头部、发送方信息块和接收报 告块。 1 r t c p 分组头部: 版本( v ) :这是个长度为2 b i t 的字段,表示本r t c p 的版本号。 填充( p ) :这是个长度为i b i t 的字段,如果为“1 ”,表示在单- - r t c p 报文中, 其尾部应填充一些八位组,并非控制信息:在复合r t c p 报文中,只能在最后个独 立的报文中进行填充。 接收报文计数( r c ) :这是一个长度为5 b i t 的字段,指出头部后报告块的个数。 分组类型( p t ) :这是一个长度为8 b i t 的字段,指定该分组的类型。 长度:这是一个长度为1 6 5 i t 的字段,指定分组头和附加信息的r t c p 分组长度。 同步源标识( s s r c ) :这是一个长度为3 2 b i t 的字段,表示r t c p 发送分组的源标 识,在s r 分组中,它一方面表明了该控制分组的产生者,另一方面反映了该分组 携带的发送者信息块的统计数据所针对的具体码流:而r r 分组头中的s s r c 标识值 仅表明该分组的产生者。 基于r t p 的流媒体实时传输机制研究与实现 v p r cp t l长度 发送者s s r c n t p 时间戳( 高有效位字) n t p 时间戳(

温馨提示

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

最新文档

评论

0/150

提交评论