Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support zstd Content-Encoding #50643

Open
1 task done
manandre opened this issue Sep 11, 2023 · 3 comments
Open
1 task done

Support zstd Content-Encoding #50643

manandre opened this issue Sep 11, 2023 · 3 comments
Labels
area-middleware Includes: URL rewrite, redirect, response cache/compression, session, and other general middlesware blocked The work on this issue is blocked due to some dependency
Milestone

Comments

@manandre
Copy link

Is there an existing issue for this?

  • I have searched the existing issues

Is your feature request related to a problem? Please describe the problem.

No response

Describe the solution you'd like

Zstandard, or zstd, is a data compression mechanism described in RFC8878. It is a fast lossless compression algorithm, targeting real-time compression scenarios at zlib-level and better compression ratios. The "zstd" token was added as an IANA-registered Content-Encoding token as per https://datatracker.ietf.org/doc/html/rfc8878#name-content-encoding.

The Facebook/Zstd team has published some of their research on compression level vs. CPU vs. compression ratio.

Current support

Features request

Request compression

  • Support zstd as the token from the Content-Encoding header in the request.
  • Decompress with Zstandard the request content.

Response compression

  • Support zstd as a token from the Accept-Encoding header in the request.
  • Compress with Zstandard when the zstd token is elected as response compression, and so stored in the Content-Encoding header in the response.

Zstandard implementation

Additional context

No response

@dotnet-issue-labeler dotnet-issue-labeler bot added the area-middleware Includes: URL rewrite, redirect, response cache/compression, session, and other general middlesware label Sep 11, 2023
@Tratcher Tratcher added the blocked The work on this issue is blocked due to some dependency label Sep 12, 2023
@Tratcher Tratcher added this to the Backlog milestone Sep 12, 2023
@ghost
Copy link

ghost commented Sep 12, 2023

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

@dotnet-policy-service dotnet-policy-service bot added the pending-ci-rerun When assigned to a PR indicates that the CI checks should be rerun label Feb 6, 2024
@wtgodbe wtgodbe removed the pending-ci-rerun When assigned to a PR indicates that the CI checks should be rerun label Feb 6, 2024
@dotnet-policy-service dotnet-policy-service bot added the pending-ci-rerun When assigned to a PR indicates that the CI checks should be rerun label Feb 6, 2024
@iamcarbon
Copy link

iamcarbon commented Feb 9, 2024

Chrome has committed to shipping Zstd Content-Encoding in v123, and Safari and Firefox have both indicated a positive position toward the proposal.

@wtgodbe wtgodbe removed the pending-ci-rerun When assigned to a PR indicates that the CI checks should be rerun label Feb 13, 2024
@dotnet dotnet deleted a comment from dotnet-policy-service bot Feb 13, 2024
@dotnet dotnet deleted a comment from dotnet-policy-service bot Feb 13, 2024
@YohanSciubukgian
Copy link

YohanSciubukgian commented Mar 27, 2024

Chrome 123 release support zstd

Could you consider it for .NET 9 ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-middleware Includes: URL rewrite, redirect, response cache/compression, session, and other general middlesware blocked The work on this issue is blocked due to some dependency
Projects
None yet
Development

No branches or pull requests

5 participants