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

Similar documents
QoS Services with Dynamic Packet State

Congestion Control In the Network

A Probabilistic Approach for Achieving Fair Bandwidth Allocations in CSFQ

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

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

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

Lecture 22: Buffering & Scheduling. CSE 123: Computer Networks Alex C. Snoeren

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

CS 268: Computer Networking

Fairness, Queue Management, and QoS

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

CS 268: Lecture 7 (Beyond TCP Congestion Control)

On Network Dimensioning Approach for the Internet

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

EE 122: Router Support for Congestion Control: RED and Fair Queueing. Ion Stoica Oct. 30 Nov. 4, 2002

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

Fair Queueing. Presented by Brighten Godfrey. Slides thanks to Ion Stoica (UC Berkeley) with slight adaptation by Brighten Godfrey

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

Core-Stateless Proportional Fair Queuing for AF Traffic

of-service Support on the Internet

CS551 Router Queue Management

The Network Layer and Routers

Congestion Control and Resource Allocation

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

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

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

Router s Queue Management

Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13

Episode 5. Scheduling and Traffic Management

Network Layer Enhancements

Supporting Service Differentiation for Real-Time and Best-Effort Traffic in Stateless Wireless Ad-Hoc Networks (SWAN)

Lecture 14: Congestion Control"

Lecture 24: Scheduling and QoS

Lecture 14: Congestion Control"

Generic Architecture. EECS 122: Introduction to Computer Networks Switch and Router Architectures. Shared Memory (1 st Generation) Today s Lecture

Unit 2 Packet Switching Networks - II

Network Support for Multimedia

Real-Time Protocol (RTP)

Chapter 6: Congestion Control and Resource Allocation

Project Computer Networking. Resource Management Approaches. Start EARLY Tomorrow s recitation. Lecture 20 Queue Management and QoS

CS268: Beyond TCP Congestion Control

Rainbow Fair Queueing: Fair Bandwidth Sharing Without Per-Flow State

CSCI-1680 Transport Layer III Congestion Control Strikes Back Rodrigo Fonseca

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

COMP/ELEC 429/556 Introduction to Computer Networks

EECS 122: Introduction to Computer Networks Switch and Router Architectures. Today s Lecture

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

Congestion Control for High Bandwidth-delay Product Networks

CS557: Queue Management

CS321: Computer Networks Congestion Control in TCP

Appendix B. Standards-Track TCP Evaluation

Improving QOS in IP Networks. Principles for QOS Guarantees

CS644 Advanced Networks

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

Performance Evaluation of Controlling High Bandwidth Flows by RED-PD

A Better-Than-Best Effort Forwarding Service For UDP

Takashi MIYAMURA, Takashi KURIMOTO,KenjiNAKAGAWA, Regular Members, Prasad DHANANJAYA, Nonmember, Michihiro AOKI, and Naoaki YAMANAKA, Regular Members

Chapter 6 Queuing Disciplines. Networking CS 3470, Section 1

Sharing Bandwidth Fairly During Congestion

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

Quality of Service (QoS)

CS4700/CS5700 Fundamentals of Computer Networks

WRED Explicit Congestion Notification

6.033 Spring Lecture #12. In-network resource management Queue management schemes Traffic differentiation spring 2018 Katrina LaCurts

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Estimating Arrival Rates from the RED Packet Drop History

ADVANCED TOPICS FOR CONGESTION CONTROL

EE122 MIDTERM EXAM: Scott Shenker, Ion Stoica

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

Principles of congestion control

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

Congestion in Data Networks. Congestion in Data Networks

Overview. Lecture 22 Queue Management and Quality of Service (QoS) Queuing Disciplines. Typical Internet Queuing. FIFO + Drop tail Problems

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

EP2210 Scheduling. Lecture material:

Research Letter A Simple Mechanism for Throttling High-Bandwidth Flows

Master Course Computer Networks IN2097

Resource Control and Reservation

TCP/IP over ATM using ABR, UBR, and GFR Services

One More Bit Is Enough

RSVP 1. Resource Control and Reservation

Priority Traffic CSCD 433/533. Advanced Networks Spring Lecture 21 Congestion Control and Queuing Strategies

Network Model for Delay-Sensitive Traffic

RED behavior with different packet sizes

Advanced Computer Networks

Master Course Computer Networks IN2097

A Control-Theoretical Approach for Fair Share Computation in Core-Stateless Networks

Models and Algorithms for Hierarchical Resource Management in Integrated Services Networks. Other Contributors

CS3600 SYSTEMS AND NETWORKS

EE 122: Differentiated Services

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

Transport Layer (Congestion Control)

