Contact emails
[email protected]

Explainer
None


Specification
https://w3c.github.io/webtransport/#dom-webtransportoptions-protocols


Summary
WebTransport Application Protocol Negotiation allows negotiation of the 
protocol used by the web application within the WebTransport handshake. A web 
application can specify a list of application protocols offered when 
constructing a WebTransport object, which are then conveyed to the server via 
HTTP headers; if the server picks one of those protocols, it can indicate that 
within response headers, and that reply is available within the WebTransport 
object.


Blink component
Blink>Network>WebTransport


Web Feature ID
webtransport


TAG review
None


TAG review status
Not applicable


Risks




Interoperability and Compatibility
The feature was designed to work cleanly with existing servers that do not 
support protocol negotiation. If the server does not support application 
protocol negotiation, or does not accept any of the protocols offered, the API 
will return null as the selected protocol.

Gecko: Positive (https://github.com/mozilla/standards-positions/issues/167) 
Firefox has been positive on WebTransport, and Mozilla representatives have 
been involved in the discussion regarding this flag (and have told me in the 
past that I don't need to file new standards position for every spec feature).

WebKit: Support (https://github.com/WebKit/standards-positions/issues/18) 
Safari has expressed support for WebTransport in general; we've not reached out 
regarding this individual feature, given that Safari has not shipped 
WebTransport itself.

Web developers: Positive (https://github.com/moq-wg/moq-transport/pull/499) 
IETF MOQ relies on this feature for version negotiation; I've been repeatedly 
pinged by multiple people there asking when Chrome is going to ship this.

Other signals:


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it 
has potentially high risk for Android WebView-based applications? None



Debuggability
Since the negotiation is done via HTTP headers, those should be visible through 
DevTools.


Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, 
ChromeOS, Android, and Android WebView)?
Yes


Is this feature fully tested by web-platform-tests?
Yeshttps://wpt.fyi/results/webtransport/connect.https.any.html?label=experimental&label=master&aligned


Flag name on about://flags
None


Finch feature name
WebTransportApplicationProtocol


Rollout plan
Will ship enabled for all users


Requires code in //chrome?
False


Tracking bug
https://issues.chromium.org/u/1/issues/416080492


Estimated milestones


Shipping on desktop 142

Shipping on Android 142




Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop 
issues. Please list open issues (eg links to known github issues in the project 
for the feature specification) whose resolution may introduce web 
compat/interop risk (eg, changing to naming or structure of the API in a 
non-backward-compatible way). None


Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/6521719678042112?gate=4663773843161088


This intent message was generated by Chrome Platform Status.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/68d0fcf6.710a0220.5367c.0092.GAE%40google.com.

Reply via email to