Error correction techniques for IP networks
IP network transmission errors are characterized by one or more consecutive IP packets lost during transmission. Some networks frequently drop single packets, while some networks are more prone to the infrequent loss of long bursts of consecutive IP packets [burst errors]. Poor performing networks may exhibit both error types.
Error correction methods:
There are few methods normally used to correct for lost IP packets.
1. ARQ (Automatic Retransmission reQuest) involves the two-way communication between the transmitter and receiver to enable the re-transmission of lost IP packets.
2. FEC (Forward Error Correction) is the transmission of enough additional redundant information with the primary data stream to reconstruct lost IP packets up to a certain extent.
3. A third method is a hybrid of the above ARQ and FEC techniques. All the methods mentioned require additional bandwidth and transmission time (latency) to compensate for the lost IP packets.
ARQ technology monitors whether or not the receiver obtains all IP packets. If a packet is not obtained after a certain amount of time elapses, the receiver will transmit a retransmission request to the transmitter to resend the lost packet. If more packets are lost, more retransmission requests are sent.
Details of ARQ are as follows:
1. In practice, the ARQ bandwidth must be capped on a network with limited bandwidth. Theoretically, the ARQ could disrupt the transmission by transmitting too much data, causing newer packets to drop due to limited bandwidth, thus creating a snowball effect.
2. ARQ needs time to make sure a packet is lost rather than simply out of order. This means that the receiver must buffer the data while the ARQ determines whether a packet is lost and request the lost IP packet from the transmitter. This will increase the overall transmission latency significantly (multiple times the original transmission delay).
3. ARQ requires a two way transmission link to work.
4. ARQ does not support multi-cast transmission. It only works on a point-to-point connection.
5. ARQ often has problems passing through “Firewalls”.
6. ARQ requires little to no overhead if no transmission errors are detected.
FEC technology transmits a fixed overhead of redundant information enabling the receiver to reconstruct a number missing IP packets. The FEC transmitter generates “Check sum” IP packets for a number of IP packets. Allowing the transmitter to transmit more overhead (FEC packets) allows for correction of more network errors. The FEC transmitter also “interleaves” IP packets in order to enable the correction of consecutive lost IP packets (burst errors). The packet interleaving and check sum generation process generates latency in the transmitter and receiver.
Details of FEC are as follows:
1. FEC’s transmitting more overhead (FEC packets) can correct more network errors.
2. FEC’s need IP packet interleaving to correct for consecutive lost IP packets.
3. The more IP packets which are interleaved the longer burst packet losses can be recovered by the FEC, but the latency is proportional with the number of interleaved packets.
4. The interleaving method (Matrix shape, number of Columns and rows) determinates the FEC’s error correcting capabilities for burst errors and single packet losses.
5. The FEC latency and overhead for a given matrix size is constant at all times.
Combined ARQ and FEC error correction approaches Some implementations employ both ARQ and FEC technologies. Generally speaking these implementations are using the FEC to correct for transmission errors most of the time. Only when the FEC’s error correction capability is exhausted does the ARQ start to re-transmit lost IP packets. More intelligent implementations using an ARQ and FEC Hybrid will reduce the FEC overhead when the ARQ is activated enabling the ARQ to use just the remaining bandwidth keeping the total consumed bandwidth constantly provisioned for the service. Figure 1 below shows an example of an FEC + ARQ hybrid error correcting system. The left block shows a 10 x 10 IP packet data block (dark grey) and includes 20 FEC overhead packets (10 FEC Row check sums and 10 Column check sums). The dark purple colored blocks symbolize lost IP Data packets recovered by the FEC. The 10 x 10 FEC can correct burst errors up to 10 consecutive missing IP packets plus a few single random missing IP packets. The light purple colored packets are missing IP packets which cannot be corrected by the 10 x 10 FEC and are instead corrected by the ARQ.