高等计算机网络多媒体网络(2)计算机科学与技术学院网络工程教研室袁卫华第六次课计算机科学与技术学院网络工程教研室主要内容一、复习四、小结和作业三、充分的尽力而为的服务二、流式存储音频视频(2)计算机科学与技术学院网络工程教研室问题一、复习1、多媒体网络应用与其他弹性应用,如FTP,HTTP相比,有什么特点?2、多媒体网络应用分成哪几类?各有什么特征?3、当今因特网上多媒体应用面临的主要障碍是什么?4、音频视频为什么要经过压缩?5、通过Web服务器访问流式存储音频和视频的基本过程6、通过Web服务器访问流式存储音频和视频中存在的问题是什么?媒体播放器和服务器之间传送音频视频采用的协议是什么?计算机科学与技术学院网络工程教研室通过Web服务器访问音频视频1)最原始的方法音频视频数据以文件形式存储在Web服务器上:浏览器发送HTTP请求消息服务器发送包含所请求文件的HTTP响应消息content-type描述编码方式媒体文件接收完毕,浏览器开始启动播放器播放器解码并播放Web浏览器媒体播放器客户机Web服务器媒体文件存储在Web服务器上要求访问媒体文件的HTTP请求服务器包含所请求媒体文件的HTTP响应报文启动一、复习计算机科学与技术学院网络工程教研室通过Web服务器访问音频视频2)播放器和Web服务器直接连接Web浏览器媒体播放器元文件对元文件的HTTP请求/响应使用HTTP请求多媒体文件媒体播放器使用元文件中的URL直接和Web服务器建立TCP连接,并发送请求音频视频文件的HTTP报文。Web服务器通过HTTP响应报文将音频视频文件发送给媒体播放器。媒体播放器在接收文件几秒到几十秒后开始播放媒体文件。Web服务器媒体文件存储在Web服务器上包含所请求媒体文件的HTTP响应报文一、复习媒体播放器和Web服务器之间只能使用HTTP服务,而HTTP运行在TCP之上。网络拥塞的时候,TCP重传丢失的报文段,会使正在播放的音频视频出现暂停。使用HTTP与服务器通信时,通常不易实现暂停,快进,倒退等功能。计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频二、流式存储音频和视频(2)1)基本访问过程Web浏览器媒体播放器展现描述文件Web服务器流式服务器对展现描述文件的HTTP请求和响应请求并发送的多媒体文件客户浏览器向Web服务器发送媒体文件的请求,得到媒体文件的一个展现描述文件Web浏览器根据展现描述文件调用相应的媒体播放器,并将展现描述文件发送给媒体播放器媒体播放器和流式服务器通过自己的协议进行交互流式音频视频文件不是存放在Web服务器中,而是存放在专门的流式服务器中计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频2)TCPorUDP?Web浏览器媒体播放器展现描述文件Web服务器流式服务器对展现描述文件的HTTP请求和响应请求并发送的多媒体文件流式服务器通过流式服务器,音频视频能经过HTTP/TCP发送也可以使用比HTTP更适合音频视频的应用层协议来传送音频视频如可以在UDP上发送,如实时运输协议RTP/UDP发送音频视频文件使用流式服务器存放流式音频、视频文件后,流式服务器和媒体播放器之间是用TCP还是UDP协议进行数据传输?二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频3)从流式服务器向媒体播放器交付音频视频的方式均匀的分组比特传输time不同的网络时延客户端接收到的音频分组客户端均匀的音频播放客户端的播放时延缓存的视频客户端的缓存及播放延迟,可以一定程度缓解时延抖动问题二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频3)从流式服务器向媒体播放器交付音频视频的方式客户机缓冲区预取的视频数据填充速率=x(t)排空速率=d来自网络解压缩并播放填充速率x(t):由流式服务器向客户机缓冲区发送数据的速率排空速率d:音频视频的编码速率填充速率x(t)与排空速率d及使用的传输层协议有什么关系?二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频3)从流式服务器向媒体播放器交付音频视频的方式一、通过UDP方式1.音频视频通过UDP以等于接收方排空速率d的恒定速率x(t)发送,客户机一旦从网络上接收到压缩的音频视频,就解压缩并播放之。发送速率x(t)=排空速率d这种方式中有没有消除时延抖动对流媒体播放的影响?接收方的缓冲区会不会出现“饥饿”的现象?问题:填充速率x(t)与排空速率d及使用的传输层协议有什么关系?二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频3)从流式服务器向媒体播放器交付音频视频的方式一、通过UDP方式2.音频视频通过UDP以等于接收方排空速率的恒定速率发送,为了消除时延抖动,将从网络上接收到的压缩媒体文件延迟2-5秒后再播放。客户端缓存的填充速率x(t)=发送速率*(1-丢包率)问题:填充速率x(t)与排空速率d及使用的传输层协议有什么关系?二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频3)从流式服务器向媒体播放器交付音频视频的方式二、通过TCP方式通过TCP发送媒体。服务器以允许的最大速率发送数据填充速率x(t)随网络的拥塞状况而波动丢包后,很长时间内x(t)d,可能暂时清空客户端缓冲区并在客户端引起暂停。x(t)的大小依赖于客户端缓冲区的大小从网络上接收到的压缩媒体文件存放在客户端缓冲区中,延迟2-5秒后再播放HTTP/TCP更容易穿透防火墙问题:填充速率x(t)与排空速率d及传输层协议有什么关系?二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室1.通过流式服务器访问音频视频3)从流式服务器向媒体播放器交付音频视频的方式问题:当客户端接收数据速率不同的时候,应如何处理?1.5Mbps编码28.8Kbps编码服务器根据接收端的数据速率向它们传输不同的版本。同一个音频视频文件通常采用多种不同的压缩标准压缩形成不同比特率的多个音视频记录版本,存储在服务器端。二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2.实时流协议RTSP1)用户希望能够控制多媒体信息的播放HTTP协议能控制媒体流的传输吗?(暂停,快进,快退)HTTP所服务的媒体已经定型:HTML,images,applets,etc.HTTP的设计没有考虑流媒体的控制音频视频的传输以及播放控制RTSP(Real-TimeStreamingProtocol)客户端-服务器应用层协议,允许媒体播放器控制媒体流的传输。用于在媒体播放器和服务器之间交换控制信息。可为用户提供播放控制:快退,快进,暂停/继续,播放重定位二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2)RTSP没有实现的功能没有定义媒体信息的压缩方案没有定义多媒体数据的封装方式可采用RTP或私有协议进行封装RealNetworks服务器和播放器利用RTSP交换控制信息,媒体本身是采用RTP/UDP进行封装传输。没有限制流媒体的传递方式可以用UDP,也可以用TCP没有播放器如何对音频视频数据进行缓存二、流式存储音频和视频(2)2.实时流协议RTSP计算机科学与技术学院网络工程教研室2.实时流协议RTSP3)RTSP的功能允许播放器控制流媒体的传输控制动作包括快退,快进,暂停/继续,播放重定位RTSP协议特点是一个带外协议RTSP控制报文使用的端口号与媒体流使用的不同,使用端口544,RTSP报文可以用UDP,也可以用TCP发送二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2.实时流协议RTSP4)RTSP的启动和控制传递Web浏览器媒体播放器Web服务器媒体服务器HTTPGET展现描述文件建立播放媒体流暂停拆除1.Web浏览器向Web服务器请求一个展现描述文件,展现描述文件中包括展现描述文件中包含指向几个连续媒体文件的引用(以URL方法的rtsp://开始)这些连续媒体文件的同步指示二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2.实时流协议RTSP4)RTSP的启动和控制传递展现描述文件中的样式:titleTwister/titlesessiongrouplanguage=enlipsyncswitchtracktype=audioe=PCMU/8000/1src=rtsp://audio.example.com/twister/audio.en/lofitracktype=audioe=DVI4/16000/2pt=90DVI4/8000/1src=rtsp://audio.example.com/twister/audio.en/hifi/switchtracktype=video/jpegsrc=rtsp://video.example.com/twister/video/group/session音频和视频按片同步,并行播放低保真度的音频高保真度的音频视频二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2.实时流协议RTSP4)RTSP的启动和控制传递Web浏览器媒体播放器Web服务器媒体服务器HTTPGET展现描述文件建立播放媒体流暂停拆除2.浏览器展现描述文件内容类型字段调用相应的媒体播放器。3.媒体播放器和媒体服务器互相发送一系列RTSP报文。二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2.实时流协议RTSP4)RTSP的启动和控制传递Web浏览器媒体播放器Web服务器媒体服务器HTTPGET展现描述文件建立播放媒体流暂停拆除3.媒体播放器和媒体服务器的交互播放器发送RTSPSETUP请求;服务器发送RTSPSETUP响应播放器发送RTSPPLAY请求;服务器发送RTSPPLAY响应.媒体服务器将流媒体送入自己的带内信道.播放器发送RTSPPAUSE请求;服务器发送RTSPPAUSE响应.播放器发送RTSPTEARDOWN请求;服务器发送RTSPTEARDOWN响应二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2.实时流协议RTSP5)RTSP会话C:SETUPrtsp://audio.example.com/twister/audioRTSP/1.0Cseq:1Transport:rtp/udp;compression;port=3056;mode=PLAYS:RTSP/1.02001OKCseq:1Session4231C:PLAYrtsp://audio.example.com/twister/audio.en/lofiRTSP/1.0Session:4231Range:npt=0-Cseq:2S:RTSP/1.02001OKCseq:2Session4231……会话号,由服务器选择,在整个回话中保持不变序号,客户端每发送一个新的报文,序号就加1二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室2.实时流协议RTSP5)RTSP会话会话号每个RTSP会话都会使用由服务器选择的会话号。当客户端用SETUP请求启动会话,服务器就会使用会话号进行响应。RTSP服务器通过会话号一直跟踪每个正在进行的RTSP会话中的客户机状态。在随后的过程中,客户端反复在每个请求中都使用该会话号,直到客户端使用TEARDOWN请求来结束会话.二、流式存储音频和视频(2)计算机科学与技术学院网络工程教研室0.内容概要三、充分尽力而为服务1)IP电话2)尽力而为服务的限制3)在接收方消除音频的时延抖动4)丢包恢复方案5)内容分发网络CDN计算机科学与技术学院网络工程教研室1.IP电话三、充分尽力而为服务1)广义的IP电话和狭义的IP