archethic-foundation / archethic-foundation/archethic-node

Balanced replication tree

Open
#1,360 0 comments 0 reactions 0 assignees View on GitHub
enhancements mining replication
Dominant language
Elixir
Stars
82
Forks
24
PR merge metrics
No merged PRs in 30d

Description

### 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

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points. Start by locating the current replication-tree implementation and read epic #212 for context; done would require a balanced, multi-level tree that considers path length and validator load while preserving confirmations and fault tolerance.

Written by the indexing model from the issue text.

Assessment

Tech stack
blockchain, elixir
Domain
blockchain, distributed-systems, networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.