Stop and Wait Arq
Stop and Wait Arq
Stop and Wait Arq
STOP WAIT
AND
Team members
DNAA Krazzy4
• Nishita • Royston
• Ananya • Aayush
• Archana • Himanshu
• Dhanusha Awesum4sum
• Vinayak
• Lisha
• Anita
• Prabha
• Caroline
Noiseless
and
Noisy Channels
Noisy Channel – Error free channels
Noiseless Channel – Error creating channels
PROTOCOLS
PROTOCOLS
FOR NOISELESS
CHANNELS FOR NOISY
CHANNELS
SELECTIVE
REPEAT ARQ
STOP AND WAIT
Automatic Repeat reQuest
• Is an error-control method for data
transmission
Information Frame
Transmitter Receiver
Control Frame
Header CRC
Acknowledgement
Frame
Need for
Sequence number
Need for Sequence Numbers
(a) Frame 1 lost Time-out
Time
A
Frame Frame Frame Frame
0 1 1 2
ACK ACK
B
(b) ACK lost Time-out
Time
A Frame Frame Frame Frame
0 1 1 2
ACK ACK ACK
B
Sequence Numbers
(c) Premature Time-out
Time-out
Time
A
Frame Frame Frame Frame
0 0 1 2
ACK ACK
B
Sender-site algorithm for stop and wait
ARQ
Sn=0;
Cansend=true;
While(true)
{
Waitforevent()
If(event(requesttosend)AND cansend)
{
Getdata();
Makeframe(Sn);
Storeframe(Sn)
Sendframe(Sn);
Starttimer()
Cansend=false
}
Contd
Waitforevent();
if(event(arrivalnotification)
{
Receiveframe(ackno);
If(ackno==Sn)
{
Stoptimer();
Purge(Sn-1);
Cansend=true;
}
}
If(event(timeout))
{
Starttimer();
Resendframe(Sn-1);
}
}
Receiver-site algorithm for
Rn = 0;
Stop and Wait ARQ
While (true)
{
WaitForEvent ( );
If (Event (ArrivalNotification) )
{
ReceiveFrame ( );
If (corrupted (frame) );
sleep ( );
{
ExtractData ( );
DelieverData ( );
Rn = Rn + 1;
}
SendFrame (Rn);
}
}
1-Bit Sequence Numbering Suffices
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Slast Rnext
Timer
Rnext