我是一个RRTCC的新手,我真的不明白RRTCC如何调整传入媒体的比特率。 我试着阅读了RRTCC的互联网草案,但是无法理解:https://datatracker.ietf.org/doc/html/draft-alvestrand-rmcat-congestion-03 它根据延迟和丢包计算估计带宽,那么接下来呢? 它如何直接控制发送速率以控制拥塞?
我是这份草案的作者之一。如果您有兴趣了解设计标准,您也可以查看这篇论文:G. Carlucci, L. De Cicco, S. Holmer和S. Mascolo 分析和设计Google拥塞控制用于Web实时通信(WebRTC) ACM Mmsys 2016年会议论文集,奥地利克拉根福,2016年5月该论文可在以下链接下载:http://c3lab.poliba.it/images/6/65/Gcc-analysis.pdf。
RTP接收器并不直接控制发送速率。它只向RTP发送器发送状态信息,而RTP发送器是唯一能够控制自己发送速率的。“draft-alvestrand-rmcat-congestion”已被“draft-ietf-rmcat-gcc”所取代,因此建议使用后者。在“2.系统模型”中,它解释了RTP接收器还应该作为RTCP发送器,以便向RTP发送器发送REMB消息。这些消息应该由RTP接收器在检测到任何拥塞时立即发送,并且即使没有拥塞发生也应该以每秒一次的速率继续发送。然后,RTP发送器使用接收到的消息中的信息来决定是否可以提高传输比特率或应立即降低。