Circuit Breakers for Multimedia Congestion Control

Similar documents
Multimedia Congestion Control: Circuit Breakers for RTP Sessions draft-ietf-avtcore-rtp-circuit-breakers-07

Can Congestion-controlled Interactive Multimedia Traffic Co-exist with TCP? Colin Perkins

RTP Profile for TCP Friendly Rate Control draft-ietf-avt-tfrc-profile-03.txt

Multimedia Congestion Control: Circuit Breakers for RTP Sessions draft-ietf-avtcore-rtp-circuit-breakers-11

On the Scalability of RTCP Based Network Tomography for IPTV Services. Ali C. Begen Colin Perkins Joerg Ott

Transporting Voice by Using IP

RTP: A Transport Protocol for Real-Time Applications

RTP. Prof. C. Noronha RTP. Real-Time Transport Protocol RFC 1889

Using RTCP Feedback for Unicast Multimedia Congestion Control draft-ietf-rmcat-rtp-cc-feedback-01. Colin Perkins

Streaming Video and TCP-Friendly Congestion Control

Real-Time Protocol (RTP)

Network Management & Monitoring

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

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

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

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

ECEN Final Exam Fall Instructor: Srinivas Shakkottai

of WebRTC-based Video Conferencing

Congestion Feedback in RTCP

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

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

Transport Protocols. ISO Defined Types of Network Service: rate and acceptable rate of signaled failures.

Lecture 14: Congestion Control"

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

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

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

CS519: Computer Networks. Lecture 9: May 03, 2004 Media over Internet

RTCP Feedback for Congestion Control in Interactive Multimedia Conferences draft-ietf-rmcat-rtp-cc-feedback-03. Colin Perkins

Transport Protocols for Data Center Communication. Evisa Tsolakou Supervisor: Prof. Jörg Ott Advisor: Lect. Pasi Sarolahti

CS 218 F Nov 3 lecture: Streaming video/audio Adaptive encoding (eg, layered encoding) TCP friendliness. References:

RTP Transport & Extensions

Real-Time Control Protocol (RTCP)

draft-johansson-rmcat-scream-cc

Congestion control in TCP

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

RTP/RTCP protocols. Introduction: What are RTP and RTCP?

Uncompressed HD Video Streaming with Congestion Control

COMP 249 Advanced Distributed Systems Multimedia Networking. Performance of Multimedia Delivery on the Internet Today

CS644 Advanced Networks

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

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

Chapter 24 Congestion Control and Quality of Service 24.1

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

c) With the selective repeat protocol, it is possible for the sender to receive an ACK for a packet that falls outside of its current window.

Congestion Control for High Bandwidth-delay Product Networks

CS321: Computer Networks Congestion Control in TCP

ETSF05/ETSF10 Internet Protocols. Performance & QoS Congestion Control

On Network Dimensioning Approach for the Internet

ETSF05/ETSF10 Internet Protocols. Performance & QoS Congestion Control

ETSF10 Internet Protocols Transport Layer Protocols

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

Multimedia Networking

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

The Case for Informed Transport Protocols

Extensions to RTP to support Mobile Networking: Brown, Singh 2 within the cell. In our proposed architecture [3], we add a third level to this hierarc

Quality of Service (QoS) Whitepaper

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

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

"Filling up an old bath with holes in it, indeed. Who would be such a fool?" "A sum it is, girl," my father said. "A sum. A problem for the mind.

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

Chapter 6: Congestion Control and Resource Allocation

Multimedia in the Internet

Network Support for Multimedia

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput

A common issue that affects the QoS of packetized audio is jitter. Voice data requires a constant packet interarrival rate at receivers to convert

DiffServ Architecture: Impact of scheduling on QoS

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

Multimedia networking: outline

8. TCP Congestion Control

Effective Network Quality Control Mechanism for QoS/QoE Assurance

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

Introduction to Real-Time Communications. Real-Time and Embedded Systems (M) Lecture 15

Network-Adaptive Video Coding and Transmission

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

Performance Analysis of TCP Variants

Proxy-based TCP-friendly streaming over mobile networks

BROADBAND AND HIGH SPEED NETWORKS

Appendix B. Standards-Track TCP Evaluation

Congestion Manager. Nick Feamster Computer Networks. M.I.T. Laboratory for Computer Science. October 24, 2001

End-to-End Mechanisms for QoS Support in Wireless Networks

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

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

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

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

Internet Engineering Task Force (IETF) Request for Comments: Nokia Research Center May 2014

Congestion Control using FEC for Conversational Multimedia Communication

A framework to determine the optimal loss rate of RED queue for next generation Internet routers

UNIT IV -- TRANSPORT LAYER

Impact of transmission errors on TCP performance. Outline. Random Errors

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START

CS 268: Computer Networking

