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

Similar documents
CS644 Advanced Networks

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

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

XCP: explicit Control Protocol

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

Equation-based Congestion Control

Congestion Control for High Bandwidth-Delay Product Networks

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

CS 268: Lecture 7 (Beyond TCP Congestion Control)

Measurement Study of Lowbitrate Internet Video Streaming

Assignment 7: TCP and Congestion Control Due the week of October 29/30, 2015

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

Congestion Control for High Bandwidth-delay Product Networks

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

Multi-class Applications for Parallel Usage of a Guaranteed Rate and a Scavenger Service

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

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

ADVANCED TOPICS FOR CONGESTION CONTROL

ECE 610: Homework 4 Problems are taken from Kurose and Ross.

Congestion Control In the Network

Streaming Video and TCP-Friendly Congestion Control

Answers to Sample Questions on Transport Layer

RCRT:Rate-Controlled Reliable Transport Protocol for Wireless Sensor Networks

One More Bit Is Enough

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

ADAPTIVE SCALABLE INTERNET STREAMING DMITRI LOGUINOV

Reliable Transport II: TCP and Congestion Control

TCP Congestion Control

CS268: Beyond TCP Congestion Control

CSE 123A Computer Networks

CS321: Computer Networks Congestion Control in TCP

Congestion Avoidance Overview

Lecture 14: Congestion Control"

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

Adaptive Video Multicasting

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

Lecture 14: Congestion Control"

Homework #4. Due: December 2, 4PM. CWND (#pkts)

Exercises TCP/IP Networking With Solutions

Video Streaming in Wireless Environments

Analysis of Binary Adjustment Algorithms in Fair Heterogeneous Networks

Congestion Control in Communication Networks

Bandwidth Allocation & TCP

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

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

The Minimal Buffering Requirements of Congestion Controlled Interactive Multimedia Applications

Transmission Control Protocol (TCP)

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

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

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

TCP so far Computer Networking Outline. How Was TCP Able to Evolve

End-to-End Congestion Control for High Performance Data Transfer

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

CUBIC: A New TCP-Friendly High-Speed TCP Variant

MaVIS: Media-aware Video Streaming Mechanism

Computer Networking

15-744: Computer Networking TCP

An Evaluation of Adaptive Multimedia Communication from a QoS Perspective

On Network Dimensioning Approach for the Internet

Congestion Control. Andreas Pitsillides University of Cyprus. Congestion control problem

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

IEEE TRANSACTIONS ON MULTIMEDIA, VOL. 8, NO. 6, DECEMBER

Mitigating Egregious ACK Delays in Cellular Data Networks by Eliminating TCP ACK Clocking

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

Fast RTP Retransmission for IPTV - Implementation and Evaluation

Transport Layer Congestion Control

Multi-layer Active Queue Management and Congestion Control for Scalable Video Streaming

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

CS519: Computer Networks. Lecture 5, Part 5: Mar 31, 2004 Queuing and QoS

Appendix B. Standards-Track TCP Evaluation

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

CUBIC. Qian HE (Steve) CS 577 Prof. Bob Kinicki

Computer Networks Spring 2017 Homework 2 Due by 3/2/2017, 10:30am

Reliable Transport II: TCP and Congestion Control

Basics (cont.) Characteristics of data communication technologies OSI-Model

Principles of congestion control

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

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness

Tutorial 8 : Congestion Control

Communication Networks

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

DiffServ Architecture: Impact of scheduling on QoS

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Performance Comparison of TFRC and TCP

Incrementally Deployable Prevention to TCP Attack with Misbehaving Receivers

CS4700/CS5700 Fundamentals of Computer Networks

Media-Aware Rate Control

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018

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

Congestion Control 3/16/09

Congestion Control in TCP

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

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

Computer Network Fundamentals Spring Week 10 Congestion Control Andreas Terzis

Congestion Control. Resource allocation and congestion control problem

CS4700/CS5700 Fundamentals of Computer Networks

