gpt4 book ai didi

networking - tcp reno、newreno 和慢启动

转载 作者:可可西里 更新时间:2023-11-01 02:55:05 24 4
gpt4 key购买 nike

当在慢启动过程中发生丢包时,reno/newreno 算法是否注意到可能的 dupacks,还是纯粹的慢启动 -> rto?

因此,如果发送两个数据包(在慢启动开始时),而第一个数据包丢失了,那么慢启动除了 rto 之外还会做其他事情吗?

这是令人困惑的,因为 rfc 声明“在实践中它们(慢启动和拥塞避免)是一起实现的”。而且 linux 源代码读起来有点厚,而且只有一个实现。

最佳答案

When packet loss occurs while in slow start, does the reno/newreno algorithms notice possible dupacks, or is it purely slowstart -> rto?

我会说"is",重复的 ACK 将被检测到并采取行动。参见 RFC 2001, Section 2.3 .

Thus, if sending two packets (in start of slow start), and first one goes missing, does slow start do anything else but rto?

这个特定的例子会导致一个“简单的 RTO”。在慢启动开始时,当只能发送两个数据包时,最多会有一个重复的 ACK(由第二个数据包到达触发)。如果两个数据包都(将)一起被确认,甚至可能没有。但是一个重复的 ACK 不会触发快速重传。所以TCP会等待重传定时器超时。

It is confusing, since rfc states that 'in practice they (slow start & congestion avoidance) are implemented together'. And linux source is a bit thick read and only one implementation.

我同意 linux 源代码需要仔细阅读。但它是确定的,如果您真的需要知道可能是唯一的选择 :) 除非您找到读(或写)它的人;我没有。

关于networking - tcp reno、newreno 和慢启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3802125/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com