Skip to main content

A Measurement-Derived Functional Model for the Interaction Between Congestion Control and QoE in Video Conferencing

  • Conference paper
  • First Online:
Passive and Active Measurement (PAM 2023)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 13882))

Included in the following conference series:

Abstract

Video Conferencing Applications (VCAs) that support remote work and education have increased in use over the last two years, contributing to Internet bandwidth usage. VCA clients transmit video and audio to each other in peer-to-peer mode or through a bridge known as a Selective Forwarding Unit (SFU). Popular VCAs implement congestion control in the application layer over UDP and accomplish rate adjustment through video rate control, ultimately affecting end user Quality of Experience (QoE). Researchers have reported on the throughput and video metric performance of specific VCAs using structured experiments. Yet prior work rarely examines the interaction between congestion control mechanisms and rate adjustment techniques that produces the observed throughput and QoE metrics. Understanding this interaction at a functional level paves the way to explain observed performance, to pinpoint commonalities and key functional differences across VCAs, and to contemplate opportunities for innovation. To that end, we first design and conduct detailed measurements of three VCAs (WebRTC/Jitsi, Zoom, BlueJeans) to develop understanding of their congestion and video rate control mechanisms. We then use the measurement results to derive our functional models for the VCA client and SFU. Our models reveal the complexity of these systems and demonstrate how, despite some uniformity in function deployment, there is significant variability among the VCAs in the implementation of these functions.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 84.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    In principle, the total client sending rate includes video, audio, and control data (e.g., RTCP packets). In this paper, we focus only on video data as it is the most bandwidth intensive.

  2. 2.

    The Zoom packet structure determined by Michel et al. [31] could aid this process.

