《网络多媒体技术》课件第8章.ppt

上传人(卖家):momomo 文档编号:7960793 上传时间:2024-09-11 格式:PPT 页数:130 大小:752KB
下载 相关 举报
《网络多媒体技术》课件第8章.ppt_第1页
第1页 / 共130页
《网络多媒体技术》课件第8章.ppt_第2页
第2页 / 共130页
《网络多媒体技术》课件第8章.ppt_第3页
第3页 / 共130页
《网络多媒体技术》课件第8章.ppt_第4页
第4页 / 共130页
《网络多媒体技术》课件第8章.ppt_第5页
第5页 / 共130页
点击查看更多>>
资源描述

1、1 1第8章 流媒体技术8.1 流媒体概述流媒体概述8.2 流媒体传输协议流媒体传输协议8.3 流媒体的关键技术及开发平台流媒体的关键技术及开发平台8.4 P2P流媒体流媒体8.5 流媒体的应用流媒体的应用8.6 本章小结本章小结思考练习题思考练习题2 2流媒体技术是多媒体和网络领域的交叉学科。多媒体技术使PC机能够将声音、视频、文字等多种信息整合成多媒体信息,并实现方便的交互,从而给人们的工作和娱乐带来丰富多采的变化,只是这些多媒体信息的数据量比传统的文本文件要大得多。当人们不再满足只在单机上看到丰富的声、文、图等多媒体信息,而是希望能从网络中获得多媒体信息的时候,网络的数据传输压力大大增加

2、,因为即使下载一个很短时间的视/音频文件也需要用户等待很长的时间。形成这种等待的主要原因是多媒体文件需要从服务器上全部下载到客户端后才能播放。为了解决这个问题,流媒体技术应运而生。本章对流媒体技术从概述、传输协议、关键技术、开发平台以及P2P流媒体技术几个方面进行全面介绍。3 38.1.1 流媒体的定义流媒体的定义目前尚没有一个关于流媒体的公认定义。一般来说,流媒体(Streaming Media)是指在Internet/Intranet中使用流式技术进行传输的连续时基媒体,如音/视频等多媒体内容。其中流式(Streaming)技术是指在媒体传输过程中,服务器将多媒体文件压缩解析成多个压缩包后

3、放在IP网上按顺序传输,客户端(通常是指PC机,也称用户端)则开辟一块一定大小的缓冲区(计算机内存中用于临时存放数据的存储块)来接收压缩包,8.1 流媒体概述流媒体概述4 4缓冲区被充满只需几秒钟或数十秒钟的时间,之后客户端就可以解压缩缓冲区中的数据并开始播放其中的内容。客户端在消耗掉缓冲区内数据的同时,又下载后续的压缩包到空出的缓冲区空间中,从而实现了边下载边播放的流式传输。可见流式传输是流媒体实现的关键技术。5 5与传统的多媒体技术相比,流媒体具有如下特点:流媒体是实时的,当客户下载媒体文件时,不需要像传统的播放技术那样将整个文件都下载下来之后再播放,而是边下载边播放,它不仅节省了客户端的

4、缓冲区容量,还大大减少了用户的等待时间。流媒体数据在播放后即被丢弃,不会存储在用户的计算机上,便于流媒体文件的版权保护。流媒体的服务器支持客户端对流媒体进行VCR(录像机)操作控制,即用户可以像使用家用录像机一样对流媒体进行播放、暂停、快进、快退、停止等操作。6 68.1.2 流媒体的通信原理流媒体的通信原理由于目前的网络带宽还不能完全满足巨大的AV、3D等多媒体数据流量的要求,因此在流媒体通信技术中,应首先对AV、3D等多媒体文件数据进行预处理,然后才能进行流式传输。它主要包括降低质量和采用先进、高效的压缩算法两个方面。与下载方式相比,尽管流式传输大大降低了对系统缓存容量的要求,但它的实现仍

5、需要缓存,这是因为Internet是以包传输为基础进行断续异步传输的。数据在传输中要被分解为许多包,而网络又是动态变化的,各个包选择的路由可能不尽相同,故到达用户计算机的时间延时也就不同。7 7所以,必须使用缓存系统来弥补延时和抖动的影响,并保证数据包传输顺序的正确,使媒体数据能连续输出,不会因网络的暂时拥堵而出现播放停顿。在整个传输和控制过程中,必须采用一定的网络协议来实现流式传输,为客户提供可靠的服务质量保证。8 8流媒体的传输过程如图8-1所示。客户(Web浏览器)通过HTTP/TCP与Web服务器(Web Server)交换信息,获取流媒体服务清单,根据获得的流媒体服务清单向媒体服务器

6、(AV Server)请求相关服务;然后客户机的Web浏览器启动相应的媒体播放器(AV Player),通过RTP/UDP从媒体服务器中获取流媒体数据,实时播放。在播放过程中,客户机的媒体播放器需要实时通过RTSP/TCP(UDP)与媒体服务器交换控制信息,媒体服务器根据客户机反馈的流媒体接收情况,智能化地调整向客户机传送的媒体数据流,从而在客户端达到最优的接收效果。9 9图8-1 流式传输的基本原理实现流式传输有两种方法:实时流式(Realtime Streaming)传输和顺序流式(Progressive Streaming)传输。一般来说,如果视频为实时广播,或使用流式传输媒体服务器,或

7、应用如RTSP的实时协议,则流式传输为实时流式传输。如果使用HTTP服务器,文件即通过顺序流发送,这种传输方式就称为顺序流式传输。流式文件在播放前可完全下载到硬盘上。10 101.顺序流式传输顺序流式传输顺序流式传输是顺序下载的,在下载文件的同时客户可观看在线媒体,在给定时刻,客户只能观看已下载的那部分,而不能跳到还未下载的后续部分。顺序流式传输不像实时流式传输那样,可在传输期间根据客户连接的速度作调整。由于标准的HTTP服务器可发送这种形式的文件,因而不需要其他特殊协议,它经常被称做HTTP流式传输。顺序流式传输比较适合高质量的短片段,如片头、片尾和广告,由于这种文件是无损下载的,因此它可以

8、保证电影播放的最终质量。这意味着客户在观看前必须经历延时,对较慢的连接尤其如此。11 11当通过调制解调器发布短片段时,顺序流式传输显得很实用,它允许用比调制解调器更高的数据速率创建视频片段。尽管有延时,但毕竟可以发布较高质量的视频片段。顺序流式文件是放在标准HTTP或FTP服务器上的,这种文件易于管理,基本上与防火墙无关。顺序流式传输不适合长片段和有随机访问要求的视频,如讲座、演说与演示。它也不支持现场广播,严格说来,它是一种点播技术。12 122.实时流式传输实时流式传输实时流式传输保证媒体信号带宽与网络连接匹配,使媒体可被实时观看到。实时流式传输与HTTP流式传输不同,它需要专用的流媒体

9、服务器与传输协议。实时流式传输总是实时传送,特别适合现场事件,也支持随机访问,客户可快进或后退以观看前面或后面的内容。理论上讲,实时流一经播放就不可停止,但实际上可能发生周期性暂停现象。13 13实时流式传输必须匹配连接带宽,这意味着在以调制解调器的速度连接时图像质量较差,而且,由于出错而丢失的信息被忽略掉,因此当网络拥挤或出现问题时视频质量很差。如欲保证视频质量,采用顺序流式传输也许更好。实时流式传输需要特定服务器,如Quick Time Streaming Server、Real Server与Windows Media Server。这些服务器允许对媒体发送进行更多级别的控制,因而系统设

10、置和管理比标准HTTP服务器更复杂。实时流式传输还需要特殊网络协议,如RTSP(Real Time Streaming Protocol)或MMS(Microsoft Media Server)。这些协议在有防火墙时有可能会出现问题,导致用户不能看到一些地点的实时内容。14 148.1.3 流媒体的播放方式流媒体的播放方式1.单播单播客户端与媒体服务器之间是点到点连接的,媒体服务器为每一提出请求的客户端单独发送一条媒体流,这种播放方式称为单播。可见,只有当客户端首先发出请求后,服务器才会发送单播流,并且请求的客户数越多,单播流就越多,这会给服务器和网络带宽带来沉重负担。15 152.组播组播媒

11、体服务器只需发送一条媒体流,之后通过组播转发树再复制并转发该媒体流,使网络中的所有客户端共享同一条流,这种播放方式称为组播。可见,组播的好处是减少了网络上传输的媒体流的数量,从而节省了网络带宽。16 163.点播和广播点播和广播点播是指客户端主动与服务器取得联系,要求服务器传送它指定的媒体流。点播连接时,用户可以对流进行开始、暂停、后退等VCR操作,实现了对流的最大控制。由于点播最终传送的是单播流,因此,当点播的用户数不断增加时,网络带宽会迅速消耗殆尽。广播是指服务器将一条媒体流向网络中的所有客户发布,而客户只能被动接收,并且不能通过VCR操作来控制流。这种广播连接同样会浪费网络带宽。17 1

