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.
4
  • "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 for why NACK isn't enough.
    – Ron Maupin
    May 10 '18 at 21:16
  • @RonMaupin, that was a typo, thank you for correcting it.
    – lakesare
    May 10 '18 at 21:56
  • (Question stays)
    – lakesare
    May 10 '18 at 21:57
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.

1
  • 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).
    – lakesare
    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.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.