Fast Restransmit (TCP)

alpharithms fallback 1

Fast Retransmit is part of TCP’s congestion control algorithm that is responsible for retransmission of data segments that have been deemed to be missing. Fast retransmit is triggered when 3 duplicate acknowledgments (ACKs) are received for the same data segment.

The receipt of 3 duplicate ACKs informs the sender that the receiver has not received the data segment directly proceeding the last ACKd segment. This reception of 3 Duplicate ACKs is the functional equivalent of a negative-acknowledgment and indicative of data loss or corruption.

Duplicate ACKs are also a form of indicating that data segments were received out-of-order from their intended sequence. In any of the above cases, the solution is to initiate retransmission of data.

The term fast retransmit was first standardized in the 1997 RFC2001 within a broader context of defining TCP’s Congestion Control algorithm. In this context, fast retransmit In a later 2009 RFC5681 the term was expanded as the following:

The TCP sender SHOULD use the “fast retransmit” algorithm to detect and repair loss, based on incoming duplicate ACKs. The fast retransmit algorithm uses the arrival of 3 duplicate ACKs … as an indication that a segment has been lost. After receiving 3 duplicate ACKs, TCP performs a retransmission of what appears to be the missing segment, without waiting for the retransmission timer to expire.

TL;DR – Fast Retransmit is enacted by retransmitting a data segment for which 3 ACKs have been received without waiting for the timer for that data segment to expire.

Zαck West
Full-Stack Software Engineer with 10+ years of experience. Expertise in developing distributed systems, implementing object-oriented models with a focus on semantic clarity, driving development with TDD, enhancing interfaces through thoughtful visual design, and developing deep learning agents.