tonic-h3
Experimental implementation of running tonic grpc on h3, following the proposal: G2-http3-protocol
tonic-h3 is targeted to support all quic transport implementations that integrates with h3.
| Feature | Backend | Support |
|---|---|---|
quinn |
Quinn (h3-quinn) | production |
msquic |
MsQuic (msquic-h3) | experimental |
s2n-quic |
s2n-quic (s2n-quic-h3) | experimental |
quiche |
quiche (quiche-h3) | experimental |
Note: Only the quinn backend is supported for production use. The
msquic,s2n-quic, andquichebackends are experimental and provided for evaluation only.
See examples and tests for getting started.
Compatibility with grpc-dotnet with http3 is tested here.
Supporting crates
- axum-h3 Use axum with h3, used by
tonic-h3server. - h3-util Http3 server and client utilities used by
axum-h3andtonic-h3. - Other quic wrapping crates to support alternative quic implementations.
Get started
Add deps to your cargo.toml
= { ="*" , = false, = ["quinn"] }
tonic examples
Server:
async
Client:
async
License
MIT license. See LICENSE.