Currently, when a miner mines a block, they broadcast the next 1mb block and the mining competition begins on that block. It will take 10 mins for the block to be mined. In that 10 minutes, the network is not being used for block transmission. We're fully engaged in compute.
What if, at an agreed block in the future, the bitcoin protocol changed such that:
- The winning miner broadcasts a 1mb block in the usual way and the network gets mining. Call this CB (current block).
- The winning miner continues to broadcast 1mb blocks every P seconds. Call these blocks NB1...N (next block)
- All miners, currently busy mining CB, now are also in the background assembling a larger block from all the NB1...N blocks
- Once a miner mines CB, its announced to the network, along with a new 1mb block, called LNB (last next block)
- All miners now assemble a new larger block from LNB and all the NB1...N they already have, and begin mining on it this larger "goldilocks block" - a block that is just about the right size given what the network can handle in terms of throughput.
P is tuned to allow fair propagation of the NB blocks. Lets say it's 60 seconds. This would make the goldilocks block an effective 10MB in size.
I don't know if this idea works or not. It's a meditation retreat thought more than a shower thought, but I wanted to bounce it off people who might know better, so, if nothing else, at least I can learn something :)
Thanks for listening.