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

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

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

CS 268: Computer Networking

The Present and Future of Congestion Control. Mark Handley

Core-Stateless Fair Queueing: Achieving Approximately Fair Bandwidth Allocations in High Speed Networks. Congestion Control in Today s Internet

Principles of congestion control

Performance Evaluation of Controlling High Bandwidth Flows by RED-PD

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services

CS 268: Lecture 7 (Beyond TCP Congestion Control)

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

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

The War Between Mice and Elephants

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Advanced Computer Networks

Lecture 14: Congestion Control"

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

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

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

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

Resource allocation in networks. Resource Allocation in Networks. Resource allocation

Reliable Transport II: TCP and Congestion Control

A Better-Than-Best Effort Forwarding Service For UDP

CS 349/449 Internet Protocols Final Exam Winter /15/2003. Name: Course:

CHOKe - A simple approach for providing Quality of Service through stateless approximation of fair queueing. Technical Report No.

Dynamic-CBT and ChIPS Router Support for Improved Multimedia Performance on the Internet

CSC 4900 Computer Networks: Network Layer

RED behavior with different packet sizes

TCP Congestion Control. Lecture 16. Outline. TCP Congestion Control. Additive Increase / Multiplicative Decrease (AIMD)

Congestion Control. Queuing Discipline Reacting to Congestion Avoiding Congestion. Issues

ADVANCED COMPUTER NETWORKS

Real-Time Protocol (RTP)

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009

Lecture 14: Congestion Control"

Sally Floyd, Mark Handley, and Jitendra Padhye. Sept. 4-6, 2000

Active Queue Management for Self-Similar Network Traffic

Analyzing the Receiver Window Modification Scheme of TCP Queues

Episode 5. Scheduling and Traffic Management

Fair Bandwidth Sharing Between Unicast and Multicast Flows in Best-Effort Networks

Queuing. Congestion Control and Resource Allocation. Resource Allocation Evaluation Criteria. Resource allocation Drop disciplines Queuing disciplines

Congestion control in TCP

Link-sharing and Resource Management Models for Packet Networks

Mohammad Hossein Manshaei 1393

Network Working Group Request for Comments: 2914 BCP: 41 September 2000 Category: Best Current Practice

Congestion Control & Transport protocols

CSE/EE 461 Lecture 16 TCP Congestion Control. TCP Congestion Control

QoS Services with Dynamic Packet State

Tuning RED for Web Traffic

Congestion Control. Tom Anderson

Quality of Service (QoS)

An Evaluation of Adaptive Multimedia Communication from a QoS Perspective

RECHOKe: A Scheme for Detection, Control and Punishment of Malicious Flows in IP Networks

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

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

Congestion Control for High Bandwidth-delay Product Networks

Chapter 24 Congestion Control and Quality of Service 24.1

Bandwidth Allocation & TCP

Wireless Networks (CSC-7602) Lecture 8 (15 Oct. 2007)

Core-Stateless Proportional Fair Queuing for AF Traffic

Communication Networks

Fairness, Queue Management, and QoS

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

Computer Networking Introduction

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

Dynamic-CBT and ChIPS - Router Support for Improved Multimedia Performance on the Internet

CS321: Computer Networks Congestion Control in TCP

Scheduling. Scheduling algorithms. Scheduling. Output buffered architecture. QoS scheduling algorithms. QoS-capable router

THE fundamental philosophy behind the Internet is

Improving QOS in IP Networks. Principles for QOS Guarantees

Introduction to Networks and the Internet

Network Support for Multimedia

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

Congestion Control. Principles of Congestion Control. Network assisted congestion. Asynchronous Transfer Mode. Computer Networks 10/23/2013

CS244 Advanced Topics in Computer Networks Midterm Exam Monday, May 2, 2016 OPEN BOOK, OPEN NOTES, INTERNET OFF

Estimating Arrival Rates from the RED Packet Drop History

Congestion Control in Communication Networks

Lecture 21. Reminders: Homework 6 due today, Programming Project 4 due on Thursday Questions? Current event: BGP router glitch on Nov.

Chapter III. congestion situation in Highspeed Networks

15-744: Computer Networking TCP

Reliable Transport I: Concepts and TCP Protocol

Network Layer Enhancements

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission

A Proposal to add Explicit Congestion Notification (ECN) to IPv6 and to TCP

MaVIS: Media-aware Video Streaming Mechanism

TCP Congestion Control

CS551 Router Queue Management

The Network Layer and Routers

Good Ideas So Far Computer Networking. Outline. Sequence Numbers (reminder) TCP flow control. Congestion sources and collapse

******************************************************************* *******************************************************************

Enhancing TCP Throughput over Lossy Links Using ECN-Capable Capable RED Gateways

Computer Networking

Equation-Based Congestion Control for Unicast Applications: the Extended Version

Flow Control. Flow control problem. Other considerations. Where?

Module objectives. Integrated services. Support for real-time applications. Real-time flows and the current Internet protocols

Lecture Outline. Bag of Tricks

Multiple unconnected networks

Congestion Control and Resource Allocation

QoS Configuration. Overview. Introduction to QoS. QoS Policy. Class. Traffic behavior

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

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

Transcription:

Promoting the Use of End-to-End Congestion Control in the Internet Sally Floyd and Kevin Fall IEEE/ACM Transactions on Networking May 1999 ACN: TCP Friendly 1

Outline The problem of Unresponsive Flows Fairness problems The danger of congestion collapse Forms of congestion collapse The solution: regulating unresponsive flows at the router TCP-friendly flows classifying flows Alternative approaches ACN: TCP Friendly 2

Approaches for controlling best-effort Internet traffic Deploying per-flow scheduling mechanisms to approximate max-min fairness. Use end-to-end congestion control with incentives Rely on pricing mechanisms to control sharing ACN: TCP Friendly 3

The problem of Unresponsive Flows Unresponsive flows do not use end-to-end congestion control and do not reduce their load on the network in response to packet drops. Unresponsive behavior causes: unfairness congestion collapse ACN: TCP Friendly 4

AcrobatDocument Fig 1,2,3 ACN: TCP Friendly 5

ACN: TCP Friendly 6

Unfairness Unresponsive flows can cause bandwidth starvation of well-behaved responsive traffic. TCP flows competing with unresponsive UDP flows for scarce bandwidth When TCP flows reduce their sending rates in response to congestion indicators, uncooperative UDP flows will capture more of the available bandwidth. ACN: TCP Friendly 7

Definitions goodput = the capacity delivered to the receiver, excluding duplicate packets robust senders send large packets small roundtrip time OR large sender window {helps with fast retransmit} ACN: TCP Friendly 8

Definitions Fragile senders Large RTT Small congestion window ACN: TCP Friendly 9

simple results to remember With TCP congestion control, throughput varies inversely with connection s roundtrip time. With multiple congested gateways, throughput varies as the inverse of the square root of the number of congested gateways. per-flow scheduling can control the allocation among a set of competing flows. ACN: TCP Friendly 10

Congestion Collapse occurs when an increase in network load results in a decrease in the useful work done by the network. classical congestion collapse congestion collapse from undelivered packets fragmentation-based congestion collapse congestion collapse from increased control traffic congestion collapse from stale packets ACN: TCP Friendly 11

Classical Congestion Collapse classical congestion collapse - is due to unnecessary retransmission of packets this is a stable condition that can result in throughput that is a small fraction of normal corrected by Jacobson s mechanisms ACN: TCP Friendly 12

Congestion Collapse from Undelivered Packets wasted bandwidth due to pushing packets through the network that are dropped before reaching their destination. author s claim: biggest problem today because of open-loop applications not using end-to-end congestion control. not stable: returns to normal when load is reduced ACN: TCP Friendly 13

AcrobatDocument Fig 4-7 ACN: TCP Friendly 14

Congestion Collapse from Undelivered Packets per-flow mechanisms at the router (in Figure 7) cannot guarantee elimination of this form of congestion control. Figure 8 shows the limiting case where a very large number of very small bandwidth flows without congestion control threaten congestion collapse in a highly-congested network regardless of scheduling discipline at the router. key claim: essential factor is the absence of end-to-end congestion control for UDP traffic. ACN: TCP Friendly 15

Fragmentation-based Congestion Collapse caused by transmitting cells or fragments that will be discarded because they cannot be reassembled some fragments are discarded while other fragments are delivered thus wasting capacity fixes involve network layer knowledge being given to data link layer, e.g. Early Packet Discard in ATM switches path MTU discovery to minimize packet fragmentation ACN: TCP Friendly 16

Congestion Collapse from Increased Control Traffic an increasingly large fraction of bytes transmitted belonging to control traffic packet headers routing updates multicast join and prune messages {e.g. RLM} DNS messages ACN: TCP Friendly 17