Adaptive RED: An Algorithm for Increasing the Robustness of RED s Active Queue Management or How I learned to stop worrying and love RED

Student ID: CS457: Computer Networking Date: 3/20/2007 Name:

Congestion Control in the Network

ECEN Final Exam Fall Instructor: Srinivas Shakkottai

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

Congestion control in TCP

Packet Filtering for Congestion Control under DoS Attacks

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

Transcription:

Core-Stateless Fair Queueing: Achieving Approximately Fair Bandwidth Allocations in High Speed Networks Ion Stoica CMU Scott Shenker Xerox PARC Hui Zhang CMU Congestion Control in Today s Internet Rely on end-to-end congestion control (TCP) end-hosts react to congestion indication provided by routers congestion indication: implicit (FIFO, RED) or explicit (ECN) Advantage: simple network Disadvantage: no enforcement works only if end-hosts cooperate achieve fairness only if end-hosts implement homogeneous control algorithms

Alternate Approach Routers enforce protection and fair allocations Flow Random Early Drop (FRED), Fair Queueing () Advantage: protection against misbehaving flows co-existence of heterogeneous end-to-end algorithms Disadvantage: complex packet classification per flow buffer management per flow scheduling () Sched Challenge Router support for congestion control Higher speed routers Achieve protection and fair allocations in high speed networks

Our Approach: Core-Stateless Architecture Approximate a reference network in which every node performs Fair Queueing with a network where edge nodes - do perform per flow management core nodes - do not perform per flow management Reference network Core-stateless network edge node core node 5 Fair Queueing Work conserving discipline in which each flow is entitled to receive at most the fair rate f associated to the link a flow with arrival rate r receives min(r, f) bandwidth f computed such that when link congested the aggregate arrival rate equals link s capacity known algorithms require per flow state e.g.: W, DRR, SC, WF Q, S f = ÃÃ min(6, ) = min(8, ) = min(, ) = Ã 6

Key Insights If each packet of a flow with arrival rate r is forwarded with probability f P = min, r the expected rate of flow s forwarded traffic r is f r = r P = r min, = min( r, f ) r No need to maintain per flow state at every node to estimate r, if r is carried by the packet itself To maintain consistency of the estimated rate r, it is enough to updated it with r as the packet is forwarded 7 Core-Stateless Fair Queueing Algorithm Edge node estimate rate, r, of each flow and insert it as a label in packet s header All nodes estimate fair rate f based on link state forward each packet with probability P (where r is given by packet s label) f P = min, r update packet label to min( r, f ) Edge Node flow flow flow m flow rate estimator Core Node flow flow flow m FIFO fair rate estimator+ packet processing FIFO 8

Example Assume estimated fair rate flow, P = min(, /8) =.5 = expected rate of forwarded traffic 8*P = flow, P = min(, /6) =.67 expected rate of forwarded traffic 6*P = flow, P = min(, /) = expected rate of forwarded traffic f 8 6 8 8 8 8 8 6 6 6 6 Core Node ( Mbps) FIFO Question: How is the fair rate estimated? 9 Fair Rate Estimation Observation - rate of aggregate forwarded traffic (R) is a monotonic and non-decreasing function of the f estimated fair rate Forwarded Rate (R) 8 6 8 6 min( f,8) min( f,6) min( f,) f 6 8 Estimated Fair Rate (f ) R ( f ) = min( f,8) + min( f,6) + min( f,) R(f) Link Capacity (C) 5

Algorithm Details Fair rate estimation - iterative algorithm based on linear interpolation link congested/uncongested - arrival rate is always greater/smaller than link s capacity over a predefined time interval Flow rate estimation - exponential averaging Simulation Results Simulations were performed in ns- Settings link capacity Mbps, buffer capacity 6 KB link propagation delay ms Schemes First-In-First-Out (FIFO) Random Early Detection (RED) Flow Random Early Drop (FRED) Fair Queueing () implemented by Deficit Round Robin with dropping from the longest queue 6