References

  1. Amirante, A., Castaldi, T., Miniero, L., Romano, S.P.: Performance analysis of the Janus WebRTC gateway. In: Proceedings of ACM Workshop on All-Web Real-Time Systems (2015)

    Google Scholar 

  2. Amon, P., Li, H., Hutter, A., Renzi, D., Battista, S.: Scalable video coding and transcoding. In: Proceedings of IEEE International Conference on Automation, Quality and Testing, Robotics (2008)

    Google Scholar 

  3. André, E., Le Breton, N., Lemesle, A., Roux, L., Gouaillard, A.: Comparative study of WebRTC open source SFUs for video conferencing. In: Principles, Systems and Applications of IP Telecommunications (IPTComm) (2018)

    Google Scholar 

  4. Arif, A.S.M., Hassan, S., Ghazali, O., Nor, S.A.: The relationship of TFRC congestion control to video rate control optimization. In: Proceedings of IEEE International Conference on Network Applications, Protocols and Services (2010)

    Google Scholar 

  5. BlueJeans: Technical Specifications for Services (2021). https://support.bluejeans.com/s/article/BlueJeans-Technical-Specifications

  6. Cao, Y., Jain, A., Sharma, K., Balasubramanian, A., Gandhi, A.: When to use and when not to use BBR: an empirical analysis and evaluation study. In: Proceedings of ACM Internet Measurement Conference (2019)

    Google Scholar 

  7. Cardwell, N., Cheng, Y., Gunn, C.S., Yeganeh, S.H., Jacobson, V.: BBR: congestion-based congestion control. ACM Queue 14, 20–53 (2016)

    Article  Google Scholar 

  8. Carlucci, G., de Cicco, L., Holmer, S., Mascolo, S.: Analysis and design of the google congestion control for web real-time communication (WebRTC). In: Proceedings of ACM International Conference on Multimedia Systems (2016)

    Google Scholar 

  9. Chang, H., Varvello, M., Hao, F., Mukherjee, S.: Can you see me now? A measurement study of Zoom, Webex, and Meet. In: Proceedings of ACM Internet Measurement Conference (2021)

    Google Scholar 

  10. Chromium: ChromeDriver - WebDriver for Chrome (2022). https://chromedriver.chromium.org/home

  11. Chundong, S., Chaojun, L., Shaohua, L.: Research on congestion control algorithms for real-time audio and video stream. In: Proceedings of IEEE International Conference on Computer and Communications (2018)

    Google Scholar 

  12. Cisco: Cisco Ultra Traffic Optimization (CUTO) Data Sheet (2021). https://www.cisco.com/c/en/us/products/collateral/wireless/ultra-traffic-optimization/datasheet-c78-744385.html

  13. De Cicco, L., Carlucci, G., Mascolo, S.: Congestion control for WebRTC: standardization status and open issues. IEEE Commun. Stand. Mag. 1(2), 22–27 (2017)

    Article  Google Scholar 

  14. Federal Communications Commission: FCC Proposes Higher Speed Goals for Small Rural Broadband Providers (2022). https://www.fcc.gov/document/fcc-proposes-higher-speed-goals-small-rural-broadband-providers-0

  15. Floyd, S., Handley, M., Padhye, J., Widmer, J.: Equation-based congestion control for unicast applications. In: Proceedings of ACM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (2000)

    Google Scholar 

  16. Fund, F., Wang, C., Liu, Y., Korakis, T., Zink, M., Panwar, S.S.: Performance of DASH and WebRTC video services for mobile users. In: Proceedings of IEEE Packet Video Workshop, pp. 1–8 (2013).https://doi.org/10.1109/PV.2013.6691455

  17. Google: Tesseract Open Source OCR Engine (2022). https://tesseract-ocr.github.io/

  18. Google Git: WebRTC Native Code Package (2022). https://webrtc.googlesource.com/src/

  19. Grozev, B., Marinov, L., Singh, V., Ivov, E.: Last N: relevance-based selectivity for forwarding video in multimedia conferences. In: Proceedings of ACM Workshop on Network and Operating Systems Support for Digital Audio and Video (2015)

    Google Scholar 

  20. He, J., Ammar, M., Zegura, E.: Automation Code (2023). https://github.com/jh4001/PAM2023_Automation

  21. High Scalability: A Short On How Zoom Works (2020). https://highscalability.com/blog/2020/5/14/a-short-on-how-zoom-works.html

  22. Holmer, S., Lundin, H., Carlucci, G., de Cicco, L., Mascolo, S.: A Google Congestion Control Algorithm for Real-Time Communication (2017). https://datatracker.ietf.org/doc/html/draft-ietf-rmcat-gcc-02

  23. International Telecommunications Union: H.264: Advanced video coding for generic audiovisual services (2016). https://www.itu.int/rec/dologin_pub.asp?lang=e &id=T-REC-H.264-201602-S!!PDF-E &type=items

  24. Jansen, B., Goodwin, T., Gupta, V., Kuipers, F., Zussman, G.: Performance evaluation of WebRTC-based video conferencing. ACM SIGMETRICS Perform. Eval. Rev. 45(3), 56–68 (2018)

    Article  Google Scholar 

  25. Jitsi: Github repository (2022). https://github.com/jitsi

  26. Jitsi: Selective Forwarding Unit implementation of the Jitsi Videobridge (2022). https://github.com/jitsi/jitsi-videobridge/blob/master/doc/sfu.md#bandwidth-estimations

  27. Kumar, R., Nagpal, D., Naik, V., Chakraborty, D.: Comparison of popular video conferencing apps using client-side measurements on different backhaul networks. In: Proceedings of ACM Symposium on Theory, Algorithmic Foundations, and Protocol Design for Mobile Networks and Mobile Computing (2022)

    Google Scholar 

  28. Lee, I., Lee, J., Lee, K., Grunwald, D., Ha, S.: Demystifying commercial video conferencing applications. In: Proceedings of ACM International Conference on Multimedia (2021)

    Google Scholar 

  29. Liu, Q., Jia, Z., Jin, K., Wu, J., Zhang, H.: Error resilience for interactive real-time multimedia application. U.S. Patent #10348454 (2019)

    Google Scholar 

  30. MacMillan, K., Mangla, T., Saxon, J., Feamster, N.: Measuring the performance and network utilization of popular video conferencing applications. In: Proceedings of ACM Internet Measurement Conference (2021)

    Google Scholar 

  31. Michel, O., Sengupta, S., Kim, H., Netravali, R., Rexford, J.: Enabling passive measurement of zoom performance in production networks. In: Proceedings of ACM Internet Measurement Conference (2022)

    Google Scholar 

  32. Muthukadan, B.: Selenium with Python (2022). https://selenium-python.readthedocs.io/

  33. Robitza, W., Goring, S., Lebreton, P., Trevivian, N.: ffmpeg_debug_qp (2022). https://github.com/slhck/ffmpeg-debug-qp

  34. Sander, C., Kunze, I., Wehrle, K., Rüth, J.: Video conferencing and flow-rate fairness: a first look at Zoom and the impact of flow-queuing AQM. In: Proceedings of Passive and Active Measurement, pp. 3–19 (2021)

    Google Scholar 

  35. Sandvine: 2022 Global Internet Phenomena Report (2022)

    Google Scholar 

  36. Schwarz, H., Marpe, D., Wiegand, T.: Overview of the scalable video coding extension of the H.264/AVC standard. IEEE Trans. Circuits Syst. Video Technol. 17(9), 1103–1120 (2007)

    Article  Google Scholar 

  37. Streaming Media: Q &A: Zoom CTO Brendan Ittelson (2021). https://www.streamingmedia.com/Articles/Editorial/Featured-Articles/QA-Zoom-CTO-Brendan-Ittelson-145024.aspx

  38. Sweigart, A.: PyAutoGUI - GitHub (2022). https://github.com/asweigart/pyautogui

  39. Varvello, M., Chang, H., Zaki, Y.: Performance characterization of videoconferencing in the wild. In: Proceedings of ACM Internet Measurement Conference (2022)

    Google Scholar 

  40. Vucic, D., Skorin-Kapov, L.: QoE Assessment of mobile multiparty audiovisual telemeetings. IEEE Access 8, 107669–107684 (2020)

    Article  Google Scholar 

  41. WebRTC Glossary: Temporal Scalability (2022). https://webrtcglossary.com/temporal-scalability/

  42. Xu, Y., Yu, C., Li, J., Liu, Y.: Video telephony for end-consumers: measurement study of Google+, IChat, and Skype. In: Proceedings of ACM Internet Measurement Conference (2012)

    Google Scholar 

  43. Yu, C., Xu, Y., Liu, B., Liu, Y.: Can you SEE me now? A measurement study of mobile video calls. In: Proceedings of IEEE Conference on Computer Communications (2014)

    Google Scholar 

  44. Zoom: Zoom: Architected for Reliability (2019). https://explore.zoom.us/docs/doc/Zoom_Global_Infrastructure.pdf

  45. Zoom: Here’s How Zoom Provides Industry-Leading Video Capacity (2022). https://blog.zoom.us/zoom-can-provide-increase-industry-leading-video-capacity/

