|
RTP 控制协议 RTCP 在基于周期性传输的基础上,采用与数据包相同的分配机制,向会话参与者发送控制包。底层协议必须提供数据多路技术和控制包,例如使用 UDP 的特定端口号。RTCP 完成四个功能服务:
- RTCP 提供数据分配质量反馈信息。作为传输协议这是 RTP 功能的主要部分并且它涉及到了其它传输协议的流控制和拥塞控制。
- RTCP 为 RTP 源(称为规范名或 CNAME)传送一个持久性传输层标识符。由于一旦发现冲突或需要重启程序时,SSRC 标识符会随之改变,所以接收方要求 CNAME 明了每一个参与者,同时接收方还要求 CNAME 能够连接多重数据流和一组相关会话中的指定参与者,例如同步视频和音频。
- 上述前两个功能要求所有的参与者都要发送 RTCP 包,因此必须控制速率以便 RTP 按比例增加大量的参与者。通过每一个参与者发送各自的控制包给其它所有参与者,每一个参与者能够独立观察到参与者数量,该数量可用来估算包的发送速率。
- OPTIONAL 的功能是传送最小会话控制信息,例如在用户界面显示参与者标识。这对于“松散受控”会话(在没有成员控制或阐述协商的情况下,参与者可以进出该会话)是非常有用的。
上述功能1-3适用于所有环境,尤其是 IP 组播环境。RTP 应用程序设计者应该避免设计只能工作于单播模式的机制并且不能大量增加其数量。由于在某些情况下如单向链接中,不可能有来自接收方的反馈,所以 RTCP 的传输就可能由发送方和接收方分别独立控制。 |