/    /  CDCS – Error Detection and Error Correction

Error Detection and Error Correction

 

The Data Link layer implements a way of error control to make sure that the frames are transmitted with a definite accuracy. But we should know about the type of errors first to better understand error control.

 

Types of Errors:

 

Single bit error

A single bit present in a frame, that is corrupt.

Multiple bits error

Multiple bits corrupted across a frame.

Burst error

Multiple bits corrupted consecutively.

 

Error Detection

Errors in frames that are received are detected by following Parity Check and Cyclic Redundancy Check (CRC). In both cases, few extra bits are sent alongside the data to verify if bits received at the opposite end are the same and didn’t change after being sent. If the rechecking at the other end fails, the bits get flagged as corrupted.

 

Parity Check

One extra bit is shipped alongside the first bits to form several 1s either even in case of even parity, or odd in case of odd parity. If one bit gets corrupted on the way, the receiver can get to know by counting the amount of 1s. But when quite more than one bit is erroneous, then it gets difficult for the receiver to catch the error.

 

Cyclic Redundancy Check (CRC)

CRC is a different approach to detect if the received frame carries legitimate data. This technique involves binary division of the info bits being sent. The sender performs a division operation on the bits being sent and calculates the rest. Before sending the particular bits, the sender adds the rest at the top of the particular bits. Actual data bits plus the rest is named a codeword.

 

Error Correction

In the digital world, error corrections are often carried out in two ways:

Backward Error Correction: When the receiver detects a mistake within the data received, it requests back the sender to retransmit the info unit.

Forward Error Correction: When the receiver detects some error within the data received, it executes error-correcting code, which helps it auto-recover and correct some errors.