ETSF10 Internet Protocols Transport Layer Protocols

Performance Management: Key to IP Telephony Success

different problems from other networks ITU-T specified restricted initial set Limited number of overhead bits ATM forum Traffic Management

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

Advanced Lab in Computer Communications Meeting 6 QoS. Instructor: Tom Mahler

TCP Congestion Control

XCP: explicit Control Protocol

Internet Engineering Task Force (IETF) Category: Informational. Huawei D. Romascanu Individual L. Deng China Mobile September 2018

Transcription:

Circuit Breakers for Multimedia Congestion Control Varun Singh Aalto University Stephen McQuistin, Martin Ellis, and Colin Perkins University of Glasgow

Context Video conferencing seeing increasing deployment Still no standard congestion control algorithm for RTP traffic running over UDP/IP Various proprietary algorithms IETF RMCAT working group Potential congestion collapse Circuit breaker algorithm wanted to stop errant flows 2

Example Scenario: WebRTC WebRTC Signalling WebRTC Signalling Hello? RTP Media Data RTCP High-rate RTP media data flow Low-rate RTCP reception quality feedback 3

RTCP Reception Quality Feedback Reporting interval: O(seconds) Timing statistics Inter-arrival jitter One RTT estimate per reporting interval Packet loss statistics Fraction packets lost in last interval Cumulative number of lost packets Highest sequence number received 1 2 3 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ header V=2 P RC PT=RR=21 length +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ SSRC of packet sender +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ report SSRC_1 (SSRC of first source) block +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1 fraction lost cumulative number of packets lost +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ extended highest sequence number received +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ interarrival jitter +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ last SR (LSR) +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ delay since last SR (DLSR) +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ report SSRC_2 (SSRC of second source) block +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 2 :... : +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ profile-specific extensions +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Reception quality feedback is infrequent and highly aggregated 4

RTP Circuit Breaker Algorithms Monitor reception quality of RTP media traffic to detect excessive network congestion Use standard RTP and RTCP mechanisms Must work with unmodified RFC355-compliant receivers Three circuit breakers: Media timeout RTCP timeout Congestion 5

RTP Circuit Breaker Algorithms Circuit breaker #1: Media timeout RTP data packets being sent, but corresponding RTCP RR packets report non-increasing extended highest sequence number received Indication of significant forward-path connectivity problem if persistent for 2 reporting intervals cease transmission Circuit breaker #2: RTCP timeout RTP data packets being sent, but no corresponding RTCP RR packets returned for 2 consecutive reporting intervals cease transmission Indicates significant return-path connectivity problem 6

RTP Circuit Breaker Algorithms Circuit breaker #3: Congestion RTP data sent, corresponding RR packets have increasing extended highest sequence number received, but non-zero packet loss fraction Indication of network congestion estimate equivalent TCP throughput: T = s q q 2p R 3 +(t RT O(3 3p 8 )p(1 + 32p2 )) and cease transmission if RTP sending rate 1T for 2 reporting intervals Poor quality inputs simplify by setting highlighted term to zero R = round trip time, s = packet size p = packet loss event rate Not a robust estimate of TCP throughput is it good enough for a circuit breaker? 7

Testbed Experiments Initial experiments: does circuit breaker behave as expected in simple environments? Evaluate using gstreamer + x264, Akiyo video sequence, VGA size video at 15fps with 1Mbps target rate; multiple 1 second runs Basic network testbed: simple bottleneck with variable queue, latency, available bandwidth 8

Impact of Bottleneck Link Parameters t CB (s) 12 1 8 6 4 2 t cb Tr% 12 1 8 6 4 2 Trigger ratio (%) t CB (s) 12 1 8 6 4 2 t cb Tr% 12 1 8 6 4 2 Trigger ratio (%) 1ms 5ms 1ms (a) Latency 2ms % 5% 1% 2% (b) Loss rate 33% t CB (s) 12 1 8 6 4 2 t cb Tr% 12 1 8 6 4 2 Trigger ratio (%) t CB (s) 12 1 8 6 4 2 t cb Tr% 12 1 8 6 4 2 Trigger ratio (%) 1ms(sq) 5ms 1sec 5sec(bb) 8kbps 9kbps 1Mbps (c) Queue length (d) Throughput See paper for full details circuit breaker behaves as expected with changing bottleneck link characteristics 9

