16- Mutual Exclusion and Leader Election

16- Mutual Exclusion and Leader Election - CSE 486/586...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Leader Election Steve Ko Computer Sciences and Engineering University at Buffalo
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 Why Election? Example 1: Your Bank maintains multiple servers in their cloud, but for each customer, one of the servers is responsible, i.e., is the leader What if there are two leaders per customer? What if servers disagree about who the leader is? What if the leader crashes? 2
Background image of page 2
CSE 486/586, Spring 2012 Why Election? Example 2: sequencer for TO multicast, leader for mutual exclusion Example 3: Group of cloud servers replicating a file need to elect one among them as the primary replica that will communicate with the client machines Example 4: Group of NTP servers: who is the root server? 3
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 What is Election? In a group of processes, elect a Leader to undertake special tasks. What happens when a leader fails (crashes) Some process detects this (how?) Then what? Focus of this lecture: Election algorithm 1. Elect one leader only among the non-faulty processes 2. All non-faulty processes agree on who is the leader 4
Background image of page 4
CSE 486/586, Spring 2012 Assumptions Any process can call for an election . A process can call for at most one election at a time. Multiple processes can call an election simultaneously . All of them together must yield a single leader only The result of an election should not depend on which process calls for it. Messages are eventually delivered. 5
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 Problem Specification At the end of the election protocol, the non-faulty process with the best (highest) election attribute value is elected. Attribute examples: CPU speed, load, disk space, ID Must be unique A run (execution) of the election algorithm must always guarantee at the end: Safety :  non-faulty p: (p's elected = (q: a particular non- faulty process with the best attribute value) or ) Liveness :  election: (election terminates) &  p: non-faulty process, p’s elected is not  6
Background image of page 6
CSE 486/586, Spring 2012
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 24

16- Mutual Exclusion and Leader Election - CSE 486/586...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online