Windows Java Assignment 1
Implement leader election (Bully algorithm) through sockets. Create your own protocol for communication between processes.
While active, all processes log their events (such as, incoming election request or leader not found/initiating new election) and print them out to console interface. All processes should know each other. To maintain active communication, you can send dummy messages to the leader.
Implementation must be failure tolerant, so that any node could crash freely and the system would still work independently. Failure of a leader should initiate an election. All processes should try to communicate with all other ones, even in case of failure, so that when a failed process resumes, it can join the conversation automatically.
Programming language/IDE preferred for this task is Java/Eclipse, but you are free to implement this task with any means available.