对于模 4 算术,序列号范围为 0-3,窗口大小为 3(0-2)。假设发送了 0-2 的 3 个数据包,并且发送方正在等待接收方的 ACK。假设接收方发送的所有 3 个 ACK 都丢失了。
此时,接收方正在等待序列号为 3 的数据包。在发送方,发送窗口中充满了未完成的数据包。在超时的情况下,所有未完成的数据包都会重新发送并被接收者正确丢弃。我们都知道 ACK 不会被重新发送。
所以我的问题是发送者现在将如何发送序列号为 3 的数据包,因为发送窗口已满,除非收到 ACK(无法重传),否则未完成的数据包不会被清除。