Ningning HuCarnegie Mellon University1 Improving TCP Startup Performance using Active Measurements Ningning Hu, Peter Steenkiste Carnegie Mellon University.

Slides:



Advertisements
Similar presentations
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Advertisements

Helping TCP Work at Gbps Cheng Jin the FAST project at Caltech
Ningning HuCarnegie Mellon University1 Locating Internet Bottlenecks Ningning Hu (CMU) Li Erran Li (Bell Lab) Zhuoqing Morley Mao (U. Mich) Peter Steenkiste.
Ningning HuCarnegie Mellon University1 Towards Tunable Measurement Techniques for Available Bandwidth Ningning Hu, Peter Steenkiste Carnegie Mellon University.
Ningning HuCarnegie Mellon University1 Optimizing Network Performance In Replicated Hosting Peter Steenkiste (CMU) with Ningning Hu (CMU), Oliver Spatscheck.
Different TCP Flavors CSCI 780, Fall TCP Congestion Control Slow-start Congestion Avoidance Congestion Recovery Tahoe, Reno, New-Reno SACK.
3/2/2001Hanoch Levy, CS, TAU1 TCP Behavior and Performance Workshop on QoS Hanoch Levy April 2004.
1 TCP Congestion Control. 2 TCP Segment Structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement.
TCP Congestion Control Dina Katabi & Sam Madden nms.csail.mit.edu/~dina 6.033, Spring 2014.
Congestion Control: TCP & DC-TCP Swarun Kumar With Slides From: Prof. Katabi, Alizadeh et al.
1 End to End Bandwidth Estimation in TCP to improve Wireless Link Utilization S. Mascolo, A.Grieco, G.Pau, M.Gerla, C.Casetti Presented by Abhijit Pandey.
Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Fourth Edition,Peterson.
Introduction to Congestion Control
15-744: Computer Networking L-10 Congestion Control.
TCP on High-Speed Networks Sangtae Ha and Injong Rhee North Carolina State University.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
Computer Networks : TCP Congestion Control1 TCP Congestion Control.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
Networks : TCP Congestion Control1 TCP Congestion Control.
Networks : TCP Congestion Control1 TCP Congestion Control Presented by Bob Kinicki.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
Advanced Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Fourth.
TCP Congestion Control
1 A State Feedback Control Approach to Stabilizing Queues for ECN- Enabled TCP Connections Yuan Gao and Jennifer Hou IEEE INFOCOM 2003, San Francisco,
Transport Layer 4 2: Transport Layer 4.
Understanding the Performance of TCP Pacing Amit Aggarwal, Stefan Savage, Thomas Anderson Department of Computer Science and Engineering University of.
UDT: UDP based Data Transfer Yunhong Gu & Robert Grossman Laboratory for Advanced Computing University of Illinois at Chicago.
TCP CS 168 Discussion Week 6 Many thanks to past EE 122 GSIs.
CSE 461 University of Washington1 Topic How TCP implements AIMD, part 1 – “Slow start” is a component of the AI portion of AIMD Slow-start.
27th, Nov 2001 GLOBECOM /16 Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail-Drop / RED Routers Go Hasegawa Osaka University, Japan.
EE 122: Congestion Control and Avoidance Kevin Lai October 23, 2002.
TCP with Variance Control for Multihop IEEE Wireless Networks Jiwei Chen, Mario Gerla, Yeng-zhong Lee.
TCP Westwood: Efficient Transport for High-speed wired/wireless Networks 2009.
Lecture 9 – More TCP & Congestion Control
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Computer Networking Lecture 18 – More TCP & Congestion Control.
1 Sonia FahmyPurdue University TCP Congestion Control Sonia Fahmy Department of Computer Sciences Purdue University
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
TCP Congestion Control Computer Networks TCP Congestion Control 1.
1 Transport Control Protocol for Wireless Connections ElAarag and Bassiouni Vehicle Technology Conference 1999.
 Last Class  This Class  Chapter 6.3. ~ 6.4.  TCP congestion control.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
