Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Balanced replication tree #1360

Open
samuelmanzanera opened this issue Jan 4, 2024 · 0 comments
Open

Balanced replication tree #1360

samuelmanzanera opened this issue Jan 4, 2024 · 0 comments
Labels
enhancements mining Involve transaction validation and mining replication

Comments

@samuelmanzanera
Copy link
Member

Is your feature request related to a problem?

Currently, to distribute replication during transaction's validation we have a replication tree which is designed to distribute replication nodes from validation nodes being the closest and deliver messages faster in terms of latency.
The problem is this is based on shorter path strategy, however, it doesn't take in account the bandwidth and the load of validation nodes.
Actually, the tree is a tree with only one nested level.

Hence, the load of validation nodes to replicate to many nodes is not efficient, and require only high bandwidth nodes (for example with fibre)

Describe the solution you'd like

To resolve this problem and embrace more validation nodes with ADSL connection for instance, I propose to use a balanced tree combining shorter path and load balancing.
This way each validation nodes (i.e. at minima 3 nodes), will send a transaction to replicate to a given set of nodes, which will in return send this transaction to a given set of nodes, etc…

To avoid the issue of acknowledgement, fault tolerance and blocking, the leaf nodes of the replication tree will be able to send confirmation right away to the validation node in charge of this branch of the tree.
Hence, the behavior would be like today, but with more load balancing capability and reducing pressure from validation nodes.

Additional context

No response

Epic

#212

@samuelmanzanera samuelmanzanera added mining Involve transaction validation and mining enhancements replication labels Jan 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancements mining Involve transaction validation and mining replication
Projects
None yet
Development

No branches or pull requests

1 participant