12、78.1.4 流媒体系统的基本结构流媒体系统的基本结构流媒体系统包括音/视频源的编码/压缩、存储、流媒体服务器、媒体流传输网络、用户端播放器5个部分,如图8-2所示。原始音/视频流经过编码和压缩后,形成流媒体文件并存储,媒体服务器根据用户的请求把流媒体文件传递到用户端的媒体播放器。这5个部分有些是网站需要的,有些是客户端需要的,而且不同的流媒体标准和不同公司的解决方案会在某些方面有所不同。一个流媒体系统应至少包括以下三个组件。18 18图8-2 流媒体系统基本结构19 191.编码器编码器(Encoder)它用于将原始音/视频转换成流媒体格式的软件或硬件。要传送的多媒体数据应先进行预处理,将多

13、媒体文件经过压缩编码,处理成流媒体文件格式。这种格式的文件尺寸较小,并且加入了流式信息,适合在网络上边下载边播放。常用的流媒体文件格式有*.wma、*.wmv、*.avi、*.rm、*.mp3、*.mov等。前面章节曾介绍过,有多种不同的压缩编码方法可以将原始音/视频压缩成能够在Internet上传播的流格式文件。20202.媒体服务器媒体服务器(MediaServer)它是用于向客户发布流媒体的软件。转换成流媒体格式的文件被存放在媒体服务器上,作为向客户发布流媒体的服务器,它要处理来自客户端的请求,例如客户端要求播放、暂停或者快进一个流文件,这就要求服务器在流媒体传输期间要始终与客户端的播放

14、器保持通信。21 213.播放器播放器(Player)它是客户端用来收看(听)流媒体的软件。位于客户端的播放器实际上就是一个解码器,它能够解码收到的流媒体文件。除此之外除此之外,播放器还通过与媒体服务器的相互通信来提供对流的交互式操作。不仅如此,要实现流媒体的传输,客户端需要缓冲系统来缓存流数据。流媒体文件通过IP网络传输的时候,最终是以一个个IP分组的形式传送的。IP分组在传输时是各自独立的,因此会根据路由选择协议动态地选择不同的路由到达客户端,导致客户端接收到的分组延时不同,次序被打乱。因此需要缓冲系统将IP分组按正确的顺序进行整理,保证媒体数据的顺序输出。2222不仅如此,当网络出现暂时

15、拥塞使得数据分组延误到达时,由于缓冲区事先缓存了一定数量的数据,因此节目不会中断,从而保证了播放的连续性。缓冲区采用环形链表结构存储数据,该结构能使已经播放完的数据随即被丢弃,空出的缓冲区空间再重新被利用来缓存后续的媒体内容。除了以上这三个组件之外,通常为了用户操作的简单和直观,流媒体系统还采用Web服务器向用户提供流媒体节目的目录信息,用户可以通过自己的Web浏览器获得这个目录信息,从而定位节目所在的媒体服务器的位置,之后与媒体服务器建立联系。2323流媒体采用流式传输方式在网络服务器与客户端之间传输数据。流式传输的实现需要合适的传输协议。IETF(Internet Engineering

16、TaskForce,因特网工程任务组)制定的很多协议可用于实现流媒体技术。8.2 流媒体传输协议流媒体传输协议24248.2.1 实时传输协议实时传输协议实时传输协议(Real-time Transport Protocol,RTP)是由IETF设计的用于互联网上多媒体数据流的一种传输协议,主要用来为实时数据的应用提供点到点或点到多点的传输服务。它已成为IP网多媒体系统广泛采用的实时媒体传输层协议。RTP由两个紧密相关的部分组成:实时传输协议(RTP)和实时传输控制协议(RealtimeTransportControlProtocol,RTCP)。为了可靠、高效地传送实时数据,RTP和RTCP

17、必须配合使用。RTP主要用于承载多媒体数据,并通过包头时间参数的配置来使其具有实时的特征。2525RTCP主要用于周期性地传送RTCP包,监视RTP传输的服务质量。在RTCP包中,含有已发送的数据包的数量、丢失的数据包的数量等统计资料。因此,服务器可以利用这些信息动态地改变传输速率,实现流量控制和拥塞控制服务。26261.相关概念相关概念(1)RTP会话。两个或多个用户之间通过RTP建立的连接称为RTP会话,“用户”为会话的参加者。对于一个参加者而言,会话由一对传输层地址标识。这对传送层地址包括一个网络地址(IP地址)和一对端口号。一个端口为RTP报文的发送/接收所使用,另一个端口为RTCP报

