Data Link Layer: Flow Control Protocols of Noisy Error Channel
Data Link Layer: Flow Control Protocols of Noisy Error Channel
So:
We have the problem of
resending the frame
twice (duplicate)
Solution based on using Sequence No
Solution based on Using
one-bit sequence number
on the header
Acknowledgments that
have sequence numbers
represent the form of
the flow control
Stop-and-Wait Automatic Repeat Request
Stop-and-Wait ARQ
Error correction
- Error correction in Stop-and-Wait ARQ is done
by keeping a copy of sent frame and
retransmitting the frame when the time of the
timer expires without ACK .
The system can send 20,000 bits during the time it takes for
the data to go from the sender to the receiver and then back
again. However, the system sends only 1000 bits.
So, the link utilization is only 1000/20,000 = 5 %.
Hence, for a link with a high bandwidth or long delay, the use
of Stop-and-Wait ARQ wastes the capacity of the link.
(Efficiency) Automatic Repeat Request
in a Stop-and-Wait ARQ system, the bandwidth of the
line is 1 Mbps, and 1 bit takes 20 ms to make a round trip
What is the utilization percentage of the link if we have a
protocol that can send up to 15 frames before stopping
and worrying about the acknowledgments?
Solution
The bandwidth-delay product is still 20,000 bits.
The system can send up to 15 frames or 15,000 bits before
acknowledgments
This means the utilization is 15,000/20,000 = 75 %.
Of course, if there are damaged frames, the utilization
percentage is much less because frames have to be resent.
pipelining : (mean new task start before the end of previous task)
Sliding Window Protocols
- In these protocols several frames can be sent before
receiving acknowledgments.
- Copy of transmitted frames are keep until the
acknowledgments arrive.
- They based on Sequence numbers, and sliding window
1- Sequence Numbers :
Sending Frames are numbered sequentially.
If the header of the frame allows m bits for the sequence
number, the sequence numbers range from 0 to 2m- 1.
For example, if m is 4, the only sequence numbers are 0
through 15 inclusive. So the sequence numbers are
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 0,1,2,3,……..
2- The Send Sliding Window
first outstanding frame next frames to send
0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13
Frames Frames sent, but Frames that can be Frames
already not acknowledged sent, but not received NOT
ACK (outstanding) from upper layer send
Copy of
transmitted frames
are keep until the
acknowledgments
arrive.
Go-Back-N-ARQ send Sliding Window operations
- Send window can slide one or more slots to the right
when an acknowledgment arrives from the other end.
- As Figure shown, frames 0, 1, and 2 are acknowledged,
so the window has slid to the right three slots. Note that
the value of is 3 because frame 3 is now the first
outstanding frame
Send window before sliding
0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13