<p>Gavin Andresen wrote a bit on the topic here: <a href="https://gist.github.com/gavinandresen/e20c3b5a1d4b97f79ac2" rel="nofollow noreferrer">O(1) Block Propagation</a>.</p>

<p>Essentially, he is implementing the conclusion from <a href="https://bitcoin.stackexchange.com/a/30480/5406">your answer</a>, a way to get around resending all transactions when propagating a new block. He is working on implementing <a href="https://bitcoin.stackexchange.com/q/30648/5406">Invertible Bloom Lookup Tables</a> to use for set reconciliation. IBLT excel at comparing sets of significant overlap, and therefore are very efficient at relaying the differences between included transactions and Mempool of recipient.</p>

CC BY-SA 3.0
2014-10-05T00:06:22.097Z
2014-10-05T00:06:22.097Z
2017-04-13T12:47:33.660Z
Murch
<p><a href="http://bitcoinstats.com/network/propagation/" rel="nofollow noreferrer">This website measures block and transaction time propagation.</a>. At the time of writing, the time required for 90% of surveyed clients to get a block is about twelve seconds. (I just averaged the last five days.)</p>

<p>How could this be reduced? On a related note, what are the major causes of propagation delay? Is this primarily caused by <strong>network latency</strong>, <strong>network bandwidth</strong>, or by clients <strong>verifying the block</strong>?</p>

<p>Related:</p>

<ul>
<li><a href="https://bitcoin.stackexchange.com/questions/10821/how-long-does-it-take-to-propagate-a-newly-created-block-to-the-entire-bitcoin-n">How long does it take for blocks to propagate?</a>  </li>
<li><a href="http://www.tik.ee.ethz.ch/file/49318d3f56c1d525aabf7fda78b23fc0/P2P2013_041.pdf" rel="nofollow noreferrer">"Information and Propagation in the Bitcoin network"</a>, by Decker and Wattenhofer.</li>
</ul>

<block><network><latency><block-propagation-time>
How could block propagation time be reduced?
Nick ODell
# How could block propagation time be reduced?

(Asked by: username_0 on 2014-09-11)

[This website measures block and transaction time propagation.](http://bitcoinstats.com/network/propagation/). At the time of writing, the time required for 90% of surveyed clients to get a block is about twelve seconds. (I just averaged the last five days.)

How could this be reduced? On a related note, what are the major causes of propagation delay? Is this primarily caused by **network latency**, **network bandwidth**, or by clients **verifying the block**?

Related:

* [How long does it take for blocks to propagate?](https://bitcoin.stackexchange.com/questions/10821/how-long-does-it-take-to-propagate-a-newly-created-block-to-the-entire-bitcoin-n)
* ["Information and Propagation in the Bitcoin network"](http://www.tik.ee.ethz.ch/file/49318d3f56c1d525aabf7fda78b23fc0/P2P2013_041.pdf), by Decker and Wattenhofer.

**Tags:** block, network, latency, block-propagation-time


---

## 1 answers

### Answer by username_1 on 2014-10-05. Score: 1

Gavin Andresen wrote a bit on the topic here: [O(1) Block Propagation](https://gist.github.com/gavinandresen/e20c3b5a1d4b97f79ac2).

Essentially, he is implementing the conclusion from [your answer](https://bitcoin.stackexchange.com/a/30480/5406), a way to get around resending all transactions when propagating a new block. He is working on implementing [Invertible Bloom Lookup Tables](https://bitcoin.stackexchange.com/q/30648/5406) to use for set reconciliation. IBLT excel at comparing sets of significant overlap, and therefore are very efficient at relaying the differences between included transactions and Mempool of recipient.


---