18、文的发送/接收所使用。如果会话是由组播建立起来的RTP会话,那么该RTP会话的标识对于会话的每个参加者来说都是相同的,即每个参加者使用同一个IP地址和同一对端口号标识该RTP会话以进行通信。如果会话是由单播建立起来的,那么会话双方使用各自的IP地址,但却用相同的一对端口号来标识该RTP会话。2727在一个RTP会话上通常只传送一种媒体类型的数据,多个媒体对应多个RTP会话,每个RTP会话具有自己的RTCP报文,用以控制会话的质量。RTP会话之间通过不同的端口对号来区分。2828(2)RTP协议的相关文件。为了实现根据应用进行分帧的原则,RTP定义了两类文件:格式文件(Format Docume

19、nts),规定了将某种媒体流划分成应用数据单元(ADU)的原则以及ADU的格式。RTP协议已经为H.26X视频流、MPEG视频流以及各种编码格式的音频流等制定了格式文件。用户也可以根据自己的需要定义新的格式文件。轮廓文件(Profile Document),规定了某一特定应用对RTP协议的具体使用方法。一般一种应用对应一个轮廓文件。2929(3)同步源和提供源。在一个采用RTP支持的多媒体会议会话中,需多个用户同时参加,而且每个用户发出多种类型的媒体,例如麦克风的声音或摄像机的视频,那么发出某一类媒体的源,如麦克风和摄像机被称为同步源(Synchronization Source,SSRC)。

20、同步源之间通过同步源标识符来区分。要注意的是,如果某一类型的媒体来自多个源,例如同时有多个摄像机提供视频,那么每一个源也都要用不同的同步源(SSRC)标识符来区分。3030会话过程中,多个用户发出的多个同步源都汇集到一个叫做Mixer(混合器)的中间系统中,经混合器重新组合形成一个新的组合流再发送出去,用户接收的是混和器输出的组合流。这样,用户终端就能够获得所有参加会议的其他用户的信息。31 31混合器的作用是接收所有源的RTP报文,以某种方式将它们组合起来,其中还对部分报文进行数据格式转换,使之形成新的RTP报文,并将其发送出去。由于这些输入的同步源彼此之间不同步,因此需利用混合器对它们进行

21、调整,生成组合流。这样,该组合流就是一个同步流,它同样也需要用一个同步源标识符来标识。此时该同步源标识符代替了输入混合器的所有同步源的同步源标识符,这样便将具有唯一一个同步源标识符的组合流送给各个接收端。在混和器中形成组合流的所有同步源叫做该组合流的提供源(Contributing Source,CSRC)。32322.RTPRTP报文由固定长度的报头、可选的CSRC及载荷组成,格式如图8-3所示。RTP报头为固定长度,共12个字节。RTP报文包含的主要字段有:V:RTP协议的版本号,占2位。当前的协议版本号为2。P:填充标志,占1位,指明载荷区最后是否有填充数据。如果有填充数据,则载荷区的最

22、后一字节中装载填充数据的长度。3333图8-3 RTP报文格式3434X:扩展标志,占1位,如果X1,则在RTP报头后跟有一个扩展报头。CC:CSRC计数器,占4位,指示CSRC标识符的个数。M:标记,占1位,标识连续码流中的某些特殊事件,标记的具体解释则在轮廓文件中定义。PT:有效载荷类型,占7位,用于说明RTP报文中有效载荷的类型,接收端可以据此解释并播放RTP数据。序列号:占16位,用于标识发送者所发送的RTP报文的序列号,每发送一个报文,序列号增1。接收者通过序列号来检测报文的丢失情况,重新排序报文,恢复数据。3535时戳(Timestamp):占32位,反映了该RTP报文的第一个字节

23、的采样时刻。接收者使用时戳来计算延时和延时抖动,并进行同步控制。同步源标识符:占32位,用于标识同步源。该标识符是随机选择的,参加同一视频会议的两个同步源不能有相同的SSRC。提供源标识符列表(CSRC):每个CSRC标识符占32位,可以有015个,具体数目则由上面的CC字段给出。每个CSRC标识了包含在该RTP报文有效载荷中的所有提供源。36363.RTCPRTCP是一个控制协议,它的报文不携带用户数据,只携带与会话有关的控制信息。它通过周期性地向所有参加者发送RTCP报文来传输有关服务质量的反馈信息和参加会话的成员信息。为了实施不同的控制功能,RTCP定义了发送者报告报文(Sender R

24、eport,SR)、接收者报告报文(Receiver Report,RR)、信源描述报文(Source DescriptionItems,SDES)、结束报文和应用相关功能报文(Application Specific Functions)等五种类型的报文,其中最重要的是SR和RR。3737SR报文在会话中由当前发送者产生,格式如图8-4所示。SR报文包含三部分内容:(1)SR报头部分。报头部分包含了一个RTCP报文的公共信息,包括以下字段:V,版本号,占2位,标识RTP版本,与RTP报头中的版本号相同;P,填充标志,占1位;RC,接收报告计数,占5位,指出接收报告块的个数;PT,报文类型,占

