0% found this document useful (0 votes)
7 views

Lecture 9

The document discusses error correction methods, focusing on Forward Error Correction (FEC) and Hamming codes, which allow for the detection and correction of errors in data transmission. It also covers flow and error control protocols such as Stop-and-Wait ARQ, Go-Back-N ARQ, and Selective Repeat ARQ, explaining their mechanisms and efficiencies. The importance of redundancy bits and Hamming distance in error detection is highlighted, along with the implications of window sizes in sliding window protocols.

Uploaded by

Irfan Bashir
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Lecture 9

The document discusses error correction methods, focusing on Forward Error Correction (FEC) and Hamming codes, which allow for the detection and correction of errors in data transmission. It also covers flow and error control protocols such as Stop-and-Wait ARQ, Go-Back-N ARQ, and Selective Repeat ARQ, explaining their mechanisms and efficiencies. The importance of redundancy bits and Hamming distance in error detection is highlighted, along with the implications of window sizes in sliding window protocols.

Uploaded by

Irfan Bashir
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 34

Error Correction

1. By retransmission
 flow and error control protocols
2. Forward Error Correction (FEC)
 require more redundancy bits
 should locate the invalid bit or bits
 n-bit code word contains m data bits + r
redundancy bits
n=m+r
Data and redundancy bits
Number of Number of Total
data bits redundancy bits bits
m r m+r
1 2 3
2 3 5

3 3 6

4 3 7

5 4 9

6 4 10

7 4 11
Hamming Code

 Hamming codes provide for FEC using a


“Block Parity”
 i.e, instead of one parity bit send a block of parity
bits
 Allows correction of single bit errors
 This is accomplished by using more than one
parity bit
 Each computed on different combination of
bits in the data
Hamming code (Contd.)
Positions of Redundancy Bits
Redundancy Bits Calculation
Example
Error Correction using
Hamming Code
Hamming Distance
 The Hamming distance between two words is
the number of differences between
corresponding bits.
Let us find the Hamming distance between two pairs of
words.
1. The Hamming distance d(000, 011) is 2 because

2. The Hamming distance d(10101, 11110) is 3 because


Flow & Error Control
 The most important responsibilities of the
data link layer are flow control and error
control.
control Collectively, these functions are
known as data link control.
 Flow control refers to a set of procedures used to
restrict the amount of data that the sender can
send before waiting for acknowledgment.
 Error control in the data link layer is based on
automatic repeat request, which is the
retransmission of data.

10
Protocols (Contd.)

11
Noisy Channels

 We discuss three protocols in this section


that use error control.
 Stop & Wait Automatic Repeat Request
 Go-Back-N Automatic Repeat Request
 Selective Repeat Automatic Repeat Request

12
Stop-and-Wait Automatic Repeat
Request
 Simplest flow and error control mechanism
 The sending device keeps a copy of the last frame
transmitted until it receives an acknowledgement
 identification of duplicate transmission (lost or delayed
ACK)
 a damaged or lost frame is treated in the same way
 timers introduced
 positive ACK sent only for frames received safe &
sound

13
A Simplex Stop-and-Wait
ARQ
1. Normal operation
2. The frame is lost
3. The ACK is lost
4. The ACK is delayed

14
Stop-and-Wait ARQ
-Normal operation-
 The sender will not send
the next piece of data until
it is sure that the current
one is correctly received
 sequence number
necessary to check for
duplicated packets
 No NACK – when packet
is corrupted – duplicate
ACKs instead

15
Stop-and-Wait ARQ
-Lost or damaged frame-

roundtrip delay
+
processing in the
receiver

16
Stop-and-Wait ARQ
-Lost ACK-

Importance of
numbering

17
Stop-and-Wait ARQ
-Delayed ACK-

Importance of
ACK numbering

18
Duplex Stop-and-Wait ARQ
 Piggybacking
 combine data with ACK (less overhead saves bandwidth)

19
Drawbacks of Stop-and-Wait
ARQ
 After each frame sent the host must wait for an ACK
 inefficient use of bandwidth

 To improve efficiency ACK should be sent after


multiple frames

 Alternatives: Sliding Window protocols


1. Go-back-N ARQ

2. Selective Repeat ARQ

20
Pipelining

 One task begins before the other one ends


 increases efficiency in transmission
 There is no pipelining in Stop-and-Wait ARQ

21
Sliding Window Protocols
 Sequence numbers
 sent frames are numbered sequentially
 number of frames stored in the header
 if the number of bits in the header is m than
sequence number goes from 0 to 2^m-1
sequence
number
 Sliding window frame
 to hold the unacknowledged
outstanding frames
 the receiver window size
always 1

acknowledged
frames

22
Question
 What is the consequence of the window size in the
receiver on the order of the received packets?

 Answer:

 Window size 1 means that the packets are


received in order
 Note: this is not the case for the larger receiver window
size

23
Go-back-N
-Control variables-
 S- holds the sequence number of the recently sent frame
 SF – holds sequence number of the first frame in the window
 SL – holds the sequence number of the last frame
 R – sequence number of the frame expected to be received

24
The name of Go-back-N:
why?
 Re-sending frame
 when the frame is damaged the sender goes back and
sends a set of frames starting from the last one ACKn’d
 the number of retransmitted frames is N

 Example:

 The window size is 4.


 A sender has sent frame 6 and the timer
expires for frame 3 (frame 3 not ACKn’d). The
sender goes back and re-sends the frames 3, 4, 5
and 6.

25
Go-back-N
-normal operation-
 How many frames
can be transmitted
without
acknowledgment?

 ACK1 – not
necessary if ACK2
is sent
 Cumulative ACK

expected sequence
number

26
Go-back-N
-damaged or lost frame-
damaged frames
are discarded!
Why are correctly
received packets
not buffered?
What is the
disadvantage of
this?

27
Go-back-N
-sender window size-

sequence
number

28
Go-back-N
 Inefficient
 all out of order received packets are discarded
 This is a problem in a noisy link
 many frames must be retransmitted -> bandwidth
consuming

 Solution
 re-send only the damaged frames

 Selective Repeat ARQ


 avoid unnecessary retransmissions

29
Note

Stop-and-Wait ARQ is a special case of


Go-Back-N ARQ in which the size of the
send window is 1.

30
Selective Repeat ARQ
 Processing at the receiver more complex
 The window size is reduced to one half of 2 m
 Both the transmitter and the receiver have the
same window size
 Receiver expects frames within the range of the
sequence numbers

31
Selective Repeat ARQ
-lost frame-

Note:
retransmission
triggered with NACK
and not with
expired timer

32
Selective Repeat ARQ
-sender window size-

33
34

You might also like