我理解拥塞避免的过程,即尝试控制网络中的拥塞程度并避免数据包丢失。但是怎么可能有三个确认呢?即使其中一个在传输中丢失,并在超时后最终到达目的地,如果超时,数据包肯定会被丢弃,而不是继续前进并在拥塞期间重复 x 次。
答案1
重复 ACK 是重传/选择性确认系统的一部分。如果没有 SACK 支持,当数据包丢失且接收方通知发送方已收到已确认的序列号时,您将收到重复 ACK。对于收到的每个无序数据包,都会发送一个 ACK,这就是为什么您会看到重复 ACK,有时如果网络直径足够大且窗口大小足够大,您会看到很多重复 ACK。