13

What are the average transaction propagation times in Ethereum for reaching 50% and 95% of nodes? That is, once a transaction is generated on a given node, how long does it take on average to reach 50% and 95% of nodes in the Ethereum network?

Vitalik mentions a paper presenting block propagation statistics for Bitcoin: https://blog.ethereum.org/2014/07/11/toward-a-12-second-block-time/

"According to a 2013 paper from Decker and Wattenhofer in Zurich, once a miner produces a block on average it takes 6.5 seconds for the block to reach 50% of nodes, 40 seconds for it to reach 95% of nodes and the mean delay is 12.6 seconds."

It would be interesting to have similar statistics for Ethereum transaction propagation times.

2

1 Answer 1

3

If every node is connected to 100 other nodes, even with a large amount of overlap -- say, essentially, you're only connected to 20 nodes that are distinct from your "near neighbours", and there is one node per person on the planet, we can make some assumptions about efficient routing and find you'd never have to be more than 8 hops away from the required validator cluster. If we assume the average packet has to propagate across North America (some will be closer, some will be farther), then that's around a half-second propagation delay. If we have a well-known set of validators, we can actually directly connect to one of the ones involved in your transaction, as with a client-server architecture.

If you have validators on a 1Gbps pipe, you can receive ~100Mbps' worth of transactions in your cluster. That's 2500 transactions per second per shard with a propagation time of the latency between you and one of the shard's nodes + internal shard propagation delays. That's closer to a bit over one trip around the "world", worst-case, or about 400ms.

1

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.