-
Notifications
You must be signed in to change notification settings - Fork 1k
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
gRPC HTTP/3 support in Tonic #339
Comments
Thanks for opening this! You are on the right track here, once hyper gets h3 we can easily expose it for tonic. |
Initial progress is here hyperium/h3#1 |
I think I'll close this for now. Until hyper supports h3 there isn't much we can do. |
Here's the issue for adding As of writing, it's currently waiting on this exploratory effort to add |
any news? |
@usmonie See the linked issues. If nothings been posted there then there is probably nothing new. No need to post on old issues. |
@davidpdrsn But looks like ... |
That's reqwest. What about hyper? |
Based on this, it seems that adding h3 to reqwest was the main problem. |
As far as I understand, it was hyper waiting on reqwest (for client-side support), and even as of 0.12.5, reqwest's http/3 support still requires an experimental flag; my understanding from hyperium/hyper#1818 is that Hyper is waiting for that to stabilise before taking it on. The request-side issue for this is seanmonstar/reqwest#2303. So long-story-short, it still appears to be blocked in a grand-dependency in a PRs-welcome state. |
Feature Request
Tracking issue for supporting client and server http3 transport for gRPC services. Functionality should mostly be inherited by dependency crates, but would likely need exposure through tonic layer.
Crates
In Tonic:
https://github.com/hyperium/tonic/blob/master/tonic/src/transport/mod.rs
Inheriting from Hyper:
hyperium/hyper#1818
Inheriting from Quinn:
https://github.com/djc/quinn/issues?q=is%3Aissue+is%3Aopen+label%3Ah3
Motivation
To have a rust and tokio framework that is futures based and supports H3 for machine to machine APIs, as well as upcoming browser to server H3 requests.
Alternatives
There are other libraries that implement H3 like quiche, but they all still require significant work to get gRPC based services working.
The text was updated successfully, but these errors were encountered: