Chapter6流媒体相关网络协议南京工程学院计算机工程学院徐梦溪6.1流媒体传输基础6.1.1Internet传输的基本概念1.数据和信号(1)数据:描述信息的数字、字母或符号。模拟数据是指由传感器采集得到的连续变化的值。数字数据是指模拟数据经采集、量化、编码后所得到的离散的值。(2)信号:数据在传输过程中的表示形式,带有信息的某种物理量。模拟信号一般通过PCM脉码调制方法量化为数字信号;数字信号一般通过对载波进行移相的方法转换为模拟信号。6.1.1Internet传输的基本概念(Cont’d)2.信道和带宽(1)信道按照其存在形式分为有线信道和无线信道;按照其传输信号的类型分为模拟信道和数字信道。(2)带宽信号带宽是指信号以电磁波形式传输,电磁波的频谱范围;信道带宽是指信道上能够传送的最大频率范围;在通信过程中,信号带宽必须小于信道带宽;带宽单位为MHz。6.1.1Internet传输的基本概念(Cont’d)3.信道容量和数据传输速率(1)信道容量:信道在单位时间内可以传输的最大信号量,表示信道的传输能力。(2)数据传输速率:通信线上传输信息的速度。信号速率S是指单位时间内所传送的二制位代码的有效位数,以bps为单位。调制速率B是指脉冲信号经过调制后的传输速率,以BAUD为单位。在通信过程中,信道容量应大于传输速率。6.1.1Internet传输的基本概念(Cont’d)4.差错校正和误码率(1)差错校正:字符代码在传输、接收过程中,由于信道噪声或其他外界干扰,难免会发生错误,及时自动检测差错并进一步自动校正。(2)误码率:信息传输的错误率。Pe=出错比特数/传输比特数网络的误码率主要取决于信源至信宿之间的信道的质量。误码率越高,则信道的质量越差。6.1.1Internet传输的基本概念(Cont’d)5.宽带和窄带一般以网络接入的数据传输率来区分。低于1兆的连接速率称为窄带接入;高于1兆的连接速率称为宽带接入。6.1.2Internet传输服务质量QualityofService(QoS)1.尽力传送(Best-effort)单一服务模型应用程序可以在任何时候,发出任意数量的报文,而且不需要事先获得批准,也不需要通知网络。2.实时传送(Real-time)综合服务模型应用程序首先通知网络它自己的流量参数和需要的特定服务质量请求,应用程序一般在收到网络的确认信息,才开始发送报文。6.2流媒体网络传输特点1.流媒体技术关键特征:数据压缩流式传输2.优点:启动延时短对系统缓存容量的需求大大降低流式传输的实现有特定的实时传输协议6.2流媒体网络传输特点(Cont’d)3.应用流媒体技术传输网络音视频系统的基本原理:采用高效的压缩算法(在降低文件大小的同时伴随质量的损失),使多媒体数据文件变小以适合流式传输,架设流媒体服务器,修改MIME标志,通过各种实时协议传输流数据。6.3流媒体传输协议简介RTP(Real-timeTransportProtocol):针对多媒体数据流。RTCP(Real-timeTransportControlProtocol):与RTP一起提供流量控制和拥塞控制服务。RTSP(Real-TimeStreamingProtocol):定义了一对多的应用程序如何有效地通过IP网络传送多媒体数据。RSVP(ResourceReserveProtocol):在一定程度上为流媒体的传输提供QoS。MMSP(MicrosoftMediaServerProtocol)6.3.1RTP1.RTP协议的相关概念(1)TimeStamping(时戳)把接收到的语音和视频等多媒体数据按照正确的时间顺序提交给上层。对于语音来说,时戳按封包间隔和采样速率乘积而递增;对于视频来说,时戳的生成依赖于应用程序是否能够分辨其帧数。如果能够分辨帧速率,则使用一个固定的速率增加。6.3.1RTP——RTP协议的相关概念(2)SequenceNumbers(顺序编号)通常使用UDP协议传输数据排序RTP分组,以消除重复分组,保持视频和音频流连续播放。(3)SourceIdentification(源标志)帮助接收端利用发送端生成的唯一数值来区分多个同时的数据流,得到数据的发送源。6.3.1RTP——RTP协议的相关概念(4)PayloadType(载荷类型)对传输的音、视频等数据类型予以说明,并说明相关的编码方式,接收端从而知道如何解码和播放负载数据。(5)Mixer(混合器)将多个载荷数据组合起来产生一个发出的包,允许接收端确认当前数据的贡献源,具有相同的同步源标识符。6.3.1RTP(Cont’d)2.RTP协议工作原理在流的概念中“时戳”是最重要的信息。RTP协议和UDP二者共同完成运输层协议功能。RTP的协议数据单元是用UDP分组来承载的。RTP协议虽然是传输层协议但是没有作为OSI体系结构中单独的一层来实现。6.3.1RTP(Cont’d)3.RTP分组格式NB:PayloadType1238916bitVPXCSRCCountMPayloadTypeSequenceNumberTimestampSSRCCSRC6.3.1RTP(Cont’d)RTP包传输流程6.3.1RTP(Cont’d)4.RTP协议的特点RTP协议具有很大的灵活性数据流和控制流分离RTP协议具有很大的扩展性和适用性6.3.2RTCP1.RTCP协议的工作原理——四个功能:(1)为数据传输的质量提供反馈,并提供QoS检测(2)提供不同媒体间的同步(3)在会话的用户界面上显示会话参与者的标志(4)调节信息的缩放6.3.2RTCP(Cont’d)2.RTCP分组格式23816bitVersionPRCPackettypeLength6.3.2RTCP——RTCP分组格式5种类型的报文:SRRRSDESBYEAPP6.3.3RTSP1.RTSP协议的工作原理(1)RTSP协议的功能A.通过媒体服务器检索媒体B.媒体服务器邀请进入会议C.将媒体加到现成讲座中6.3.3RTSP——RTSP协议的工作原理(2)RTSP协议的实现A.初始化B.TCP传输C.UDP传输D.传输反馈6.3.3RTSP(Cont’d)2.RTSP协议的结构BookP35-386.3.3RTSP(Cont’d)3.RTSP协议的特点(1)可扩展性(2)易解析(3)安全(4)独立于传输(5)多服务器能力(6)记录设备控制(7)适合专业应用(8)播放种类的中立性(9)代理和防火墙的友好性(10)分配服务器控制(11)传输协商(12)能力协商6.3.3RTSP(Cont’d)4.RTSP协议与其他协议的关系(1)RTSP协议与HTTP协议的联系目前的协议规范同时允许网页服务器和流媒体服务器支持RTSP实现。(2)RTSP协议与HTTP协议的区别HTTP是一个不对称协议;在RTSP中,Client和Server都可发出请求,且请求是有状态的。HTTP是无状态协议;RTSP在任何情况下必须保持一定状态。6.3.4RSVP1.RSVP协议工作原理(1)发送端依据传输带宽范围的高低、传输延迟,以及抖动来说明发送业务。(2)为了获得资源预留,接收端发送一个上行的RESV(预留请求)消息。(3)当每个支持RSVP的路由器沿着上行路径接收RESV的消息时,它采用输入控制过程证实请求,并且配置所需的资源。(4)当最后一个路由器接收RESV,同时接受请求的时候,它再发送一个证实消息给接收端。当发送端或接收端结束了一个RSVP会话时,将断开连接。6.3.4RSVP(Cont’d)2.RSVP数据流流说明是互连网主机用来请求特殊服务的数据结构,保证互连网处理主机传输。RSVP支持三种传输类型:最好性能(best-effort),速率敏感(rate-sensitive)与延迟敏感(delay-sensitive)。最好性能传输为传统IP传输。应用包括文件传输(如邮件传输)、磁盘映像、交互登录和事务传输。支持最好性能传输的服务称为最好性能服务。速率敏感传输放弃及时性,而确保速率。延迟敏感传输要求传输及时,并因而改变其速率。6.3.4RSVP(Cont’d)3.RSVP数据流处理RSVP数据流基本特征是连接,数据包在其上流通。RSVP支持单播和组播连接,流总是从发送者开始。特定连接的数据包被导向同一个IP目的地址或公开的目的端口。IP目的地址是组播发送的组地址,或是单个接收者的单播地址。RSVP数据发布通过组播或单播实现。组播传输将某个发送者的每个数据包拷贝转发给多个目的。单播传输只有一个接收者。即使目的地址是单播,也可能有多个接收者,以公开端口区分。多个发送者也可能存在单播地址,RSVP可建立多对一传输的资源预订。每个RSVP发送者和接收者对应唯一的Internet主机。单个主机可包括多个发送者和接收者,以公开端口区分。6.3.4RSVP(Cont’d)4.RSVP服务质量(QoS)是流规范指定的属性。流规范用于决定参加实体(路由器、接收者和发送者)进行数据交换的方式。主机和路由器使用RSVP指定QoS。其中,主机代表应用数据流使用RSVP从网络申请QoS级别;路由器使用RSVP发送QoS请求给数据流路经的其它路由器。这样做,RSVP就可维持路由器和主机状态来提供所请求的服务。6.3.4RSVP(Cont’d)5.RSVP连接启动为了初始化RSVP组播连接,接收者首先使用Internet组成员协议(IGMP)加入IP目的地址指定的组播组。对单播连接,单播路由就象IGMP结合协议无关组播(PIM)在组播时的作用。接收者加入组后,潜在的发送者就开始发送RSVP路径信息给IP目的地址。接收者应用收到路径信息,开始发送相应资源预订请求信息,使用RSVP指定欲点播的流描述。发送者应用接收到资源预订请求信息后,开始发送数据包。6.3.4RSVP(Cont’d)6.RSVP资源预订类型A.独占资源预订——为每个连接中每个相关发送者安装一个流(1)固定过滤类型B.共享资源预订——由不相关的发送者使用(2)通配过滤类型(3)共享显式类型6.3.4RSVP(Cont’d)7.RSVP软状态实现对RSVP,软状态指可被某些RSVP信息更新的路由器和终端结点的状态。软状态特征允许RSVP网络支持动态组成员变化,并适应路由变化。一般说来,软状态由基于RSVP网络维护,使网络可在没有查询终端结点的情况下改变状态。RSVP协议为创建和维护组播和单播混合发送路径的分布式资源预订状态提供了一个通用功能。为维护资源预订状态,RSVP跟踪路由器和主机结点的软状态。路径与资源预订请求信息创建并周期更新RSVP软状态。如在清除时间间隔到期前没有收到相应更新信息,就删除该状态,显式teardown信息也可删除软状态。RSVP周期扫描欲建立的软状态,并转发路径与预订请求更新信息给下一跳。6.3.4RSVPRSVP软状态实现当路由改变,下一个路径信息初始化新路由的路径状态,根据资源预订请求信息建立资源预订状态。现在未使用的网段状态标记为超时。RSVP规范要求在拓扑改变后两秒通过网络初始化新资源预订。当发生状态变化,RSVP无延迟的将变化从RSVP网络的一个终端传到另一个终端。如接收到的状态与存储状态不同,就更新存储状态。如结果改变了欲产生的更新信息,更新信息立即生成并转发出去。6.3.4RSVP(Cont’d)8.RSVP操作模型——基本RSVP协议操作RSVP资源预订处理初始化开始于RSVP后台服务查询本地路由协议以获得路由。主机发送IGMP消息加入组播组,而发送RSVP消息预订沿组路径的资源。每个能加入资源预订的路由器将收到的数据包传递给包分类器,然后将它们在包调度器中排队。RSVP包分类器决定每个包的路由