在RFC 1889文档中定义了5种传送控制信息的RTCP数据包,分别如下。 SR:Sender Report,发送端报告。SR由发送方产生,包含发送端信息部分、媒体间的同步信息、数据包累计计算、发送的字节数等,如果开展IDC业务,需要了解数据中心设备。
RR:Receiver Report,接收端报告。由接收方产生,主要是数据传输的质量反馈,包括接收的最大数据包数、丢失的数据包数、计算发送端和接收端的往返延迟等。
SDES:Source Description,源描述,包含对源的一些描述信息。
BYE:表示结束参与。
APP:应用特殊功能。
CDN协议上面5种传送控制信息中,发送端报告和接收端报告对质量控制是最重要的信息,我们来进一步理解一下这两类消息。
发送端报告用于同步一次RTP会话中的不同流,信息包括:
● RTP流的SSRC。
●时间戳和流中最近产生的RTP分组的墙上时钟时间(wall clock time)。
●流中发送的分组数。
●流中发送的字节数。
接收端报告包括几个字段,其中最重要的是:
● RTP流的SSRC,标识报告所对应的RTP流。
●在RTP流中丢失的分组。接收方计算丢失的RTP分组数除以流中的RTP分组总数,如果发送方发现这个字段显示接收方收到的分组数过小,就会降低编码速率。
● RTP流中收到的最后一个序号。
●到达时延抖动,它是RTP流中连续分组之间的到达时间间隔变化的平滑估计。
关于RTP和RTCP协议更为详细的描述,读者可以查阅RFC 3550。
RTSP(Real Time Streaming Protocol),实时流传输CDN协议,是由RealNetworks和Netscape提交的IETF RFC标准。RTSP是一个应用层协议,属于TCP/IP协议体系,位于RTP和RTCP之上。读者首先应该明确一个概念:CDN协议是一个用来实现播放控制的协议,而不是一个流媒体压缩协议或者传送协议。
意思是,这个协议可以使用户像使用电视遥控器一样控制互联网中流媒体的播放、暂停/继续、快进、快退。但它不负责定义音视频压缩方案、分组封装方式,也不限制播放器如何缓冲。这些分别要由编码协议和实时交互协议来做。
下面会讲述RTSP的简单工作原理,在此之前,需要了解几个经常出现的术语,这有助于读者理解后面的内容。