25、8位,SR报文类型标识符为200;报文长度,占16位;SSRC标识符,占32位,为发送该SR报文的同步源标识符。3838图8-4 SR报文格式3939(2)发送者信息部分。发送者信息部分记录了有关本机发送RTP报文情况的信息,包括以下字段:NTP时戳,占64位,指出该SR报文发送时的全局网络时间;RTP时戳,占32位,和NTP时戳相一致的时间,用于媒体内部和媒体间的同步;发送者的报文计数,占32位,指出该发送者从开始传送RTP报文到该SR报文产生的时间间隔内共发送的RTP报文总数;发送者的有效载荷计数,占32位,指出该发送者从开始传送RTP报文到该SR报文产生的时间间隔内共发送的有效载荷总数,

26、以字节为单位,不包括报头和填充。4040(3)接收报告块部分。接收报告块的个数取决于本机自上次发送接收报告到现在的时间间隔内收到的所有RTP报文中所含的同步源个数。本机将通过接收报告块向这些同步源反馈本机的接收情况。一个接收报告块对应于一个同步源。接收报告块包括以下各部分:同步源标识符(SSRC-n),占32位,标识在最近传输间隔内曾向本机发送过RTP报文的同步源,本机通过该接收报告块向这个SSRC-n反馈接收信息;丢失率,占8位,在最近传输间隔内,标识从SSRC-n接收的RTP报文的丢失率;报文丢失累计,占24位,标识从开始接收到现在为止,从SSRC-n接收的RTP报文的累计丢失数;41 4

27、1接收到的最高序列号,占32位,标识从SSRC-n接收到的RTP报文的最高序列号;平均延时抖动,占32位,每当从同步源SSRC-n收到第i个RTP报文时,则按相应公式计算平均延迟抖动;最近发送SR的时间(LSR),占32位,标识从SSRC-n接收到的最近一个SR报文中所记录的发送该SR的时间;LSR的时间差(DLSR),占32位,标识从SSRC-n接收到的最近一个SR的时刻到发送该接收报告之间的时间差。RR报文由在会话中那些不是当前发送者的参加会议者产生,其内容与SR报文中包含的接收报告块内容相同。用分组类型201来标识RR报文。信源描述报文用来描述与同步源/提供源有关的信息。结束报文用来标识

28、参与的结束,它应该是信息源发出的最后一种报文。4242RTCP协议可实现以下功能:QoS监控和拥塞控制。RTCP控制报文是多点传送的,其中包括监控QoS所必需的信息。因此,所有的对话成员都能够大致了解其他参与者的进展情况。媒体同步。RTCP控制报文中包含了序列号和时间戳,这两个值允许不同媒体同步。标识。信源描述报文为每个对话成员提供了一个全局唯一的标识符。对话大小的估计和规划。由于每个对话成员定期发送RTCP控制报文,当对话包含数百个与会者时,必须限制控制流量只占对话带宽的一小部分(通常为5)。43438.2.2 实时流协议实时流协议实时流协议(Real Time Streaming Prot

29、ocol,RTSP)是由Real Networks和Netscape以及哥伦比亚大学共同提出的。它是一个应用层协议,定义了媒体服务器和多用户之间如何有效地通过IP网络传送多媒体数据。它是一个请求/响应的协议,当客户端发出请求时,媒体服务器作出响应;同样,当媒体服务器发出请求时,客户端也能作出响应。利用RTSP可以在服务器和客户端之间建立并控制连续的音频媒体流和视频媒体流,进行服务器和客户端之间的“网络远程控制”,提供远程控制功能(如暂停、快进、倒带和直接选择位置等功能)。4444RTSP协议建立并控制一个或多个时间同步的连续媒体流,例如音频或视频。但是其本身并不传送连续媒体流,而是提供一种方法

30、来选择传送通道,例如UDP、TCP,或提供一种方法来选择基于RTP的传送机制,可见它扮演的是“网络远程控制”的角色。RTSP控制的流可以通过一个独立的协议来传送,该协议与RTSP的控制通道无关。例如,RTSP的控制通道可基于TCP连接,而它控制的流则基于UDP连接。那么,需要在媒体服务器保持所谓的“会话状态”,以便将RTSP请求与对应的流联系起来。4545在RTSP的媒体服务器和客户端中,主要存在四种状态:Init、Ready、Playing和Recording。状态之间的转变可以通过某种方法传递消息来触发。有如下几种重要的方法:SETUP,引发服务器给一个流分配资源,并启动一个RTSP会话;

31、PLAY、RECORD,启动该流的数据传输;PAUSE,暂时中断流,但不释放服务器资源;TEARDOWN,服务器释放与该流有关的资源,RTSP会话结束。当这些方法携带的消息被传递给服务器或客户端时,服务器或客户端的状态就会相应地发生改变。46468.2.3 资源预留协议资源预留协议RSVP(Resource Reserve Protocol)是用于Internet上资源预留的协议,位于IP层之上,属于OSI参考模型中的传输层,但它不是网络传送协议,因为它不传送应用数据,它是一种网络控制协议,用于建立网络资源预留。它允许客户端向网络提出一个特定的请求,为其数据流提供所需的端到端的服务质量。使用R

