← Back to release summary

ALPS and ACCEPT_CH HTTP/2 and HTTP/3 frames

Category
Network / Connectivity
Type
New or changed feature
Status
Enabled by default (Chrome 96)
Intent stage
Shipped

Summary

The ACCEPT_CH HTTP/2 and HTTP/3 frames, combined with the TLS ALPS extension, are a connection-level optimization to deliver the server’s Client Hint preferences in time for the first HTTP request.

Motivation

HTTP Client Hints can replace passive fingerprinting surfaces with server-requested (and potentially deniable) client headers. However, the client may have out-of-date information on the server preferences when it sends a request. On the first page load, the client may not know to send any hints at all. The Critical-CH header allows the server to request a client retry when a header was missing due to out-of-date preferences. The ACCEPT_CH frame is a companion mechanism to avoid the retry in most cases by delivering it as part of connection setup.

Standards & signals

Explainers: https://github.com/WICG/client-hints-infrastructure/blob/master/reliability.md

View on chromestatus.com