【WebRTC---源码篇】(十八)GoogREMB算法

GoogREMB是WebRTC的接收端延时拥塞控制算法,涉及RemoteBitrate Estimator、Inter Arrival、OverUse Estimator等模块。Inter Arrival计算包组间的延迟梯度,通过卡尔曼滤波器估算发送队列增长趋势。本文详细解析了包组判断、突发数据处理及噪声方差估计等关键步骤。
摘要由CSDN通过智能技术生成

GoogREMB是基于延时的接收端拥塞控制算法,主要包括以下四个部分:

1.RemoteBitrate Estimator  ,是接收端延时拥塞控制算法的管理模块。一方面与外面模块打交道,从网络收/发模块获取RTP包的传输信息用于拥塞评估,或将内部评估的下一时刻的发送码率(大小)输出给网络收/发模块,让其通知发送端进行流控;另一方面,它还要组织内部的Inter Arrival,OverUse Estimator等模块,根据当前观测到的延时差和之前的评估值推测出下一时刻的网络拥塞情况。

Inter Arrival

2.Inter Arrival,进行相邻两组数据包的单向梯度计算。其中包括发送时长,接收时长,数据包大小之差。具体逻辑实现如下

WebRTC 的 InterArrival 类实现了包组的时间差值计算,其对外接口为 ComputeDeltas。输入每个包的发送时间、到达时间、系统时间、包大小,输出包组的发送时间间隔、到达时间间隔、包组大小差值,供 Trendline 滤波器计算延迟梯度。整个时间差值计算的子过程包括:包的有序性判断、新包组的判断、突发数据的判断。

注意:

计算延迟梯度需要了解包组的概念,在 WebRTC 中,延迟不是一个个包来计算的,而是通过将包分组&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

༄yi笑奈何

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值