Stack Processing
Algorithm for Go Back
N protocol
Team Members:
Vinti (vv2236)
Garvit Singh (gs2731)
Pramod Nayak (ppn2106)
Vidhatre Gathey (vvg2111)
Contents
Introduction: Go back N protocol
Algorithm
Software Modules
Terminating Conditions
Go Back N EFSM
Assumptions
Go Back N protocol
Allow multiple packets in transmission so that the line
isn’t idle in networks with long delays
Accept all packets in proper order
If packet ‘i’ lost, Transmitter sends ‘i+1’ and receiver
receives ‘i+1’ out of order and rejects it
After time out, Transmitter must go back and retransmit
the lost frame and subsequent frames
Stack Processing and
Probabilistic Search
Form probabilistic search tree, create a push down pop
up
Place state with lowest probability at the bottom of the
stack
At each new step, pop the top most sequence
If a low probability event leads to this state, increase
the probability by 1
Software Modules
Modular approach used to develop the software for
portability to any EFSM.
Software verified using ARQ protocol first.
EFSM states and transition saved in the header file.
For a new protocol, only the header file needs to be
updated.
Implementation done in C++, <stack> class used to
implement the stack.
Algorithm Flow Chart
Terminating Conditions
Check for incorrect service sequence, if there is one,
stop
Check the probability of the top most element poped
from the stack.
P = pow(0.0001, probability.top())
If P < 10-16, stop
GBN Transmitter
Si
Sw
Timeout
T
T
nx<Nx
a<bi
F
F
T
SF
F
a>bi+
w
GBN Receiver
Si
Re = 0
Sw
F
Output = 0
M=Re
T
Re= Re+1
Output = Ack(Re)
Probabilistic Search
Assumptions
If the receiver receives a message it is not expecting, it
does nothing
Sender goes into state of failure if it receives Ack of a
packet less than the base address.
The number of retransmissions by sender after timeout
is limited , once the limit is hit, it goes into a state of
failure
A simplified sequencing of the analysis has been
considered
Thank You !