-
Notifications
You must be signed in to change notification settings - Fork 18k
x/net/http2: h2c support #13128
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
Comments
We do not plan to support h2c. I don't want to receive bug reports from users who get bitten by transparent proxies messing with h2c. Also, until there's widespread browser support, it's not interesting. I am also not interested in being the chicken or the egg to get browser support going. I'm very happy with the TLS-only situation, and things like https://LetsEncrypt.org/ will make TLS much easier (and automatic) soon. Ask me again in one year. |
But you may be interested in #12737 which is about making some of the golang.org/x/net/http2 innards public, so others can implement h2c on their own, reusing most of the http2 guts. But implementing that bug does not mean the Go standard library or x/net/http2 itself will support h2c. It will only enable other Go packages outside of x/net/http2 to support h2c. |
@bradfitz We serve all our requests over TLS and we do want to serve http2 over TLS. But...we're putting ELB in front of the Go servers which could potentially terminate SSL before hitting it, and there're good reasons to do so, e.g., offloading SSL termination. So the communication between ELB and our Go servers don't have to be on TLS. And this may be a legit use case that you didn't think of. |
Yes, specialized protocols inside datacenters is a common and valid use case, but not one that the standard library needs to provide by itself. The specialized protocols that people use inside their datacenters varies a lot (maybe h2c, maybe not). Issue #12737 will make implementing those protocols easier for external packages. |
Currently
net/http2
only support h2. According to the HTTP2 spec, it can also run over straight TCP (h2c) instead of TLS. I wonder what's the roadmap for it./cc @bradfitz
The text was updated successfully, but these errors were encountered: