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

Similar documents
Circuit Breakers for Multimedia Congestion Control

WebRTC: IETF Standards Update September Colin Perkins

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

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

The Controlled Delay (CoDel) AQM Approach to fighting bufferbloat

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

RTP: A Transport Protocol for Real-Time Applications

IETF Video Standards A review, some history, and some reflections. Colin Perkins

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

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

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

Uncompressed HD Video Streaming with Congestion Control

Real-Time Protocol (RTP)

draft-johansson-rmcat-scream-cc

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

Lecture 11. Transport Layer (cont d) Transport Layer 1

Parameter Equipment Motivation Monitoring method. Smooth play-out Test stream

Troubleshooting Packet Loss. Steven van Houttum

Congestion? What Congestion? Mark Handley

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

INSE 7110 Winter 2009 Value Added Services Engineering in Next Generation Networks Week #2. Roch H. Glitho- Ericsson/Concordia University

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

Network-Adaptive Video Coding and Transmission

Multimedia Networking

Transporting Voice by Using IP

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

Digital Asset Management 5. Streaming multimedia

Congestion Avoidance

Outline. QoS routing in ad-hoc networks. Real-time traffic support. Classification of QoS approaches. QoS design choices

Streaming Video and TCP-Friendly Congestion Control

Networked Multimedia and Internet Video. Colin Perkins

Chapter 3 Transport Layer

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

ETSF05/ETSF10 Internet Protocols. Performance & QoS Congestion Control

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

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

Synthesizing Adaptive Protocols by Selective Enumeration (SYNAPSE)

ETSF10 Internet Protocols Transport Layer Protocols

"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.

TCP LoLa Toward Low Latency and High Throughput Congestion Control

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

Multimedia! 23/03/18. Part 3: Lecture 3! Content and multimedia! Internet traffic!

Part 3: Lecture 3! Content and multimedia!

Chapter III: Transport Layer

Lecture 14: Congestion Control"

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Lecture 12: TCP Friendliness, DCCP, NATs, and STUN

ETSF05/ETSF10 Internet Protocols. Performance & QoS Congestion Control

Lecture 10: TCP Friendliness, DCCP, NATs, and STUN

MULTIMEDIA I CSC 249 APRIL 26, Multimedia Classes of Applications Services Evolution of protocols

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

Data Center TCP (DCTCP)

CSC 4900 Computer Networks: TCP

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

Analyzing the Receiver Window Modification Scheme of TCP Queues

of WebRTC-based Video Conferencing

Computer Networking

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

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

TCP and BBR. Geoff Huston APNIC

TCP congestion control:

3. Quality of Service

The Effects of Asymmetry on TCP Performance

Adaptive Video Multicasting

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

RECOMMENDATION ITU-R BT.1720 *

CS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018

Latency on a Switched Ethernet Network

Lecture 14: Performance Architecture

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

Quality of Service (QoS)

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

Congestion Control. Lecture 12: TCP Friendliness, DCCP, NATs, and STUN. Chiu Jain Phase Plots. Fair A=B. Responding to Loss. Flow B rate (bps) t 1 t 3

TCP and BBR. Geoff Huston APNIC. #apricot

Multimedia networking: outline

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

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

Skype Video Responsiveness to Bandwidth Variations

CSE 123b Communications Software

TCP and BBR. Geoff Huston APNIC

Colin Perkins, Alvaro Saurin, Stephen Strowes University of Glasgow. Ladan Gharai, Tom Lehman USC Information Sciences Institute

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

Advanced Computer Networks

P2PSIP, ICE, and RTCWeb

UDP Traffic Management

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

Including location-based services, IoT, and increasing personalization... Service models and delivery architectures

A Better-Than-Best Effort Forwarding Service For UDP

Provide a generic transport capabilities for real-time multimedia applications Supports both conversational and streaming applications

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

Multipath TCP. Prof. Mark Handley Dr. Damon Wischik Costin Raiciu University College London

Chapter 28. Multimedia

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

Performance Consequences of Partial RED Deployment

Multimedia Networking

INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN

