不一致的延迟会对TCP应用程序产生什么影响?

| 我正在测试一个GNU Radio程序,该程序可以通过无线链路传输TCP流量。我们在测试中得到了一些奇怪的结果,在寻找罪魁祸首时,我对延迟不一致感到好奇。 不一致的延迟如何影响TCP应用程序?不一致是指连接上的ACK的RTT截然不同。一段时间以来,ACks似乎都以正常速率出现,然后它们消失了,我们进行了重新传输,后跟“延迟的” ACK。 例如,假设收到的前几个ACK具有类似的RTT。如果在以前的ACK的RTT的两倍内未收到下一个ACK,会发生什么情况?不管是什么问题,在长时间等待ACK之后,我都会看到许多重传。 现在,更具体地说,快速和慢速反弹的ACK的RTT如何影响TCP连接? 话虽如此,是否有任何方法可以调整IP堆栈以更好地处理此环境?     
已邀请:
TCP会维护平滑的RTT(SRTT),以告知中间网络有多快,即可以传输多快。如果SRTT升高,TCP将变慢。如果SRTT下降,TCP将加速。如果实际的RTT剧烈地上下波动,则由于平滑,TCP可能无法足够快地做出反应,并且传输速度太快,这将导致数据包丢失,进而导致重传,从而浪费了丢失的数据包所使用的带宽。 RTT平滑通过指数衰减实现,增益为0.2,因此在计算新SRTT值时,旧SRTT值的权重是当前RTT的四倍。     

要回复问题请先登录注册