Ch3 Part 2 Error Detection and Correction
Ch3 Part 2 Error Detection and Correction
COMMUNICATIONS
AND NETWORKS
(SEET3623)
Mathematically the system can expect to experience one bit error for
−5 1 1
every 100,000 bits transported through the system (10 = 5 = )
10 100,000
In the past there was one bit error for every 100,000 bits transported.
N.E.G.2022
ERROR DETECTION 4
What?
• Process of monitoring data transmission and determining when errors have
occurred
Why?
• To prevent undetected errors from occurring
How?
• Parity Check (to illustrate basic ideas behind error detection & correction)
• Cyclic Redundancy Check (typically used in the link layer in an adapter)
• Checksum (typically used in the transport layer)
N.E.G.2022
ERROR DETECTION 5
N.E.G.2022
EXERCISE 1 8
Suppose the sender wants to send the word world. In ASCII, the five characters are
coded as:
N.E.G.2022
REDUNDANCY 9
N.E.G.2022
CYCLIC REDUNDANCY CHECK (CRC) 10
N.E.G.2022
ACTIVITY 2 11
N.E.G.2022
ACTIVITY 2 cont… 12
• Parameters:
T = n-bit frame (codeword) to be transmitted
D = k-bit block of data; the first k bits of T
F = (n – k)-bit FCS; the last (n – k) bits of T
P = pattern of n – k + 1 bits; this is the
predetermined divisor
Q = Quotient
R = Remainder
N.E.G.2022
MODULO 2 ARITHMETIC 13
1 1 1 1 1 1 1 1 1 1 0 0 1
+ 1 0 1 0 - 0 1 0 1 X 1 1
0 1 0 1 1 0 1 0 1 1 0 0 1
1 1 0 0 1
1 0 1 0 1 1
XOR
N.E.G.2022
BINARY DIVISION 14
1 1 0 1 1 0 0 1 0 0 0 0 0
N.E.G.2022
EXERCISE 2 15
Given
• Calculate FCR, R
• Transmitted message, T
• Show the message is received with error or without error
N.E.G.2022
CRC:POLYNOMIALS 16
N.E.G.2022
CRC:POLYNOMIALS 17
• CRC-8: 𝑥𝑥 8 + 𝑥𝑥 2 + 𝑥𝑥 + 1
[Factors] = (𝑥𝑥 + 1)(𝑥𝑥 7 + 𝑥𝑥 6 + 𝑥𝑥 5 + 𝑥𝑥 4 + 𝑥𝑥 3 + 𝑥𝑥 2 + 𝑥𝑥 + 1)
Used in: 802.16 (along with error correction)
• CRC-CCITT: 𝑥𝑥 16 + 𝑥𝑥 12 + 𝑥𝑥 5 + 1
[Factors] = (𝑥𝑥 + 1)(𝑥𝑥 15 + 𝑥𝑥 14 + 𝑥𝑥 13 + 𝑥𝑥 12 + 𝑥𝑥 4 + 𝑥𝑥 3 + 𝑥𝑥 2 + 𝑥𝑥 + 1)
Used in: HDLC, SDLC, PPP default
N.E.G.2022
EXERCISE 3 18
(𝑥𝑥 8 + 𝑥𝑥 7 + 𝑥𝑥 5 + 𝑥𝑥 4 + 𝑥𝑥 2 + 𝑥𝑥 + 1)
N.E.G.2022
CHECKSUM 19
N.E.G.2022