eth-p2p-z: QUIC + Gossipsub in Zig
From transport plumbing to gossip mesh: building Ethereum’s p2p stack in Zig
Kai Chen (grapebaba)
EPF6 Fellow
Cayman(wemeetagain)�Mentor, Lodestar
Project Overview
Section 1
Why QUIC + Gossipsub in Zig?
Goal: Production-ready Zig native Ethereum p2p stack.
Zig native QUIC + Gossipsub now gives Ethereum clients a production-ready networking spine without leaving the Zig ecosystem.
Architecture
QUIC Transport
Section 2
QUIC engine & TLS security
Combines lsquic’s battle-tested QUIC engine with a libxev thread event loop for predictable latency and tight memory control.
Implements the full libp2p TLS spec on top of BoringSSL: one RTT handshake, self-signed peer certificates, and post-handshake identity verification.
Interop harness walkthrough
Dockerised transport interop harness (Redis-coordinated) exercises QUIC against go/rust/jvm libp2p.
Gossipsub v1.0
Section 3
Semiduplex stream management
Decouple stream management from the Gossipsub protocol.
Data is exchanged between peers using two separately negotiated streams, one inbound, one outbound. These streams are treated as unidirectional streams.
All the Gossipsub v1.0 features implemented
Feature-complete Gossipsub v1.0
Impact & Next Steps
Section 4
Milestones timeline
August
October
Nov
Finished lsquic lib integration, fully implemented libp2p TLS spec, QUIC transport feature completed.
Fully implemented libp2p Gossipsub v1.0 spec
Passed libp2p QUIC transport interop test against Go/Rust/Jvm implementation.
Zig native Ethereum p2p stack ready to integrate and extend
It compensates for the absence of p2p stack in the Ethereum Zig ecosystem.
Both QUIC transport and Gossipsub v1.0 are fully implemented, along with a common protocol handler interface for extending other protocol implementations. Help the Zig client team get rid of network stack binding.
Extend and integrate eth-p2p-z
Make eth-p2p-z production-ready
Interop Demo
Thank you!
Kai Chen
EPF6 fellow�281165273grape@gmail.com
@grapebaba
Appendix