SlideShare a Scribd company logo
Error Detection
and Correction
Presented by : Abdulaziz Mabrouk
Tagawy
INTRODUCTION
O Types of Errors
Whenever bits flow from one point to
another, they are subject to unpredictable
changes because of interference. This
interference can change the shape of the
signal.
INTRODUCTION
Types of Errors
O The term single-bit
error means that
only 1 bit of a given
data unit (such as a
byte,
O character, or
packet) is changed
from 1 to 0 or from 0
to 1.
INTRODUCTION
Types of Errors
O The term burst
error means
O that 2 or more bits
in the data unit have
changed from 1 to 0
or from 0 to 1.
INTRODUCTION
O Redundancy
The central concept in detecting or
correcting errors is redundancy. To be able
to detect or correct errors, we need to send
some extra bits with our data. These
redundant bits are added by the sender and
removed by the receiver. Their presence
allows the receiver to detect or correct
corrupted bits.
INTRODUCTION
O Detection versus Correction
O The correction of errors is more difficult
than the detection.
O In error detection, we are
only looking to see if any error has occurred.
The answer is a simple yes or no. We are
not
even interested in the number of corrupted
bits.
INTRODUCTION
O Detection versus Correction
O In error correction, we need to know the
exact number of bits that are corrupted
and, more importantly, their location in the
message. The number of errors and the
size of the message are important factors
INTRODUCTION
O Coding
O Redundancy is achieved through various
coding schemes.
O The ratio of redundant bits to data bits and
the robustness of the process are
important factors in any coding scheme.
O block coding and convolution coding.
BLOCK CODING
O In block coding, we divide our message into
blocks, each of k bits, called datawords.
O adding r redundant bits to each block to make
the length n = k + r.
O The resulting n-bit blocks are called
codewords.
O If the
O receiver receives an invalid codeword, this
indicates that the data was corrupted during
O transmission.
BLOCK CODING
Error Detection
O If the following two
conditions are met, the
receiver can detect a
change in the original
codeword.
O 1. The receiver has (or
can find) a list of valid
codewords.
O 2. The original codeword
has changed to an invalid
one.
BLOCK CODING
BLOCK CODING
O Hamming Distance
O Hamming distance between two words (of the
same size) is the number of differences between
the corresponding bits.
O Hamming distance between two words x and y
as d(x, y).
O Hamming
O distance between the two is d(00000, 1101) = 3.
O if the Hamming distance between the sent and
the received codeword is not zero, the codeword
has been corrupted during transmission.
BLOCK CODING
O Hamming Distance
O It can easily be found if we apply the XOR
operation (⊕) .
BLOCK CODING
O Hamming Distance
O EX:-
O Let us find the Hamming distance between
two pairs of words.
O 1. The Hamming distance d(000, 011) is 2
because (000 ⊕ 011) is 011 (two 1s).
O 2. The Hamming distance d(10101, 11110) is
3 because (10101 ⊕ 11110) is 01011 (three
1s).
BLOCK CODING
O Minimum Hamming Distance for Error
Detection :
O the minimum Hamming distance is the
smallest Hamming distance between all
possible pairs of codewords.
BLOCK CODING
Minimum Hamming
Distance for Error
Detection :
O EX:-The minimum Hamming distance for code
scheme in the Table is 2. This code guarantees
detection of only a single error.
O For example, if the third codeword (101) is sent and
one error occurs, the received codeword does not
match any valid codeword. If two errors occur,
however, the received codeword may match a valid
codeword and the errors are not detected.
BLOCK CODING
O Minimum Hamming Distance for Error
Detection :
O EX:- A code scheme has a Hamming
distance dmin = 4. This code guarantees the
detection of up to three errors (d = s + 1 or s
= 3).
BLOCK CODING
O Linear Block Codes :
O Almost all block codes used today belong to
a subset of block codes called linear block
codes.
O The use of nonlinear block codes for error
detection and correction is not as
widespread because their structure makes
theoretical analysis and implementation
difficult.
BLOCK CODING
Linear Block Codes :
O EX:- The code in Table is a linear block code
because the result of XORing any codeword
with any other codeword is a valid codeword.
O For example, the XORing of the second and
third codewords creates the fourth one.
BLOCK CODING
Linear Block Codes :
O The minimum Hamming distance is the
number of 1s in the nonzero valid
codeword with the smallest number of 1s.
O EX:- In the Table the numbers of 1s in the
nonzero codewords are 2, 2, and 2. So the
minimum Hamming distance is dmin = 2.
BLOCK CODING
O Parity-Check Code :
O It is linear block code.
O k-bit dataword is changed to an n-bit codeword
where n = k + 1.
O The extra bit, called the parity bit .
O the parity bit, is selected to make the total
O number of 1s in the codeword even. Although
some implementations specify an odd
O number of 1s,
BLOCK CODING
O Parity-Check Code :
O The minimum Hamming distance for this
category is dmin = 2,
O It is a single-bit error-detecting code
BLOCK CODING
BLOCK CODING
BLOCK CODING
O Parity-Check Code :
O EX:- Let us look at some transmission scenarios. Assume the sender sends the
dataword 1011. The codeword created from this dataword is 10111, which is sent to
the receiver. We examine five cases:
O 1. No error occurs; the received codeword is 10111. The syndrome is 0. The
dataword 1011 is created.
O 2. One single-bit error changes a1. The received codeword is 10011. The syndrome
is 1. No dataword is created.
O 3. One single-bit error changes r0. The received codeword is 10110. The syndrome
is 1. No dataword is created. Note that although none of the dataword bits are
corrupted, no dataword is created because the code is not sophisticated enough to
show the position of the corrupted bit.
O 4. An error changes r0 and a second error changes a3. The received codeword is
00110. The syndrome is 0. The dataword 0011 is created at the receiver. Note that
here the dataword is wrongly created due to the syndrome value. The simple parity-
check decoder cannot detect an even number of errors. The errors cancel each other
out and give the syndrome a value of 0.
O 5. Three bits—a3, a2, and a1—are changed by errors. The received codeword is
01011. The syndrome is 1. The dataword is not created. This shows that the simple
parity check, guaranteed to detect one single error, can also find any odd number of
errors.
BLOCK CODING
O Parity-Check Code :
CYCLIC CODES
O Cyclic codes are special linear block
codes with one extra property ; Why ?
O Because the result is another codeword .
O EX : - if 1011000 is a codeword and we
cyclically left-shift, then 0110001 is also a
codeword.
CYCLIC CODES
O Cyclic Redundancy Check (CRC) :
O It is used in networks such as LANs and WANs .
CYCLIC CODES
Cyclic Redundancy Check (CRC) :
CYCLIC CODES
O Cyclic Redundancy Check (CRC) :
O In the encoder, the dataword has k bits (4 here); the
codeword has n bits (7 here).
O The size of the dataword is augmented by adding n - k
(3 here) 0s to the right-hand side of the word. The n-bit
result is fed into the generator. The generator uses a
divisor of size n - k + 1 (4 here), predefined and agreed
upon. The generator divides the augmented dataword
by the divisor (modulo-2 division). The quotient of the
division is discarded; the remainder (r2r1r0) is
appended to the dataword to create the codeword.
CYCLIC CODES
O Cyclic Redundancy Check (CRC) :
O The decoder receives the codeword (possibly
corrupted in transition). A copy of all n bits is fed to the
checker, which is a replica of the generator. The
remainder produced by the checker is a syndrome of n
− k (3 here) bits, which is fed to the decision logic
analyzer. The analyzer has a simple function. If the
syndrome bits are all 0s, the 4 leftmost bits of the
codeword are accepted as the dataword (interpreted
as no error); otherwise, the 4 bits are discarded (error).
CYCLIC CODES
Encoder:
CYCLIC CODES
Decoder:
CYCLIC CODES
O Polynomials :
O pattern of 0s and 1s can be represented
as a polynomial with coefficients of 0 and
1 . The power of each term shows the
position of the bit; the coefficient shows
the value of the bit.
CYCLIC CODES
O Polynomials :
CYCLIC CODES
O Polynomials :
O The degree of a polynomial is the highest power
in the polynomial. For example, the degree of the
polynomial 𝑥6
+ 𝑥 +1 is 6 .
O Adding and subtracting polynomials in
mathematics are done by adding or subtracting
the coefficients of terms with the same power.
O EX:- adding 𝑥5
+ 𝑥4
+ 𝑥2
and 𝑥6
+ 𝑥4
+ 𝑥2
gives
just 𝑥6 + 𝑥5. The terms 𝑥4 and 𝑥2 are deleted..
CYCLIC CODES
O Polynomials :
O Multiplying a term by another term is very simple; we
just add the powers.
EX:-, 𝑥4
+ 𝑥3
is 𝑥7
.
O For dividing, we just subtract the power of the
second term from the power of the first. For example,
𝑥5/𝑥2 is 𝑥3 .
O EX:- (𝑥5
+ 𝑥3
+ 𝑥2
+ 𝑥 )(𝑥2
+ 𝑥 +1) = 𝑥7
+ 𝑥6
+ 𝑥5
+ 𝑥5
+𝑥4
+ 𝑥3
+ 𝑥4
+ 𝑥3
+𝑥2
+ 𝑥3
+ 𝑥2
+ 𝑥 =𝑥7
+ 𝑥6
+
𝑥3 + 𝑥
CYCLIC CODES
Polynomials :
O Shifting :
O A binary pattern is often shifted a
number of bits to the right or left.
Shifting to the left means adding
extra 0s as rightmost bits; shifting to
the right means deleting some
rightmost bits. Shifting to the left is
accomplished by multiplying each
term of the polynomial by 𝑥 𝑚
, where
m is the number of shifted bits;
shifting to the right is accomplished
by dividing each term of the
polynomial by 𝑥 𝑚
. The following
shows shifting to the left and to the
right. Note that we do not have
negative powers in the polynomial
representation.
O Shifting left 3 bits:
10011 becomes
10011000 :
O 𝑥4 + 𝑥 +1 becomes
𝑥7 + 𝑥4+𝑥3
O Shifting right 3 bits:
10011 becomes 10 :
O 𝑥4
+ 𝑥 +1 becomes
𝑥
CYCLIC CODES
Cyclic Code Encoder Using Polynomials :
CYCLIC CODES
Cyclic Code Encoder
Using Polynomials :
O The divisor in a
cyclic code is
normally called the
generator
polynomial or
simply the
generator.
CYCLIC CODES
O Cyclic Code Analysis :
O 𝑓 𝑥 is a polynomial with binary
coefficients.
O Dataword: 𝑑 𝑥
O Codeword: 𝑐 𝑥
O Generator: 𝑔 𝑥
O Syndrome: 𝑠 𝑥
O Error: 𝑒 𝑥
CYCLIC CODES
O Cyclic Code
Analysis :
O In a cyclic code,
O 1. If 𝑠 𝑥 ¦ 0, one or
more bits is
corrupted.
O 2. If 𝑠 𝑥 = 0, either
O a. No bit is
corrupted, or
O b. Some bits are
corrupted, but the
decoder failed to
detect them.
CYCLIC CODES
O Cyclic Code Analysis :
O
𝑹𝒆𝒄𝒆𝒊𝒗𝒆𝒅 𝒄𝒐𝒅𝒆𝒘𝒐𝒓𝒅
𝒈(𝒙)
=
𝒄(𝒙)
𝒈(𝒙)
+
𝒆(𝒙)
𝒈(𝒙)
O The first term at the right-hand side of the equality has a
remainder of zero (according to the definition of
codeword). So the syndrome is actually the remainder of
the second term on the right-hand side. If this term does
not have a remainder (syndrome = 0), either e(x) is 0 or
e(x) is divisible by g(x). We do not have to worry about
the first case (there is no error); the second case is very
important. Those errors that are divisible by g(x) are not
caught.
O In a cyclic code, those 𝒆(𝒙) errors that are
divisible by 𝒈(𝒙) are not caught.
CYCLIC CODES
O Single-Bit Error :
O It is 𝒆(𝒙) = 𝑥 𝑖, where 𝑖 is the position of the bit. If
a single-bit error is caught, then 𝑥 𝑖 is not divisible
by g(x). (Note that when we say not divisible, we
mean that there is a remainder.) If 𝒈(𝒙) has at
least two terms (which is normally the case) and
the coefficient of 𝑥0 is not zero (the rightmost bit
is 1), then 𝒆(𝒙) cannot be divided by 𝒈(𝒙).
If the generator has more than one term and the coefficient
of 𝒙 𝟎 is 1, all single-bit errors can be caught .
CYCLIC CODES
O Single-Bit Error :
O EX:-Which of the
following 𝒈(𝒙) values
guarantees that a single-
bit error is caught? For
each case, what is the
error that cannot be
caught?
a) a. 𝑥 + 1
b) b. 𝑥3
c) c. 1
O Solution
a) No 𝑥 𝑖
can be divisible by 𝑥 + 1 . In
other words, 𝑥 𝑖
/( 𝑥 + 1) always has a
remainder. So the syndrome is
nonzero. Any single-bit error can be
caught.
b) If i is equal to or greater than 3, 𝑥 𝑖 is
divisible by 𝒈(𝒙).The remainder of
𝑥 𝑖
/ 𝑥3
is zero, and the receiver is
fooled into believing that there is no
error, although there might be one.
Note that in this case, the corrupted
bit must be in position 4 or above. All
single-bit errors in positions 1 to 3 are
caught.
c) All values of i make 𝑥 𝑖
divisible by 𝒈(𝒙
). No single-bit error can be caught. In
addition, this 𝒈(𝒙) is useless because
it means the codeword is just the
dataword augmented with n − k
zeros.
CYCLIC CODES
O Two Isolated Single-Bit Errors
CYCLIC CODES
O Two Isolated Single-Bit Errors
CYCLIC CODES
CYCLIC CODES
O Standard Polynomials
CHECKSUM
O Checksum is an error-detecting technique that can
be applied to a message of any length.
O In the Internet, the checksum technique is mostly
used at the network and transport layer rather than
the data-link layer.
O At the source, the message is first divided into m-
bit units. The generator then creates an extra m-bit
unit called the checksum, which is sent with the
message.
CHECKSUM
O At the destination, the checker creates a new
checksum from the combination of the message
and sent checksum. If the new checksum is all
0s, the message is accepted; otherwise, the
message is discarded .
O The checksum unit is not necessarily added at
the end of the message; it can be inserted in the
middle of the message.
CHECKSUM
CHECKSUM
O Concept :
O EX:- Suppose the message is a list of five 4-bit
numbers that we want to send to a destination .
O In addition to sending these numbers, we send the
sum of the numbers.
O if the set of numbers is (7, 11, 12, 0, 6) .
O (7, 11, 12, 0, 6, 36) they will be send, whereas 36
is the sum of the original numbers.
CHECKSUM
O Concept :-
O The receiver adds the five numbers and compares
the result with the sum.
O If the two are the same, the receiver assumes no
error, accepts the five numbers and discards the
sum.
O Otherwise , there is an error somewhere and the
message is not accepted.
CHECKSUM
O One’s Complement Addition
O In the previous example, the decimal number 36 in
binary is (100100)2. To change it to a 4-bit number we
add the extra leftmost bit to the right four bits as shown
below.
O We can send 6 as the sum (7, 11, 12, 0, 6, 6). The
receiver can add the first five numbers in one’s
complement arithmetic. If the result is 6, the numbers
are accepted; otherwise, they are rejected.
CHECKSUM
O Checksum :
O the complement of a number is found by completing all
bits (changing all 1s to 0s and all 0s to 1s).
O The same as Subtracting the number from 2 𝑚
− 1.
O When the receiver adds all five numbers (including the
checksum), it gets a negative zero.
O The positive zero has all 𝑚 bits set to 0; the negative
zero has all bits set to 1 (it is 2 𝑚
− 1).
O The receiver can complement the result again to get a
positive zero.
CHECKSUM
O Checksum :
O EX:- Let us use the idea of the checksum
O The sender adds all five numbers in one’s
complement to get the sum = 6.
O Then complements the result to get the checksum = 9,
which is 15 − 6.
O Note that 6 = (0110)2 and 9 = (1001)2; they are
complements of each other .
O Then sends the five data numbers and the checksum
(7, 11, 12, 0, 6, 9).
CHECKSUM
O Checksum :
O EX:- Cont.….
O If there is no corruption in transmission,
O The receiver receives (7, 11, 12, 0, 6, 9) and
adds them in one’s complement to get 15.
O The receiver complements 15 to get 0.
O This shows that data have not been corrupted.
CHECKSUM
O Checksum :-
O EX:- Cont.….
CHECKSUM
O Internet Checksum : -
O Traditionally, the Internet has used a 16-
bit checksum.
O Describe the Procedure to calculate the
traditional checksum ?
CHECKSUM
Internet Checksum : -
Sender
Internet Checksum : -
Receiver
1. The message is divided
into 16-bit words.
2. The value of the checksum
word is initially set to zero.
3. All words including the
checksum are added using
one’s complement addition.
4. The sum is complemented
and becomes the
checksum.
5. The checksum is sent with
the data.
1. The message and the
checksum are received.
2. The message is divided
into 16-bit words.
3. All words are added using
one’s complement addition.
4. The sum is complemented
and becomes the new
checksum.
5. If the value of the
checksum is 0, the
message is accepted;
otherwise, it is rejected.
CHECKSUM
O Performance :
O The traditional checksum
uses a small number of bits
(16) to detect errors in a
message of any size
(sometimes thousands of
bits). However, it is not as
strong as the CRC in error-
checking capability.
O the tendency in the Internet,
particularly in designing new
protocols, is to replace the
checksum with a CRC.
O EX:- If the value of one
word is incremented and
the value of another word is
decremented by the same
amount, the two errors
cannot be detected
because the sum and
checksum remain the same.
O EX:-If the value of one word
is incremented and the
value of another word is
decremented by the same
amount, the two errors
cannot be detected
because the sum and
checksum remain the same.
CHECKSUM
O Fletcher Checksum: -
O It was devised to weight each data item
according to its position .
O It has proposed two algorithms: 8-bit and 16-
bit.
O The first, 8-bit Fletcher, calculates on 8-bit
data items and creates a 16-bit checksum.
O The second, 16-bit Fletcher, calculates on 16-
bit data items and creates a 32-bit checksum.
CHECKSUM
O The 8-bit Fletcher:-
O It is calculated over data
octets (bytes) and creates a
16-bit checksum.
O The calculation is done
modulo 256 (28),
O The intermediate results
O are divided by 256 and the
remainder is kept.
O The algorithm uses two
accumulators, L and R.
 The first simply adds data
