×

Error Correction and Error Detection

Error Correction and Error Detection

Error correction and error detection techniques are work on the data-link layer. The data link layer ensures the frames are sent from the sender to the receiver with accuracy. Error correction is more difficult than error detection.

Error

An error is a situation when the data send by the sender and receive by the receiver, but that data doesn't match the sender data.

For example, the sender sends the 0101010 data, and the receiver receives the 1101010.

Types of Error

  1. Single bit error
  2. Burst error

Single-bit error: In the single-bit error, only one bit is changed in the frame. For example, the sender sends the data (01010100) in the frame, and the receiver receives the data (11010100) in the frame.

Error Correction and Error Detection

Burst error: In the burst error, one or more than one bits is changed in the frame. For example, the sender sends the data (01010100) in the frame, and the receiver receives the data (11010100) in the frame.

Error Correction and Error Detection

Redundancy

The main concept of error detection and error correction is redundancy. To the error detection and error correction, redundancy adds some extra redundant bits in the bits. The sender adds these redundant bits, and the receiver eliminates these redundant bits.

Coding

Redundancy is achieved by way of various coding schemes. The sender introduces redundant bits by establishing a connection between the redundant bits and the actual data bits. The receiver checks the relationship between the redundant bits and the actual data bits to detect the error. Coding schemes can be divided into two categories: block coding and convolution coding. Block coding is less complex than the convolution coding.

Error Correction and Error Detection

 

Error Detection

Error detection is the method of identifying errors. To identify these errors, it uses some redundancy codes. Redundancy codes added in actual data, and it has transmitted by the sender. These codes are known as error detection codes.

Error Correction and Error Detection

Types of error detection techniques:

  1. Parity Checking
  2. Cyclic Redundancy Check (CRC)
  3. Checksum

Parity Checking

Parity Checking is also known as the Vertical redundancy check (VRC). Parity checking is a very simple technique. There are two cases in the parity checking techniques:

Error Correction and Error Detection

Even parity: If the number of 1's is even in the frame, 0 is added in the frame. The even-parity example shown in the figure below.

Error Correction and Error Detection

Odd parity: If the number of 1's is odd in the frame, 1 is added in the frame. The odd-parity example shown in the figure below.

Error Correction and Error Detection

Cyclic Redundancy Check

The cyclic redundancy check was developed by W-Wesley Peterson in 1961. It is a technique that is used to find errors in digital-data. The cyclic redundancy check is very easy to implement in hardware. It can be analyzed mathematically. The cyclic redundancy check is more effective than VRC and LRC techniques in detecting errors. VRC and LRC are based at the binary-addition, whereas the CRC is based at the binary-division.

The important points of CRC are following in the below.

  • If the remainder is non-zero arrives after doing the Binary Division, that data is not error-free.
  • If the remainder zero arrives after doing binary division, that data is error-free.

For better understand, let take an example.

Example 1                                  Data word = 110101

                                                   Divisor = 1010