Advance Computer Networks Lecture#09 & 10 Instructor: Engr. Muhammad Mateen Yaqoob.
TCP Westwood: Efficient Transport for High-speed wired/wireless Networks 2008.
CS 6401 Congestion Control in TCP Outline Overview of RENO TCP Reacting to Congestion SS/AIMD example.
Congestion Control CS 168 Discussion Week 7. RECAP: How does TCP set rate? How much data can be outstanding? – min{RWND, CWND} RWND: do not overload the.
 Last Class  Resource Allocation  This Class  Chapter 6.3. ~ 6.4.  TCP congestion control.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
1 Flow & Congestion Control Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof. Dina Katabi.
TCP EE122 Discussion 10/18/13.
9.6 TCP Congestion Control
Chapter 3 outline 3.1 transport-layer services
COMP 431 Internet Services & Protocols
Congestion Control.
TCP Vegas: New Techniques for Congestion Detection and Avoidance
Transport Protocols over Circuits/VCs
TCP Westwood(+) Protocol Implementation in ns-3
Lecture 19 – TCP Performance
Improving Slow Start InKwan Yu.
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
Congestion Control in TCP
If both sources send full windows, we may get congestion collapse
TCP Congestion Control
TCP Overview.
EE 122: Congestion Control The Sequel
Congestion Control in TCP
Computer Science Division
Transport Layer: Congestion Control
Chapter 3 outline 3.1 Transport-layer services
Presentation transcript:

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

Ningning HuCarnegie Mellon University2 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 ]

Ningning HuCarnegie Mellon University3 Outline Available bandwidth measurement Algorithm — Paced Start (PaSt) Evaluation results

Ningning HuCarnegie Mellon University4 Available Bandwidth Measurement PTR (Packet Transmission Rate) –A type of packet train probing technique –Focus on the probing packet gap ? Observations ! probing pkt background pkt sending gap arriving gap

Ningning HuCarnegie Mellon University5 Algorithm: PTR Sample the different sending rate Monitor the difference between the sending rate and the arriving rate Measure the available bandwidth at the turning point available bandwidth 0 arriving gap sending gap turning point

Ningning HuCarnegie Mellon University6 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

Ningning HuCarnegie Mellon University7 SACKPaSt Slow Start vs. Paced Start use the ACKing rate to approximate the data packet arriving rate

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

Ningning HuCarnegie Mellon University9 Evaluation NS2 SimulationReal system Experiment Flow level analysisInternet experiment (user level TCP) PaSt & SackPaSt & NewReno & Vegas Network level analysisImprovement on Apache (Kernel implementation) DumbbellParking-lotFlow length

Ningning HuCarnegie Mellon University10 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 RR 20Mbps 20ms (queue size = 100 pkts) 102 senders 102 receivers 102 senders 102 receivers 50Mbps, 0.5ms

Ningning HuCarnegie Mellon University11 Throughput PaSt > Sack (5% - 10% improvement) PaSt co-exists well with Sack –PaSt (mixed) = PaSt (only) –Sack (mixed) > Sack (only)

Ningning HuCarnegie Mellon University12 Packet Loss PaSt << Sack Slow Start is the main reason for the large number of packet loss in Sack # of flows w. loss avg. loss rate90% loss rate

Ningning HuCarnegie Mellon University13 Evaluation NS2 SimulationReal system Experiment Flow level analysisInternet experiment (user level TCP) PaSt & SackPaSt & NewReno & Vegas Network level analysisImprovement on Apache (Kernel implementation) DumbbellParking-lotFlow length

Ningning HuCarnegie Mellon University14 Testbed on Emulab Apache server Surge client Surge client Apache server Sack & PaSt Sack RR 20Mbps 20ms (queue size = 66 pkts) Emulab Sack kernel: Linux PaSt kernel: –Implement PaSt algorithm in Linux Mbps, 0.5ms

Ningning HuCarnegie Mellon University15 Performance of Apache Analyze 2000 HTTP flows Throughput: PaSt > Sack Loss: PaSt (1168 pkt loss) << Sack (94186 pkt loss)

Ningning HuCarnegie Mellon University16 Related Work TCP NewReno TCP Vegas Congestion Manager More in the paper

Ningning HuCarnegie Mellon University17 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

Ningning HuCarnegie Mellon University18 Questions?