Talk:Go-Back-N ARQ

From Wikipedia, the free encyclopedia

"Bus" network topology This article is part of WikiProject Computer networking, an attempt to build a comprehensive and detailed guide to Computer networking on Wikipedia. If you would like to participate, you can edit the article attached to this page, or visit the project page, where you can join the project and/or contribute to the discussion.
B This article has been rated as B-Class on the assessment scale.
Mid This article is on a subject of mid priority within Computer networking for inclusion in Wikipedia 1.0.

The article currently claims

The sending window size must be no more than the number of sequence numbers to verify transmission in cases of any packet (any data or ACK packet) being dropped.

I think this is off-by-one -- it should say

The sending window size must be smaller than the number of sequence numbers to verify transmission in cases of any packet (any data or ACK packet) being dropped.

Let me make up a very simple example:

  • We use 4 sequence numbers (a 2-bit sequence number), and a transmitter window that can handle 4 packets.
  • We transmit 1 character of payload per packet (unrealistic, but makes the example simpler)
  • We are trying to transmit the message "Wikipedia".

The first 4 packets (0 1 2 3) get through fine. The receiver has sent back ACK0 ACK1 ACK2 and ACK3. The receiver has "Wiki" and is now expecting a packet with sequence number 0. Alas, ACK0 was destroyed in transit, so the transmitter re-sends packet 0 ("W"). If the ACK0 was *not* destroyed in transit, the transmitter would have sent a new packet 0 ("p").

The receiver now gets a W, and since its sequence number (0) is exactly what it was expecting for the 5th packet, it sends back ACK0 and adds it to its message so far: "WikiW".

If we change the system so that the transmitter window only holds 3 packets (or uses a sequence number that can count higher), then this problem doesn't occur.

--75.19.73.101 (talk) 19:05, 19 December 2007 (UTC)