【音视频第7天】mediasoup拥塞控制【未完待续】

WebRTC的拥塞控制方式主要有以下几个:Transport-cc、BBR-congestion、remb(BBR已被google从webrtc移除了)。mediasoup支持Transport-cc和remb。

一、webRTC拥塞控制算法

减少数据量、适当增加时延和更准确的带宽评估被统称为拥塞控制
WebRTC中包含多种拥塞控制算法:

  • GCC:(Google Congestion Contro,Google拥塞控制)GCC根据其实现⼜可细分为基于发送端的拥塞控制算法Transport-CC(Transport-wide Congestion Control,传输带宽拥塞控制)和基于接收端的拥塞控制算法Goog-REMB(Google Receiver Estimated Maximum Bitrate Google接收端评估的最⼤码流)
  • BBR:(Bottleneck Bandwidth and Round-trip propagation time),瓶颈带宽和往返传播时间
  • PCC:(Performance-oriented Congestion Control),基于性能的拥塞控制。
    重点关注一下GCC

二、GCC

2.1 Goog-REMB

⼀种是接收端的延时拥塞控制算法
Transport-wide Congestion Control
【音视频第7天】mediasoup拥塞控制【未完待续】_第1张图片
RemoteBirate Estimator模块:它是接收端延时拥塞控制算法的管理模块,即“总负责⼈”。
Inter Arrival模块:将数据包按帧进⾏分组,然后对相邻的两组数据包进⾏单向梯度计算
OverUse Estimator模块:它利⽤Inter Arrival模块的计算结果,通过卡尔曼滤波器估算出下⼀时刻发送队列的增⻓趋势。
OverUse Detector模块:⽤于检测当前网络的拥塞状态
AIMD Rate Controller:该模块⽤于计算发送码流大小。它通过OverUse Detec tor模块检测出的当前⽹络状态来变更⾃⼰的状态,并计算出发送码流的大小。

2.2 Transport CC

⼀种是发送端的延时拥塞控制算法【未完待续】
参考:流媒体学习之路(mediasoup)——拥塞控制分析

你可能感兴趣的:(音视频)