On Mon, Apr 7, 2014 at 8:03 PM, Gregory Maxwell <gmaxwell@gmail.com> wrote:
A bitmap also means high overhead and— if it's used to advertise
non-contiguous blocks— poor locality, since blocks are fetched
sequentially.
A range seems like a great compromise. Putting it in the address is also a pretty cool.
If light nodes selected a random contiguous 1GB of the block-chain, then they could handle most of the download overhead, rather than the full nodes.
Another way to do it would be to have something like a routing table. If a node is queried for a block, it can reply with the IP of a node with that block instead of sending the block.
One problem is that it means that light nodes have to accept incoming connections. Otherwise, it would have to be routed through the network.