32、SVP协议,能在数据流经路径上的所有节点处保留必要的资源,以保证实际传输时所需要的带宽。在RFC2205中给出了RSVP协议的定义,最近的更新在RFC2750中给出。47471.RSVP协议的基本概念协议的基本概念(1)流(Flow)。流是以单播或多播方式在源宿间传输的数据码流,它为不同服务提供类似连接的逻辑通道。流在RSVP协议中占有重要的位置,协议中所有的操作几乎都是围绕流而进行的。(2)路径消息(Path Message)。路径消息由源端定时发出,并沿流的方向传输,其主要目的是保证沿正确的路径预留资源。RSVP规定,发送者在发送数据前首先要发送Path报文与接收者建立一个传输路径,并协商

33、QoS级。4848一个路径消息包含如下信息:Phop:后续节点地址,指出转发该Path消息的下一个支持RSVP的节点(路由器或接收端)的IP地址。该路径上每个支持RSVP的路由器都要更新这个地址。Sender Template:发送者模板,包括发送者的IP地址和可选择的发送者端口。Sender Tspec:发送者传输说明,其传输说明是用一种漏桶流量模型描述的,其中有数据流峰值速率p、桶深b、标记桶速率r、最小管理单元m以及最大数据报长度M等参数。4949Adspec:通告说明,可选项,含有OPWA(One Pass With Advertising)信息,使得接收者能计算出应保留的资源级,以获

34、得指定的端到端QoS。该路径上每个支持RSVP的路由器都要更新这些信息。(3)预留消息(Reservation Message)。预留消息由接收端定时发出,并沿路径消息建立的路由反向传输,其主要目的是为保障通信服务质量而请求各级节点预留资源。接收者接收到路径消息后,从Sender Tspec和Adspec字段中提取传输特性参数和QoS参数,利用这些参数建立起接收者保留说明Rspec,利用Rspec创建预留消息。5050一个预留消息包含如下信息:保留模式指示。过滤器说明(Filterspec):用来标识期望接收的发送者集合,采用与一个Path报文中的Sender Template完全相同的格式。

35、数据流说明(Flowspec):用来说明一个期望的服务质量(QoS),由保留说明Rspec和流量说明TRspec组合而成。通常,将TRspec设置成与SenderTspec相等。51 51保留确认对象(Resv Conf):是可选项,含有接收者的IP地址,用于指示接收该保留请求的节点。Resv Conf报文在分布树上向上传播,最终达到该消息接收者,表明端到端保留成功。52522.RSVP协议的工作过程协议的工作过程RSVP协议的工作过程如图8-5所示。发送端主机发出Path消息,路由器根据路由选择协议选择路由转发此消息。沿途每一个接收到该Path消息的节点,都会建立一个“Path状态”,保存在

36、每一个节点中。在“Path状态”信息中至少包括前一跳节点的单播IP地址,Resv消息就是根据这个前一跳地址来确定反向路由方向的。5353图8-5 RSVP协议的工作过程5454接收端主机负责向发送端发出Resv消息,Resv消息依据先前记录在网络节点中的“Path状态”信息,沿着与Path消息相反的路径传向发送端。在沿途的每一个节点处依照Resv消息所包含的资源预留的描述Flowspec和Filterspec,生成“Resv状态”,各个节点根据这个“Resv状态”信息,预留出所要求的资源。发送端的数据沿着已经建立资源预留的路径传向接收端。55553.RSVP协议基本框架协议基本框架RSVP协议

37、包含决策控制(Policy Control)、接纳控制(Admission Control)、分类控制(Classified Control)、分组调度(Scheduling)和RSVP处理模块等几个主要部分,如图8-6所示。决策控制主要用来判断用户是否拥有资源预留的许可权。接纳控制用来判断可用资源是否满足应用的需求,主要用来减少网络负荷。分类控制用来决定数据分组的通信服务等级,主要用来实现由Filterspec指定的分组过滤方式。分组调度则根据服务等级进行优先级排序,主要用来实现由Flowspec指定的资源配置。5656在预留建立期间,RSVP处理模块将接收端发来的一个RSVP QoS请求R

38、esv消息传递给接纳控制模块和决策控制模块。如果其中任何一个控制模块测试失败,预留请求都被拒绝,此时RSVP处理模块将一个错误的消息返回给接收端。只有两个控制模块都测试成功,节点才会进一步处理,分别依据Rsvp消息中的Flowspec和Filterspec设置分类控制模块和分组调度模块中的参数,以满足所需的QoS请求。5757图8-6 RSVP协议框架5858预留资源后便可进行数据传输。当数据传输到该节点后,分类控制模块确定每一个数据分组的QoS等级,将具有不同QoS等级的数据分组进行分类,然后把它们送到分组调度模块中,按照不同的QoS等级进行排队,再通过接口发送出去。59598.3.1 流媒

