3

I can't make sense of a naming for Automatic Repeat reQuest.

The idea is that ARQ is a method for transmitting data without negative ACKs, so standard ARQ flow is:

  1. Sender sends a packet
  2. If sender doesn't receive an ACK in, e.g., 3 seconds, it timeouts (automatic?), and repeats the sending of the packet.
  • "_The idea is that ARQ is a method for transmitting data without positive ACKs_" Where did you get that idea? ARQ "_uses acknowledgements (messages sent by the receiver indicating that it has correctly received a data frame or packet) and timeouts (specified periods of time allowed to elapse before an acknowledgment is to be received)_" That is the opposite of what you wrote. – Ron Maupin May 10 '18 at 21:05
  • See [this question](https://networkengineering.stackexchange.com/q/6915/8499) for why NACK isn't enough. – Ron Maupin May 10 '18 at 21:16
  • @RonMaupin, that was a typo, thank you for correcting it. – Evgenia Karunus May 10 '18 at 21:56
  • (Question stays) – Evgenia Karunus May 10 '18 at 21:57

2 Answers2

2

I think you are confused about how it works. Also, the reason for the name is bordering on off-topic trivia.

What exactly is automatic about this repeat resending of a packet by the server? It waits for a negative ACK, it's not automatic.

When a sender sends a segment, it starts a timer. If the timer expires before it receives an acknowledgement from the receiver, then it automatically resends the the unacknowledged segment. There is no negative acknowledgement the way you describe.

'Request'? Where is the 'request' here? An initial sending of a packet by the sender? ACK response by the receiver?

It is an automatic repeat request based on expiration of the timer.

Ron Maupin
  • 98,218
  • 26
  • 115
  • 191
  • You are right, my brain totally short circuited, I'm shocked myself rereading the question. So it's automatic (because based on timeout rather than on some action from the receiver), repeat (because we're talking about resending of a packet), and request (just a synonym for any message transmission). – Evgenia Karunus May 10 '18 at 23:48
2
  • Automatic: because based on timeout rather than on some action from the receiver
  • Repeat: because we're talking about resending of a packet, repeat of a transmission
  • reQuest: just a synonym for any message transmission

Naming is based on the fact that sender repeats the transmission unless gets ACK from the receiver on time.