1

Based on FLP result, any consensus problem cannot be solved in asynchronous network system, and selecting a unique leader is a kind of consensus problem. Therefore, in theory, leader election is a unsolvable problem in asynchronous network system.

However, after I learned the concept of "reliable broadcast" that every non-faulty node takes the responsibility to broadcast any value they receive from other nodes, it is possible to achieve "every non-faulty node get the same set of messages (ignoring order)". So, if every node uses reliable broadcast to send their node id to other nodes, does it mean that finally every non-faulty node will get the same set of node ids and therefore is able to decide a same leader (simply, node with largest id being the leader)?

If so, then why saying Leader Election is unsolvable? Or do I confuse about something?

Kristianmitk
  • 4,528
  • 5
  • 26
  • 46
Sheng Wang
  • 33
  • 3

1 Answers1

0

Reliable Broadcast is using a (Perfect-)Failure-Detector in order to know which process in the cluster has crashed. Such a detector simply does not exist in an asynchronous network as you basically cannot distinguish between a slow and a faulty process in such a network.

Thus, you cannot rely on reliable broadcast to solve your desired problem.

Your algorithm would never terminate once a single process crashes. Therefore, it would not tolerate any faults at all and with that you're not bypassing FLP at all.

Kristianmitk
  • 4,528
  • 5
  • 26
  • 46