Congestion Control for Web Real-Time Communication

Applications requiring real-time communication (RTC) between Internet peers are ever increasing. RTC requires not only congestion control but also minimization of queuing delays to provide interactivity. It is known that the well-established transmission control protocol congestion control is not suitable for RTC due to its retransmissions and in-order delivery mechanisms, which induce significant latency. In this paper, we propose a novel congestion control algorithm for RTC, which is based on the main idea of estimating—using a Kalman Filter—the end-to-end one-way delay variation which is experienced by packets traveling from a sender to a destination. This estimate is compared with a dynamic threshold and drives the dynamics of a controller located at the receiver, which aims at maintaining queuing delays low, while a loss-based controller located at the sender acts when losses are detected. The proposed congestion control algorithm has been adopted by Google Chrome. Extensive experimental evaluations have shown that the algorithm contains queuing delays while providing intra and inter protocol fairness along with full link utilization.

[1]  Boris Nechaev,et al.  Netalyzr: illuminating the edge network , 2010, IMC '10.

[2]  Yang Xu,et al.  Video Telephony for End-Consumers: Measurement Study of Google+, iChat, and Skype , 2012, IEEE/ACM Transactions on Networking.

[3]  Donald F. Towsley,et al.  Part II: control theory for buffer sizing , 2005, CCRV.

[4]  Saverio Mascolo,et al.  Congestion control in high-speed communication networks using the Smith principle , 1999, Autom..

[5]  Luca De Cicco,et al.  Analysis and design of the google congestion control for web real-time communication (WebRTC) , 2016, MMSys.

[6]  J. J. Garcia-Luna-Aceves,et al.  Improving TCP congestion control over Internets with heterogeneous transmission media , 1999, Proceedings. Seventh International Conference on Network Protocols.

[7]  Dario Rossi,et al.  The Quest for LEDBAT Fairness , 2010, 2010 IEEE Global Telecommunications Conference GLOBECOM 2010.

[8]  Luca De Cicco,et al.  Controlling queuing delays for real-time communication: the interplay of E2E and AQM algorithms , 2018, CCRV.

[9]  Rayadurgam Srikant,et al.  The Mathematics of Internet Congestion Control (Systems and Control: Foundations and Applications) , 2004 .

[10]  Lakshminarayanan Subramanian,et al.  Adaptive Congestion Control for Unpredictable Cellular Networks , 2015, Comput. Commun. Rev..

[11]  Nick McKeown,et al.  Part I: buffer sizes for core routers , 2005, CCRV.

[12]  T. Başar,et al.  A New Approach to Linear Filtering and Prediction Problems , 2001 .

[13]  Vijay Subramanian,et al.  PIE: A lightweight control scheme to address the bufferbloat problem , 2013, 2013 IEEE 14th International Conference on High Performance Switching and Routing (HPSR).

[14]  Larry L. Peterson,et al.  TCP Vegas: End to End Congestion Avoidance on a Global Internet , 1995, IEEE J. Sel. Areas Commun..

[15]  Gorry Fairhurst,et al.  Reducing Internet Latency: A Survey of Techniques and Their Merits , 2016, IEEE Communications Surveys & Tutorials.

[16]  Luca De Cicco,et al.  Congestion Control for WebRTC: Standardization Status and Open Issues , 2017, IEEE Communications Standards Magazine.

[17]  Nitin H. Vaidya,et al.  Is the round-trip time correlated with the number of packets in flight? , 2003, IMC '03.

[18]  Nick McKeown,et al.  Why flow-completion time is the right metric for congestion control , 2006, CCRV.

[19]  Sally Floyd,et al.  Modeling wireless links for transport protocols , 2004, CCRV.

[20]  Henning Schulzrinne,et al.  RTP: A Transport Protocol for Real-Time Applications , 1996, RFC.

[21]  Luca De Cicco,et al.  A Mathematical Model of the Skype VoIP Congestion Control Algorithm , 2010, IEEE Transactions on Automatic Control.

[22]  Saverio Mascolo,et al.  The effect of reverse traffic on the performance of new TCP congestion control algorithms , 2022 .

[23]  Hari Balakrishnan,et al.  Stochastic Forecasts Achieve High Throughput and Low Delay over Cellular Networks , 2013, NSDI.

[24]  Mark Handley,et al.  Datagram Congestion Control Protocol (DCCP) , 2006, RFC.

[25]  Amin Vahdat,et al.  TIMELY: RTT-based Congestion Control for the Datacenter , 2015, Comput. Commun. Rev..

[26]  Lachlan L. H. Andrew,et al.  An Improved Link Model for Window Flow Control and Its Application to FAST TCP , 2009, IEEE Transactions on Automatic Control.

[27]  Jim Kurose,et al.  Multimedia streaming via TCP: an analytic performance study , 2004, SIGMETRICS 2004.

[28]  Tim Roughgarden,et al.  Part III: routers with very small buffers , 2005, CCRV.

[29]  David L. Black,et al.  The Addition of Explicit Congestion Notification (ECN) to IP , 2001, RFC.

[30]  Henning Schulzrinne,et al.  The Delay-Friendliness of TCP for Real-Time Traffic , 2010, IEEE/ACM Transactions on Networking.

[31]  Luca De Cicco,et al.  Understanding the Dynamic Behaviour of the Google Congestion Control for RTCWeb , 2013, 2013 20th International Packet Video Workshop.

[32]  Hari Balakrishnan,et al.  TCP ex machina: computer-generated congestion control , 2013, SIGCOMM.

[33]  Markus Fiedler,et al.  A generic quantitative relationship between quality of experience and quality of service , 2010, IEEE Network.

[34]  Israel Cidon,et al.  One-way delay estimation using network-wide measurements , 2006, IEEE Transactions on Information Theory.

[35]  Donald F. Towsley,et al.  Analysis and design of controllers for AQM routers supporting TCP flows , 2002, IEEE Trans. Autom. Control..

[36]  Manish Jain,et al.  On the Effectiveness of Delay-Based Congestion Avoidance , 2004 .

[37]  Van Jacobson,et al.  Controlling Queue Delay , 2012, ACM Queue.

[38]  Randell Jesup Congestion Control Requirements For RMCAT , 2013 .

[39]  Randy H. Katz,et al.  DeTail: reducing the flow completion time tail in datacenter networks , 2012, SIGCOMM '12.

[40]  Xavier Bombois,et al.  Designing a Kalman filter when no noise covariance information is available , 2005 .

[41]  Varun Singh,et al.  Test Cases for Evaluating RMCAT Proposals , 2019 .

[42]  Fernando Paganini,et al.  Congestion control for high performance, stability, and fairness in general networks , 2005, IEEE/ACM Transactions on Networking.

[43]  Janardhan R. Iyengar,et al.  Low Extra Delay Background Transport (LEDBAT) , 2012, RFC.

[44]  Saverio Mascolo,et al.  Performance evaluation and comparison of Westwood+, New Reno, and Vegas TCP congestion control , 2004, CCRV.

[45]  Raj Jain,et al.  A delay-based approach for congestion avoidance in interconnected heterogeneous computer networks , 1989, CCRV.

[46]  Ingemar Johansson Self-clocked rate adaptation for conversational video in LTE , 2014, CSWS@SIGCOMM.

[47]  Rayadurgam Srikant,et al.  The Mathematics of Internet Congestion Control , 2003 .

[48]  P. Manzoni,et al.  Revisiting TCP congestion control using delay gradients , 2011 .