返回 N 协议 ACK



我试图通过这个网站了解 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帧必须重新传输。

我哪里出错了?

好吧,根据这本书(http://prntscr.com/guxx03(,如果窗口中丢失了任何 ACK(1-2-3-4-5-6(,则返回 N 重新传输当前窗口中的所有帧

在您的

示例中,如果 ack3 丢失,则在 GBN 中,因为接收方获得了 pckt4,因此它发送累积的 ack4,因此发送方不会重新传输任何 ack

ACK 的意思是"我已收到此包的所有内容(包含(">

如果 ACK=

4 包裹丢失,ACK=5 包裹将意味着"我已经收到了包裹 5 之前的所有东西",因此这意味着包裹 4 也确实到达了。

如果原始包 4 丢失而不是 ACK,则服务器将发送 ACK=3 以到达包 5、6 ...这意味着"嘿,这个包不是我期待的包,我从你那里得到的最后一个包是 3 (ACK=3(">

最新更新