Skip to main content
netspecsEthereum networking

1.7.1.TCP

Stage
Current
Validity
Active non-fork protocol.
Sources
2 pinned sources

TCP is the ordered, stream-oriented transport underneath two Ethereum surfaces: every RLPx session and the consensus libp2p fallback.

RLPx

RLPx is a TCP-based transport protocol. An RLPx connection is established by creating a TCP connection and agreeing on ephemeral key material for further encrypted and authenticated communication.

Consensus libp2p fallback

Consensus clients MUST support the TCP libp2p transport for both dialing and listening on IPv4 and IPv6. TCP is the fallback behind QUIC: when a peer is reachable over both, clients SHOULD prioritise the peer's QUIC addresses.

Because TCP cannot multiplex streams natively, TCP connections are secured with the libp2p-noise handshake and multiplexed with mplex or yamux; the libp2p stack page states the exact negotiation and security contract.