items together
 The second adds a
weight to the calculation.
FORWARD ERROR
CORRECTION
O We need to correct the error or reproduce
the packet immediately. Several schemes
have been designed and used in this case
that are collectively referred to as forward
error correction (FEC) techniques.
FORWARD ERROR
CORRECTION
O Using Hamming Distance :-
O to detect s errors, the minimum Hamming distance
should be dmin = s + 1.
O For error detection, to detect t errors, we need to
have dmin = 2t + 1.
O EX:- To correct 10 bits in a packet, we need to
O make the minimum hamming distance 21 bits,
FORWARD ERROR
CORRECTION
O Using Hamming Distance :-
O EX:- consider BCH code :
O if data is 99 bits, we need to send 255 bits (extra 156
bits) to correct just 23 possible bit errors
O Most of the time we cannot afford such a redundancy.
FORWARD ERROR
CORRECTION
O Using XOR: -
O Applying the exclusive OR operation on N data items (P1 to PN), it
can recreate any of the data items by exclusive-ORing all of the
items, replacing the one to be created by the result of the previous
operation (R).
 Dividing a packet into N chunks .
 create the exclusive OR of all the chunks and send N + 1 chunks.
 If any chunk is lost or corrupted, it can be created at the receiver
site.
? The question is what should the value of N be ?
 If N = 4, it means that we need to send 25 percent extra data and
