Changes to filtering of bandwidth-estimation-related RTP header extensions in Chrome M73

229 views
Skip to first unread message

Konrad Hofbauer

unread,
Feb 5, 2019, 5:44:54 AM2/5/19
to discuss...@googlegroups.com
Background

WebRTC implements the  abs-send-time RTP header extension [1]. It reflects the actual transmission time when the RTP packet was put onto the network. It is negotiated on the SDP level and has traditionally been used for receiver-side bandwidth estimation. With the introduction of sender-side bandwidth estimation and the transport-wide congestion control (TWCC) extensions [2] WebRTC started filtering out and not sending the abs-send-time header extension despite it being offered and negotiated on the SDP level, if the TWCC extensions were also negotiated. This was done to eliminate the traffic overhead of 4 bytes per RTP packet that the abs-send-time extension requires. 

Problem Statement

There are several problems with the WebRTC-internal suppression of the abs-send-time extension. Firstly, abs-send-time is useful beyond pure bandwidth estimation since it enables generating statistics about network delay variations by observing traffic on the receiver’s end only. Secondly, there is currently no possibility for the application to enable both abs-send-time and TWCC extensions in parallel. And thirdly, it is unexpected behaviour that a negotiated extension is not actually sent. 

Change 

We introduced a change to WebRTC [4] that makes abs-send-time not being filtered out even when the TWCC extensions were also negotiated. The consequence is that with the default SDP offerings, the sent RTP packets will contain both the transport-wide sequence number and abs-send-time header extensions. 

This should not cause any problems for a correctly implemented receiver since the new behaviour is RTP-standard-compliant and the receiver offered both extensions in its SDP. Withholding bugs, no actions should be needed. If the 4-byte per RTP packet overhead is a concern in a particular application, we advice to remove abs-send-time from the SDP offer if TWCC is used.

Rollout

The change is enabled by the FieldTrial “WebRTC-KeepAbsSendTimeExtension” [5] and is expected to be gradually rolled out in Chrome M73. The change can be force-enabled for testing purposes by specifying “--force-fieldtrials=WebRTC-KeepAbsSendTimeExtension/Enabled/” as a command line option when starting Chrome.

arihant nahata

unread,
Mar 27, 2019, 6:16:26 PM3/27/19
to discuss...@googlegroups.com
Hi Konrad,
Thanks for the above information. What's the status of the roll-out? Is it field-trial 100% enabled for M73 now?

--

---
You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrt...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/CALHiB6u0R6nCqVzSguWfx0H6gDLM8uuKeav-zZqzbiom3fafhg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


--
Thanks,
Arihant.

Konrad Hofbauer

unread,
Mar 31, 2019, 3:08:43 AM3/31/19
to discuss...@googlegroups.com
Hi, 

Sorry for the late reply and thanks for reaching out.

Let's continue the discussion there.

Best regards,
Konrad

Konrad Hofbauer

unread,
May 31, 2019, 8:48:18 AM5/31/19
to discuss...@googlegroups.com
Hi, 

The change to the filtering of the abs-send-time header extension has so far been enabled via Finch for 50% on Chrome Dev/Canary/Beta, but never on Chrome Stable. 
Due to a change in project priorities we are not pursuing this further for the time being are turning down the rollout to 0% again. This means nothing changes for Chrome Stable and the end of the AB-test in Dev/Canary/Beta, keeping the original behavior.  We might come back to this at a later date. 

Best regards,
Konrad


 



Sebastian Jansson

unread,
Oct 1, 2019, 8:13:09 AM10/1/19
to discuss-webrtc
This has again become prioritized and will be rolled to  50% on Chrome Dev/Canary/Beta for Chrome M76+.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss...@googlegroups.com.


--
Thanks,
Arihant.

--

---
You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages