Gentle ping. (Am I missing something?)

On Wed, Feb 21, 2024 at 10:57 AM Tsuyoshi Horo <h...@chromium.org> wrote:

> Contact emails
>
> h...@chromium.org, pmee...@chromium.org, yoavwe...@chromium.org,
> kenjibah...@chromium.org
>
>
> Explainer
>
> https://github.com/WICG/compression-dictionary-transport
>
> Specification
>
> https://datatracker.ietf.org/doc/draft-ietf-httpbis-compression-dictionary/
>
> Design docs
>
>
> https://docs.google.com/document/d/1IcRHLv-e9boECgPA5J4t8NDv9FPHDGgn0C12kfBgANg/edit
>
> https://github.com/WICG/compression-dictionary-transport
>
> https://datatracker.ietf.org/doc/draft-ietf-httpbis-compression-dictionary/
>
> Summary
>
> An Origin Trial for Compression Dictionary Transport was scheduled to
> start in Chrome 117 and end in Chrome 122. But due to a critical issue, we 
> could
> not start
> <https://groups.google.com/a/chromium.org/g/blink-dev/c/NgH-BeYO72E/m/G8fasgKdAQAJ>
> the Origin Trial until Chrome 119. The design of the feature has also
> evolved during the origin trial and RFC process. We’d like to continue the
> Origin Trial to get more feedback on the updated
> <https://chromium.googlesource.com/chromium/src/+/40d4e43a01431f680d5e682aaa2c4a543c8f0200/docs/experiments/compression-dictionary-transport.md#changes-in-m123>
> feature.
>
> Blink component
>
> Blink>Network
> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ENetwork>
>
> TAG review
>
> https://github.com/w3ctag/design-reviews/issues/877
> TAG review status
>
> Closed
> RisksInteroperability and Compatibility
>
> Interoperability and Compatibility risk are low. This feature introduces a
> new compression method for transporting resources over HTTP. Web sites can
> know the browser support for the new feature by checking
> `document.createElement('link').relList.supports('dictionary')`. Also web
> servers can know the browser support by checking the `Accept-Encoding`
> request header and the new `Use-As-Dictionary` request header.
>
> This feature is an opt-in feature. And the dictionary storage is isolated
> using the top level site and the frame origin as the key. That means, if
> there is no dictionary registered for the site, the behavior of Chrome will
> not change while browsing the site. Also this feature is only usable within
> a secure-context so this feature will not increase the risk of having
> network proxies meddle with the content’s encoding. For enterprises that
> have deployed HTTPS-intercepting proxies that do not properly handle
> unknown encodings there is an enterprise policy exposed to disable the
> feature.
>
> Gecko: Positive (https://github.com/mozilla/standards-positions/issues/771
> )
>
> WebKit: No signal (
> https://github.com/WebKit/standards-positions/issues/160)
>
> Web developers: Positive
>
> Other signals:
>
> Ergonomics
>
> To reduce memory usage in network services, dictionary metadata is stored
> in a database on disk. And to avoid performance degradation for normal
> requests that do not use a dictionary, the reading of this metadata is
> designed not to block network requests. In other words, if the reading of
> metadata from the database is not completed before the request header is
> ready to be sent to the server, the dictionary may not be used even if it
> is already registered in the database.
>
>
> Activation
>
> To adopt this feature, web developers need to make changes in their web
> servers or build processes for static resources. Currently there is no
> major server software which supports compression dictionaries. Some CDNs
> have shared interest in supporting shared dictionary compression (e.g.
> publicly mentioned
> <https://blog.cloudflare.com/this-is-brotli-from-origin/#:~:text=One%20development%20that%20we%27re%20particularly%20focused%20on%20is%20shared%20dictionaries%20with%20Brotli.>
> in a blog post by Cloudflare).
>
>
> Security
>
> Chrome registers the response as a dictionary only when the response is
> CORS-readable from the document origin. Also we use a registered dictionary
> to decompress the response only when the response is CORS-readable from the
> document origin. Additionally, the dictionary and the compressed resource
> are required to be from the same origin as each other. So this should not
> introduce any new attack vector of information leaks.
>
> The dictionaries are partitioned with the storage cache and are cleared
> whenever cookies or cache is cleared to ensure that the dictionaries can
> not be abused as a tracking vector.
>
>
> 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?
>
> No
>
> Goals for experimentation
>
> We would like to collect feedback on the updated API design of Compression
> Dictionary Transport feature. Also, we would like to continue some
> experiments using this feature to measure its performance impact.
>
> Ongoing technical constraints
>
> None
>
>
> Debuggability
>
> We have introduced chrome://net-internals/#sharedDictionary. Using it, web
> developers can manage the registered dictionaries. Also web developers can
> check the related HTTP request and response headers (Use-As-Dictionary,
> Sec-Available-Dictionary, Accept-Encoding, Content-Encoding).
>
>
> Will this feature be supported on all six Blink platforms (Windows, Mac,
> Linux, Chrome OS, Android, and Android WebView)?
>
> Yes
>
> Is this feature fully tested by web-platform-tests
> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
> ?
>
> No. We will rewrite some browser_tests to WPT.
>
> Flag name on chrome://flags
>
> chrome://flags/#enable-compression-dictionary-transport-backend
> chrome://flags/#enable-compression-dictionary-transport
>
> Finch feature name
>
> CompressionDictionaryTransportBackend CompressionDictionaryTransport
>
> Requires code in //chrome?
>
> True
>
> Tracking bug
>
> https://crbug.com/1413922
>
> Launch bug
>
> https://launch.corp.google.com/launch/4266286
>
> Estimated milestones
>
> OriginTrial desktop last
>
> 125
>
> OriginTrial desktop first
>
> 123
>
> OriginTrial Android last
>
> 125
>
> OriginTrial Android first
>
> 123
>
>
> Link to entry on the Chrome Platform Status
>
> https://chromestatus.com/feature/5124977788977152
>
> Links to previous Intent discussions
>
> Intent to prototype:
> https://groups.google.com/a/chromium.org/g/blink-dev/c/-qYpLo9DTjw/m/JX6kbUOtBQAJ
>
> Intent to experiment:
> https://groups.google.com/a/chromium.org/g/blink-dev/c/NgH-BeYO72E/m/oup5DpbxAAAJ
>
>
>

-- 
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+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADk0S-VPyLaum9rma1cpFZhUSF8FuBy3DBJFcwDUmabWE8VC5g%40mail.gmail.com.

Reply via email to