be able to correct the data if only one out of four chunks is lost.
FORWARD ERROR
CORRECTION
O Chunk Interleaving:-
O to achieve FEC in multimedia is to allow some
small chunks to be missing at the receiver.
O we can afford to let one chunk be missing in each
packet.
O EX:- Dividing each packet into 5 chunks
(normally the number is much larger). We can
then create data chunk by chunk (horizontally),
but combine the chunks into packets vertically.
FORWARD ERROR
CORRECTION
O Chunk Interleaving:-
O EX:- Cont. ….
O each packet sent carries a chunk from
several original packets. If the packet is
lost, we miss only one chunk in each
packet, which is normally acceptable in
multimedia communication.
FORWARD ERROR
CORRECTION
O Chunk Interleaving:-
O EX:- Cont. ….
FORWARD ERROR
CORRECTION
O Combining Hamming Distance and
Interleaving :-
O Hamming distance and interleaving can
be combined. We can first create n-bit
packets that can correct t-bit errors. Then
we interleave m rows and send the bits
column by column. In this way, we can
automatically correct burst errors up to m
× t-bit errors.
FORWARD ERROR
CORRECTION
O Compounding High- and Low-Resolution
Packets : -
O Creating a duplicate of each packet with a low-
resolution redundancy and combine the
redundant version with the next packet.
O EX:- create four low-resolution packets out of five
high-resolution packets and send them .
 If a packet is lost, we can use the low-
