View Full Document

14 views

Unformatted text preview:

Defeating TCP Congestion Control in Three Easy Steps Stefan Savage Neal Cardwell David Wetherall and Tom Anderson Department of Computer Science and Engineering University of Washington Overview Simple Question Can a TCP client influence how fast a TCP server sends it data Simple Answer Oh yeah Big time ACK Division Sender Receiver Data 1 1461 RTT 87 ACK 4 73 9 K C A 461 1 K C A Data 1 461 29 21 Data 2 921 43 81 Data 4 381 58 41 Data 5 841 73 01 Send M ACKs for one pkt Exponential growth factor proportional to M Preserves end to end semantics DupACK Spoofing Sender Receiver Data 1 1461 Send extra duplicate ACKs RTT ACK 11 ACK ACK 1 ACK 1 ACK 1 Data 1 Data 1 1461 4 Data 2 61 2921 Data 4921 4381 3 Data 5 81 5841 841 73 01 Sender sends one pkt for each duplicate ACK Preserves end to end semantics Optimistic ACKing Sender Receiver Data 1 14 61 RTT 1 ACK 146 1 2 9 2 K C A Data 146 1 2921 Data 292 1 4381 Data 438 1 5 Data 584 841 1 7301 Send ACKs early Sender sends pkts in proportion to ACK rate Violates end to end semantics Implementation experience TCP Daytona Easy to implement 75 lines in Linux Works with all popular sender TCP stacks We have the world s fastest Web browser What to do Sender side TCP modifications can mitigate these problems Its possible to remove the incentive for receiver misbehavior using a variant on nonces Receiver can only hurt itself by lying Details can be found in TCP Congestion Control with a Misbehaving Receiver to appear ACM Computer Communications Review October 1999 RFC 2581 Controlling the congestion window During slow start TCP increments cwnd by at most SMSS bytes for each ACK received that acknowledges new data During congestion avoidance cwnd is incremented by 1 full sized segment per round trip time RTT RFC 2581 Fast Retransmit and Recovery Set cwnd to ssthresh plus 3 SMSS This artificially inflates the congestion window by the number of segments three that have left the network and which the receiver has buffered For each additional duplicate ACK received increment cwnd by SMSS This artificially inflates the congestion window in order to reflect the additional segment that has left the network


Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view Defeating TCP Congestion Control and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Defeating TCP Congestion Control and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?