返回 N 协议

网络工程 IPv4 ip 协议论 净流
2022-02-15 04:51:36

我正在尝试使用此网站了解 Go-Back N 的工作原理:- http://www.ccs-labs.org/teaching/rn/animations/gbn_sr/

在这里,假设我们正在发送帧 1,2,3,4,5,6(窗口大小 4)并且在当前窗口中我们有帧 1,2,3,4。现在假设 ACK 4 丢失,然后根据网站,当前窗口中的任何帧都不会被重新传输。

据我了解,必须重新传输(当前窗口的)帧3、4、5、6。

我哪里错了?

2个回答

如果 ACK 4 丢失,数据包 1,2,3 可能已经被确认,所以窗口已经前进到 4,5,6,... 数据包 5,6(,7) 正在路上,当超时用完 4 重传。ACK 不必按顺序排列,但窗口不会超出未确认的数据包。

如果 ACK 4 丢失,并且已收到所有先前或至少 3 号的 ACK,则当前窗口将为 [4,5,6,(7)],其中 7 尚不可发送。Go back N 返回到尚未确认的数据包并从那里开始。

否则,它将在最后收到 ACK 之后的编号处启动窗口。