Bug 271191

Summary: [WebRTC] Add support for L4S(RFC 9330)
Product: WebKit Reporter: Byungseon(Sun) Shin <sun.shin>
Component: WebRTCAssignee: Byungseon(Sun) Shin <sun.shin>
Status: RESOLVED FIXED    
Severity: Normal CC: dibotero, webkit-bug-importer, youennf
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Byungseon(Sun) Shin
Reported 2024-03-18 15:54:00 PDT
As we all know, Apple began supporting Low Latency, Low Loss, and Scalable Throughput (L4S) [1][2] on its platforms starting with iOS 17 and iPadOS 17 [3]. This support extends to both the QUIC and TCP networking stacks. Specifically: - QUIC: Apple’s QUIC implementation fully supports L4S. - TCP: Apple’s TCP implementation supports only the receiver-side L4S From the WebRTC implementation perspective, active development is underway to integrate L4S within the Chromium project. This includes the mechanisms for ECN marking collection from the UDP Socket Layer [4]. However, to fully leverage L4S functionality, additional implementations are necessary. This includes the development of receiver-side feedback and the optimization of feedback response intervals, as outlined in RFCs 6679 and 8888 [5][6]. Our team is actively contributing to this endeavor through participation in both the W3C WebRTC and IETF AVTCORE working groups, driving the standards forward [7][8]. From a practical standpoint, we are collaborating with Comcast to conduct field trials via NVIDIA’s GeForce NOW cloud gaming service, demonstrating the real-world benefits of L4S [9]. Furthermore, we have extended cloud gaming support to Safari on macOS with the release of version 2.0.59, showcasing our commitment to cross-platform compatibility [10]. As we continue to support L4S through native implementations, the goal of this task is to expand this support to encompass WebRTC implementations. [1] https://datatracker.ietf.org/doc/html/rfc9330 [2] https://datatracker.ietf.org/doc/html/rfc9331 [3] https://developer.apple.com/documentation/network/testing_and_debugging_l4s_in_your_app [4] https://bugs.chromium.org/p/webrtc/issues/detail?id=15368 [5] https://datatracker.ietf.org/doc/html/rfc6679 [6] https://datatracker.ietf.org/doc/html/rfc8888 [7] https://github.com/w3c/webrtc-nv-use-cases/pull/118 [8] https://datatracker.ietf.org/doc/draft-majali-avtcore-rtcp-fb-timing-cfg/ [9] https://corporate.comcast.com/stories/comcast-kicks-off-industrys-first-low-latency-docsis-field-trials [10] https://www.nvidia.com/en-us/geforce-now/release-highlights/
Attachments
Radar WebKit Bug Importer
Comment 1 2024-03-19 01:05:57 PDT
Byungseon(Sun) Shin
Comment 2 2024-04-16 15:19:20 PDT
Byungseon(Sun) Shin
Comment 3 2024-07-08 01:31:46 PDT
Basics of the RFC#8888 and chromium side socket interfaces implementation has been made through <https://issues.webrtc.org/issues/42225697>.
Byungseon(Sun) Shin
Comment 4 2024-08-05 19:15:01 PDT
EWS
Comment 5 2024-08-23 13:43:49 PDT
Committed 282674@main (e243885913ef): <https://commits.webkit.org/282674@main> Reviewed commits have been landed. Closing PR #31764 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.