Talk:Bully algorithm

Latest comment: 15 years ago by 79.192.243.94

The algorithm is described right but has a flaw in the describtion.
The recusion is not adressed.

    • P broadcasts an election message (inquiry) to all other processes with higher process IDs. (correct)
    • If P hears from no process with a higher process ID than it, it wins the election and broadcasts victory. (incorrect)
    • If P hears from a process with a higher ID, P waits a certain amount of time for that process to broadcast itself as the leader. If it does not receive this message in time, it re-broadcasts the election message."(incorrect)


The bully algorithm can't "broadcast to lower IDs" because it does not have any reference to processes with lower Ids ! It only has the ones who asked him (in an election) and the higher Id'd processes.

It is a recursiv algorithm which works like this:

    • If an election was started all higher id'd process get it (if not dead).
    • They then start their own election to see if their higher ups are alive.
    • In the end one process can't find any higher ones.
    • This process has N-1 elections asking him if he is the big shot. (N being the number of alive processes including him)
    • He can (now) broadcast because the election hold the lower PIDs IPs and he has N-1!
    • Alternative he does not need to keep N-2 lower elections instead every process below him can send this highest ID one step lower in the chain of request (no broatcast - point to point)


"This is how the algorithm gets its name - a process with a higher ID number will bully a lower ID process out of the coordinator position as soon as it comes online."

This would be a pretty lame reason also it is true that this will happen.
But a name does describe the method itself.

The name was given cause the one process at the top of the cain announce himself in contrast to a consent !
Thus he bullys his way. Which a joining high ID process will do as well ... but as said thats a natural ...

People should check if the ref. book is good and/or the ref. is realy valid...

79.192.243.94 (talk) 20:44, 6 September 2008 (UTC) MoooiticReply