A New TCP-Friendly Rate Control Algorithm for Scalable Video Streams.

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

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

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

Transcription:

Increase-Decrease Congestion Control for Real-time Streaming: Scalability Dmitri Loguinov City University of New York Hayder Radha Michigan State University 1

Motivation Current Internet video streaming is often constant bitrate (CBR), where the rate is determined a-priori A user has to click on the desired rate on a web page Typical bitrate selections are quite coarse (i.e., 28k, 56k, 100k, 300k) Rate adaptation used in current streaming: Drop one layer upon congestion Add one layer to probe for new bandwidth Need protocols that can scale video to any bitrate (such as 435 kb/s) while maintaining fairness properties of regular congestion control 2

Motivation (cont d) Given MPEG4 FGS (Fine Granular Scalability), can we apply true congestion control to it? MPEG4 FGS: One low-bitrate base layer One high-bitrate enhancement layer Rescale the enhancement layer by discarding a certain percentage of each frame Rate-based streaming Can rate-based congestion control scale to a large number of concurrent flows? Scalability applies to the number of flows only 3

Overview of the Talk Background on congestion & flow control Scalability of congestion control Study of existing methods in NACK-based protocols Limitations of the existing methods Ideally-scalable congestion control Simulations and experimental results Drawbacks Conclusion 4

Background (Overview) Flow control is how application sends its packets Two types of flow control ACK-based (window-based): receiver acknowledges each received packet new packets are sent only if ACKs are being received average sending rate r(t) arbitrarily fluctuates sender does not know its average rate r(t) a-priori NACK-based (rate-based): receiver acknowledges each lost packet new packets are sent regardless of the NACKs average sending rate r(t) is known in advance 5

Background (cont d) ACK-based flow control is typically difficult to use in realtime streaming: Server must maintain a certain streaming rate for the base layer Difficult to decide how to scale the enhancement-layer pictures since future rate r(t) is not known Enhancement layer coded at max bitrate R. Scale to target rate r(t) by taking r(t)/r percent of each frame. Enhancement layer Base layer 6

Background (summary) We look at the problem of providing end-toend congestion control for rate-based applications NACK-based congestion control is usually labeled as simply difficult ATM/data-link methods exist, but they are inapplicable on the IP+ layers We assume a best-effort Internet environment QoS (Quality of Service) router support is not available 7

Congestion Control (overview) Typically many flows share common links of finite capacity After observing packet loss, flows must reduce their rates A key aspect of congestion control is convergence to fairness: sending rate time 8

Overview (cont d) Internet protocols use congestion control that: reacts to packet loss by decreasing the rate reacts to the absence of packet loss by increasing the rate Congestion control is executed on discrete timescales of RTT (round-trip delay) units each Sending rate during interval i is given by r i 9

Overview (cont d) Increase-decrease congestion control is summarized as following: r i+ 1 = r r i i + R R I D ( r i ( r ), no loss i ), loss R I is the increase function, R D is the decrease function Not all functions guarantee convergence to fairness Easy to show that R I, R D = constant does not converge Hence the add/drop one layer method does not converge to fairness 10

Overview (cont d) Among linear functions R I and R D, only one method converges to fairness This method is called AIMD (Additive Increase, Multiplicative Decrease): R I (r) = α, R D (r) = β r AIMD is used in TCP (Transmission Control Protocol) 11

Overview (cont d) Binomial schemes are a special case of I-D congestion control (proposed in 2001 by Bansal et al.): k RI ( r) = λr, k 0 l RD ( r) = σr, l 1 Powers (k, l) determine the shape of the increase and decrease curves Power l cannot be greater than 1 (otherwise, rates may become negative) Necessary condition for convergence is k + l > 0 12

Overview (cont d) A scheme is TCP-friendly, if it achieves the same throughput as a TCP connection over a shared link AIMD is TCP-friendly Binomial schemes with k+l = 1 are TCP-friendly Two such TCP-friendly schemes were introduced in 2001: IIAD (Inverse Increase, Additive Decrease) with l = 0, k = 1 SQRT (Square Root) with l = k = 0.5 Even though two schemes may have the same throughput, they may differ in other characteristics One important characteristic is called scalability 13

Scalability of Congestion Control Scalability aspects of congestion control have not been extensively studied before or even quantified We created a new measure of scalability and use it to compare various congestion control schemes We define scalability of a scheme as the increase in packet loss as a function of the number of flows n that use the scheme over a shared bottleneck Suppose p n is packet loss when n flows use a scheme Hence, scalability is described by the packet loss increase factor s n = p n / p 1 14

Scalability (cont d) How does scalability matter? NACK-based protocols are very sensitive to the scalability aspects of a scheme, much more so than ACK-based protocols In ACK-based protocols, upon loss of communication, the sender simply stops, hence increasing stability of the network In the absence of feedback, congestion control in NACKbased protocols becomes open-loop, or simply CBR: If the communication from the receiver is delayed, the sender continues stressing the network at the same rate Congestion control in NACK protocols is considered very difficult 15

16 Scalability (cont d) To investigate the scalability of binomial algorithms, we use steady-state analysis and continuous fluid approximation We compute n-flow packet loss p n : ( ) ( ) + + + + 2 1 2 2 2 2 2 / 1 1 2) ( k l k k n n C C n k p σ λ C is the capacity of the bottleneck link Packet loss increase factor s n = p n / p 1 (describing the scalability of a particular scheme) is given by: ( ) ). ( ) / ( 1) ( 2 1) ( 2 1 2 1 1 1 2 + + + + = + + k l l l k l n n O n C k C k n s σ σ

Scalability (cont d) This formula can be used to compare the scalability of different schemes Schemes with the lowest scalability power l+2k+1 are best AIMD is O(n 2 ) IIAD is O(n 3 ) SQRT is O(n 2.5 ) In practice, scalability is typically proportional to n l+2k, but worse-case scalability n l+2k+1 does happen in certain scenarios 17

Scalability Examples Discrete event simulation below shows three flows under different conditions AIMD1 n 1.91 (red), AIMD2 n 1.27 (purple), and IIAD n 2.67 (blue): 1.E+06 AIMD1 AIMD2 IIAD scalability sn 1.E+04 1.E+02 1.E+00 0 20 40 60 80 100 number of flows n 18

Scalability Examples (cont d) Such high loss increases mean that these schemes will not be able to provide adequate performance once deployed globally 19

Scalability Limitations Among TCP-friendly schemes (i.e., k+l = 1), parameter s n grows as O(n 3 l ) Hence, among all TCP-friendly schemes, the one with the largest l scales best Recall the restriction on binomial schemes that prevents the scheme from assuming negative rates is: l 1 Example l = 2: new rate r σ r 2 cannot be guaranteed to be positive for all r > 0, no matter how we select constant σ This is due to the fact that r is considered unlimited (i.e., upper limit is not known a-priori) 20

Scalability Limitations (cont d) Notice that among all TCP-friendly schemes, AIMD has the largest l equal to 1 Hence, AIMD scales best among TCP-friendly schemes The only way to improve scalability beyond O(n 2 ) is to somehow find a tight upper bound on sending rate r(t) One such upper bound is the bottleneck capacity of an end-to-end path The bottleneck capacity (or bottleneck bandwidth) is the speed of the slowest link of an end-to-end path 21

Scalability Limitations (cont d) No prior work considered the bottleneck bandwidth in conjunction with congestion control Not only do we aim to improve the scalability of AIMD (i.e., O(n 2 )), we also attempt to achieve ideal-scalability as explained below Ideal scalability is such choice of increasedecrease powers that ensures constant packet loss In other words, under ideal scalability, p n = p 1 for all n 22

Ideal Scalability Recall that packet loss increases as O(n l+2k+1 ) For ideal scalability we want the power to be zero: l+2k+1 = 0 To maintain convergence to fairness, we need: k+l > 0 Combining both conditions above, we find that the necessary conditions of ideal stability are: l > 1 and k < 1 Hence, we have the same restriction on l that can only be lifted with the knowledge of bottleneck capacity C 23

Ideal Scalability (cont d) Assume that we know bottleneck capacity C Rate r is limited by a constant: 0 < r C We introduce a new class of ideally-scalable congestion control (ISCC) that maintains convergence while l+2k+1 equals zero 24

ISCC Knowing C, we can adjust constants (λ,σ) to each path so that rate r(t) is never reduced below zero At the same time, we want to be able to tune the scheme to achieve different levels of packet loss and efficiency One such selection is given by the following: σ = m D 1 C, l 1 m D l λ = C m k+ 1 I, m I 1 Constant m D is the efficiency factor, where higher values of m D result in higher efficiency (i.e., higher link utilization) Constant m I is the aggressiveness factor, where higher values of m I result in less aggressive behavior (i.e., less packet loss) 25

Experiments Implemented NACK-based congestion control and binomial algorithms in our streaming software Special module controls the choice of congestion control (IIAD, SQRT, TFRC, ISCC, etc.) Tested between a Unix server and a Windows 2000 client, with the number of flows between 2 and 50 10 minute video sequence coded with MPEG-4 FGS: 14 kb/s base layer 1,190 kb/s FGS enhancement layer Each flow maintained a rate between 14 and 1,204 kb/s during the experiment 26

Experiments (cont d) Setup including two high-speed ethernets on each side of the bottleneck T1 links (see below) WFQ and WRED (QoS features of routers) were disabled to reflect the current setup of Internet routers Catalyst 2912 10 mb/s Cisco 3620 T1 Cisco 3660 T1 Cisco 3620 10 mb/s Catalyst 2912 100 mb/s 100 mb/s Client Server 27

Scalability Results The following figure shows packet loss p n for all schemes as a function of n 45% AIMD IIAD TFRC ISCC SQRT packet loss p n 30% 15% 0% 2 6 10 14 18 22 26 30 34 38 42 46 50 number of flows n 28

Scalability Results (cont d) All non-scalable schemes suffered from high packet loss rates: as high as 45% in IIAD (p 2 = 0.29%, s 50 = 151) 32% in SQRT (p 2 = 0.10%, s 50 = 268) 27% in TFRC (p 2 = 0.27%, s 50 = 74) 22% in AIMD (p 2 = 0.38%, s 50 = 59) ISCC maintained virtually constant loss at 3% (p 2 = 0.57%, s 50 = 5.6) In non-scalable schemes, underflow events in the base layer were frequent, even given a large startup delay (3 seconds): IIAD and SQRT maintained no picture for up to 66% of the time AIMD and TFRC between 11 and 40% of the time 29

Scalability Results (cont d) The ISCC scheme recovered all base-layer and FGS-layer frames before their deadlines This in fact represents an ideal performance for the end-user 30

Drawbacks However, ideal performance comes at a price: All flows must acquire consistent estimates of the bandwidth Ideally-scalable schemes are too TCP-friendly In fact, ISCC will yield bandwidth to TCP due to its lessaggressive behavior Differentiated Services (DiffServ) is required in the network Efficiency is similar to that of AIMD, but convergence is slower The Internet is moving toward DiffServ Hence it is possible that UDP and TCP traffic will end up in different router queues ISCC is possible in DiffServ-enabled Internet 31

Congestion Control Conclusion Applications with rate-based flow control are very sensitive to what kind of congestion control is employed Hence, traditional schemes designed for ACK-based protocols are not well suited for NACK-based protocols At the same time, ACK-based flow control is poorly suited for real-time streaming Consequently, future real-time streaming protocols should only use congestion control that scales well in the presence of a large number of concurrent flows One such class of scalable schemes was developed in our work and is called ISCC 32