Overview. Slide. Special Module on Media Processing and Communication

TCP in Asymmetric Environments

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

CSCD 433/533 Advanced Networks Fall Lecture 14 RTSP and Transport Protocols/ RTP

Transcription:

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

Context: WebRTC WebRTC project has been driving interest in congestion control for interactive multimedia Aims to make interactive multimedia conferencing a native feature of web browsers toolkit for peerto-peer multimedia applications Protocol standards under development in Internet Engineering Task Force (IETF) Standard Javascript APIs being devised in World-wide Web Consortium (W3C) Strong involvement from Google, Mozilla, and Microsoft, amongst others prototype code shipping now, wide deployment soon!2

Changing Environment Expect WebRTC to further shift Internet traffic mix towards latency sensitive traffic Ubiquitous deployment in web browsers Strong interest from web developers High quality due to wide availability of HD cameras and encoders How will network and new applications interact? Video coding constraints, quality of experience, requirements Network behaviour misbehaviours, challenges Transport protocols behaviour, impact!3

Video Coding for Interactive Multimedia Output of a modern video codec: Can target a range of output rates, with fixed upper- and lower-bounds kbps Mbps depending on input picture size and frame-rate Bit rate varies with content, not network availability moderately bursty Somewhat elastic vary target coding rate Output rate variable over (roughly) order-of-magnitude for given input Constrained set of possible output rates Constrained adaptation times cannot change rate immediately Some limited scope for channel-aware media coding e.g., scheduled I-frames Interactive conferencing QoE requirements Critical to bound latency ~100s of milliseconds ITU G.114 quality of experience impacted 150ms mouth-to-ear latency Predictable media quality highly desirable!4

Network Misbehaviours and challenges: Congestion common at network edge some times, some directions Links often asymmetric and/or variable capacity Over-buffering commonplace Ubiquitous NAT Perception of limited NAT resources by interactive multimedia community Multiple flows multiplexed on a port (e.g., RTP, STUN, DTLS, SCTP/UDP) despite different requirements Cross traffic plentiful, potentially disruptive Other interactive multimedia flows, web, file-sharing, IPTV, gaming, etc.!5

Competing Traffic Impact on Latency TCP relies on packet loss as congestion signal TCP probes for capacity by increasing window Queues build at bottleneck TCP dynamics Sender rely on queues and in-network buffering Queues smooth output onto bottleneck link Source: Nichols & Jacobson, ACM Queue Receiver Long-lived TCP flows cause long-duration standing queues e.g., MPEG DASH in-network queues somewhat desirable Transients due to web browsers opening multiple connections encourage over-buffering Impact of IW=10 Network edge acts as if packets are precious; transport dynamics encourage this perception, yet latency is often bigger concern!6

Interactive Multimedia Transport Interactive multimedia flows avoid TCP, run over RTP/UDP/IP Latency sensitive prefer loss that can be concealed to latency that cannot Not congestion controlled But, share queues with TCP flows Example: ping times on ADSL link, measured in parallel with a bulk TCP upload 10 RTT spike problematic for interactive Network is optimised for throughput, not latency interactive applications suffer RTT(ms) 500 400 300 200 100 0 0 10 20 30 40 50 60 70 80 90 100 Time (seconds) RTT!7

Challenges for Interactive Multimedia Can we implement congestion controlled transport for interactive multimedia on today s Internet? To ensure safe deployment of WebRTC applications, with suitable delay bounds for interactive QoE Does the network provide an appropriate service model for the long term?!8

WebRTC Congestion Control Design Space Must work on today s Internet Must have significant delay-based component to control latency Must work with limitations on when and how coding rate can adapt Must it compete reasonably with cross traffic? Type of Cross Traffic Other interactive multimedia flows TCP flows web browsing TCP flows long-lived Feasibility Ok delay based algorithm, fair competition Maybe but don t overreact to loss bursts Not feasible due to queue build-up Must it be fair to TCP? Non-goal, sufficient to compete well with itself!9

