Cambridge O Level Computer Science · Syllabus 2210 · Data Transmission
Automatic Repeat Query
What is Automatic Repeat Query?
Automatic repeat query (ARQ) is a method of establishing that data is received without error, using an error-detection method together with positive and negative acknowledgements, a timeout and retransmission of data that is not acknowledged.
This definition is part of the Data Transmission chapter in Cambridge O Level Computer Science.
Automatic Repeat Query in context
Every idea in Topic 2 sits somewhere on one journey. Data has to travel; it is divided into packets so that many users can share the same network; routers choose a route for each packet independently; the method of transmission (how the bits travel and in which directions) is chosen to suit the situation; interference on the way can corrupt the data; an error-detection method reveals that corruption; automatic repeat query asks for the damaged data again; and encryption keeps the contents private from anyone who intercepts them on the way. Learn the chapter as that single chain and every individual method has an obvious place to hang.
Automatic repeat query (ARQ) is a method of establishing that data has been received without error. It uses an error-detection method — such as a checksum or a parity check — on the received data, and then acts on the result. If the data passes the check, the receiver returns a positive acknowledgement. If it fails, the receiver returns a negative acknowledgement, and the sender retransmits. If no acknowledgement arrives at all before the sender's timeout expires, the sender assumes the data did not get through and retransmits anyway. The process repeats until the data is acknowledged or the system stops after the number of attempts it permits.
Questions students ask about Automatic Repeat Query
How does automatic repeat query (ARQ) get corrupted data resent?
ARQ uses an error-detection method, such as a parity check or checksum, on the data the receiver gets. If the data passes the check, the receiver sends back a positive acknowledgement. If it fails, the receiver sends a negative acknowledgement and the sender retransmits the data. If no acknowledgement arrives at all before the sender's timeout expires, the sender assumes the data did not arrive and retransmits anyway. This repeats until the data is acknowledged or the permitted number of attempts is used up.