39、体的关键技术流媒体的关键技术1.视频、音频压缩视频、音频压缩/解压缩编码解压缩编码从流媒体技术的角度来讲,希望压缩编码具有伸缩性或层次性,即信息源经一次压缩编码后,编码数据在传输时应该能方便地根据网络带宽的变化进行一定的调整处理,使客户端获取最好质量的同时能维持最好的连续性。目前,已有多种形式的编码方式,如H.263、MPEG-1、MPEG-2、MPEG-4,或多或少都具有一定的可伸缩特性。8.3 流媒体的关键技术及开发平台流媒体的关键技术及开发平台6060结合多种视/音频编码技术来适应网络上的QoS波动是今后可伸缩性视频编码的发展方向。比如,可伸缩性视频编码可以适应网络带宽的变化,错误弹性编

40、码(Error Resilient Encoding,ERE)可以适应一定程度的丢包,DCVC(Delay Cognizant Video Coding)可以适应网络时延变化状况。这些技术的综合运用可以更好地提供应对网络QoS波动的解决方案。61 612.缓存技术缓存技术与下载方式相比,尽管流式传输对于系统存储容量的要求大大降低了,但要保持连续的视频播放仍需要较大的缓存,这是因为Internet是分组传输的,必须用缓存机制来克服延时和延时抖动的影响,使媒体数据能连续播放,不会因网络暂时的拥塞而出现停顿。高速缓存使用环形链表结构来存储数据,通过丢弃已经播放的内容,重新利用缓存空间来存储后续的媒体

41、内容。如果源端和终端之间用无连接方式(如UDP/IP)通信,还必须保证数据包顺序的正确。在网络质量有一定保证的前提下,缓存机制是实现流媒体技术的重要技术。62623.应用层应用层QoS控制技术控制技术由于目前的Internet只提供尽力的服务,因此需要通过应用层的机制来实现QoS的控制。QoS控制技术集中在适应网络带宽变化和处理分组丢失的技术上,可以分为拥塞控制技术和差错控制技术。6363拥塞控制的目的是应对和避免网络阻塞,降低延时和丢包率。常用的拥塞控制机制有速率控制和速率整形。对于视频流,拥塞控制的主要方法是速率控制。速率控制机制试图使视频连接的需求与整个链路的可用带宽相匹配,同时使网络拥

42、塞和丢包率达到最小。速率控制机制主要包括基于源端的控制机制、基于终端的控制机制以及混合速率控制。基于源端的控制机制是一种反馈机制,它根据接收端发送的反馈信息来调整编码器的某些参数,从而控制流速率。这种方法在互联网中被率先采用,6464但是在异构网络中的运行情况并不是很好。基于终端的控制机制则主要根据所接收的视频流的状况向上层反映相应的统计信息,实时调整缓冲及播放内容,并力图使节奏均匀,这种机制使用较少。混合速率控制的方法兼有前两者的特点,目前已得到广泛采用。6565拥塞控制能降低网络拥塞、延时和丢包率,但是网络中不可避免地会存在数据包丢失,而且到达延时过大的分组也会被丢弃,从而降低了传输质量。

43、要改善传输质量就需要一定的差错控制机制。差错控制机制包括以下四个方面:(1)前向纠错(FEC)。FEC在传输的码流中加入用于纠错的冗余信息,在遇到包丢失的情况时,利用冗余信息恢复丢失的信息。其不足之处是增加了编码延时和附加开销。(2)延时约束的重传。由于终端缓存有限,而且通常流的播放有时间限制,因此重传的时间必须与缓存及流播放时间匹配。时间过长的重传是没有意义的。6666(3)错误弹性编码(ERE)。在编码中通过适当的控制,使得发生数据丢失情况后能够最大限度地减少对质量的影响。在Internet环境下,典型的方法是使用多描述编码(MDC)。MDC把原始数据序列压缩成多个流,每个流对应一种描述,

44、可以提供不同的质量,多个描述结合起来提供更好的质量。该方法的优点是实现了对数据丢失的鲁棒性。其缺点是,与单描述编码(SDC)相比,MDC在压缩效率上受到影响。而且由于在多描述之间必须加入一定的相关性信息,因而进一步降低了压缩效率。6767(4)差错隐蔽。差错隐蔽是指接收端通过采取一些措施,部分恢复由于传输错误而被破坏的数据。主要有时间隐蔽方法、空间隐蔽方法和运动补偿隐蔽方法等。时间隐蔽将丢失或者被破坏的数据块用前一帧对应位置上的数据块来代替,该方法对于相对静止部分的差错隐蔽效果较好,而对快速运动的物体和场景切换的情况则不好。空间隐蔽利用周围无差错的数据块进行插值来恢复丢失或被破坏的数据块,虽然

