QUIC protocol implementation for compio.
This crate provides QUIC (RFC9000) support for compio, built on top of quinn-proto. QUIC is a modern transport protocol that provides features like multiplexing, built-in encryption, and improved connection migration, making it ideal for applications like HTTP/3 (RFC9114).
- QUIC client and server support
- Built on quinn-proto for robust QUIC implementation
- Optional HTTP/3 support via the
h3feature - Multiple certificate verification options:
platform-verifier: Use platform-specific certificate verificationnative-certs: Use system's native certificate storewebpki-roots: Use Mozilla's root certificates
- Integration with compio's completion-based IO model
- Cross-platform support
Use compio directly with quic feature enabled:
cargo add compio --features quicExample:
use compio::quic::{Endpoint, ClientConfig};
let mut endpoint = Endpoint::client("0.0.0.0:0".parse()?)?;
let connection = endpoint.connect("compio.rs:443", "compio.rs").await?;
// Use the QUIC connection
let (mut send, mut recv) = connection.open_bi().await?;
send.write_all(b"Hello QUIC!").await?;