WebRTC - Google WebRTC 拥塞控制算法 (RRTCC) 如何控制拥塞?

WebRTC - How does Google Congestion Control Algorithm for WebRTC (RRTCC) control congestion?

我是 RRTCC 的新手,我真的不明白 RRTCC 如何调整传入的媒体比特率。 我试图阅读 RRTCC 的互联网草稿,但无法理解:https://datatracker.ietf.org/doc/html/draft-alvestrand-rmcat-congestion-03

它根据延迟和丢失计算出预估带宽,那么下一步是什么? 它如何直接控制发送速率来控制拥塞?

RTP 接收方不直接控制发送速率。它只是将状态信息发送给 RTP 发送方,这是唯一能够控制自己发送速率的发送方。

draft-alvestrand-rmcat-congestion 已经被 draft-ietf-rmcat-gcc 取代,所以我建议你使用后者。

在第 2 节中。系统模型 它解释了RTP 接收方也应该充当RTCP 发送方,以便向RTP 发送方发送REMB 消息。这些消息应由 RTP 接收方在检测到任何拥塞时立即发送,然后即使没有发生拥塞也以每秒一次的速率继续发送。然后 RTP 发送方使用接收到的消息中的信息来决定传输比特率是可以提高还是应该立即降低。

我是草稿的作者之一。如果你有兴趣了解设计标准,你也可以看看这篇论文:

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 下载。