Download presentation
Presentation is loading. Please wait.
1
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #11 TCP Eiffel (RFC 3522)
2
2 Internet Networking Motivation Allows a TCP sender to detect if it had entered loss recovery unnecessarily. Detects whether a fast retransmit or a timeout was spurious upon the first acceptable ACK that arrives during loss recovery. Robust against the loss of ACKs. Requires TCP Timestamps option be enabled for a connection (RFC 1323). Eliminates the retransmission ambiguity in TCP Based on the timestamp of the first acceptable ACK that arrives during loss recovery Decides whether loss recovery was entered unnecessarily. Performs a response algorithms to back out of loss recovery by restoring a TCP sender's congestion control state. Restoring the TCP sender's congestion control state. Avoiding unnecessary go-back-N retransmits.
3
3 Internet Networking Retransmission Ambiguity A TCP sender unable to distinguish whether the first acceptable ACK that arrives after a retransmit was sent in response to the original transmit or the retransmit. This problem occurs after a timeout-based retransmit and after a fast retransmit. The Eiffel detection algorithm uses the TCP Timestamps option to eliminate the retransmission ambiguity. Useful in environments where TCP's loss recovery and congestion control algorithms may often get falsely triggered. This can be caused by packet reordering, packet duplication, or a sudden delay increase in the data or the ACK path that results in a spurious timeout.
4
4 Internet Networking Falsely Trigger TCP Loss Recovery Spurious timeout May be caused by increased delay that suddenly occurs in the data and/or the ACK path. Then an acceptable ACK to arrive too late, i.e., only after a TCP sender's retransmission timer has expired. Unnecessarily forces a TCP sender into slow start and causes a go-back-N retransmissions. 1 2 Ack(2) Ack(3) 2 Time out
5
5 Internet Networking Falsely Trigger TCP Loss Recovery (cont.) Packet reordering IP does not guarantee in-order delivery of packets. May cause a single spurious retransmit (the fast retransmit), and the unnecessary halving of a TCP sender's congestion window as a result of the subsequent fast recovery phase. 1 2 Ack(1) 3 Ack(4) 4 Ack(1)
6
6 Internet Networking Falsely Trigger TCP Loss Recovery (cont.) Packet duplication May cause a single spurious retransmit (the fast retransmit), and the unnecessary halving of a TCP sender's congestion window as a result of the subsequent fast recovery phase.
7
7 Internet Networking The Idea Allows a TCP sender to detect a posteriori whether it has entered loss recovery unnecessarily. TCP sender should be able to make this decision upon the first acceptable ACK that arrives after the timeout-based retransmit or the fast retransmit has been sent. Requires extra information in ACKs by which the TCP sender can unambiguously distinguish whether that first acceptable ACK was sent in response to the original transmit or the retransmit. Such extra information is provided by the TCP Timestamps option.
8
8 Internet Networking TCP Timestamps Option (RFC 1323) The sender places a timestamp in each data segment. The receiver reflects these timestamps back in ACK segments. Can be used to measure the RTT. Can be used to correlate between data segments and their ACK’s.
9
9 Internet Networking The Detection Algorithm A TCP sender always stores the timestamp of the retransmit sent in the beginning of loss recovery. Retransmit as a result of timeout or dup acks. 1 2 Ack(1) 3 Ack(4) 4 Ack(1) Resend packet 1, record time stamp
10
10 Internet Networking The Detection Algorithm (Cont.) If the echo timestamp of the first acceptable ACK, that arrives after the retransmit was sent, is smaller then the stored timestamp of that retransmit that ACK must have been sent in response to an original transmit. ‘Acceptable ACK’ - an ACK that acknowledges previously unacknowledged data. Hence, the TCP sender must have entered loss recovery unnecessarily. 1 2 Ack(1) 3 Ack(4) 4 Ack(1) Smaller time-stamp here Resend packet 1, record time stamp
11
11 Internet Networking The Detection Algorithm Example 1 2 Ack(2) Ack(4) 2 Time out event 3 Ack(3) 3 Without Eiffel DetectionWith Eiffel Detection 4 1 2 Ack(2) Ack(4) 2 3 Ack(3) 5 6 Time out event Detect a spurious timeout 44
12
12 Internet Networking Conclusions The Eiffel algorithm eliminates the retransmission ambiguity. Allows to recognize whether a retransmit was triggered by congestion in the network. Detects unnecessary congestion control algorithm activation caused by: packet reordering, packet duplication, spurious timeout. Alleviates the consequences of a falsely triggered loss recovery.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.