Why TCP waits for trip duplicate ACKs before performing a fast retransmit Why does TCP chose not to perform a fast retransmit after the first duplicate ACK is received?

Why TCP waits for trip duplicate ACKs before performing a fast retransmit Why does TCP chose not to perform a fast retransmit after the first duplicate ACK is received?

If we perform retransmission after the first duplicate ACK, it would lead the sender to introduce too many redundant packets in the network. Hence, the TCP designers chose not to perform a fast retransmit after the first duplicate ACK for a segment is received.

What could be the cause of duplicate ACK and why does it perform congestion avoidance rather than slow start as a part of fast recovery?

The reason for not performing slow-start after receiving 3 dup ACKs is that duplicate ACKs tell the sending side more than a packet has been lost. Moreover, the sender can only decrease cwnd to one-half of the current cwnd and increase cwnd by 1 each time it receives a duplicate ACK.

When does TCP retransmission on 3 duplicate acknowledgements occur?

Consider receiver does not receives 3 duplicate acknowledgements for the lost TCP segment. In such a case, retransmission occurs only after time out timer goes off. Retransmission on receiving 3 duplicate acknowledgements is a way to improve the performance over retransmission on time out.

What does duplicate ACK mean in TCP analyzer?

Duplicate Ack: While analyzing a TCP capture an analyzer may show duplicate acknowledgment where two ACK will have the same sequence numbers. Following is an example sequence; The sender sends 6 segments. Segment number 3 is lost. When the receiver receives packet 4. it sends ACK with sequence number 3 (Expecting next packet).

Why do I only get one duplicate ACK?

This ACK should be the acknowledgment of the retransmission from step 1, one round-trip time after the retransmission. Additionally, this ACK should acknowledge all the intermediate segments sent between the lost packet and the receipt of the first duplicate ACK.

When to send duplicate ACK to the receiver?

When the receiver receives packet 6. it sends ACK with sequence number 3 (Expecting next packet). After seeing duplicate ACK, the sender knows that 3 is lost and sends packet 3 again immediately. The receiver receives ACK with sequence number 7.