Author

Topic: Relationship between chain reorg frequency and block size/speed (Read 216 times)

legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
Additionally, as reducing blocktime the number of orphan blocks increases, more energy is wasted.

When 2 miners find the nonce and mine the block nearly at the same time one of these blocks become orphan. All energy spent in the orphan block is literally wasted.

As energy consumption is a hot topic today, one more reason to keep block time at 10 minutes to minimize orphan blocks
Same goes for increasing the block size. However, you have to include certain trade-offs with your choices.

It is quite inevitable for the stale rates to increase(?) given any changes in those parameters. Time taken for validation of blocks should be a second, max and the propagation delay should be very insignificant as well. The stales should only increase (to an appreciable extent) if the miners are not interconnected well enough, or if blocks are always mined before the majority of the miners received and validates the transaction.

It simply doesn't make sense for us to stagnate the current parameters, because Bitcoin simply won't scale, on-chain that is. Orphan rate isn't an issue by the way, orphans and stales are different.
copper member
Activity: 1652
Merit: 1901
Amazon Prime Member #7
Although bitcoin transaction is 10 minutes on average, but mining block can take less than 2 minutes, it can take less than 10 minutes, it can even take more than 10 minutes, while chain reorg can occur at any time, if you check the link below, to see the recent chain reorg, you will noticed the second and third last ones was on the same day, this indicates it can happen at any time. If you check the past ones, there are time chain reorg will not occur in over 6 months or more, so not time specific and not also blocksize specific.
One of the reasons why bitcoin transactions are programmed to be 10 minutes on average (and not shorter) is to allow blocks to propagate around the network (to minimize chain reorgs*).
Bitcoin blocks will be found once every 10 minutes (on average), not to minimize orphan blocks, but in order to reach a compromise between having a quick confirmation time, and having a low number of reorgs/orphans.

There is an inverse relationship between the average block time and the number of reorgs. Similarly, there is an inverse relationship between the average actual block size and the number of reorgs -- this is not the maximum block size, but rather the size of blocks in practice.

You can calculate the expected percentage of reorgs that are one block deep by dividing the estimated amount of time between one miner finds a block and when another miner will start mining on top of the said newly found block, by the amount of time between blocks (on average).

Bitcoin might have a lower orphan rate than you might expect based on orphan rates of various altcoins, however, this is likely due to more resources being invested in miners being able to communicate with each other quickly, and resources dedicated to quickly verifying newly received blocks.
legendary
Activity: 2352
Merit: 6089
bitcoindata.science
For comparison, Monero increased their block time from 1 minute to 2 minutes in March 2016, partly due to empty blocks adding unnecessary bloat, and partly to decrease the high number of orphan blocks they were experiencing. There were many stale blocks every day, sometimes several in a single hour. There was some discussion at the time of increasing it further, but 2 minutes seems to be a happy medium, at least for the time being.

Additionally, as reducing blocktime the number of orphan blocks increases, more energy is wasted.

When 2 miners find the nonce and mine the block nearly at the same time one of these blocks become orphan. All energy spent in the orphan block is literally wasted.

As energy consumption is a hot topic today, one more reason to keep block time at 10 minutes to minimize orphan blocks
member
Activity: 189
Merit: 16
How likely do chain reorgs happen due to blocks being mined at the same time? How does it compare if the block size/speed parameters change? And are there any historical comparisons of chain reorg frequency for BTC vs other cryptos?

It's an exciting question, but doing comparisons to other blockchains might not help. Usually, there will be more differences than just the block size or the speed parameters, so it will not allow a ceteris paribus comparison.

Developing a realistic simulation might allow such experiments as you would be able to control exactly which parameters are different.
legendary
Activity: 2268
Merit: 18711
For comparison, Monero increased their block time from 1 minute to 2 minutes in March 2016, partly due to empty blocks adding unnecessary bloat, and partly to decrease the high number of orphan blocks they were experiencing. There were many stale blocks every day, sometimes several in a single hour. There was some discussion at the time of increasing it further, but 2 minutes seems to be a happy medium, at least for the time being.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
And the miners' structure, right? You cannot compare two different networks, because of the factors that affect your final result.
Yes.

Question:  How can you know for sure that it has come across the whole network? How can you be sure that there aren't any nodes that aren't aware of the information you shared? In a peer-to-peer network, there's no way to confirm the information's acquisition from each node and I wonder how that paper calculates 6.5 seconds on average. I haven't read it all; it is TLTR.
You don't. The paper, AFAIK runs a spy node to check the nodes if they've received and validated the block.

Anyways, the point is that you don't have to worry about the upper percentile. Miners won't want a slow block propagation because that increases the chances of a fork. Miners are more likely to be comprising of the far lower percentile, or they can use alternate forms of direct connection as well. As long as you do not selectively connect to nodes and ensure a sufficiently large sample, your results should be indicative of the actual situation.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
The point isn't how much the block limit is.
My bad then. When I read “block size” I understand the block size limit. “Bitcoin Cash's blocks are far emptier and lighter than Bitcoin's” is a better phrase that could be used instead.

I believe the point brought up here is that you cannot compare them because BCH's blocks are consistently smaller than BTC's blocks.
And the miners' structure, right? You cannot compare two different networks, because of the factors that affect your final result.




