Fast Retransmit Algorithm

Fast Retransmit Algorithm
If sender sends a segment: 1-5 and receiver sends ACK for 6. Senders sends 6-10 and 11-15. But the data (6-10) lost. After a certain time receiver will sends ACK for 6-10 and by this time 11-15 receive at receiver end. Receiver will send ACK for 6-10 again. This is third time ACK for 6-10. So this is waste of time. We don’t want this situation. That’s why if sender gets three ACK for same segments it use Fast Retransmit Algorithm.


Fast Retransmit:
If sender gets three duplicates ACK for the same segment, then it uses fast retransmit algorithm.

Fast Retransmit Algorithm:
Event: ACK received, with ACK field value of y
                 if (y > SendBase)
        {
                       SendBase = y
                       if (there are currently unacknowledged segments)
                             start timer
                     }
                 else
{
                         increment count of dup ACKs received for y
                         if (count of dup ACKs received for y = =3)
    {
                              resend segment with sequence number y
                             }
                         break;
}

TCP segment sent algorithm:

When data will receive from upper layer then
create TCP segment with sequence number PktNum
                 if (timer currently not running)
                       Start timer
                 Send segment
 SegmentNum = SegmentNum + length(data)

That’s why it initialize
SegmentNum=1
WindowBase-1

If timer is timeout then
                 retransmit not-yet-acknowledged segment with
                         smallest sequence number
                 start timer

if ACK received, with ACK field value of y then
                 if (y > WindowBase) {
                       WindowBase = y
                      if (there are currently not-yet-acknowledged segments)
                               start timer
                     


click image to go:
http://nadimall.blogspot.com/2013/10/turorial-list.html

http://www.facebook.com/nadimallblog?ref=aymt_homepage_panel

to share this page with your friends, select below

No comments:

Post a Comment