13.07.2015 Views

TCP fast retransmit and recovery overview PDF - EventHelix.com

TCP fast retransmit and recovery overview PDF - EventHelix.com

TCP fast retransmit and recovery overview PDF - EventHelix.com

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Module Interfaces (<strong>TCP</strong> Fast Retransmit <strong>and</strong> Recovery)Client Node Internet Server Node EventStudio System Designer 6<strong>TCP</strong> Segment<strong>TCP</strong> segment (start sequence number = 101024) is transmittedseq_num = 101024<strong>TCP</strong> Segmentseq_num = 101536<strong>TCP</strong> Segmentseq_num = 102048<strong>TCP</strong> Segmentseq_num = 102560<strong>TCP</strong> Segmentseq_num = 103072<strong>TCP</strong> Segmentseq_num = 103584<strong>TCP</strong> segment (start sequence number = 101536) is transmitted<strong>TCP</strong> segment (start sequence number = 102048) is transmitted<strong>TCP</strong> segment (start sequence number = 102560) is transmitted<strong>TCP</strong> segment (start sequence number = 103072) is transmitted<strong>TCP</strong> segment (start sequence number = 103584) is transmitted<strong>TCP</strong> Segmentseq_num = 100000<strong>TCP</strong> segment (start sequence number = 100000) is delivered to thereceiver<strong>TCP</strong> Segmentseq_num = 100512<strong>TCP</strong> segment (start sequence number = 100512) is lost due tocongestion in the network.<strong>TCP</strong> Segmentseq_num = 101024ACKack_num = 100512<strong>TCP</strong> Segmentseq_num = 101536ACKack_num = 100512<strong>TCP</strong> Segment with start sequence number 101024 is received. <strong>TCP</strong>realizes that a segment has been missed. <strong>TCP</strong> buffers the out ofsequence segment as <strong>TCP</strong> cannot deliver out of sequence data to theapplication.<strong>TCP</strong> sends an acknowledgement to the Sender with the next expectedsequence number set to 100512.<strong>TCP</strong> receives the next segment. This <strong>and</strong> the following out of sequencesegments will be buffered by <strong>TCP</strong>.<strong>TCP</strong> sends another acknowledgement with the next expected sequencenumber still set to 100512. This is a duplicate acknowledgement<strong>TCP</strong> Segmentseq_num = 102048ACKack_num = 100512<strong>TCP</strong> keeps acknowledging the received segments with the nextexpected sequence number as 100512<strong>TCP</strong> Segmentseq_num = 102560ACKack_num = 100512<strong>TCP</strong> Segmentseq_num = 103072ACKack_num = 100512<strong>TCP</strong> Segmentseq_num = 103584

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!