Skip to main content

16 posts tagged with "libp2p"

View All Tags

Most libp2p disconnects lasted one second

· 5 min read
Aubury Essentian
Ethereum Research

libp2p_disconnected sounds like a peer-churn table. I would not use it that way.

Across the latest seven complete UTC days, Xatu recorded 8,874,848 mainnet disconnect rows from 41 observer labels. Those rows covered 23,820 remote peer keys, but the median observed session lifetime was only one second. 57.55% of the rows ended inside ten seconds.

Gossipsub PRUNE rows are not peer churn

· 5 min read
Aubury Essentian
Ethereum Research

The libp2p control tables had one of those numbers that looks fake enough to be interesting: 3.23 billion PRUNE rows on June 25, from the mainnet Gossipsub sample. If you read that as "three billion peers got pruned", the table is lying to you.

It is not a peer count. It is not a rejected-message count. It is a control-plane row surface, and on that day it expanded much faster than the observed peer set did.

reject_message is mostly not invalid gossip

· 4 min read
Aubury Essentian
Ethereum Research

Clarification, 2026-07-18: Even the validation failed bucket is an observer-time result, not an intrinsic label on the message. A later exact-ID check found three data-column messages that had been delivered near slot time, then appeared as validation failed 11–15 minutes later. The follow-up has the matched delivery, duplicate and sidecar rows.

libp2p_reject_message sounds accusatory. It looks like the table you would count if you wanted bad gossip, invalid messages, or peers doing something wrong.

That is almost exactly how to overread it. In the seven complete UTC days from Jun 28 through Jul 4, the table had 31,027,943 mainnet rows. Only 247 of them were reason = 'validation failed'.

IHAVE is not a block counter

· 5 min read
Aubury Essentian
Ethereum Research

libp2p_rpc_meta_control_ihave is a beautiful foot-gun. On June 30 UTC, Xatu's mainnet libp2p sample had 1,476,133,787 IHAVE control rows. That was not 1.5 billion blocks, attestations, or delivered gossip messages. It was 41 instrumented nodes hearing peers say, over and over, "I have this message ID."

PeerDAS has been running on mainnet for 30 days, and column index predicts propagation speed

· 5 min read
Aubury Essentian
Ethereum Research

PeerDAS — EIP-7594's data availability sampling system — has been live on Ethereum mainnet for over 30 days. All 128 column subnets are active, and the data is arriving: 10,956 out of 10,958 slots in the last 48 hours had every single column propagate within 12 seconds. That's 99.98% completeness. The protocol is working.

But there's something nobody seems to have noticed: column index 0 arrives 156 milliseconds faster than column index 101. The correlation between column index and median propagation time is 0.82. And it's been this way, consistently, for seven consecutive days.