1.flow Control

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 15

FLOW CONTROL

Introduction

The most important responsibilities of the

data link layer are flow control and error

control. Collectively, these functions are

known as data link control.


Introduction
What is Flow 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.
• The flow of the data should not overwhelm the receiver
that has
– Limited amount of memory, limited speed, etc..,

• The incoming data (frame) must be checked with EDC.


• Each receiver has a buffer in the data link layer to store
the frames temporally until the frames are checked for
correctness
• If the buffer is full, the frames would be dropped. Hence
receiver informs the sender to slow down the sending
rate.
• Two methods are adopted to control the flow.
– Stop-and-wait protocol
– Sliding Window protocol
Stop and Wait Protocol
• The sender waits for acknowledgement for every packet/
frame it sends.
• Only when the ack has been received, the next frame
will be sent
• The process is alternate b/w sending the frame and
waiting for ACK. Until sending EOT (End Of
Transmission)
Advantages – Simplicity
Disadvantages – Inefficiency – slow, the link carries only
one frame at any time – depends on the distance.
Stop and Wait
Sliding Window Protocol
• Sender sends several frames before receiving ACK
• Link can carry any number of frames at any time
• Receiver acks several frames by means of single ACK
• Window is considered to be existing in the sender and
receiver side, that determines the number of frames that
can be transmitted at a time.
• If the size of window = n, the frames are numbered as
modulo-n (0 to n-1)
• Hence if n=4, and if 8 frames are to be transmitted, the
frames are numbered as 0,1,2,3,0,1,2,3.
• The receiver sends ACK, including the number of the
next expected frame
• If the frames 0 and 1 are received, ACK 2 is sent by the
receiver. Hence sender confirms, 0 and 1 frame received
successfully.
• The window is maintained in both sender side and
receiver side
Sender Window
• Initially, the size of the window is n (0 to n-1)
• As the frames are transmitted out (0,1, etc..,) the left
boundary moves inward, shrinks the window size.
• After receiving the ACK, the window expands on the right
side corresponding to the number of frames acked.
Receiver Window
• Initially, the window contains n (0 to n-1) spaces.
• As the frames are received in (0,1, etc..,) the left
boundary moves inward, shrinks the window size.
• After sending the ACK, the window expands on the right
side corresponding to the number of frames acked.
Example
• Consider a window of size n=7.
• The frames are numbered as
0,1,2,3,4,5,6.
• Considering no errors in the transmission,
the communication is shown as
Sender
Receiver

You might also like