JACK M
JACK M

Reputation: 2841

A subcase of byzantine agreement (4 processes, the commander is a traitor)

In case you don't know the problem, see this.

Brief introduction:

Processes communicate by reliable and timely messages. Traitors lie, also cheat on forwarding messages, they try to confuse loyals. Loyals try to agree on non-trivial actions (attack, retreat, only 2 actions). There is only one commander. If the commander is loyal and gives orders, loyals follow otherwise loyals agree on arbitrary actions.

My problem:

I don't understand this case: assume that there are 4 processes, only 1 process is commander, and the commander is a traitor. How can the system tolerate this? The commander can send 3 different messages to the 3 loyals. Each loyal forwards messages to the other 2 loyals. So each loyal will receive 3 different actions. How can the loyals decide to act uniformly?

The general result is: 3f + 1 processes needed to tolerate f traitors.

Upvotes: 2

Views: 139

Answers (1)

Amit
Amit

Reputation: 46323

The Byzantine fault tolerance problem deals with a scenario where 2 possible actions exist and must be agreed upon.

The problem described can't happen, because between 2 possible actions (2 "messages"), there can't exist "3 different messages".

Upvotes: 4

Related Questions