Congestion Collapse from Stale Packets or Unwanted Packets occurs when congested links carry packets no longer wanted by the user. when data transfers take too long due to queues are too long {e.g. audio or video jitter} when Web sites unnecessarily push Web data that was never requested. ACN: TCP Friendly 18

Philosophy of Cooperation authors believe cooperating flows can coexist if the right incentives are put in place for the competing flows paper explores mechanisms that could be deployed to provide incentives for flows to participate in cooperative methods for congestion control. ACN: TCP Friendly 19

Classification of Flows a flow is defined on the granularity of source and destination IP addresses and port number {each TCP connection is a flow} router should regulate flows classified as: unresponsive flows not TCP-friendly flows disproportionate-bandwidth flows ACN: TCP Friendly 20

TCP-friendly flows A flow is TCP-friendly if the flow s arrival rate does not exceed the bandwidth of a conformant TCP connection in the same circumstances. major assumption: TCP is characterized by reducing its congestion window at least by half upon receiving congestion indications and of increasing its congestion window by a constant rate of at most one packet per roundtrip time otherwise AIMD assumption. ACN: TCP Friendly 21

TCP-friendly test Given a non-bursty packet drop rate of p, the maximum sending rate for a TCP connection is T bytes/sec., where 1.5 sqroot (2/3) * B T <= ------------------------- R * sqroot (p) for a TCP connection sending packets of size B bytes with a fairly constant roundtrip time (including queuing delays) of R seconds. ACN: TCP Friendly 22

TCP friendly test The test is only applied at level of granularity of a TCP connection. An actual TCP flow will generally use less than maximum bandwidth, T. Philosophy says it is reasonable for a router to restrict bandwidth of any flow with arrival rate higher than that of any conformant TCP implementation. Is it reasonable?? ACN: TCP Friendly 23

TCP friendly test The measurements should be taken over a sufficiently large time interval (several RTTs). The test only applies for non-bursty packet drop behavior. Blatant commercial for RED? Robust flows may avoid detection, specifically flows with small roundtrip times. ACN: TCP Friendly 24

Identifying Unresponsive Flows TCP-friendly test is of limited usefulness for routers unable to assume strong bounds on TCP packet sizes and roundtrip times. A more general test :: verify that a high-bandwidth flow was responsive, i.e, its arrival rate decreases appropriately in response to increased packet drop rate. ACN: TCP Friendly 25

Identifying Unresponsive Flows Possible unresponsive flow test:: If the steady state drop rate increases by a factor x and the presented load for a high-bandwidth flow does not decrease by a factor close to sqroot (x) or more, the flow can be deemed unresponsive. This test needs an estimate of flow s arrival rate (e.g. CSFQ) and packet drop rate over several long intervals. Unresponsive flows are stealing bandwidth from responsive TCP-friendly flows! ACN: TCP Friendly 26

Identifying Disproportionate Bandwidth Flows a disproportionate share of bandwidth is a significantly larger share than other flows in the presence of suppressed demand from some of the other flows. This test could restrict conformant TCP flows (i.e., robust TCP flows). A flow is using a disproportionate share of best-effort bandwidth if its fraction of the aggregate arrival rate is more than log (3n)/n {natural log} where n is the number of flows with packet drops in the recent reporting interval. ACN: TCP Friendly 27

Identifying Disproportionate Bandwidth Flows They define a flow as having a high arrival rate relative to the level of congestion if its arrival rate is greater than c/ sqroot(p) for some constant c. Example settings using results from appendix: with B = 512 bytes and R = 0.05 seconds, c is set to 12,000. ACN: TCP Friendly 28

Disproportionate Bandwidth Test [Example] A best-effort flow has disproportionate bandwidth if: estimated arrival rate > 12000/ sqrt (p) and estimated arrival rate > log(3n)/n of the besteffort bandwidth. ACN: TCP Friendly 29

Alternative Approaches per-flow scheduling mechanisms (RR, FQ) to isolate flows Authors claim - incentives are backwards here. discusses FIFO and suggests middle ground of Class-Based Queueing (CBQ) or Stochastic Fair Queueing (SFQ) Authors question min-max fairness and suggests considering the number of congested links on flow path. ACN: TCP Friendly 30

Conclusions Mechanisms for detecting and restricting unresponsive flows are needed. TCP-friendly is the right philosophy, i.e., peaceful coexistence of distinct flow classes. These mechanisms would provide an incentive in support of end-to-end congestion control. ACN: TCP Friendly 31