Intent to Ship: 'priority' HTTP request header

333 views
Skip to first unread message

Patrick Meenan

unread,
Feb 16, 2024, 10:15:34 AMFeb 16
to blink-dev

Contact emails

pme...@google.com

Explainer

None

Specification

https://datatracker.ietf.org/doc/rfc9218

Summary

This feature adds the 'priority' request header for all HTTP requests with the priority information for the request at the time that it was sent. RFC 9218 (Extensible Prioritization Scheme for HTTP) defines a 'priority' HTTP request header to use for signaling request priority to origins (and intermediaries). It also defines negotiation processes and protocol-level frames for HTTP/2 and HTTP/3 to carry the same priority information. The header can only signal the initial priority for a resource when it was first requested while the frame-based mechanisms allow for modifying the priority after the fact. The header can operate end-to-end to the origin servers (and provide a mechanism for the origin to override the priority if recognized by intermediaries) while the frames are limited to operating on a link level. This feature is specifically for supporting the header-based prioritization scheme.



Blink component

Blink>Network

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility

None

Gecko: Shipped/Shipping
WebKit: Shipped/Shipping
Web developers: No signals
Other signals:

Security

The priority information for a given request is already exposed in HTTP/2 and HTTP/3 in the frame-based priority fields (and weights in HTTP/2). This moves the same information directly into the headers for HTTP/2 and HTTP/3 only.


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

The "Priority" header is exposed in both the Dev Tools network panel (in the Request Headers) and in the Netlog.


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?

No

Request priorities are not standardized so the values themselves are not testable across browsers. The presence of the header at all requires HTTP/3 (or HTTP/2 for Chrome) which is not something that is currently possible to test in WPT.


Flag name on chrome://flags



Finch feature name

PriorityHeader

Requires code in //chrome?

False

Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1404785

Measurement

N/A

Availability expectation

Feature will be available on all browsers once Chromium ships (already available in Safari and Firefox).

Adoption expectation

N/A

Adoption plan

N/A

Non-OSS dependencies

Does the feature depend on any code or APIs outside the Chromium open source repository and its open-source dependencies to function?

None

Estimated milestones

Shipping on desktop124
OriginTrial desktop last122
OriginTrial desktop first120
DevTrial on desktop119
Shipping on Android124
OriginTrial Android last122
OriginTrial Android first120
DevTrial on Android119
Shipping on WebView124
OriginTrial webView last122
OriginTrial webView first120


Anticipated spec changes

None


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5109106573049856

Links to previous Intent discussions

Intent to prototype: https://groups.google.com/a/chromium.org/g/blink-dev/c/eEeDzwtw5v0 Intent to Experiment: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPq58w5KJijit8ObBhWKzCnLjro7jSfAsxfPPZ66NwmTO_ZT%3Dg%40mail.gmail.com


This intent message was generated by Chrome Platform Status.

Yoav Weiss (@Shopify)

unread,
Feb 20, 2024, 7:12:58 AMFeb 20
to Patrick Meenan, blink-dev
LGTM1

Thanks for catching us up here!

On Fri, Feb 16, 2024 at 4:15 PM Patrick Meenan <pme...@chromium.org> wrote:

Contact emails

pme...@google.com

Explainer

None

Specification

https://datatracker.ietf.org/doc/rfc9218

Summary

This feature adds the 'priority' request header for all HTTP requests with the priority information for the request at the time that it was sent. RFC 9218 (Extensible Prioritization Scheme for HTTP) defines a 'priority' HTTP request header to use for signaling request priority to origins (and intermediaries). It also defines negotiation processes and protocol-level frames for HTTP/2 and HTTP/3 to carry the same priority information. The header can only signal the initial priority for a resource when it was first requested while the frame-based mechanisms allow for modifying the priority after the fact. The header can operate end-to-end to the origin servers (and provide a mechanism for the origin to override the priority if recognized by intermediaries) while the frames are limited to operating on a link level. This feature is specifically for supporting the header-based prioritization scheme.



Blink component

Blink>Network

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility

None

Gecko: Shipped/Shipping
WebKit: Shipped/Shipping

Any links to shipping artifacts?
 
--
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 blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPq58w47qFBfznZH%3Ditr7-whRu3irmCTUxrpxKM5ySA%3DoA-yOg%40mail.gmail.com.

Chris Harrelson

unread,
Feb 21, 2024, 11:58:42 AMFeb 21
to Yoav Weiss (@Shopify), Patrick Meenan, blink-dev

Alex Russell

unread,
Feb 21, 2024, 11:59:51 AMFeb 21
to blink-dev, Chris Harrelson, Patrick Meenan, blink-dev, Yoav Weiss
LGTM3

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.

--
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 blink-dev+unsubscribe@chromium.org.
Reply all
Reply to author
Forward
0 new messages