Hasty Briefsbeta

Bilingual

Noq: n0's new QUIC implementation in Rust

4 hours ago
  • #QUIC
  • #NAT Traversal
  • #Multipath
  • Announcement of noq (number 0 QUIC), a general-purpose QUIC implementation with multipath and NAT traversal support.
  • Originally forked from Quinn due to architectural mismatches and specific needs of iroh.
  • Transition from soft fork to hard fork to allow deeper structural changes without burdening Quinn maintainers.
  • Key features include QUIC Multipath, NAT traversal, and QUIC Address Discovery (QAD).
  • Multipath implementation allows QUIC to manage multiple paths (relay, direct IPv4, IPv6) as first-class concepts.
  • NAT traversal implementation is robust and production-grade, improving reliability and congestion awareness.
  • QAD replaces STUN for discovering public IP addresses, enhancing privacy and preventing protocol ossification.
  • Extended QLog support for better debugging and visualization of QUIC connections, including multipath events.
  • Introduction of WeakConnectionHandle for managing connections without keeping them alive unnecessarily.
  • noq has been in production since iroh v0.96, with interoperability tests against picoquic.
  • Future plans include further NAT traversal improvements and performance optimizations enabled by multipath.
  • Invitation for collaboration with those working on QUIC implementations, p2p transport, or diverse network applications.