Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs

Similar documents
Congestion Control for High Bandwidth-delay Product Networks

ADVANCED TOPICS FOR CONGESTION CONTROL

Congestion Control for High Bandwidth-Delay Product Networks

CS 268: Lecture 7 (Beyond TCP Congestion Control)

XCP: explicit Control Protocol

CS644 Advanced Networks

Internet Congestion Control for Future High Bandwidth-Delay Product Environments

One More Bit Is Enough

Congestion Control for High-Bandwidth-Delay-Product Networks: XCP vs. HighSpeed TCP and QuickStart

15-744: Computer Networking. Overview. Queuing Disciplines. TCP & Routers. L-6 TCP & Routers

CS268: Beyond TCP Congestion Control

CS 268: Computer Networking

Lecture 14: Congestion Control"

Congestion Control In the Network

Chapter II. Protocols for High Speed Networks. 2.1 Need for alternative Protocols

Congestion Control for High Bandwidth-Delay Product Networks

In-network Resource Allocation (Scribed by Ambuj Ojha)

CPSC 826 Internetworking. Congestion Control Approaches Outline. Router-Based Congestion Control Approaches. Router-Based Approaches Papers

Improving XCP to Achieve Max-Min Fair Bandwidth Allocation

TCP Congestion Control

P-XCP: A transport layer protocol for satellite IP networks

! Network bandwidth shared by all users! Given routing, how to allocate bandwidth. " efficiency " fairness " stability. !

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long

Random Early Detection (RED) gateways. Sally Floyd CS 268: Computer Networks

TCP on High-Speed Networks

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Oscillations and Buffer Overflows in Video Streaming under Non- Negligible Queuing Delay

Equation-Based Congestion Control for Unicast Applications. Outline. Introduction. But don t we need TCP? TFRC Goals

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

A Relative Bandwidth Allocation Method Enabling Fast Convergence in XCP

Lecture 14: Congestion Control"

UNIVERSITY OF OSLO Department of Informatics A Linux implementation and analysis of the explicit Control Protocol (XCP) 24th May 2005

The Present and Future of Congestion Control. Mark Handley

TCP Congestion Control : Computer Networking. Introduction to TCP. Key Things You Should Know Already. Congestion Control RED

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

Activity-Based Congestion Management for Fair Bandwidth Sharing in Trusted Packet Networks

Cloud e Datacenter Networking

Open Box Protocol (OBP)

TCP on High-Speed Networks

Investigating the Use of Synchronized Clocks in TCP Congestion Control

INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN

Hybrid Control and Switched Systems. Lecture #17 Hybrid Systems Modeling of Communication Networks

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers

Congestion Control. COSC 6590 Week 2 Presentation By Arjun Chopra, Kashif Ali and Mark Obsniuk

Studying Fairness of TCP Variants and UDP Traffic

CS 356: Computer Network Architectures Lecture 19: Congestion Avoidance Chap. 6.4 and related papers. Xiaowei Yang

Increase-Decrease Congestion Control for Real-time Streaming: Scalability

Congestion Control for High Bandwidth-Delay Product Networks

A Hybrid Systems Modeling Framework for Fast and Accurate Simulation of Data Communication Networks. Motivation

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2018

Decoupling Congestion Control and Bandwidth Allocation Policy With Application to High Bandwidth-Delay Product Networks.

Improving TCP Performance over Wireless Networks using Loss Predictors

Computer Networking

TCP Westwood: Efficient Transport for High-speed wired/wireless Networks

Reliable Transport II: TCP and Congestion Control

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Computer Networks. Course Reference Model. Topic. Congestion What s the hold up? Nature of Congestion. Nature of Congestion 1/5/2015.

Transport Layer (Congestion Control)

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2017

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Improving the Robustness of TCP to Non-Congestion Events

Congestion Control & Transport protocols

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2017

Implementing and Experimenting with XCP

Congestion. Can t sustain input rate > output rate Issues: - Avoid congestion - Control congestion - Prioritize who gets limited resources

Promoting the Use of End-to-End Congestion Control in the Internet

TCP Westwood and Easy Red to Improve Fairness in High-speed Networks. PfHsn 2002 Berlin, 22 April 2002

One More Bit Is Enough

Computer Networking. Queue Management and Quality of Service (QOS)

Enabling Large Data Transfers on Dynamic, Very High-Speed Network Infrastructures

A Relative Bandwidth Allocation Method Enabling Fast Convergence in XCP

15-744: Computer Networking TCP

CSE 123A Computer Networks

The War Between Mice and Elephants

Promoting the Use of End-to-End Congestion Control in the Internet

Lecture 14: Congestion Control

Congestion Control in Communication Networks

Congestion Control. Tom Anderson

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data?

One More Bit Is Enough

Cross-layer Flow Control to Improve Bandwidth Utilization and Fairness for Short Burst Flows

Computer Network Fundamentals Spring Week 10 Congestion Control Andreas Terzis

Understanding TCP Parallelization. Qiang Fu. TCP Performance Issues TCP Enhancements TCP Parallelization (research areas of interest)

CS Networks and Distributed Systems. Lecture 10: Congestion Control

Appendix B. Standards-Track TCP Evaluation

Congestion Avoidance

Communication Networks

RED behavior with different packet sizes

Data Center TCP (DCTCP)

CS321: Computer Networks Congestion Control in TCP

STUDIES ON THE PERFORMANCE IMPROVEMENT OF WINDOW ADJUSTMENT PROCEDURE IN HIGH BANDWIDTH DELAY PRODUCT NETWORK

6.033 Computer System Engineering

On the Performance Evaluation of High-Speed Transport Protocols

Performance Consequences of Partial RED Deployment

On Network Dimensioning Approach for the Internet

On the Design of Load Factor based Congestion Control Protocols for Next-Generation Networks

Internet Protocols Fall Lecture 16 TCP Flavors, RED, ECN Andreas Terzis

Transcription:

Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs

Outline Introduction What s wrong with TCP? Idea of Efficiency vs. Fairness XCP, what is it? Is it better then TCP? Security/Deployment issues

Trends in the Future Internet High Bandwidth Gigabit Links High Latency Satellite Wireless As we will find out these spell bad news for TCP!

What s Wrong With TCP? Becomes Oscillatory and prone to instability as delay-bandwidth product increases. Link capacity does not improve the transfer delay of short flows (majority) TCP has undesirable bias against long RTT flows (satellite links)

Efficiency and Fairness Efficiency of a link involves only the aggregate traffic s behavior Fairness is the relative throughput of flows sharing a link. Can have efficiency but not fairness Coupled in TCP since the same control low is used for both, uses AIMD (additive increase multiplicative decrease).

What If We Could Do It Over? If you could build a new congestion control architecture, what would it look like? Points of Observation Packet loss is a poor signal of congestion Congestion is not a binary variable! We want precise congestion feedback Aggressiveness of sources should adjust to delay As delay increase, rate change should be slower

Points of Observations Cont. Needs to be independent of number of flows Number of flows at AQM is not constant therefore it cannot be fast enough to adapt to changes De-coupling of efficiency and fairness Done with both an efficiency controller and a fairness controller Simplifies design and provides framework for differential bandwidth allocations Use MIMD for the efficiency (quickly get BW) Use AIMD for fairness

Finally, XCP explicit Control Protocol Like TCP, window-based congestion control protocol intended for best effort (flexible as we will see) Based on active congestion control and feedback as we have previously discussed

XCP Header H_ewnd (set to sender s current cwnd) H_rtt (set to sender s rtt estimate) H_feedback (initialized to demands) H_cwnd sender s current cong. Window H_rtt sender s current RTT estimate H_feedback Modified by routers along path to directly control the congestion windows

XCP Sender Initialization steps: 1. In first packet of flow, H_rtt is set to zero 2. H_feedback is set to the desired window increase E.g. For desired rate r: H_feedback = ( r * rtt cwnd) / # packets in window 3. When Acks arrive: Cwnd = max(cwnd + H_feedback, s)

XCP Receiver Same as TCP Except when ack'ing a packet, copies the congestion header into the ACK.

The XCP Router: The Good Stuff Packet flow Efficiency Controller Fairness Controller New H_feedback Key is the use of both an efficiency controller (EC) and a fairness controller (IC) Both compute estimates of the RTT of the flows on each link Controller makes a single control decision every control interval Current RTT average = d

The Efficiency Controller Φ = α * d * S - β * Q Persistent queue size.226 based on stability analysis.4 based on stability analysis Spare BW (input traffic link cap.) From the previous page (RTT) Purpose to maximize link util. while minimizing drop rate and persistent queues Important Does not care about fairness Φ is then used as feedback to add or subtract bytes that the aggregate traffic transmits. Q = minimum queue seen by the arriving packet during last propagation delay (avg. RTT local queuing delay)

The Fairness Controller Uses AIMD just like TCP to promote fairness When Φ > 0, allocate so the increase in throughput of all flows is the same When Φ < 0, allocate so the decrease is proportional to its current throughput When Φ = 0, use bandwidth shuffling, where every average RTT, at least 10% of the traffic is redistributed according to AIMD

Computing Per Packet Feedback H_feedback i = p i n i, for each packet i The per-packet positive feedback (when Φ > 0) is proportional to the square of the flow s RTT and inversely proportional to it s congestion window divided by it s packet size. The per-packet negative feedback (when Φ < 0) should be proportional to the packet size X the flow s RTT

Does It Work? Ns-2 simulations of XCP vs. TCP Reno Random Early Discard Random Early Marking Adaptive Virtual Queue Core Stateless Fair Queuing Used both Drop-Tail and RED dropping policies no difference! Why? No Drops!

Simulation Network S 1 Bottleneck S 2 R1, R2,, Rn S n Let α = 0.4 and β = 0.226 for all simulations

Utilization Vs. Bandwidth 50 long-lived TCP flows 80ms Prop. Delay 50 flows in reverse direction to create 2- way traffic XCP is near optimal!

Utilization Vs. Delay 50 long-lived TCP flows 150 Mb/s Capacity 50 flows in reverse direction to create 2- way traffic XCP wins again by adjusting it s aggressiveness to round trip delay

Is XCP Fair? 30 long-lived FTP flows Single 30 Mb/s bottleneck Flows are increasing in RTT from 40-330 ms To the left is Throughput vs. flow. XCP is Very Fair!

Sudden Traffic Demands? No Problem!

Security Like TCP, need an additional mechanism that polices flows Unlike TCP, the agent can leverage the explicit feedback to test a source Can test a flow by sending a test feedback requiring it to decrease it s window If the flow does not react in a single RTT then it is unresponsive!

Deployment of XCP Can use XCP-based CSFQ by mapping TCP or UDP into XCP flow across a network cloud Or can make a TCP-friendly mechanism that will allow weighing of the protocols to compete for fairness

Conclusions Very important notion of decoupling congestion control from fairness control XCP can handle the high-bandwidth and delay of the the future internet and handle it fairly without the use of per-flow states Because of it s almost instantaneous feedback, it is a protocol that provides virtually zero drops

Questions?? - XCP was presented at ACM SIGCOMM August of 2002 in Pittsburg, PA