EOS finality

in #eos6 years ago

Steemit produces block every 3 seconds. The last irreversible block (LIB) is found after 14 nodes (2/3 of 21) are built on top of it. So this takes roughly 3X14 = 42 seconds. This is similar to what he said in this video

In EOS, a block is produced in 0.5 seconds. Following the above logic, LIB will be found in 0.5X14 = 7 seconds in EOS. But this is not what he says. He was always saying finality is found in 1-2 seconds, or 3 seconds sometimes (in this article: https://medium.com/eosio/dpos-bft-pipelined-byzantine-fault-tolerance-8a0634a270ba).

Am I missing something?

Sort:  

Nice video. It can clear the conception.

I understand pipeline is in work here. Can you clarify how he derives the 2-3 seconds finality time for EOS?

I think i just found the answer myself. Here: https://eosio.stackexchange.com/questions/445/how-long-on-average-before-a-transaction-included-in-a-block-is-final-and-irreve/455#455?newreg=e56eee173831404889d38c06b166a94c

Until BFT messages are deployed and working, the DPOS side of BFT-DPOS will reach finality for a transaction 180 seconds after it is included in a block. This is assuming a nominal network conditions with 21 producers.
The math to arrive at this number is that, each block must be "pre-committed" to by 2/3 + 1 producers in order to be eligible for "commitment" which also requires 2/3 + 1 producers. In a nominal 21 producer network (where each producer creates 12 consecutive 0.5 second blocks), this works out to 180 blocks for minimal "pre-commitment" and another 180 blocks for actual "commitment" before finality. 2 * 180 * 0.5 seconds === 180 seconds.
The likelyhood of a transaction reaching finality goes up considerably after the pre-commit phase but if you need chain level guaranteed finality, that is 180 seconds.
Once BFT messages are rolling, the minimum time to finality would be governed by how fast the 21 producers can distribute and collect the necessary pre-commit and commit signatures explicitly.

Congratulations @maxawei! You received a personal award!

1 Year on Steemit

Click here to view your Board of Honor

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations @maxawei! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!