Interactive Multimedia Transport: Basics Media runs over RTP Framing, sequencing, and timing recovery Supports wide range of codecs, loss tolerance tools RTP Control Protocol (RTCP) reception quality feedback and network management Low-rate feedback channel Feedback packets large, infrequent; but can return semantic feedback (blocks x and y of media frame z were damaged) Roughly every frame, not every packet No explicit ACKs continuous return traffic not guaranteed, so cannot piggyback 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ header V=2 P RC PT=RR=201 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ May need to re-think congestion feedback?!10

Cross-flow Interactions How do interactive multimedia flows interact? Control interactions between flows in a multimedia session e.g., may want to prioritise audio over video, rather than fairness Want reasonable behaviour when several users make video calls at once Predictive coding bursts Try to avoid synchronised I-frames limits responsiveness to delay spikes Intermediate (predicted) frames Time Full frame Coupled congestion state across flows? Inter-flow prioritisation?!11

Interactions With Web Traffic Many short-lived parallel TCP connections Average page ~1.2Mbytes, 87 requests http://www.httparchive.org/trends.php Short-term delay spikes Effective jitter buffer needed several frames delay; noticeable visual impact Delay-based congestion control needs filter less responsive but maintains usable quality Complex interaction with buffer bloat Increased delay for several seconds; loss bursts Interactive application unusable for the duration pause rather than rate adapt? QoE constraints impact congestion control RTT(ms) Queueing Delay (seconds) 220 200 180 160 140 120 100 80 60 40 20 0.4 0.3 0.2 0.1 0.0 0 50 100 150 200 DQ Packet Loss Time (ms) RTT 102500 103000 103500 104000 104500 105000 Packet Number Figure 4.7: Example of Congestive Packet Loss!12 congestive (i.e., caused by congestion) or non-congestive. Figures 4.8 and 4.9 show the

Interactions with Long-lived TCP Flows Acceptable latency bound for interactivity is unclear What cut-off for congestion control is appropriate? What latency causes a call to be abandoned? ITU G.114 suggests soft limit of 400ms for network planning purposes is this appropriate? For how long must the threshold be exceeded? Should interactive multimedia flows fight back against latency insensitive flows? Algorithms that switch to a more aggressive loss-based mode when delay-based mode isn t sustaining minimum codec rate?!13

Next Steps for WebRTC IETF working group on interactive multimedia congestion control http://datatracker.ietf.org/wg/rmcat/charter/ Desirable properties of resulting algorithm: Hybrid loss-delay algorithm but, delay as primary metric Aware of user experience, codec constraints Semantic feedback, working with protocol constraints Coupled, cross-flow, congestion control Tight charter and milestones three algorithms proposed currently, all delay-based unclear other properties met Some months remain to influence algorithm before initial deployment; post-deployment browser updates likely rapid Internet-scale testbed!14

Thoughts on Longer-Term Goals Want to prevent interactive traffic sharing a queue with loss-based congestion control Directions Active queue management (AQM) Alternate congestion control!15

Active Queue Management TCP needs standing queues, but latency-sensitive traffic must avoid queues AQM Priority queueing separate queues for interactive and latency-insensitive Better to prioritise traffic based on importance DiffServ Politics, economics, and network neutrality Queue management to control latency RED-like mechanisms can bound delay, if tuned correctly Is there a deployable auto-tuning AQM solution CoDel? ECN interacts well with multimedia allows application control of quality impairment (especially important at low data rates, with infrequent I-frames) Campaign against buffer bloat also essential!16

Revising TCP Congestion Control? Queues build because TCP tries to fill them could we change TCP? Algorithms using delay as input: TCP Vegas FAST TCP Deployment getting easier with automatic software updates we can update edge devices Would it help enough? Competing with loss-based TCP queues Incremental path to deployment? An algorithm that s delay-based by default, but reacts to loss and becomes more aggressive to prevent starvation when competing with TCP?!17

Conclusions Mismatch between application needs and network: Interactive multimedia does not effectively co-exist with TCP in today s network Desirable to reduce buffer bloat, manage queues, and mark packets to signal congestion Community input to standards process desirable Congestion control; active queue management!18