CS412 Introduction to Computer Networking - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

CS412 Introduction to Computer Networking

Description:

Generator: 29. CRC Properties. Single error detection ... Polynomial. LANs. ITU-32. HDLC. ITU-16. ATM AAL. CRC-10. ATM header. CRC-8. Application. Name ... – PowerPoint PPT presentation

Number of Views:15
Avg rating:3.0/5.0
Slides: 31
Provided by: chiche
Category:

less

Transcript and Presenter's Notes

Title: CS412 Introduction to Computer Networking


1
CS412 Introduction to Computer Networking
Telecommunication
  • Error Correction/Detection

2
Topics
  • Introduction
  • Error Correction
  • Error Detection

3
Introduction
  • Transmission impairments (errors)
  • Attenuation
  • Loss of energy as signal propagates
  • Delay Distortion
  • Components travel at different speeds
  • Noise
  • Unwanted energy from other sources

4
Figure 3.21 Attenuation
5
Figure 3.23 Distortion
6
Figure 3.24 Noise
7
Isolated and Burst Error
  • Isolated 0 -gt 1, or 1 -gt 0
  • Burst errors in consecutive bits
  • 2 or more bits in the data unit have changed

8
Isolated and Burst Error
  • Compare burst errors to isolated errors
  • Fewer error blocks given a fixed error rate
  • Example error rate 0.001 per bit
  • (1 error out of 1000 bits)
  • block size 1000 bits
  • burst size 100
  • isolated error an error contained in most
    blocks
  • burst error 1 or 2 error blocks out of 100
    blocks
  • Error correction/detection much harder

9
Error Correcting/Detecting Codes
  • Redundancy added to data
  • Error correction
  • Referred to as forward error correction
  • Detect and correct error
  • Error detection
  • Detect error and request retransmission
  • Codeword (n bits)
  • data redundancy
  • (m bits) (r bits)
  • n m r

When to use which one?
10
10.3 Redundancy
11
Error Correction
  • Hamming Code
  • For m-bit data we need r-bit redundancy, where
    (mr1) ? 2r
  • Redundancy bits are placed in position of 2s
    power
  • Example If m 7, then r 4

12
10.15 Redundancy bits calculation
13
10.16 Example of redundancy bit calculation
14
10.17 Error detection using Hamming code
15
Correct Burst Errors
  • Organize k codewords into a (k x n) matrix
  • (k x r) check bits for (k x m) data
  • Transmit one column at a time
  • Reconstruct matrix after received
  • Correct burst errors of length ? k

16
Correct Burst Errors
n
m
k
17
10.18 Burst error correction example
18
Error Detection
  • Parity bit
  • Error detection
  • Added to data so that number of 1 bits in
    codeword is
  • Even (even parity)
  • Odd (odd parity)
  • E.g., ASCII of H is 1001000, its codeword is
  • ________ if even parity is used
  • ________ if odd parity is used

01001000
11001000
19
10.5 Even-parity concept
20
Error Detection vs. Correction
  • Error-detecting and retransmission
  • More efficient than error-correction when error
    rate is low
  • Example
  • error rate 0.000001 per bit
  • block size 1000 bits
  • check bits per block
  • Hamming code error correction 10
  • Parity code error detection 1
  • overhead for 1M data e. c. 10000 bits
  • e. d. 2001 bits

21
Use Parity to Detect Burst Errors
  • Organize a block into (k x n) matrix
  • One parity for each column
  • ? one row of parities at the bottom
  • Transmit one row at a time
  • Can detect burst errors of length ? n

22
Example
  • Original data
  • 11100111 11011101 00111001 10101001
  • Organized into 11100111
  • 11011101
  • 00111001
  • 10101001
  • 10101010 ? LRC
  • Transmitted
  • 11100111 11011101 00111001 10101001 10101010
  • Burst error
  • 11100111 11010000 01001001 10101001 10101010
  • Error detected ? whole block is discarded
  • 11100111 11010000 0100001 10101001 10101010

23
Error-Detecting Code - CRC
  • Bit stream is treated as polynomial w/
    coefficients 0 and 1
  • Example
  • data 10100111
  • polynomial
  • degree 7
  • Modulo 2 arithmetic is used
  • Example 10011011 11110000
  • 11001010 -10100110
  • 01010001 01010110
  • XOR

24
Error-Detecting Code - CRC
  • Use generator polynomial G(x) to calculate
    checksum
  • Frame P(x) generator G(x)
  • degree of G(x) d
  • Transmitted checksummed frame P(x)xd R(x)
  • Its guaranteed that P(x)xd R(x) is divisible
    by G(x)!!

25
Error-Detecting Code - CRC
  • Receiver divides checksummed frame by G(x)
  • If remainder is zero
  • No error, CRC is removed
  • Otherwise
  • Error, the frame is discarded

26
10.8 Binary division in a CRC generator
  • Frame
  • Generator
  • Frame transmitted
  • 100100001

27
10.9 Binary division in CRC checker
28
CRC - Example
1 1 0 0 0 0
  • Frame
  • Generator

29
CRC Properties
  • Single error detection
  • Double error detection w/ carefully chosen G(x)
  • Odd number error detection if (x 1) is a factor
    of G(x)
  • Detect burst error length ? r for r check bits
  • Can be implemented in hardware using simple shift
    register circuit

30
Table 10.1 Standard polynomials
Name Polynomial Application
CRC-8 x8 x2 x 1 ATM header
CRC-10 x10 x9 x5 x4 x 2 1 ATM AAL
ITU-16 x16 x12 x5 1 HDLC
ITU-32 x32 x26 x23 x22 x16 x12 x11 x10 x8 x7 x5 x4 x2 x 1 LANs
Write a Comment
User Comments (0)
About PowerShow.com