Question:  How can you know for sure that it has come across the whole network? How can you be sure that there aren't any nodes that aren't aware of the information you shared? In a peer-to-peer network, there's no way to confirm the information's acquisition from each node and I wonder how that paper calculates 6.5 seconds on average. I haven't read it all; it is TLTR.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
Bitcoin Cash's block size isn't smaller than Bitcoin's. Each block can weight up to 32 MBs, which means it is 32 times more than one BTC block.
The point isn't how much the block limit is. It doesn't make a difference if BCH has the capacity for 32MB blocks but the blocks are far less than Bitcoin's 1.6-2MB raw size blocks. You cannot get a fair comparison of stale rates without having all of the variables constant. The way miners are structured in a network (ie. how interconnected they are, how fast the blocks are propagated with their reference client, etc) and a myriad of factors will affect your results.

I believe the point brought up here is that you cannot compare them because BCH's blocks are consistently smaller than BTC's blocks.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Here's the hottest answers about chain reorganization: https://bitcoin.stackexchange.com/tags/chain-reorganization/hot

1. Bcash block size is so much smaller than bitcoin block size and everything else including the time between blocks is the same.
Bitcoin Cash's block size isn't smaller than Bitcoin's. Each block can weight up to 32 MBs, which means it is 32 times more than one BTC block.

If bitcoin transactions was programmed to be say 2 minutes on average (rather than 10 minutes) , then I'd expect on average, the frequency of reorgs to be more than the current implementation. Was just wondering if there is a comparison somewhere. For example, does Bitcoin Cash have significantly more chain reorgs than Bitcoin, therefore providing some evidence that the 10 mins parameter does materially reduce the frequency of reorgs?
As ranochigo said, it has to do with the propagation rate which is improved in Bitcoin. On average, it takes 6.5 seconds for the information to be reached across the nodes. And note that the link is relatively old.

If two miners mined the same block during the spread, then they'd have to mine it between those 6.5 seconds. On average it takes 600 seconds to generate a block which means that it happens on (6.5/600)*100 = 1.08% of the times. If the blocks were generated every 2 minutes (as you say), then it'd happen on the (6.5/120)*100 = 5.4% of the blocks. Please, correct me if I'm wrong.
legendary
Activity: 3472
Merit: 10611
For example, does Bitcoin Cash have significantly more chain reorgs than Bitcoin, therefore providing some evidence that the 10 mins parameter does materially reduce the frequency of reorgs?
Unfortunately that comparison won't work because of 2 reasons.
1. Bcash block size is so much smaller than bitcoin block size and everything else including the time between blocks is the same.
2. One factor affecting reorgs is the distribution of mining. For example if there is 2 mining pools both near each other or controlled by same entity there won't be any reorgs but if the hashrate is more distributed and pools are stand alone and far from each other the chances of a chain split and the reorg is higher.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
If you check the past ones, there are time chain reorg will not occur in over 6 months or more, so not time specific and not also blocksize specific.
Not really: https://forkmonitor.info/feeds/stale_candidates/btc.rss.


Stale block occurs if there are two distinct blocks at the same block height. This can happen more frequently if your propagation within the network is slow and miners end up getting blocks slower and starts to mine on different blocks at the same height. In theory, as long as your propagation (and validation) timing is very much lower than the block intervals, you can still have a reasonable stale rates. I can't think of any peer-reviewed papers on the subject. The propagation rate has improved, by the fact that the network majority of the miners are more well-connected and/or general network or protocol improvements. I believe that if done correctly, then there is no problem at all, afterall, Segwit was in effect a block size increase.

I don't believe that you'll be able to find any reliable actual statistics on BCH. BCH is smaller than Bitcoin when comparing TPS.
member
Activity: 159
Merit: 72
Although bitcoin transaction is 10 minutes on average, but mining block can take less than 2 minutes, it can take less than 10 minutes, it can even take more than 10 minutes, while chain reorg can occur at any time, if you check the link below, to see the recent chain reorg, you will noticed the second and third last ones was on the same day, this indicates it can happen at any time. If you check the past ones, there are time chain reorg will not occur in over 6 months or more, so not time specific and not also blocksize specific.
One of the reasons why bitcoin transactions are programmed to be 10 minutes on average (and not shorter) is to allow blocks to propagate around the network (to minimize chain reorgs*).

If bitcoin transactions was programmed to be say 2 minutes on average (rather than 10 minutes) , then I'd expect on average, the frequency of reorgs to be more than the current implementation. Was just wondering if there is a comparison somewhere. For example, does Bitcoin Cash have significantly more chain reorgs than Bitcoin, therefore providing some evidence that the 10 mins parameter does materially reduce the frequency of reorgs?

*Source: https://learnmeabitcoin.com/technical/target
legendary
Activity: 1512
Merit: 4795
Leading Crypto Sports Betting & Casino Platform
Although bitcoin transaction is 10 minutes on average, but mining block can take less than 2 minutes, it can take less than 10 minutes, it can even take more than 10 minutes, while chain reorg can occur at any time, if you check the link below, to see the recent chain reorg, you will noticed the second and third last ones was on the same day, this indicates it can happen at any time. If you check the past ones, there are time chain reorg will not occur in over 6 months or more, so not time specific and not also blocksize specific.

Edit: https://learnmeabitcoin.com/technical/chain-reorganisation
member
Activity: 159
Merit: 72
How likely do chain reorgs happen due to blocks being mined at the same time? How does it compare if the block size/speed parameters change? And are there any historical comparisons of chain reorg frequency for BTC vs other cryptos?
Jump to: