210 likes | 536 Views
Leader Election. Advanced Operating Systems (CSC 8320) Fall 2011 Shagun Kariwala. Outline. Introduction Design Topologies and algorithms Recent Studies Future work . Introduction. What is Leader Election?
E N D
Leader Election Advanced Operating Systems (CSC 8320) Fall 2011 ShagunKariwala
Outline • Introduction • Design Topologies and algorithms • Recent Studies • Future work
Introduction What is Leader Election? • In distributed computing, leader election is the process of designating a single process as the organizer, coordinator, initiator or sequencer of some task distributed among several computers (nodes). ---- (Chow et al, 1997) • Leader election is the process of determining a process as the manager of some task distributed among several processes (computers). ---- (Garcia, Molina 1982)
Why Leader Election? • Centralized controller simplifies process synchronization. • However, it is a single point of failure and can limit service. • Solution is to choose a new controller(leader), upon failure of the existing controller. • Many algorithms for leader election.
When Leader Election? • During system initiation or when an existing leader fails. • A process that gets no response from the leader for a predefined time-out interval suspects a failure and initiates leader election.
Two election criteria • Extremafinding: It is based on global priority. Every process is characterized by fixed evaluation value. • Preference-based: Processes in the group can vote for a leader based on a personal preference (e.g. locality, reliability estimation, etc).
Leader Election VS Mutual Exclusion Leader Election Mutual Exclusion • Process competes until it succeeds. • Must ensure that no process is starved. • Does not care which process is running in critical section. • Process may yield to others and execute normally as long as leader is selected. • Concerned with fast and successful termination of election process. • Result of leader election must be known to other processes.
Design Topologies • Complete Topology • Logical Ring Topology • Tree Topology
Complete Topology • Each process can reach any other process in the same group in one message hop. • Assumptions: • All process ids are unique and know to every process. • Communication network is reliable and only the communicating processes may fail. • Process takes a known finite amount of time to handle a message. • Bully algorithm is based on complete topology network.
Bully algorithm • Introduced by Garcia-Molina. • An extrema-finding algorithm. • Process with the highest priority is elected as a leader, hence named Bully algorithm. • Algorithm: • Process P starts a leader election if it suspects the failure of existing leader. • P sends inquiry message to nodes (processes) with higher priority. • If any response then, P gives up the election and waits for higher priority node to elect itself leader. • If no response then P becomes a leader.
Bully algorithm (cont…) • Process 4 detected leader failure and initiated an election. • Processes 5 and 6 respond telling 4 to stop. • Now 5 and 6 each hold an election
Bully algorithm (cont…) • d. Process 6 responds to the call from 5 and tells it to stop. • e. Process 6 wins and tells everyone.
Logical Ring Topology • Simplest and easy to construct. • Unique property: message initiated by node will return to the node. • Eliminates the need of acknowledgement. Ring Algorithm: • On detection of leader failure, process starts election by circulating a message with priorities appended to the message by each node along the ring. • Message comes back to initiator, it chooses the highest priority and broadcast the new leader identity to all nodes.
Ring Algorithm • (c) Message is sent back to the initiator which is 4. • (b) Initiator announces the winner by sending another message around the ring. • (a) Process 4 sends the election message to it successor with its ID. • (b) Each process adds its own ID and then forwards the message to the next process.
Chang and Robert Ring Algorithm • Chang and Robert developed improved ring election algorithm. • Improvements: • Does not collect all ids into a single massage. To find the maximal id, each node forwards the larger of its id and the received value to the next node. • Already involved node doesn’t forward the message unless the message value is higher than the node’s id. • Best and worst cases are O(N) and O(N2).
Tree Topology • Construction and management of a logical ring is easier if underlying network supports broadcast facility. • In irregular network topology, broadcast is simulated by multiple point-to-point unicasts. • Logical topology in an irregular network. • Tree is used as a topological structure. • Minimum spanning tree is used for leader election in tree topology.
Gallager, Humbelt and SpiraAlgo. • Gallager, Humbelt and Spira developed an algorithm for distributed minimum spanning tree • Based on searching and combining. • The fragments are merge level by level in a bottom-up fashion until a final fragment, MST results. • Leader is the last node that merges and yields to the final MST.
Recent Studies • An algorithm for selecting the cluster leader in a partially connected sensor network. Laura Vanzago, Luciano Lavagno(2008) • Conventional algorithms in distributed systems present particular methods to resolve any leader crash. A new method based on electing a leader and assistant was introduced. If the leader crashes, the assistant takes care of the leader's responsibilities. Zargarnataj, 2007 • Power-based leader selection in ad-hoc wireless networks. Using a link loss matrix, an approach is proposed for selection of a network leader that takes into consideration link losses and transmitter powers. Mehul J . Shah and Paul G . Flikkema (1999)
Recent Studies • Average Execution Time Analysis of a Self-stabilizing Leader Election Algorithm. This paper shows that average execution time for leader election algorithm based on tree graph is O(N2). Juan Paulo, Jos´eAlberto (2007) • SEFA (Secure Extrema Finding Algorithm) is a round-based hierarchy-building approach which is considered a secure problem. This algorithm designed for Ad-Hoc networks handles frequent topology changes and dynamic nature of mobile networks too. Vasudevan, Kurose, Towsley (2003)
Future Work • Improvement in time complexity by reducing no. of election messages. • Leader election algorithm for mobile ad hoc networks. • Fast detection of failure of centralized controller.
References • Distributed Operating Systems & Algorithms, Randy Chow and Theodore Johnson, 1997 • http://en.wikipedia.org/wiki/Leader_election • http://en.wikipedia.org/wiki/Chang_and_Roberts_algorithm • An algorithm for selecting the cluster leader in a partially connected sensor network, Laura Vanzago (2008) • Power-based leader selection in ad-hoc wireless networks, Mehul Shah and Paul fikkema(1999) • Average Execution Time Analysis of a Self-stabilizing Leader Election Algorithm, Juan and Jos´e Alberto (2007) • New Election Algorithm based on Assistant in Distributed Systems, Zargarnataj, M(2007) • Election Algorithms for Wireless Ad Hoc Networks. In: DARPA Information Survivability Conference and Exposition, Vasudevan, Kurose, Towsley (2003)