yuanrongxi / razor

A google's congestion Control Algorithm
MIT License
355 stars 156 forks source link

关于RTT的计算更新 #58

Open CodeForZzc opened 2 years ago

CodeForZzc commented 2 years ago

袁老师,我看了下razor中更新计算RTT和丢包率的代码部分,有一些没有理解的地方希望能得到指导,十分感谢! (1)rtt的计算 我看了webrtc计算rtt的方式,是发送端是通过发送SR,接收RR包,从而得到的rtt,类比razor,我认为是通过ping-pong模拟了这一个过程,此处也确实会计算rtt用于更新。但是,我看代码中,对于接收到的数据包,也会在处理nack信息的时候计算rtt用于更新。请问一下,根据接收到的数据包更新思路是webrtc原本自带的,还是老师优化的呢? (2)rtt_var的意义 razor里面计算了rtt误差修正值,想问一下设计这个值是出于什么样的考虑,因为我觉得单纯的rtt已经可以表示往返延迟了。 (3)丢包率的计算 webrtc中是否开启RTX,会影响丢包率的计算,想确认一下,razor中的丢包率是开启RTX的方式吗(计算丢包时不考虑重传包)?

CodeForZzc commented 2 years ago

(1)是模拟的RTPFB包的作用吗?用于发送端基于延时的码率估计

yuanrongxi commented 7 months ago

RTP 和 RTCP 有自己的 rtt计算方式,这里的设计只是借鉴了通用的做法来评估 RTT。 丢包率是借鉴了 RTP 里的统计。