resolution version from the next packet.
 the low-resolution section in the first packet is
empty.
FORWARD ERROR
CORRECTION
O Compounding High- and Low-
Resolution Packets : -
O EX:- Cont. ….
 if the last packet is lost, it cannot be
recovered .
O The audio and video reproduction does
not have the same quality, but the lack of
quality is not recognized most of the time.
FORWARD ERROR
CORRECTION
O Compounding High- and Low-Resolution
Packets : -
O EX:- Cont. ….
Error Detection
and Correction
‫هللا‬ ‫بحمد‬ ‫تم‬

More Related Content

What's hot

Error Detection And Correction
Error Detection And CorrectionError Detection And Correction
Error Detection And Correction
Renu Kewalramani
 
Lecture 13
Lecture 13Lecture 13
Lecture 13
Anwal Mirza
 
Congestion control
Congestion controlCongestion control
Congestion control
Aman Jaiswal
 
HDLC
HDLCHDLC
Data Encoding
Data EncodingData Encoding
Data EncodingLuka M G
 
DCN Error Detection & Correction
DCN Error Detection & CorrectionDCN Error Detection & Correction
DCN Error Detection & Correction
Rohan Bhatkar
 
Chapter 4 data link layer
Chapter 4 data link layerChapter 4 data link layer
Chapter 4 data link layer
Naiyan Noor
 
Data Link Layer| Error Detection
Data Link Layer| Error DetectionData Link Layer| Error Detection
Data Link Layer| Error Detection
Taimoor Muzaffar Gondal
 
Error detection and correction
Error detection and correctionError detection and correction
Error detection and correction
Maria Akther
 
Go back-n protocol
Go back-n protocolGo back-n protocol
Go back-n protocol
STEFFY D
 
7. data link layer error detection and correction codes - parity and checksum
7. data link layer   error detection and correction codes - parity and checksum7. data link layer   error detection and correction codes - parity and checksum
7. data link layer error detection and correction codes - parity and checksum
JAIGANESH SEKAR
 
switching techniques in data communication and networking
switching techniques in data communication and networkingswitching techniques in data communication and networking
switching techniques in data communication and networking
Harshita Yadav
 
Data link layer
Data link layer Data link layer
Data link layer
Mukesh Chinta
 
Ethernet
EthernetEthernet
Ethernet
sijil chacko
 
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)
k33a
 
Error Detection and Correction
Error Detection and CorrectionError Detection and Correction
Error Detection and CorrectionTechiNerd
 
Chapter 11: Data Link Control
Chapter 11: Data Link ControlChapter 11: Data Link Control
Chapter 11: Data Link Control
JeoffnaRuth
 

What's hot (20)

Error Detection And Correction
Error Detection And CorrectionError Detection And Correction
Error Detection And Correction
 
Lecture 13
Lecture 13Lecture 13
Lecture 13
 
Congestion control
Congestion controlCongestion control
Congestion control
 
HDLC
HDLCHDLC
HDLC
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
Data Encoding
Data EncodingData Encoding
Data Encoding
 
DCN Error Detection & Correction
DCN Error Detection & CorrectionDCN Error Detection & Correction
DCN Error Detection & Correction
 
Chapter 4 data link layer
Chapter 4 data link layerChapter 4 data link layer
Chapter 4 data link layer
 
Multiple access protocol
Multiple access protocolMultiple access protocol
Multiple access protocol
 
Data Link Layer| Error Detection
Data Link Layer| Error DetectionData Link Layer| Error Detection
Data Link Layer| Error Detection
 
Error detection and correction
Error detection and correctionError detection and correction
Error detection and correction
 
Go back-n protocol
Go back-n protocolGo back-n protocol
Go back-n protocol
 
7. data link layer error detection and correction codes - parity and checksum
7. data link layer   error detection and correction codes - parity and checksum7. data link layer   error detection and correction codes - parity and checksum
7. data link layer error detection and correction codes - parity and checksum
 
switching techniques in data communication and networking
switching techniques in data communication and networkingswitching techniques in data communication and networking
switching techniques in data communication and networking
 
Data link layer
Data link layer Data link layer
Data link layer
 
Ethernet
EthernetEthernet
Ethernet
 
Line coding
Line codingLine coding
Line coding
 
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)
 
Error Detection and Correction
Error Detection and CorrectionError Detection and Correction
Error Detection and Correction
 
Chapter 11: Data Link Control
Chapter 11: Data Link ControlChapter 11: Data Link Control
Chapter 11: Data Link Control
 

Similar to Error Detection and Correction - Data link Layer

Chapter 10: Error Correction and Detection
Chapter 10: Error Correction and DetectionChapter 10: Error Correction and Detection
Chapter 10: Error Correction and Detection
JeoffnaRuth
 
Linear Block Codes
Linear Block CodesLinear Block Codes
Linear Block Codes
NilaNila16
 
linear codes and cyclic codes
linear codes and cyclic codeslinear codes and cyclic codes
linear codes and cyclic codes
saigopinadh bodigiri
 
4_Datalink__Error_Detection_and Correction.pdf
4_Datalink__Error_Detection_and Correction.pdf4_Datalink__Error_Detection_and Correction.pdf
4_Datalink__Error_Detection_and Correction.pdf
kenilpatel65
 
Error Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networksError Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networks
Nt Arvind
 
3F4ecc.ppt
3F4ecc.ppt3F4ecc.ppt
3F4ecc.ppt
Annymus
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
Faisal Mehmood
 
Ch10
Ch10Ch10
Ch10
Lia Nakid
 
Lecture8_Error Detection and Correction 232.pptx
Lecture8_Error Detection and Correction 232.pptxLecture8_Error Detection and Correction 232.pptx
Lecture8_Error Detection and Correction 232.pptx
MahabubAlam97
 
New error-detection
New error-detectionNew error-detection
New error-detectionNitesh Singh
 
New error-detection (2)
New error-detection (2)New error-detection (2)
New error-detection (2)Nitesh Singh
 
review of number systems and codes
review of number systems and codesreview of number systems and codes
review of number systems and codes
srinu247
 
crc_checksum.pdf
crc_checksum.pdfcrc_checksum.pdf
crc_checksum.pdf
ssuser8b4eb21
 
5(1)crc-chechsum-hamming.ppt
5(1)crc-chechsum-hamming.ppt5(1)crc-chechsum-hamming.ppt
5(1)crc-chechsum-hamming.ppt
prashant513130
 
hamming code detailed
hamming code detailedhamming code detailed
hamming code detailed
IKhait
 