Download references

Acknowledgement

This work was supported by NSF grant NETS-1909040. We thank the PAM reviewers and our shepherd for their valuable feedback.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jia He .

Editor information

Editors and Affiliations

Appendices

A Competition with TCP

Fig. 15.
figure 15

Competition with different types of TCP flows. (a-c) Jitsi, (d-f) Zoom in SFU mode.

As Zoom has been reported to take a majority share of the bandwidth when competing with TCP [28, 30, 34], we took measurements with different types of TCP flows to compare and explain results using the functional models and measurements in Sect. 4.

Table 2. Summary of subsampling methods for the considered SFU-mode VCAs.

The testbed was used in two-person SFU mode with Zoom and Jitsi as in Sect. 4.3. In all cases, a total bandwidth limit of 4 Mb/s was applied to the upload of Client 1. After 30 s of measurement, ten TCP flows begin in various patterns: (i) started at the same time with nine minute duration, (ii) started at 30 s intervals, all finishing at the nine minute mark, and (iii) started and stopped at the same time every 20 s.

Figure 15 shows the results of these measurements. Figures 15(a), 15(b), and 15(c) all show that Jitsi immediately gives up practically all of its bandwidth in the presence of TCP. In particular, Fig. 15(b) shows that this occurs with only a single TCP flow sharing the link at the 30 s mark. This behavior is likely caused by GCC’s sensitivity to changes in delay; once GCC gives up some bandwidth, TCP takes it, compounding the response. Conversely, Figs. 15(d), 15(e), and 15(f) show that Zoom sending rate actually increases in TCP’s presence. This is likely a consequence of how it decides to add FEC as described in Sect. 4.3, the general insensitivity that Zoom has to packet loss, and the high threshold for responding to latency.

