What is ARQ and HARQ?
ARQ stands for
Automatic Repeat Request. This is the protocol used at data link layer. it is an error-control strategy that is used
in a two-way communication system. It is used to achieve reliable
data transmission over an unreliable source or service.
It uses CRC(cyclic
redundancy check) to determine, whether the packet received is
correct or not. If the packet is received correctly at receiver side, receiver
send ACK to the transmitter, but in case if the packet is not received correctly
at receiver side, receiver send NACK to the transmitter. And then after
receiving NACK from receiver, transmitter re-transmits the same packet again.
HARQ does not
retransmit packet/PDU as it is; as done by ARQ technique. HARQ modifies certain physical parameters before
retransmission.
The HARQ is a technique when the receiver
gets a new data with some errors then it tries to make correction if the error
is minor, but if the error is not minor then it sends re-transmission request
to the sender. After getting the data again, it combines the new received data
with previous erroneous data.
If some packets passed from HARQ to upper
layer with a little bit errors which might be acceptable for some applications,
but in any case there is one more mechanism which is ARQ or Automatic Repeat
Request. The ARQ mechanism takes care of residual errors which passed from
HARQ. If there is an error then it discards the packets and a new
re-transmission is requested from the sender. ARQ is an error control protocol.
HARQ:
1. It works at Physical layer but controlled by MAC layer.
2. If the received data has an error then the receiver buffers the data and
requests a re-transmission from the transmitter
3. HARQ works for both UM and AM mode.
4. HARQ provides very fast retransmission
which is suitable for high speeds (eg voice call).
ARQ:
1. It works at RLC layer for RLC AM MODE ONLY.
2. If the received data has an error which is passed through HARQ then it is
discarded, and a new re-transmission is requested from the transmitter.
3. ARQ is responsible for reliability.