Applied Network Research Group Department of Computer Engineering, Kasetsart University
Data Link Control
Surasak Sanguanpong nguan@ku.ac.th http://www.cpe.ku.ac.th/~nguan
Last updated: 11 July 2000
2/14
Flow Control
z technique for controlling the data transmission so that receivers have sufficient buffer space to accept before processing
z common flow control schemes :
z
X-ON and X-OFF
z
Stop-and-Wait
z
Sliding Windows
Applied Network Research Group Department of Computer Engineering, Kasetsart University
X-On and X-OFF
transmit
sender receiver
dddddd dddddd
X-OFF X-ON
stop
transmit
z
receiver sends X-OFF (DC3) if its buffer is full
z
sender stops sending when receives X-OFF
z
receiver sends X-ON (DC1) when buffer space becomes available
z
senders starts sending when receives X-ON
4/14
Stop-and-Wait Flow Control
data i
ACK
data i+1
sends back an acknowledgement to the frame just received transmits
a frame
wait until it receives ACK before sending the next frame
sender receiver
Applied Network Research Group Department of Computer Engineering, Kasetsart University
Sliding-Window Flow Control
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
frames already transmitted
frames that may be transmitted
lower window pointer upper window pointer frame sequence number
Sender’s buffer
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
frames already received
frames that may be accepted
lower window pointer upper window pointer frame sequence number
receiver’s buffer
6/14
Sliding-Window example
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0,1,2
ACK3
3,4,5,6
ACK4
Applied Network Research Group Department of Computer Engineering, Kasetsart University
Error Detection
z Parity check
z
odd or even parity
z
undetected error, it two or any even number of bits are inverted
z CRC
z
uses dynamic bit pattern attached with data
z
can detect various errors with appropriated code
z
all single bit error
z
all double bit errors
z
any odd number of errors
8/14
CRC concepts
M F
T
k-bit n-bit
T=2
nM+F What should be F ?
T =2
nM+R let F equals R 2
nM
P
R Q+ P
=
T
P = 2
nM+R divides T by R P P
R Q+ P
= + R = Q T is divisible by P P
Q ,R quotient, remainder P is predetermine divisor
Given a k-bit block of bits (M), the transmitter generates an n-bit sequence (F), so that the resulting frame, consisting of k+n bits (T), is exactly divisible by some predetermine divisor (P).
The receiver then divides the
incoming frame (T) by that number (P), if there is no remainder, assume there was no error.
Given a k-bit block of bits (M), the transmitter generates an n-bit sequence (F), so that the resulting frame, consisting of k+n bits (T), is exactly divisible by some predetermine divisor (P).
The receiver then divides the
incoming frame (T) by that number (P),
if there is no remainder, assume
there was no error.
Applied Network Research Group Department of Computer Engineering, Kasetsart University
CRC in polynomials
M = 110011 then M(X) = X
5+ X
4+ X+1 P = 1101 then P(X) = X
3+X+1
Standard P(X)
CRC-16 = X
16+ X
15+ X
2+1 CRC-CCITT = X
16+ X
12+ X
5+1
CRC-32 = X
32+ X
26+X
23+ X
22+ X
16+ X
12+ X
11+ X
10+ X
8+ X
7+ X
5+ X
4+ + X
2+1
10/14
Error Control
z What is error control
z
detect and correct errors occurs in transmission
z
Type of errors
z
loss frame
z damaged frame
Applied Network Research Group Department of Computer Engineering, Kasetsart University
Error Control Techniques
z
Error control techniques
z
error detection
z
positive ACK
z
Retransmission after timeout
z
Negative ACK
z
Standard techniques
z
Stop-and-wait ARQ
z
Go-back-N ARQ
z
Selective Repeat ARQ
known as
Automatic Repeat Request (ARQ)
}
12/14
Stop-and-Wait ARQ
fra m e i
ACK i
fra m e I+
1
ACKI+1
fra m
e I+
2
fra m e I+
2
ACKI+2
fra m
e I+
3
ACKI+3
fra m
e I+
3
ACKI+3
sender
receiver
time out time out
frame lost
retransmit
ACK lostretransmit &
duplicate discard
Applied Network Research Group Department of Computer Engineering, Kasetsart University
Go-back-N ARQ
fr am e 1
sender
receiver
error
7 and 8 will be discarded fr am
e 2 fr am
e 3
AC K4
fr am
e 4 fr am
e 5
AC K6
fr am
e 6 fr am
e 7 fr am
e 8
NAC K6
AC K9
fr am
e 7 fr am
e 6
fr am e 8 6, 7 and 8 retransmitted
14/14
Selective-repeat ARQ
fr am e 1
sender
receiver
error
fr am
e 2 fr am
e 3
AC K4
fr am
e 4 fr am
e 5
AC K6
fr am
e 6 fr am
e 7 fr am
e 8
NAC K6
AC K9