Last updated on Nov 8.
The leader election algorithm relevant to the coursework is on the course web page. And will be discussed on Oct. 16. You are advised to read it yourself before then.
Deadline Friday November 13. 4:00 pm.
Please read the entire document carefully before starting work on it.
We may make small modifications to the description for better explanation and clarity. Please always make sure to download the latest version.
Sample inputs:
Outline class files. These files are a sketch of what the classes for the Network and nodes might look like. Your code does not have to follow the exact strcuture, but it will help if you stick to it to some extent. If your program has any fundamental structural difference from these, please explain in the submitted document.
Other announcements related to the assignment will be placed on this page.
Can I modify the code given in the samples?
Why is the round duration 20ms?
When do the failures for part B occur?
Why don’t the failures have associated time or round?
Failures break my ring or the entire LE algorithm. What is the right way to handle that? Should I do X or Y?
Do I need to use a termination detection algorithm to detect when distributed computations end after a failure?
No. The model here is that the failures just happen to occur at long intervals. They are not deliberately triggered by nodes after previous things. Remember that we are trying to simulate the effect of certain types of event sequences.
So it is fine if you use some kind of offline/centralized method to detect when it is time for another failure. For example, may be the information in the network object can be used (along with the fact that in our synchronous model that all computations between messages are supposed to finish in one round) to detect the right time.
Can I submit as an eclipse or other GUI project?
Questions that you are supposed to answer to do the assignment, or you should know the answer, or with answer already in pdf document.
How to keep track of which neighbours of a node p have already received the message from p?
What is the ring? Are we supposed to sort the nodes in a ring topology?
What should be happening in the first 4 rounds before the first election? [hint: Nothing!]
If in the same round a node has more than one messages to send to the same neighbour, what does it do? How is the 1 msg/neighbour/round to be enforced?
Does a message between two nodes/node threads have to pass through the network or can a node send a message directly to its neighbours?
How to use multithreading?
After an election is complete, does the leader let everybody know about its election?
Last updated: 29 October.
Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail: school-office@inf.ed.ac.uk Please contact our webadmin with any comments or corrections. Logging and Cookies Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh |