grpc-quic 0.1.0

Custom QUIC transport for tonic gRPC — replaces TCP with QUIC streams
Documentation

grpc-quic

A custom QUIC transport implementation for tonic gRPC.

Overview

grpc-quic replaces the default HTTP/TCP transport with QUIC streams while preserving full gRPC semantics, protobuf encoding, and tonic service abstractions. All RPC data is transmitted as opaque gRPC-encoded bytes over QUIC streams secured by TLS 1.3.

tonic  (RPC layer: service traits + protobuf codec)
        ↓
grpc-quic  (tower::Service transport adapter)
        ↓
quinn  (QUIC bi-directional streams, 1 stream = 1 RPC call)
        ↓
UDP + TLS 1.3 (rustls)

Key design principles

  • grpc-quic does not change gRPC semantics.
  • grpc-quic only replaces the transport layer (TCP → QUIC).
  • tonic / prost remain fully intact as the RPC layer.

Quick start

See the examples/ directory for unary, client-streaming, server-streaming, and bidirectional-streaming demos.