<oembed><type>rich</type><version>1.0</version><author_name>npub10uzud4rf4636awmfgvarmcfndcmdnv8rfd2y3rx2sqgckv9zur4qahln8t</author_name><author_url>https://nostr.ae/npub10uzud4rf4636awmfgvarmcfndcmdnv8rfd2y3rx2sqgckv9zur4qahln8t</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2016-12-10&#xA;📝 Original message:&gt; While disk space requirements might not be a big problem, block&#xA;propagation time is&#xA;&#xA;Is block propagation time really still a problem? Compact blocks and FIBRE&#xA;should help here.&#xA;&#xA;&gt; Bitcoin, because its fundamental design, can scale by using offchain&#xA;solutions.&#xA;&#xA;I agree.&#xA;However, I believe that on-chain scaling will be needed regardless of which&#xA;off-chain solution gains popularity.&#xA;&#xA;2016-12-10 11:44 GMT+01:00 s7r via bitcoin-dev &lt;&#xA;bitcoin-dev at lists.linuxfoundation.org&gt;:&#xA;&#xA;&gt; t. khan via bitcoin-dev wrote:&#xA;&gt; &gt; BIP Proposal - Managing Bitcoin’s block size the same way we do&#xA;&gt; &gt; difficulty (aka Block75)&#xA;&gt; &gt;&#xA;&gt; &gt; The every two-week adjustment of difficulty has proven to be a&#xA;&gt; &gt; reasonably effective and predictable way of managing how quickly blocks&#xA;&gt; &gt; are mined. Bitcoin needs a reasonably effective and predictable way of&#xA;&gt; &gt; managing the maximum block size.&#xA;&gt; &gt;&#xA;&gt; &gt; It’s clear at this point that human beings should not be involved in the&#xA;&gt; &gt; determination of max block size, just as they’re not involved in&#xA;&gt; &gt; deciding the difficulty.&#xA;&gt; &gt;&#xA;&gt; &gt; Instead of setting an arbitrary max block size (1MB, 2MB, 8MB, etc.) or&#xA;&gt; &gt; passing the decision to miners/pool operators, the max block size should&#xA;&gt; &gt; be adjusted every two weeks (2016 blocks) using a system similar to how&#xA;&gt; &gt; difficulty is calculated.&#xA;&gt; &gt;&#xA;&gt; &gt; Put another way: let’s stop thinking about what the max block size&#xA;&gt; &gt; should be and start thinking about how full we want the average block to&#xA;&gt; &gt; be regardless of size. Over the last year, we’ve had averages of 75% or&#xA;&gt; &gt; higher, so aiming for 75% full seems reasonable, hence naming this&#xA;&gt; &gt; concept ‘Block75’.&#xA;&gt; &gt;&#xA;&gt; &gt; The target capacity over 2016 blocks would be 75%. If the last 2016&#xA;&gt; &gt; blocks are more than 75% full, add the difference to the max block size.&#xA;&gt; &gt; Like this:&#xA;&gt; &gt;&#xA;&gt; &gt; MAX_BLOCK_BASE_SIZE = 1000000&#xA;&gt; &gt; TARGET_CAPACITY = 750000&#xA;&gt; &gt; AVERAGE_OVER_CAP = average block size of last 2016 blocks minus&#xA;&gt; &gt; TARGET_CAPACITY&#xA;&gt; &gt;&#xA;&gt; &gt; To check if a block is valid, ≤ (MAX_BLOCK_BASE_SIZE + AVERAGE_OVER_CAP)&#xA;&gt; &gt;&#xA;&gt; &gt; For example, if the last 2016 blocks are 85% full (average block is 850&#xA;&gt; &gt; KB), add 10% to the max block size. The new max block size would be&#xA;&gt; &gt; 1,100 KB until the next 2016 blocks are mined, then reset and&#xA;&gt; &gt; recalculate. The 1,000,000 byte limit that exists currently would&#xA;&gt; &gt; remain, but would effectively be the minimum max block size.&#xA;&gt; &gt;&#xA;&gt; &gt; Another two weeks goes by, the last 2016 blocks are again 85% full, but&#xA;&gt; &gt; now that means they average 935 KB out of the 1,100 KB max block size.&#xA;&gt; &gt; This is 93.5% of the 1,000,000 byte limit, so 18.5% would be added to&#xA;&gt; &gt; that to make the new max block size of 1,185 KB.&#xA;&gt; &gt;&#xA;&gt; &gt; Another two weeks passes. This time, the average block is 1,050 KB. The&#xA;&gt; &gt; new max block size is calculated to 1,300 KB (as blocks were 105% full,&#xA;&gt; &gt; minus the 75% capacity target, so 30% added to max block size).&#xA;&gt; &gt;&#xA;&gt; &gt; Repeat every 2016 blocks, forever.&#xA;&gt; &gt;&#xA;&gt; &gt; If Block75 had been applied at the difficulty adjustment on November&#xA;&gt; &gt; 18th, the max block size would have been 1,080KB, as the average block&#xA;&gt; &gt; during that period was 83% full, so 8% is added to the 1,000KB limit.&#xA;&gt; &gt; The current size, after the December 2nd adjustment would be 1,150K.&#xA;&gt; &gt;&#xA;&gt; &gt; Block75 would allow the max block size to grow (or shrink) in response&#xA;&gt; &gt; to transaction volume, and does so predictably, reasonably quickly, and&#xA;&gt; &gt; in a method that prevents wild swings in block size or transaction fees.&#xA;&gt; &gt; It attempts to keep blocks at 75% total capacity over each two week&#xA;&gt; &gt; period, the same way difficulty tries to keep blocks mined every ten&#xA;&gt; &gt; minutes. It also keeps blocks as small as possible.&#xA;&gt; &gt;&#xA;&gt; &gt; Thoughts?&#xA;&gt; &gt;&#xA;&gt; &gt; -t.k.&#xA;&gt; &gt;&#xA;&gt;&#xA;&gt; I like the idea. It is good wrt growing the max. block size&#xA;&gt; automatically without human action, but the main problem (or question)&#xA;&gt; is not how to grow this number, it is what number can the network&#xA;&gt; handle, considering both miners and users. While disk space requirements&#xA;&gt; might not be a big problem, block propagation time is. The time required&#xA;&gt; for a block to propagate in the network (or at least to all the miners)&#xA;&gt; is directly dependent of its size.  If blocks take too much time to&#xA;&gt; propagate in the network, the orphan rate will increase in unpredictable&#xA;&gt; ways. For example if the internet speed in China is worse than in&#xA;&gt; Europe, and miners in China have more than 50% of the hashing power,&#xA;&gt; blocks mined by European miners might get orphaned.&#xA;&gt;&#xA;&gt; The system as described can also be gamed, by filling the network with&#xA;&gt; transactions. Miners have the monetary interest to include as many&#xA;&gt; transactions as possible in a block in order to collect the fees.&#xA;&gt; Regardless how you think about it, there has to be a maximum block size&#xA;&gt; that the network will allow as a consensus rule. Increasing it&#xA;&gt; dynamically based on transaction volume will reach a point where the&#xA;&gt; number got big enough that it broke things. Bitcoin, because its&#xA;&gt; fundamental design, can scale by using offchain solutions.&#xA;&gt;&#xA;&gt;&#xA;&gt; _______________________________________________&#xA;&gt; bitcoin-dev mailing list&#xA;&gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&gt;&#xA;&gt;&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161210/0eae6a60/attachment.html&gt;</html></oembed>