Increased throughput and geographical-fairness with multiple blocks in a round #83
jsoares
started this conversation in
Open problems
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Some consensus protocols have more than one block per round. They are based on a Directed-Acyclic-Graph structure (DAG), as opposed to a chain, as one block can point to more than one parent.
Throughput improvement
It was conjectured that having multiple blocks per round, as opposed to a bigger single block, improves throughput. Intuitively this is because in a round, different nodes will receive different transactions depending on their connectivity to the rest of the network. By allowing multiple nodes to produce a block at each round this means that transactions that may have not yet reached every node will still be included in the current round in the chain.
Using either theoretical or empirical analysis we are interested in confirming or disputing that consensus protocols with multiple blocks per round can increase throughput versus having larger (single) blocks.
Geographical-fairness
Additionally, we conjecture that the set of transactions will be more geographically-diverse with multiple blocks per round than in the single block case.
The intuition is as follows. If there is a geographical cluster of miners, e.g. 80% of the miners are in China, then a user sending a transaction from Europe will reach these miners after longer delays than a user in China. In the single block case European users would wait longer than Asian users to see their transactions included.
If 20% of the miners are based in Europe and there are 5 expected blocks per round, then European miners get to publish a block every round on expectation and hence the transactions from European users will be included without delays (i.e., at that round and not the next one) compared to users in China.
We would like to confirm or dispute this intuition. To the best of our knowledge, this property has not been formally defined nor motivated (although some DeFi use-cases could motivate this). \
Extension to longest-chain (single-block per round) protocols
If having multiple blocks per round does improve the throughput or geographical-fairness of the protocol, could we obtain similar guarantees in the single-block cases using aunt blocks.
Aunt blocks are blocks that are included in the chain but that do not count towards the weight of that chain. The motivation would be to have the benefits of multiple blocks per round without
being vulnerable to a type of attack (epoch boundary attacks) that is worsened in the case of multiple blocks. In an epoch boundary attack, an adversary forces honest participants to mine on different forks and thus _split _their power. This means that an adversary could more easily re-write history.
Direction: we have an initial design and would like to prove its security (internal proposal).
Why is it important to Filecoin
This is important to Filecoin as Filecoin’s consensus protocol includes, on expectation, 5 blocks per round.
Beta Was this translation helpful? Give feedback.
All reactions