Single Congested Link UDP ( Mbps) and TCPs sharing a Mbps link Ideally each flow should receive / =. Mbps UDP (#) - Mbps UDP (#) TCP (#) TCP (#) Bottleneck link ( Mbps) TCP (#) TCP (#) Throughput of TCP and UDP Flows with RED, FRED,, CS Throughput(Mbps) Throughput(Mbps) 9 8 7 6 5.8.6...8.6.. RED 7 6 9 5 8 Flow Number 7 6 9 5 8 Flow Number Throughput(Mbps) Throughput(Mbps).8.6...8.6...8.6...8.6.. FRED 7 6 9 5 8 Flow Number CS 7 6 9 5 8 Flow Number 7

Multiple Congested Links Each UDP (excepting UDP-) sends at twice its fair rate on the Mbps link, i.e.,.8 Mbps UDP- UDP- UDP- UDP- UDP-k UDP-k......... Edge router Core router Mbps Mbps TCP/UDP- TCP/UDP-...... UDP- UDP- UDP-k UDP-k 5 Relative Throughput of a TCP over Multiple Congested Links. Throughput / Fair Rate.8.6.. FIFO RED FRED CS 5 Number of Congested Links 6 8

Relative Throughput of a UDP Flow over Multiple Congested Links. Throughput / Fair Rate.8.6.. FIFO RED FRED CS 5 Number of Congested Links 7 Co-existence of Different Adaptation Schemes Mbps single congested link shared by TCP Received-driven Layered Multicast (RLM) flows RLM - 7 levels: Kbps, 6 Kbps, 8 Kbps,. Edge router Core router TCP RLM- RLM- TCP RLM- RLM- RLM- senders Bottleneck link ( Mbps) receivers RLM- 8 9

Throughput of TCP and Three RLM Flows.5.5.5.5.5.5.5.5 RED 65 97 9 6 9 5 57 89 5 85 6 9 5 56 87 8 9 8 7.5.5.5.5.5.5.5.5 FRED 6 7 6 76 6 8 6 5 86 CS 6 9 5 56 87 8 9 8 7 TCP RLM- RLM- RLM- 9 Conclusions and Future Work Architecture and algorithm (CS) for high speed achieve fair allocation close to and comparable or better than FRED under most simulation scenarios do not require core nodes to maintain per-flow state can approximate weighted Open problems impact of very large latencies Future work better estimators for flow and fair rates per-flow guarantees without per flow management at core nodes http://www.cs.cmu.edu/~istoica/csfq

Core-Stateless Architecture Network is partitioned in islands contiguous region of network trusted domain nodes cooperate to achieve a common goal differentiate between edge nodes - do perform per flow management core nodes - do not perform per flow management Islands Internet edge node core node SCORE island

Related Work RED with Identification [Floyd & Fall] use dropping history to identify misbehaving flows punish misbehaving flows Advantages: strong incentive for applications to adapt Disadvantages: assume homogeneous control algorithms (TCP-friendly) hard to accurately identify misbehaving flows identification process quite complex Related Work - CS vs. ATM ABR ATM ABR close loop RM cell - target rate usually, maintain per-vc state (ATM routers maintain anyway per-vc state) designed for networks with few losses CS open loop label - current rate no per-flow state at core routers robust in presence of heavy losses

Edge Router Types Client to island input speed < output speed inputs: can efficiently implement rate estimation outputs: no need to maintain per flow state Island to island still need for high speed routers, but fewer than an all design simpler than Island Island 5 Bound The estimated excess service that a flow sending at a rate no larger than r on a congested link with fair rate f can receive under CS is bounded by r f K + ln + l bits max f K : averaging constant used for flow s rate estimation l max : maximum length of a flow packet 6

Complexity FIFO/RED FRED CS State O() O(n) O(n) O(n) - edge O() - core Time O() O() O(log n) O() 7 Throughput of TCP and Three RLM Flows.5.5.5.5 FIFO TCP RLM- RLM- RLM-.5.5.5.5 RED 6 7 6 76 6 8 6 5 86 65 97 9 6 9 5 57 89 5 85 8

Throughput of TCP and UDP Flows with FIFO, FRED,, CS 9 8 7 6 5.8.6...8.6.. FIFO 5 7 9 5 7 9 5 7 9 Flow Number 7 6 9 5 8 Flow Number.8.6...8.6...8.6...8.6.. FRED 7 6 9 5 8 Flow Number CS 7 6 9 5 8 Flow Number 9 Throughput of TCP and Three RLM Flows.5.5.5.5.5.5.5.5 FIFO TCP RLM- RLM- RLM- 6 7 6 76 6 8 6 5 86 6 9 5 56 87 8 9 8 7.5.5.5.5.5.5.5.5 FRED 65 97 9 6 9 5 57 89 5 85 CS 6 9 5 56 87 8 9 8 7 5

Algorithm Details if link congested f = f C / R if link uncongested f = largest label (rate) seen during the last interval of size K c if buffer overflows decrease f by a small fixed percentage (e.g., %) link congested - arrival rate is always greater than link capacity during an interval of size K c link uncongested - arrival rate is always lower than link capacity during an interval of size K c, or buffer occupancy is less than a predefined threshold (e.g., half of buffer size) 6