Step 1: We can see that the divisor is of 4 bits, so we have to add (4-1) 0 to the data word.

                                                   Data word = 110101000

                                 1010) 110101000 (111011                                            1010                                              1110                                              1010                                                1001                                                1010                                                  0110                                                  0000                                                    1100                                                    1010                                                      1100                                                      1010                                                        110

The remainder is non-zero, so that will be again the binary division.  

                                             1010) 110101110 (111011                                                         1010                                                           1110                                                           1010                                                             1001                                                             1010                                                                 0111                                                                 0000                                                                   1111                                                                   1010                                                                     1010                                                                      1010                                                                     0000

Now, the remainder is all zero. Hence, the data has error-free.

Checksum

The checksum is an error detection technique. It can be applied to any information. The checksum is mostly used at the network layer and transport layer rather than the data-link layer. 

At the sender side, each m bit of the data is divided into k segments. The segments are added with the 1's complement arithmetic at the sender end to get the sum. At the end of the receiver, all segments obtained are added using the arithmetic 1's complement to get the sum.

  • If the value is 0, the obtained data is accepted.
  • If the value is non-zero, the obtained data is discarded.

For better understand, let take an example, Suppose the sender wants to transmit 4-frames each of 8-bits. The frames are 11010100, 10101001, 00101100, and 01011100.

At the sender side, add first two frames    

11010100 10101001                                           101111101     Now, 1 is the shift                                             01111101                                                           1                                             01111110 Now, add the third frame of this addition of first two frames                                             01111110                                             00101100                                             10101010 Now, add the fourth frame                                             10101010                                             01011100                                           100000110 Now, 1 is the shift                                                           00000110                                                          1                  Sum =               00000111  Checksum is 1’s complement of sum =      11111000          

At the receiver side, add first two frames          

11010100 10101001                                           101111101     Now, 1 is the shift                                             01111101                                                           1                                             01111110 Now, add the third frame of this addition of first two frames                                             01111110                                             00101100                                             10101010 Now, add the fourth frame                                             10101010                                             01011100                                           100000110 Now, 1 is the shift                                                           00000110                                                          1                                            00000111 Now, add checksum                                            00000111                                            11111000                                            11111111 Complement:                     00000000  The complement value is zero.  Hence, all frames have been accepted.  

Error Correction

Error correction is more difficult than error detection. Error correction codes are used to detect and correct errors when transmitting data from the sender to the receiver. It can be done in two ways:

  1. Backward Error Correction
  2. Forward Error Correction

Backward Error Correction: If the receiver receives an error in the received data, it tells the sender to retransmit the data again.

Forward Error Correction: If the receiver finds an error in the received data, the error correction codes correct these errors automatically.

Error Correction and Error Detection


Related Topics

Working of ARP

The majority of computer programmes and applications send and receive messages using logical addresses (IP addresses), but the actual communication takes place over physical addresses (MAC addresses), which is found...

4 minutes read.

Ring Topology in Computer Network

Ring topology is a topology that was invented by IBM in 1984 by the Institute of Electrical and Electronics Engineers. It is defined as a type of network topology where...

4 minutes read.

Disadvantages of Computer Network

What is Computer Network? A computer network is a collection of interconnected devices that can communicate and exchange data with each other. Networks allow devices to share resources such as printers...

3 minutes read.

Application Layer in OSI Model

This article will help you in getting a better understanding of the Application layer in the OSI model. It is the uppermost layer in the OSI Model. The application layer establishes...

4 minutes read.

Advantages and Disadvantages of LAN

Before we move to advantages and disadvantages of LAN, first we discuss about what is LAN. Local area network is referred to by its abbreviation, LAN. A system that connects PCs...

3 minutes read.

Digital Transmission

Line Coding Digital signal is converted in the digital data that process is known as the Line Coding. That data is stored in the computer in the form of text, audio,...

4 minutes read.

Advantages and Disadvantages of WAN

Before we move to advantages and disadvantages of WAN, first we discuss about what is WAN and what are its features. A wide area network is a vast network of information...

4 minutes read.

Computer Network Topology: Bus, Star, Ring, Tree and Hybrid

Network Topology: The Computer network topology refers to the layout of connected devices on a network. The network topology is the combination by which computer or network devices interconnected to...

4 minutes read.

Basic Networking Devices

Introduction Physical components, or network devices, allow hardware on a computer network to link and convey with one another. Network equipment such as switches, routers, gateways, hubs, repeaters, bridges, and routers...

6 minutes read.

Hamming Code Example

What is Hamming Code? Hamming code is an error-detecting and error-correcting code used in computer data storage and transmission to detect and correct errors caused by noise, interference, or data corruption....

4 minutes read.

Address Mapping

Address Mapping: Internet is made of a combination of physical networks connected together by internetworking devices such as routers. A logical address is an internetwork address. A physical address is...

4 minutes read.

Supernetting in Network Layer

Introduction Supernetting is one of the main topics in data communication networks or computer networks. The network aggregation goes by many names, such as supernetting, route aggregation, summarization, and so on....

6 minutes read.

What is Computer Network?

 A computer network is a collection of interconnected devices, such as computers, servers, routers, and switches, that are connected together to share resources and exchange data. These devices use a...

6 minutes read.

Advantages and Disadvantages of Fibre Optics Cable

What is Fibre Optics Cable? A fibre optics cable is made of plastic or fibre, which is used to transmit the data. In fibre optics cable, the data is sent along...

3 minutes read.

Method of Joining and Fusion of Fiber Optic Cable

What is Fiber Optics Cable? Fiber optics cable transforms the information at a light pulse. We can transfer voice, data, and video through the fiber optics cable. The fiber optics cable...

3 minutes read.

Star Topology in Computer Networks

Star topology comes from or is a part of the network topology which was invented by Dr.Howard Frank. It is also to be known as star network because of its...

4 minutes read.

Computer Network Tutorial

What is Data Communication and Computer Network? Data Communication is the process of exchanging digital data between two or more computers that act as source and receiver through wireless media or...

7 minutes read.

Network Layer: Logical Address

Network Layer - Logical Address The IP address is a 32 bit long, and it provides us a maximum of 232 addresses. These addresses are known as IPv4 addresses. The IP address...

5 minutes read.

Controlled Access Protocols in Computer Networks

In this tutorial, we will discuss Controlled Access Protocols in Computer Networks. Introduction On a shared platform, it is a strategy to minimise data frame collision. As in controlled access technique, every...

7 minutes read.

Computer Network Architecture

Computer network architecture is a design in which all the computers are organized in a computer network. The architecture defines how computers must communicate with each other to obtain maximum...

4 minutes read.