Error Detection And Correction

  • 8,108 views
Uploaded on

error detection and error correction methods used while sending the data

error detection and error correction methods used while sending the data

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
8,108
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
387
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ERRORCORRECTION & ERRORDETECTION Rutvi Shah 1
  • 2.  Data can be corrupted during transmission. For reliable communication, errors must be detected and corrected. Error detection and correction are implemented either at data link layer or the transport layer of the OSI model. Rutvi Shah 2
  • 3. TYPES OF ERRORS Single bit error :- - Only one bit in the data unit has changed. Burst error :- - It means that two or more bits in the data unit has changed. Rutvi Shah 3
  • 4. Single bit Error 0 changed to 10 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 Received Sent Burst Error Sent 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 Bits corrupted by Burst Error 0 1 0 1 1 1 0 1 0 1 0 0 0 0 1 1 Received Rutvi Shah 4
  • 5. ERROR DETECTION Error detecting code is to include only enough redundancy to allow the receiver to deduce that an error occurred, but not which error, and have it request a re- transmission. Error detection uses the concept of redundancy, which means adding extra bits for detecting error at the destination. Rutvi Shah 5
  • 6. Redundancy Instead of repeating the entire data stream, a shorter group of bits may be appended to the end of each unit. This technique is called Redundancy because the extra bit are redundant to the information. They are discarded as soon as the accuracy of the transmission has been determined. Rutvi Shah 6
  • 7. Rutvi Shah 7
  • 8.  There are basically four types of redundancy checks. They are: 1. VRC (Vertical Redundancy Check). 2. LRC (Longitudinal Redundancy Check). 3. CRC (Cyclical Redundancy Check). Rutvi Shah 8
  • 9. ERROR DETECTION VERTICAL REDUNDUNCY CHECK LONGITUDINAL REDUNDANCY CHECK CYCLIC REDUNDANCY CHECK Rutvi Shah 9
  • 10. VERTICAL REDUNDANCY CHECKIt is also known as parity checkIt is least expensive mechanism for errordetectionIn this technique,the redundant bit calledparity bit is appended to every data unitso that the total number of 1s in the unitbecomes even (including parity bit) Rutvi Shah 10
  • 11. VERTICAL REDUNDANCY CHECK 1100001 DataChecking function 1100001 | 1 Even – parity Is total number generator of 1s even ? Receiver 1 VRC Sender Rutvi Shah 11
  • 12. VERTICAL REDUNDANCY CHECK Example : 1110110 1101111 1110010 - After adding the parity bit 11101101 11011110 11100100 Rutvi Shah 12
  • 13. VERTICAL REDUNDANCY CHECK VRC can detect all single – bit errors It can detect burst errors if the total number of errors in each data unit is odd. VRC can not detect errors where the total number of bits changed is even. Rutvi Shah 13
  • 14. LONGITUDINAL REDUNDANCY CHECK(LRC)In this method , a block of bits is organized in table(rows and columns) calculate the parity bit for each column and the set of this parity bit is also sending with original data. From the block of parity we can check the redundancy. Rutvi Shah 14
  • 15. LRC Example11100111 11011101 00111001 10101001 11100111 11011101 00111001 10101001 LRC 10101010 11100111 1101101 00111001 10101001 10101010 Original data plus LRC Rutvi Shah 15
  • 16. LRC ExampleSuppose the following block is sent : 10101001 00111001 11011101 11100111 10101010 (LRC)However,it is hit by burst of length eight and some bits are corrupted (Yellow bits are changed) : 10100011 10001001 11011101 11100111 10101010 (LRC)When the receiver checks the LRC,some of the bits are not follow even parity rule and whole block is discarded (the non matching bits are shown in red ) : 10100011 10001001 11011101 11100111 10101010 Rutvi Shah 16
  • 17. Advantage :-> LRC of n bits can easily detect burst error of n bits. Disadvantage :-> If two bits in one data units are damaged and two bits in exactly same position in another data unit are also damaged , the LRC checker will not detect the error. Rutvi Shah 17
  • 18. CYCLIC REDUNDANCY CHECK (CRC) In this method , a sequence of redundant bits , called the CRC or the CRC remainder, is appended to the end of the unit so that the resulting data unit become exactly divisible by a second, predetermined binary number. At its destination , the incoming data unit is divided by the same number. If at this step there is no remainder ,the data unit assume to be correct and is accepted, otherwise it indicate that data unit has been damaged in transmission and therefore must be rejected. The redundancy bits is used by CRC are derived by dividing the data unit by a predetermined divisor. The remainder is the CRC. Rutvi Shah 18
  • 19.  CRC generator and checkerDATA CRC DATA 00…0 N bits DIVISOR DATA CRC DIVIS0R N+1 bitsREMAINDER CRCZero accept N bitsNonzero rejectReceiver Sender Rutvi Shah 19
  • 20. Divisor The divisor is determined according to the algebraic polynomial. for e.g. A polynomial is X^7 + x^5 + x^2 + x +1 generation of divisor from polynomial X^7 + X^5 + X^2 + X + 1 X^6 X^4 X^3 1 0 1 0 0 1 1 1 Rutvi Shah 20
  • 21. A polynomial should be selected according to the following rule:-3. It should not be divisible by x.4. It should be divisible by x+1. Rutvi Shah 21
  • 22.  Example :- The CRC generator at sender end : 111101 1101 100100 0 0 0 1101 1000 1101 1010 1101 1110 1101 0110 0000 1100 1101 Rutvi0 0 1 Shah 22
  • 23. The CRC checker at receiver end : 111101 1101 100100 0 0 1 1101 1000 1101 1010 1101 1110 1101 0110 0000 1101 1101 000 Rutvi Shah 23
  • 24. ERROR CORRECTION Error correcting code is to include enough redundant information along with each block of data sent to enable the receiver to deduce what the transmitted character must have been. Error Correction must be handled in two ways : - When an error is discovered, the receiver can have the sender retransmit the entire data unit. - Receiver can use an error correcting code, which automatically corrects certain errors. Rutvi Shah 24
  • 25.  There are two types of Error Correcting techniques : 1. Single bit error correction. 2. Burst error correction. Error Correction can be done with the help of HAMMING CODE. Rutvi Shah 25
  • 26. HAMMING CODE It is a technique developed by R.W.Hamming. Hamming code can be applied to data units of any length and uses the relationship between data and redundancy bits. For eg. Rutvi Shah 26
  • 27.  A 7 bit ASCII code requires 4 Redundancy bits that can be added to the end of the data unit or interspersed with the original data bits. These bits are placed in positions 1,2,4 and 8. We refer to these bits as r1,r2,r4 and r8. Rutvi Shah 27
  • 28. Positions of Redundancy Bits in Hamming Code11 10 9 8 7 6 5 4 3 2 1d d d r d d d r d r r Redundancy Bits Rutvi Shah 28
  • 29.  In the Hamming code, each r bit is the VRC bit for one combination of data bits : - r1 is the one combination of data bits. - r2 is another combination of data bits. and so on. The combination used to calculate each of the four values for a 7 bit data sequence are as follows : - r1 : bits 1,3,5,7,9,11. - r2 : bits 2,3,6,7,10,11. - r4 : bits 4,5,6,7. - r8 : bits 8,9,10,11. Rutvi Shah 29
  • 30. Data : 1 0 0 1 1 0 1 Data 1 0 0 1 1 0 1Adding r1 1 0 0 1 1 0 1 1Adding r2 1 0 0 1 1 0 1 0 1Adding r4 1 0 0 1 1 0 0 1 0 1 Adding r8 1 0 0 1 1 1 0 0 1 0 1 11 10 9 8 7 6 5 4 3 2 1 Rutvi Shah 30 Code : 1 0 0 1 1 1 0 0 1 0 1
  • 31. 1 0 0 1 1 1 0 0 1 0 1 Sent Error1 0 0 1 0 1 0 0 1 0 1 Received Rutvi Shah 31
  • 32. 1 0 0 1 0 1 0 0 1 0 111 10 9 8 7 6 5 4 3 2 11 0 0 1 0 1 0 0 1 0 111 10 9 8 7 6 5 4 3 2 11 0 0 1 0 1 0 0 1 0 111 10 9 8 7 6 5 4 3 2 11 0 0 1 0 1 0 0 1 0 111 10 9 8 7 6 5 4 3 2 1 The bit in position 7 is in error 0 1 1 1 Rutvi Shah 32