ch10_2_v1.ppt
ch10_2_v1.pptch10_2_v1.ppt
ch10_2_v1.ppt
dlakmlkfma
 

Similar to Error Detection and Correction - Data link Layer (20)

Chapter 10: Error Correction and Detection
Chapter 10: Error Correction and DetectionChapter 10: Error Correction and Detection
Chapter 10: Error Correction and Detection
 
Linear Block Codes
Linear Block CodesLinear Block Codes
Linear Block Codes
 
linear codes and cyclic codes
linear codes and cyclic codeslinear codes and cyclic codes
linear codes and cyclic codes
 
4_Datalink__Error_Detection_and Correction.pdf
4_Datalink__Error_Detection_and Correction.pdf4_Datalink__Error_Detection_and Correction.pdf
4_Datalink__Error_Detection_and Correction.pdf
 
Error Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networksError Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networks
 
3F4ecc.ppt
3F4ecc.ppt3F4ecc.ppt
3F4ecc.ppt
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
Ch10
Ch10Ch10
Ch10
 
Ch10
Ch10Ch10
Ch10
 
Lecture8_Error Detection and Correction 232.pptx
Lecture8_Error Detection and Correction 232.pptxLecture8_Error Detection and Correction 232.pptx
Lecture8_Error Detection and Correction 232.pptx
 
New error-detection
New error-detectionNew error-detection
New error-detection
 
New error-detection (2)
New error-detection (2)New error-detection (2)
New error-detection (2)
 
Ch3 datalink
Ch3 datalinkCh3 datalink
Ch3 datalink
 
review of number systems and codes
review of number systems and codesreview of number systems and codes
review of number systems and codes
 
Ch10 2 v1
Ch10 2 v1Ch10 2 v1
Ch10 2 v1
 
crc_checksum.pdf
crc_checksum.pdfcrc_checksum.pdf
crc_checksum.pdf
 
Data linklayer
Data linklayerData linklayer
Data linklayer
 
5(1)crc-chechsum-hamming.ppt
5(1)crc-chechsum-hamming.ppt5(1)crc-chechsum-hamming.ppt
5(1)crc-chechsum-hamming.ppt
 
hamming code detailed
hamming code detailedhamming code detailed
hamming code detailed
 
ch10_2_v1.ppt
ch10_2_v1.pptch10_2_v1.ppt
ch10_2_v1.ppt
 

More from Abdullaziz Tagawy

Service performance and analysis in cloud computing extened 2
Service performance and analysis in cloud computing   extened 2Service performance and analysis in cloud computing   extened 2
Service performance and analysis in cloud computing extened 2
Abdullaziz Tagawy
 
Solar Cells versus Photodiode
Solar Cells versus PhotodiodeSolar Cells versus Photodiode
Solar Cells versus Photodiode
Abdullaziz Tagawy
 
Managing enterprise networks with cisco prime infrastructure_ 1 of 2
Managing enterprise networks with cisco prime infrastructure_ 1 of 2Managing enterprise networks with cisco prime infrastructure_ 1 of 2
Managing enterprise networks with cisco prime infrastructure_ 1 of 2
Abdullaziz Tagawy
 
EMP_Assessment Report ABDELAZEZ TAGAWY
EMP_Assessment Report ABDELAZEZ TAGAWYEMP_Assessment Report ABDELAZEZ TAGAWY
EMP_Assessment Report ABDELAZEZ TAGAWYAbdullaziz Tagawy
 
IPSec and VPN
IPSec and VPNIPSec and VPN
IPSec and VPN
Abdullaziz Tagawy
 
Convolutional codes
Convolutional codesConvolutional codes
Convolutional codes
Abdullaziz Tagawy
 
OFDM Orthogonal Frequency Division Multiplexing
OFDM Orthogonal Frequency Division MultiplexingOFDM Orthogonal Frequency Division Multiplexing
OFDM Orthogonal Frequency Division Multiplexing
Abdullaziz Tagawy
 
Solving QoS multicast routing problem using ACO algorithm
Solving QoS multicast routing problem using ACO algorithmSolving QoS multicast routing problem using ACO algorithm
Solving QoS multicast routing problem using ACO algorithm
Abdullaziz Tagawy
 
Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm
Abdullaziz Tagawy
 
SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture
Abdullaziz Tagawy
 
Introduction to Data-Link Layer
Introduction to Data-Link LayerIntroduction to Data-Link Layer
Introduction to Data-Link Layer
Abdullaziz Tagawy
 
Comp net 2
Comp net 2Comp net 2
Comp net 2
Abdullaziz Tagawy
 
Comp net 1
Comp net 1Comp net 1
Comp net 1
Abdullaziz Tagawy
 

More from Abdullaziz Tagawy (13)

Service performance and analysis in cloud computing extened 2
Service performance and analysis in cloud computing   extened 2Service performance and analysis in cloud computing   extened 2
Service performance and analysis in cloud computing extened 2
 
Solar Cells versus Photodiode
Solar Cells versus PhotodiodeSolar Cells versus Photodiode
Solar Cells versus Photodiode
 
Managing enterprise networks with cisco prime infrastructure_ 1 of 2
Managing enterprise networks with cisco prime infrastructure_ 1 of 2Managing enterprise networks with cisco prime infrastructure_ 1 of 2
Managing enterprise networks with cisco prime infrastructure_ 1 of 2
 
EMP_Assessment Report ABDELAZEZ TAGAWY
EMP_Assessment Report ABDELAZEZ TAGAWYEMP_Assessment Report ABDELAZEZ TAGAWY
EMP_Assessment Report ABDELAZEZ TAGAWY
 
IPSec and VPN
IPSec and VPNIPSec and VPN
IPSec and VPN
 
Convolutional codes
Convolutional codesConvolutional codes
Convolutional codes
 
OFDM Orthogonal Frequency Division Multiplexing
OFDM Orthogonal Frequency Division MultiplexingOFDM Orthogonal Frequency Division Multiplexing
OFDM Orthogonal Frequency Division Multiplexing
 
Solving QoS multicast routing problem using ACO algorithm
Solving QoS multicast routing problem using ACO algorithmSolving QoS multicast routing problem using ACO algorithm
Solving QoS multicast routing problem using ACO algorithm
 
Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm
 
SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture
 
Introduction to Data-Link Layer
Introduction to Data-Link LayerIntroduction to Data-Link Layer
Introduction to Data-Link Layer
 
Comp net 2
Comp net 2Comp net 2
Comp net 2
 
Comp net 1
Comp net 1Comp net 1
Comp net 1
 

Recently uploaded

学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
zyfovom
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
Danica Gill
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
JeyaPerumal1
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
keoku
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
hackersuli
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
SEO Article Boost
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
vmemo1
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
harveenkaur52
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
Javier Lasa
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
eutxy
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Florence Consulting
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
Trish Parr
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Brad Spiegel Macon GA
 
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
cuobya
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
ufdana
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
zoowe
 
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
CIOWomenMagazine
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
cuobya
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
Laura Szabó
 

Recently uploaded (20)

学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
 
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
 
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
 