B Video Subsampling Methods

As mentioned in Sect. 1, the SFU is able to adjust the quality of forwarded video streams via subsampling. The exact method used for this differs between the considered VCAs, as described below, and summarized in Table 2.

Zoom uses a custom implementation of H.264 Scalable Video Coding (SVC) [2, 23, 36] to encode base and enhancement video layers. The SFU can then add/drop layers before forwarding to clients. Because H.264 SVC is used, subsampling of both the resolution and the frame rate is available to the SFU in Zoom as an orthogonal technique to adjust video bit rate [21, 37, 44, 45].

Jitsi and BlueJeans use video simulcast, in which the VCA client sends multiple independent video streams at different resolutions. Jitsi uses simulcast when the VP8 encoder is used. In particular, the Jitsi clients make use of three simulcast streams, with resolution scaling factors of 1, 2, and 4. At 1280\(\,\times \,\)720 native video resolution, this means the two other streams will be 640\(\,\times \,\)360 and 320\(\,\times \,\)180. BlueJeans also uses the VP8 encoder, implying use of simulcast, though there are no means of measuring the individual video streams. In a VCA with simulcast, the SFU chooses which one of the received video streams to forward, which determines the resolution. Additionally, it may choose to adjust the frame rate without re-encoding. Note that resolution changes without re-encoding are not possible with the VP8 codec [5, 41], demanding the use of simulcast.

Fig. 16.
figure 16

Client sent video quality metrics in peer-to-peer mode, when adjusting the upload latency. The colors indicate the distinct modes of operation.

C Zoom Video Rate Control under Different Latency Conditions

Figure 16 presents the video metrics for Zoom as a function of the additional latency on the upload. Overall, the sent video metrics begin to see an impact at 400 ms additional upload latency, and beyond 600 ms additional latency, there are no further impacts.

Frame Rate and Resolution. We group the consideration of both of these metrics as they share a very similar response to the additional upload latency. The most notable feature is the evolution of high variance in the measurement results for added latencies above 500 ms. We observe that much of the measured variance is not due to fluctuation in the frame rate or resolution; instead it is caused by Zoom returning to the maximum resolution and frame rate some time after the experiment starts. The time at which this occurs is a function of the latency; the higher the latency, the longer Zoom takes to begin recovering its sending rate. At higher latencies beyond 600 ms, the recorded variance is low. This is either because the time taken for Zoom to begin recovering is longer than the measurement duration, or because Zoom keeps the low sending rate indefinitely if the latency is beyond this value.

Measured Video Sending Rate. The measured video sending rate corresponds well to the frame rate and resolution trends. Specifically, there appear to be two intermediate levels of video sending rate; the first averaging around 2.25 Mb/s between 400 and 500 ms added latency, and the second averaging around 1.5 Mb/s between 500 and 600 ms. Beyond 600 ms, a flat 100 kb/s sending rate is used, which corresponds to what is observed in Fig. 4(f).

QP. The method for obtaining Zoom’s QP outlined in Sect. 3.2 is incompatible with latency measurements. This is because starting a screen recording in the Zoom application prompts a sudden, very large spike in latency. Once this spike dissipates, the Zoom application begins sending at the maximum rate, even when the steady-state latency is above 1,000 ms. We are uncertain if this is intended behavior to maintain maximum quality for recording purposes, or if this is a bug. In any case, we are unable to ascertain the Zoom QP for these measurements.

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

He, J., Ammar, M., Zegura, E. (2023). A Measurement-Derived Functional Model for the Interaction Between Congestion Control and QoE in Video Conferencing. In: Brunstrom, A., Flores, M., Fiore, M. (eds) Passive and Active Measurement. PAM 2023. Lecture Notes in Computer Science, vol 13882. Springer, Cham. https://doi.org/10.1007/978-3-031-28486-1_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-28486-1_7

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-28485-4

  • Online ISBN: 978-3-031-28486-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics