1 / 18

Improving TCP Startup Performance using Active Measurements

Improving TCP Startup Performance using Active Measurements. 11 th IEEE International Conference on Network Protocols. Ningning Hu , Peter Steenkiste Carnegie Mellon University. TCP Slow Start. Slow start exponentially increases the congestion window size

trevet
Download Presentation

Improving TCP Startup Performance using Active Measurements

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Improving TCP Startup Performance using Active Measurements 11th IEEE International Conference on Network Protocols Ningning Hu, Peter Steenkiste Carnegie Mellon University Carnegie Mellon University

  2. TCP Slow Start • Slow start exponentially increases the congestion window size • Determine a proper congestion window size • Bootstrap the self-clocking behavior • Problems • High instantaneous sending speed • Long startup time (ssthresh) • Large ssthresh  packet loss • Small ssthresh  large startup time • More serious on higher speed network available bandwidth • Idea: measure the available bandwidth! [ only consider the slow start at the beginning of a TCP flow ] Carnegie Mellon University

  3. Outline • Available bandwidth measurement • Algorithm — Paced Start (PaSt) • Evaluation results Carnegie Mellon University

  4. ! sending gap arriving gap probing pkt background pkt ? Available Bandwidth Measurement • PTR (Packet Transmission Rate) • A type of packet train probing technique • Focus on the probing packet gap • Observations Carnegie Mellon University

  5. available bandwidth Algorithm: PTR arriving gap • Sample the different sending rate • Monitor the difference between the sending rate and the arriving rate • Measure the available bandwidth at the turning point turning point 0 sending gap Carnegie Mellon University

  6. Slow Start  Paced Start (PaSt) • Double the congestion window size every RTT • Packet sending in startup • Self-clocking • Each ACK triggers 2 data packets • Switch to AIMD • cwnd = ssthresh | packet loss | timeout • 1  • Self-controlled • Sending speed & sending time • sending rate  arriving rate Carnegie Mellon University

  7. Slow Start vs. Paced Start SACK PaSt use the ACKing rate to approximate the data packet arriving rate Carnegie Mellon University

  8. cwnd = 2 src_rate = INF measure path capacity B set src_rate = B/2 pkt loss | timeout Y set cwnd & ssthresh estimation good enough N src_rate > ack_rate Y N increase src_rate decrease src_rate congestion avoidance (AIMD) Algorithm — Paced Start More details in the paper …… double cwnd send cwnd pkts with src_rate measure ack_rate Carnegie Mellon University

  9. Evaluation Carnegie Mellon University

  10. Network Level Analysis • Exponential flow arriving rate: 2 flows/sec (mean) • Exponential flow length: 200 packets (mean) • Three flow scenarios: Sack (only), PaSt (only), Mixed (PaSt & Sack) • Study 2000 flows in stable status 102 senders 102 receivers 50Mbps, 0.5ms 20Mbps R R 20ms (queue size = 100 pkts) 102 receivers 102 senders Carnegie Mellon University

  11. Throughput • PaSt > Sack (5% - 10% improvement) • PaSt co-exists well with Sack • PaSt (mixed) = PaSt (only) • Sack (mixed) > Sack (only) Carnegie Mellon University

  12. # of flows w. loss avg. loss rate 90% loss rate Packet Loss • PaSt << Sack • Slow Start is the main reason for the large number of packet loss in Sack Carnegie Mellon University

  13. Evaluation Carnegie Mellon University

  14. Testbed on Emulab • Sack kernel: Linux 2.4.18 • PaSt kernel: • Implement PaSt algorithm in Linux 2.4.18 Apache server Surge client 50Mbps, 0.5ms Sack & PaSt Sack 20Mbps R R Emulab 20ms (queue size = 66 pkts) Surge client Apache server Sack Sack Carnegie Mellon University

  15. Performance of Apache • Analyze 2000 HTTP flows • Throughput: PaSt > Sack • Loss: PaSt (1168 pkt loss) << Sack (94186 pkt loss) Carnegie Mellon University

  16. Related Work • TCP NewReno • TCP Vegas • Congestion Manager More in the paper Carnegie Mellon University

  17. Conclusion • The design of Paced Start algorithm • The performance of Paced Start • Less aggressive during startup • Less packet loss • Smaller startup time • Better network level performance Carnegie Mellon University

  18. Questions? Carnegie Mellon University

More Related