Error Detection and Correction - Data link Layer

  • 1. Error Detection and Correction Presented by : Abdulaziz Mabrouk Tagawy
  • 2. INTRODUCTION O Types of Errors Whenever bits flow from one point to another, they are subject to unpredictable changes because of interference. This interference can change the shape of the signal.
  • 3. INTRODUCTION Types of Errors O The term single-bit error means that only 1 bit of a given data unit (such as a byte, O character, or packet) is changed from 1 to 0 or from 0 to 1.
  • 4. INTRODUCTION Types of Errors O The term burst error means O that 2 or more bits in the data unit have changed from 1 to 0 or from 0 to 1.
  • 5. INTRODUCTION O Redundancy The central concept in detecting or correcting errors is redundancy. To be able to detect or correct errors, we need to send some extra bits with our data. These redundant bits are added by the sender and removed by the receiver. Their presence allows the receiver to detect or correct corrupted bits.
  • 6. INTRODUCTION O Detection versus Correction O The correction of errors is more difficult than the detection. O In error detection, we are only looking to see if any error has occurred. The answer is a simple yes or no. We are not even interested in the number of corrupted bits.
  • 7. INTRODUCTION O Detection versus Correction O In error correction, we need to know the exact number of bits that are corrupted and, more importantly, their location in the message. The number of errors and the size of the message are important factors
  • 8. INTRODUCTION O Coding O Redundancy is achieved through various coding schemes. O The ratio of redundant bits to data bits and the robustness of the process are important factors in any coding scheme. O block coding and convolution coding.
  • 9. BLOCK CODING O In block coding, we divide our message into blocks, each of k bits, called datawords. O adding r redundant bits to each block to make the length n = k + r. O The resulting n-bit blocks are called codewords. O If the O receiver receives an invalid codeword, this indicates that the data was corrupted during O transmission.
  • 10. BLOCK CODING Error Detection O If the following two conditions are met, the receiver can detect a change in the original codeword. O 1. The receiver has (or can find) a list of valid codewords. O 2. The original codeword has changed to an invalid one.
  • 11.
  • 13. BLOCK CODING O Hamming Distance O Hamming distance between two words (of the same size) is the number of differences between the corresponding bits. O Hamming distance between two words x and y as d(x, y). O Hamming O distance between the two is d(00000, 1101) = 3. O if the Hamming distance between the sent and the received codeword is not zero, the codeword has been corrupted during transmission.
  • 14. BLOCK CODING O Hamming Distance O It can easily be found if we apply the XOR operation (⊕) .
  • 15. BLOCK CODING O Hamming Distance O EX:- O Let us find the Hamming distance between two pairs of words. O 1. The Hamming distance d(000, 011) is 2 because (000 ⊕ 011) is 011 (two 1s). O 2. The Hamming distance d(10101, 11110) is 3 because (10101 ⊕ 11110) is 01011 (three 1s).
  • 16. BLOCK CODING O Minimum Hamming Distance for Error Detection : O the minimum Hamming distance is the smallest Hamming distance between all possible pairs of codewords.
  • 17. BLOCK CODING Minimum Hamming Distance for Error Detection : O EX:-The minimum Hamming distance for code scheme in the Table is 2. This code guarantees detection of only a single error. O For example, if the third codeword (101) is sent and one error occurs, the received codeword does not match any valid codeword. If two errors occur, however, the received codeword may match a valid codeword and the errors are not detected.
  • 18. BLOCK CODING O Minimum Hamming Distance for Error Detection : O EX:- A code scheme has a Hamming distance dmin = 4. This code guarantees the detection of up to three errors (d = s + 1 or s = 3).
  • 19. BLOCK CODING O Linear Block Codes : O Almost all block codes used today belong to a subset of block codes called linear block codes. O The use of nonlinear block codes for error detection and correction is not as widespread because their structure makes theoretical analysis and implementation difficult.
  • 20. BLOCK CODING Linear Block Codes : O EX:- The code in Table is a linear block code because the result of XORing any codeword with any other codeword is a valid codeword. O For example, the XORing of the second and third codewords creates the fourth one.
  • 21. BLOCK CODING Linear Block Codes : O The minimum Hamming distance is the number of 1s in the nonzero valid codeword with the smallest number of 1s. O EX:- In the Table the numbers of 1s in the nonzero codewords are 2, 2, and 2. So the minimum Hamming distance is dmin = 2.
  • 22. BLOCK CODING O Parity-Check Code : O It is linear block code. O k-bit dataword is changed to an n-bit codeword where n = k + 1. O The extra bit, called the parity bit . O the parity bit, is selected to make the total O number of 1s in the codeword even. Although some implementations specify an odd O number of 1s,
  • 23. BLOCK CODING O Parity-Check Code : O The minimum Hamming distance for this category is dmin = 2, O It is a single-bit error-detecting code
  • 26. BLOCK CODING O Parity-Check Code : O EX:- Let us look at some transmission scenarios. Assume the sender sends the dataword 1011. The codeword created from this dataword is 10111, which is sent to the receiver. We examine five cases: O 1. No error occurs; the received codeword is 10111. The syndrome is 0. The dataword 1011 is created. O 2. One single-bit error changes a1. The received codeword is 10011. The syndrome is 1. No dataword is created. O 3. One single-bit error changes r0. The received codeword is 10110. The syndrome is 1. No dataword is created. Note that although none of the dataword bits are corrupted, no dataword is created because the code is not sophisticated enough to show the position of the corrupted bit. O 4. An error changes r0 and a second error changes a3. The received codeword is 00110. The syndrome is 0. The dataword 0011 is created at the receiver. Note that here the dataword is wrongly created due to the syndrome value. The simple parity- check decoder cannot detect an even number of errors. The errors cancel each other out and give the syndrome a value of 0. O 5. Three bits—a3, a2, and a1—are changed by errors. The received codeword is 01011. The syndrome is 1. The dataword is not created. This shows that the simple parity check, guaranteed to detect one single error, can also find any odd number of errors.
  • 28. CYCLIC CODES O Cyclic codes are special linear block codes with one extra property ; Why ? O Because the result is another codeword . O EX : - if 1011000 is a codeword and we cyclically left-shift, then 0110001 is also a codeword.
  • 29. CYCLIC CODES O Cyclic Redundancy Check (CRC) : O It is used in networks such as LANs and WANs .
  • 31. CYCLIC CODES O Cyclic Redundancy Check (CRC) : O In the encoder, the dataword has k bits (4 here); the codeword has n bits (7 here). O The size of the dataword is augmented by adding n - k (3 here) 0s to the right-hand side of the word. The n-bit result is fed into the generator. The generator uses a divisor of size n - k + 1 (4 here), predefined and agreed upon. The generator divides the augmented dataword by the divisor (modulo-2 division). The quotient of the division is discarded; the remainder (r2r1r0) is appended to the dataword to create the codeword.
  • 32. CYCLIC CODES O Cyclic Redundancy Check (CRC) : O The decoder receives the codeword (possibly corrupted in transition). A copy of all n bits is fed to the checker, which is a replica of the generator. The remainder produced by the checker is a syndrome of n − k (3 here) bits, which is fed to the decision logic analyzer. The analyzer has a simple function. If the syndrome bits are all 0s, the 4 leftmost bits of the codeword are accepted as the dataword (interpreted as no error); otherwise, the 4 bits are discarded (error).
  • 35. CYCLIC CODES O Polynomials : O pattern of 0s and 1s can be represented as a polynomial with coefficients of 0 and 1 . The power of each term shows the position of the bit; the coefficient shows the value of the bit.
  • 37. CYCLIC CODES O Polynomials : O The degree of a polynomial is the highest power in the polynomial. For example, the degree of the polynomial 𝑥6 + 𝑥 +1 is 6 . O Adding and subtracting polynomials in mathematics are done by adding or subtracting the coefficients of terms with the same power. O EX:- adding 𝑥5 + 𝑥4 + 𝑥2 and 𝑥6 + 𝑥4 + 𝑥2 gives just 𝑥6 + 𝑥5. The terms 𝑥4 and 𝑥2 are deleted..
  • 38. CYCLIC CODES O Polynomials : O Multiplying a term by another term is very simple; we just add the powers. EX:-, 𝑥4 + 𝑥3 is 𝑥7 . O For dividing, we just subtract the power of the second term from the power of the first. For example, 𝑥5/𝑥2 is 𝑥3 . O EX:- (𝑥5 + 𝑥3 + 𝑥2 + 𝑥 )(𝑥2 + 𝑥 +1) = 𝑥7 + 𝑥6 + 𝑥5 + 𝑥5 +𝑥4 + 𝑥3 + 𝑥4 + 𝑥3 +𝑥2 + 𝑥3 + 𝑥2 + 𝑥 =𝑥7 + 𝑥6 + 𝑥3 + 𝑥
  • 39. CYCLIC CODES Polynomials : O Shifting : O A binary pattern is often shifted a number of bits to the right or left. Shifting to the left means adding extra 0s as rightmost bits; shifting to the right means deleting some rightmost bits. Shifting to the left is accomplished by multiplying each term of the polynomial by 𝑥 𝑚 , where m is the number of shifted bits; shifting to the right is accomplished by dividing each term of the polynomial by 𝑥 𝑚 . The following shows shifting to the left and to the right. Note that we do not have negative powers in the polynomial representation. O Shifting left 3 bits: 10011 becomes 10011000 : O 𝑥4 + 𝑥 +1 becomes 𝑥7 + 𝑥4+𝑥3 O Shifting right 3 bits: 10011 becomes 10 : O 𝑥4 + 𝑥 +1 becomes 𝑥
  • 40. CYCLIC CODES Cyclic Code Encoder Using Polynomials :
  • 41. CYCLIC CODES Cyclic Code Encoder Using Polynomials : O The divisor in a cyclic code is normally called the generator polynomial or simply the generator.
  • 42. CYCLIC CODES O Cyclic Code Analysis : O 𝑓 𝑥 is a polynomial with binary coefficients. O Dataword: 𝑑 𝑥 O Codeword: 𝑐 𝑥 O Generator: 𝑔 𝑥 O Syndrome: 𝑠 𝑥 O Error: 𝑒 𝑥
  • 43. CYCLIC CODES O Cyclic Code Analysis : O In a cyclic code, O 1. If 𝑠 𝑥 ¦ 0, one or more bits is corrupted. O 2. If 𝑠 𝑥 = 0, either O a. No bit is corrupted, or O b. Some bits are corrupted, but the decoder failed to detect them.
  • 44. CYCLIC CODES O Cyclic Code Analysis : O 𝑹𝒆𝒄𝒆𝒊𝒗𝒆𝒅 𝒄𝒐𝒅𝒆𝒘𝒐𝒓𝒅 𝒈(𝒙) = 𝒄(𝒙) 𝒈(𝒙) + 𝒆(𝒙) 𝒈(𝒙) O The first term at the right-hand side of the equality has a remainder of zero (according to the definition of codeword). So the syndrome is actually the remainder of the second term on the right-hand side. If this term does not have a remainder (syndrome = 0), either e(x) is 0 or e(x) is divisible by g(x). We do not have to worry about the first case (there is no error); the second case is very important. Those errors that are divisible by g(x) are not caught. O In a cyclic code, those 𝒆(𝒙) errors that are divisible by 𝒈(𝒙) are not caught.
  • 45. CYCLIC CODES O Single-Bit Error : O It is 𝒆(𝒙) = 𝑥 𝑖, where 𝑖 is the position of the bit. If a single-bit error is caught, then 𝑥 𝑖 is not divisible by g(x). (Note that when we say not divisible, we mean that there is a remainder.) If 𝒈(𝒙) has at least two terms (which is normally the case) and the coefficient of 𝑥0 is not zero (the rightmost bit is 1), then 𝒆(𝒙) cannot be divided by 𝒈(𝒙). If the generator has more than one term and the coefficient of 𝒙 𝟎 is 1, all single-bit errors can be caught .
  • 46. CYCLIC CODES O Single-Bit Error : O EX:-Which of the following 𝒈(𝒙) values guarantees that a single- bit error is caught? For each case, what is the error that cannot be caught? a) a. 𝑥 + 1 b) b. 𝑥3 c) c. 1 O Solution a) No 𝑥 𝑖 can be divisible by 𝑥 + 1 . In other words, 𝑥 𝑖 /( 𝑥 + 1) always has a remainder. So the syndrome is nonzero. Any single-bit error can be caught. b) If i is equal to or greater than 3, 𝑥 𝑖 is divisible by 𝒈(𝒙).The remainder of 𝑥 𝑖 / 𝑥3 is zero, and the receiver is fooled into believing that there is no error, although there might be one. Note that in this case, the corrupted bit must be in position 4 or above. All single-bit errors in positions 1 to 3 are caught. c) All values of i make 𝑥 𝑖 divisible by 𝒈(𝒙 ). No single-bit error can be caught. In addition, this 𝒈(𝒙) is useless because it means the codeword is just the dataword augmented with n − k zeros.
  • 47. CYCLIC CODES O Two Isolated Single-Bit Errors
  • 48. CYCLIC CODES O Two Isolated Single-Bit Errors
  • 50. CYCLIC CODES O Standard Polynomials
  • 51. CHECKSUM O Checksum is an error-detecting technique that can be applied to a message of any length. O In the Internet, the checksum technique is mostly used at the network and transport layer rather than the data-link layer. O At the source, the message is first divided into m- bit units. The generator then creates an extra m-bit unit called the checksum, which is sent with the message.
  • 52. CHECKSUM O At the destination, the checker creates a new checksum from the combination of the message and sent checksum. If the new checksum is all 0s, the message is accepted; otherwise, the message is discarded . O The checksum unit is not necessarily added at the end of the message; it can be inserted in the middle of the message.
  • 54. CHECKSUM O Concept : O EX:- Suppose the message is a list of five 4-bit numbers that we want to send to a destination . O In addition to sending these numbers, we send the sum of the numbers. O if the set of numbers is (7, 11, 12, 0, 6) . O (7, 11, 12, 0, 6, 36) they will be send, whereas 36 is the sum of the original numbers.
  • 55. CHECKSUM O Concept :- O The receiver adds the five numbers and compares the result with the sum. O If the two are the same, the receiver assumes no error, accepts the five numbers and discards the sum. O Otherwise , there is an error somewhere and the message is not accepted.
  • 56. CHECKSUM O One’s Complement Addition O In the previous example, the decimal number 36 in binary is (100100)2. To change it to a 4-bit number we add the extra leftmost bit to the right four bits as shown below. O We can send 6 as the sum (7, 11, 12, 0, 6, 6). The receiver can add the first five numbers in one’s complement arithmetic. If the result is 6, the numbers are accepted; otherwise, they are rejected.
  • 57. CHECKSUM O Checksum : O the complement of a number is found by completing all bits (changing all 1s to 0s and all 0s to 1s). O The same as Subtracting the number from 2 𝑚 − 1. O When the receiver adds all five numbers (including the checksum), it gets a negative zero. O The positive zero has all 𝑚 bits set to 0; the negative zero has all bits set to 1 (it is 2 𝑚 − 1). O The receiver can complement the result again to get a positive zero.
  • 58. CHECKSUM O Checksum : O EX:- Let us use the idea of the checksum O The sender adds all five numbers in one’s complement to get the sum = 6. O Then complements the result to get the checksum = 9, which is 15 − 6. O Note that 6 = (0110)2 and 9 = (1001)2; they are complements of each other . O Then sends the five data numbers and the checksum (7, 11, 12, 0, 6, 9).
  • 59. CHECKSUM O Checksum : O EX:- Cont.…. O If there is no corruption in transmission, O The receiver receives (7, 11, 12, 0, 6, 9) and adds them in one’s complement to get 15. O The receiver complements 15 to get 0. O This shows that data have not been corrupted.
  • 60. CHECKSUM O Checksum :- O EX:- Cont.….
  • 61. CHECKSUM O Internet Checksum : - O Traditionally, the Internet has used a 16- bit checksum. O Describe the Procedure to calculate the traditional checksum ?
  • 62. CHECKSUM Internet Checksum : - Sender Internet Checksum : - Receiver 1. The message is divided into 16-bit words. 2. The value of the checksum word is initially set to zero. 3. All words including the checksum are added using one’s complement addition. 4. The sum is complemented and becomes the checksum. 5. The checksum is sent with the data. 1. The message and the checksum are received. 2. The message is divided into 16-bit words. 3. All words are added using one’s complement addition. 4. The sum is complemented and becomes the new checksum. 5. If the value of the checksum is 0, the message is accepted; otherwise, it is rejected.
  • 63.
  • 64. CHECKSUM O Performance : O The traditional checksum uses a small number of bits (16) to detect errors in a message of any size (sometimes thousands of bits). However, it is not as strong as the CRC in error- checking capability. O the tendency in the Internet, particularly in designing new protocols, is to replace the checksum with a CRC. O EX:- If the value of one word is incremented and the value of another word is decremented by the same amount, the two errors cannot be detected because the sum and checksum remain the same. O EX:-If the value of one word is incremented and the value of another word is decremented by the same amount, the two errors cannot be detected because the sum and checksum remain the same.
  • 65. CHECKSUM O Fletcher Checksum: - O It was devised to weight each data item according to its position . O It has proposed two algorithms: 8-bit and 16- bit. O The first, 8-bit Fletcher, calculates on 8-bit data items and creates a 16-bit checksum. O The second, 16-bit Fletcher, calculates on 16- bit data items and creates a 32-bit checksum.
  • 66. CHECKSUM O The 8-bit Fletcher:- O It is calculated over data octets (bytes) and creates a 16-bit checksum. O The calculation is done modulo 256 (28), O The intermediate results O are divided by 256 and the remainder is kept. O The algorithm uses two accumulators, L and R.  The first simply adds data items together  The second adds a weight to the calculation.
  • 67. FORWARD ERROR CORRECTION O We need to correct the error or reproduce the packet immediately. Several schemes have been designed and used in this case that are collectively referred to as forward error correction (FEC) techniques.
  • 68. FORWARD ERROR CORRECTION O Using Hamming Distance :- O to detect s errors, the minimum Hamming distance should be dmin = s + 1. O For error detection, to detect t errors, we need to have dmin = 2t + 1. O EX:- To correct 10 bits in a packet, we need to O make the minimum hamming distance 21 bits,
  • 69. FORWARD ERROR CORRECTION O Using Hamming Distance :- O EX:- consider BCH code : O if data is 99 bits, we need to send 255 bits (extra 156 bits) to correct just 23 possible bit errors O Most of the time we cannot afford such a redundancy.
  • 70. FORWARD ERROR CORRECTION O Using XOR: - O Applying the exclusive OR operation on N data items (P1 to PN), it can recreate any of the data items by exclusive-ORing all of the items, replacing the one to be created by the result of the previous operation (R).  Dividing a packet into N chunks .  create the exclusive OR of all the chunks and send N + 1 chunks.  If any chunk is lost or corrupted, it can be created at the receiver site. ? The question is what should the value of N be ?  If N = 4, it means that we need to send 25 percent extra data and be able to correct the data if only one out of four chunks is lost.
  • 71. FORWARD ERROR CORRECTION O Chunk Interleaving:- O to achieve FEC in multimedia is to allow some small chunks to be missing at the receiver. O we can afford to let one chunk be missing in each packet. O EX:- Dividing each packet into 5 chunks (normally the number is much larger). We can then create data chunk by chunk (horizontally), but combine the chunks into packets vertically.
  • 72. FORWARD ERROR CORRECTION O Chunk Interleaving:- O EX:- Cont. …. O each packet sent carries a chunk from several original packets. If the packet is lost, we miss only one chunk in each packet, which is normally acceptable in multimedia communication.
  • 73. FORWARD ERROR CORRECTION O Chunk Interleaving:- O EX:- Cont. ….
  • 74. FORWARD ERROR CORRECTION O Combining Hamming Distance and Interleaving :- O Hamming distance and interleaving can be combined. We can first create n-bit packets that can correct t-bit errors. Then we interleave m rows and send the bits column by column. In this way, we can automatically correct burst errors up to m × t-bit errors.
  • 75. FORWARD ERROR CORRECTION O Compounding High- and Low-Resolution Packets : - O Creating a duplicate of each packet with a low- resolution redundancy and combine the redundant version with the next packet. O EX:- create four low-resolution packets out of five high-resolution packets and send them .  If a packet is lost, we can use the low- resolution version from the next packet.  the low-resolution section in the first packet is empty.
  • 76. FORWARD ERROR CORRECTION O Compounding High- and Low- Resolution Packets : - O EX:- Cont. ….  if the last packet is lost, it cannot be recovered . O The audio and video reproduction does not have the same quality, but the lack of quality is not recognized most of the time.
  • 77. FORWARD ERROR CORRECTION O Compounding High- and Low-Resolution Packets : - O EX:- Cont. ….