Unveiling Ethereum's P2P Network: The Role of Chain and Client Diversity
Jiahao Luo
TL;DR
The paper tackles fragmentation in Ethereum's post-merge P2P network caused by chain and client diversity. It introduces a real-time, instrumented measurement tool that monitors devp2p message exchanges, discovers peers, and tracks sub-protocol compatibility to assess network health. Key findings include significant inefficiencies in node discovery, high rates of non-compliant or unreachable peers, NAT-related IP inaccuracies, and a marked decline in fully compatible peers as chain diversity grows. The work underscores the need to account for chain and client diversity in network health assessments and informs protocol design for improved connectivity, resilience, and performance in Ethereum's evolving ecosystem.
Abstract
The Ethereum network, built on the devp2p protocol stack, was designed to function as a "world computer" by supporting decentralized applications through a shared P2P infrastructure. However, the proliferation of blockchain forks has increased network diversity, complicating node discovery and reducing efficiency. Ethereum mainnet nodes cannot easily distinguish between peers from different blockchains until after establishing an expensive TCP connection, encryption, and protocol handshake. This inefficiency is further worsened by client diversity, where differences in software implementations cause protocol incompatibilities and connection failures. This paper introduces a monitoring tool that tracks devp2p message exchanges and client statuses to analyze connection dynamics and protocol variations. Our findings highlight issues such as inefficiencies in node discovery and client incompatibility, including timeouts in Geth during the discovery process. The study emphasizes the need to consider chain and client diversity when assessing the health and performance of the post-merge Ethereum network.
