Periodically sample own ID through a random botstrapping node for convergence #56
Labels
No labels
ActivityPub
advanced features
basic functionality
bug
DHT
evaluation
refactoring
security
test case
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: schmittlauch/Hash2Pub#56
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
For making unconnected clusters converge to a single DHT, (joined) nodes shall periodically query their ID through a randomly chosen node from their bootstrapping node set.
If the query result doesn't contain the node itself, this is a sign of unconnected clusters. For joining these clusters, the node then invokes Stabilise on the node claiming to be responsible. This also involves transfering/ merging the stored handled data.
todo: figure out whether stabilise is the right approach or whether Join is necessary
Additionally, #42 only makes unjoined nodes join the DHT if they are contacted by another node, e.g. because of being their bootstrapping node.
This does not help when due to a transient error all bootstrapping partners failed. Without an incoming connection they won't try to rejoin.
Thus this periodic sampling also involves unjoined nodes trying to join at the first place through the contacted random bootstrap node.