videocalling
Illustration of RTCP(RTP 控制协议) in video calling

RTCP(RTP 控制协议)

协议

RTP 的姊妹协议,提供带外控制信息和统计数据。

什么是 RTCP?

RTP 控制协议(RTCP)与 RTP 协同工作。RTP 承载实际的媒体数据(音频和视频),而 RTCP 承载关于该媒体流的控制信息和统计数据。它充当发送方和接收方之间的反馈机制。

主要功能

  • 质量报告:RTCP 数据包包含接收方报告,详细说明丢包率、抖动和往返时间(RTT)。发送方利用这些数据来调整视频质量(自适应比特率)。
  • 同步:RTCP 发送方报告将 RTP 时间戳(相对时间)映射到挂钟时间(NTP 时间戳),使音频和视频流能够完美同步(唇音同步)。
  • 会话控制:RTCP BYE 数据包表示用户已离开会话。

RTCP 反馈消息

在 WebRTC 中,RTCP 还用于即时反馈消息,例如:

  • NACK(否定确认):“我丢失了一个数据包,请重新发送。”
  • PLI(图片丢失指示):“我丢失了整个帧,请发送一个新的完整关键帧。”

复用

现代 WebRTC 实现通常使用 RTCP Mux,即 RTP 和 RTCP 流量通过同一端口发送,以简化防火墙穿越。