45、很难恢复出图像的细节,但底色和粗略轮廓的恢复会在很大程度上降低差错的能见度。运动补偿隐蔽方法是在进行帧间编码的宏块产生错误或丢失时,根据它的运动补偿量找到该宏块的参考数据块,用参考数据块来代替该宏块。68684.连续媒体分发服务连续媒体分发服务连续媒体分发服务的目的是在Internet尽力服务的基础上提供QoS和高效的多媒体信息传输,包括网络过滤、应用层多播和内容复制等。(1)网络过滤。网络过滤是拥塞控制的一种,它不仅可以提高传输质量,还可以提高带宽利用率。网络过滤是在流媒体服务器和客户端之间的传输路径上通过虚拟信道连入过滤器的,该过滤器根据网络的拥塞状态实现速率的整形。网络过滤通常采用的是丢

46、帧过滤器,基本方法是根据网络丢包率向过滤器发送请求来增减帧速率,以调节媒体流所需的带宽。6969(2)应用层多播。应用层多播打破了IP多播的一些障碍,其目的在于构建网络上的多播服务,可以以更灵活的方式实现多播控制。7070(3)内容复制。内容或媒体复制是提高媒体传输系统可伸缩性的一项重要技术。它主要有两种形式:镜像和缓存。镜像是把原始媒体内容复制到分布在网络上的备份服务器中,用户可以从最近的备份服务器上获得媒体数据。缓存则是从原服务器中获得媒体文件,然后传输给客户端,同时在本地作备份。如果缓存中已经存在客户端需要的数据,缓存就会把本地复制的媒体内容传给用户,而不再向服务器请求媒体数据。内容复制

47、的优点在于降低网络连接带宽的使用,减轻流服务器负荷,缩短客户端延时,提高有效性。71 715.流媒体服务器流媒体服务器流媒体服务器在流媒体服务中起着非常重要的作用。流媒体服务器在响应客户的请求后,从存储系统读入一部分数据到特定缓存中,再把缓存的内容通过网络接口发送给相应的客户,保证视频流的连续输出。目前存在以下三种类型的流媒体服务器结构:(1)通用主机方法。通用主机的方法采用计算机主机作为流媒体服务器,它的主要功能是存储、选择、传送数据。缺点是系统成本高,不能完全发挥主机的功能。7272(2)紧耦合多处理机。把由一些可以大量完成某指令或者专门功能的硬件单元组合成的专用系统级联起来,就构成了紧耦

48、合多处理机实现的视频服务器。这种服务器费用低、性能高、功能强,但是可扩展性较差。(3)调谐流媒体服务器。它通过在主板中插入更多的服务通路,可以方便地进行扩展。其缺点是成本较高。对于流媒体服务,如何更有效地支持交互控制功能,如何设计磁盘阵列上多媒体对象高效可靠的存储和检索,如何设计更好的可伸缩性流媒体服务器,如何设计兼有奇偶和镜像特性的容错存储系统是目前研究的重点。7373流媒体具有很好的发展前景,一些相关技术,包括图像编码技术、解决网络传输服务质量问题等,已经有了一定的进展,业务的应用范围也在不断扩大。但流媒体服务器的处理能力以及并发流数量等问题还有待解决。74748.3.2 流媒体开发平台简

49、介流媒体开发平台简介目前市场上主流的流媒体技术有三种:Real Networks公司的Real Media、Microsoft公司的WindowsMedia和Apple公司的Quick Time。这三家都有各自的流媒体格式、编/解码算法和传输控制协议等。1.Real Media流媒体流媒体Real Networks公司于20世纪90年代中期最早推出了流媒体技术Real Media,在Internet上被公认为流媒体传输技术的先驱者。随着Internet的飞速发展,Real Networks公司拥有目前最多的用户,其用户数量已经超过20亿。7575由Real Media技术构成的系统Real S

50、ystem的结构如图8-7所示。该系统由三部分组成:媒体内容制作工具Real Producer、媒体服务器Real Server和客户端播放器Real Player。Real Producer实际上是一个编码器,它的作用是将其他格式的音/视频等多媒体文件或实时的现场信号转换成Real System使用的Real格式文件(*.rm等)并传送给Real Server,Real Server将Real Producer制作好的流媒体内容通过IP网传送给用户,用户端则通过安装好的Real Player播放器提出请求,并对传送来的媒体节目进行播放。Real格式文件有多种,表8-1示出其中的几种。7676

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《网络多媒体技术》课件第8章.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|