-
Notifications
You must be signed in to change notification settings - Fork 2
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
network splits #5
Comments
Put another way though, the network damage needs to be pretty severe before this happens. In an In this sense, mesh communication is way more robust than the ring communication which LedgerLoops uses. There, a ring of 9 participants would have 8 links, and only 2 of those 8 need to go down simultaneously to cut off some of the participants from the loop initiator. |
A ring definitely reduces this problem, because a node has to be cut off on both ends, but you are correct that it is still possible. There are a few potential ways to address this, including:
|
Compared to a tree, yes. I would say a ring is more connected than tree, but a mesh is more connected than a ring.
Right, I hadn't taken into account the differences in uptime of different servers. Of course network splits between peer-to-peer software running on user devices are much more likely than when a professionally hosted server is involved. Still, the theoretical analysis is the same: nodes that are in a "minority" island during a network split will not get a final answer until the network comes back up ("minority" being defined as any group that does not have majority voting power). I opened this issue because maybe you wanted to add "Network Splits" as an additional Exception since a situation with two islands of communication is different from a situation with Dead Referees. If you want I can create a PR to add it? |
Great suggestion Michiel, I added a paragraph for the split network scenario. |
https://github.com/gotchoices/ChipNet/blob/master/doc/cluster.md#dead-referees
"go offline" doesn't need to be an all-or-nothing predicate. Suppose there are 9 referees, and 5 referees make a majority. You would say 5 referees need to be offline or misbehaving before "dead referees" becomes a problem. But what about network splits caused by failure of some of the links between nodes? What if the referees are split: 3 in the Americas, 3 in Europe and 3 in Asia. Suppose each node can only talk to the referees in their own continent. Then everybody's money will also be tied up forever.
The text was updated successfully, but these errors were encountered: