Types of error correction
In contrast to error detection, error correction can identify the location of the error and thus correct it. It is not necessary to know what the error is; as computer data is binary, knowing the location of the error is sufficient: whatever value is at the location of the error simply requires flipping (from 0 to 1, or 1 to 0).
ARQ (Automatic Request Repeat)
This category of error correction relies on data failing an error check, and therefore the sender is asked to re-send the data.
Forward Error Correction
This category of error correction includes redundant (i.e. unnecessary) data with the data transmitted; in the event that an error is detected upon receipt, the redundant data can be used to identify the location of the error, and to correct it.
Hybrid system
As the name would suggest, a hybrid system incorporates elements of both types above.