Impact of TCP Cross Traffic 12 1 t cb Tr% 12 1 12 1 t cb Tr% 12 1 t CB (s) 8 6 4 2 8 6 4 2 Trigger ratio (%) t CB (s) 8 6 4 2 8 6 4 2 Trigger ratio (%) 4SF(sq) 4SF(bb) 4LF(sq) 4LF(bb) 4SF(sq) 4SF(bb) 4LF(sq) 4LF(bb) (a) TCP and RTP flows start together (b) TCP starts 2s before the RTP Figure 6: Single RTP flow competing with multiple TCP flows. 3Mbps bottleneck, 1 RTP flow at 1Mbps, short (sq) or bloated (bb) 5s queue 4 short TCP flows modelling web traffic or 4 long duration TCP flows Short TCP flows aggressive due to slow start; buffer bloated queues decrease responsiveness, trigger circuit breaker as expected, over-buffering affects TCP dynamics TCP flows can be long (LF) or short (SF); routers can be short queues or buffer-bloated. Each scenario is run 1 times. breaker was triggered despite using different media streams 1

Performance on Residential Links Captured RTP packet traces to residential users CBR traffic flows; range of bit rates (1 8.5Mbps); 1 1 minute duration Well-connected server; clients on standard home ADSL and cable modem links in the UK and Finland 3833 traces containing ~23,, packets Simulated RTCP matching the RTP packet traces Assume reliable delivery of RTCP Explore effectiveness of congestion circuit breaker 11

Distribution of Traces by Loss Rate Number of Occurrences 18 16 14 12 1 8 6 4 2 Triggered CB Didn't Trigger CB <.51 2 3 4 5 6 7 8 9 1 11 12 13 14 15 16 17 18>18 Loss Rate (%) Circuit breaker triggers in 164 traces out of 3833 Overall packet loss rate a poor predictor of whether circuit breaker will trigger 12

Circuit Breaker Triggers by Loss Pattern Categorised packet traces according to RFC 3611 burst loss metric 42% traces are loss free 23% traces have non-bursty loss 35% traces have bursty loss A burst is a period during which a high proportion of packets are either lost or discarded due to late arrival. A burst is defined, in terms of a value Gmin, as the longest sequence that (a) starts with a lost or discarded packet, (b) does not contain any occurrences of Gmin or more consecutively received (and not discarded) packets, and (c) ends with a lost or discarded packet. where the recommended value of Gmin = 16 All packet traces triggering the RTP circuit breaker have bursty loss Loss Pattern Triggered Did not trigger Loss free.% 1.% Non-bursty loss.% 1.% Bursty loss 12.2% 87.8% Example circuit breaker trigger: 1 second period with 4% avg. packet loss 2 3 reporting intervals adsl1 4.Mbps (.6% loss overall) 145 146 147 148 149 15 Packet Number 13

Circuit Breaker Triggers by Sending Rate Likelihood of triggering circuit breaker increases with sending rate Most likely to trigger circuit breaker when sending rate is close to edge link capacity Results consistent with circuit breaker triggering due to edge congestion Sending Data Rate (Mbps) Link 1. 2. 4. 5. 6. 8.5 adsl1 % % 9% - 38% - adsl2 % % - - - - adsl3 % % - - - - adsl4 % % % 6% % - adsl5 % % % 7% 27% - adsl6 % % 19% % 52% - adsl7 2% 9% - 29% - - cable1 % 2% - - - - cable2 % % % 4% 8% 17% cable3 % % - 18% - - cable4 % % - 2% - - cable5 % % - 2% - - finadsl % % - 2% - - fincable % 4% - 1% - - Fraction of traces triggering circuit breaker (bars show negotiated rate of edge link) 14

Impact of Circuit Breaker Parameters Choice of TCP throughput model: Use full TCP model, rather than the simplified TCP model Num. flows triggering with bursty loss increases: 12.2% 19.3% Significant number of low-rate flows trigger this circuit breaker overly sensitive to transient congestion Sending Data Rate (Mbps) Link 1. 2. 4. 5. 6. 8.5 adsl1 % 1% 14% - 42% - adsl2 % % - - - - adsl3 % % - - - - adsl4 3% 5% % 26% % - adsl5 % 4% 7% 2% 31% - adsl6 % 1% 26% % 56% - adsl7 1% 9% - 29% - - cable1 % 33% - - - - cable2 % % % 6% 8% 21% cable3 18% 13% - 29% - - cable4 2% % - 2% - - cable5 2% % - 4% - - finadsl % % - 6% - - fincable 16% 16% - 1% - - Number of RTCP reporting intervals to trigger: Trigger after 3 reporting intervals gives slight reduction in number of traces triggering circuit breaker: 12.2% 1.1% of bursty traces No significant impact on low-rate traces 15

Conclusions Proposed RTP circuit breaker based on reachability and TCP-friendly throughput Baseline RTP provides insufficient information for accurate TCP-friendly rate estimation; RTCP XR extensions can correct this in future systems Circuit breaker adopts low-complexity approximations Trace-drive simulations show RTP circuit breaker triggering correctly for streaming to residential links Might consider increasing to three reporting intervals before triggering Ongoing work considering other network environments, more detailed analysis of circuit breaker triggers in this environment 16