Broadcast & Convergecast Downcast & Upcast

Slides:



Advertisements
Similar presentations
Chapter 5: Tree Constructions
Advertisements

Lecture 7. Network Flows We consider a network with directed edges. Every edge has a capacity. If there is an edge from i to j, there is an edge from.
Chapter 13 Leader Election. Breaking the symmetry in system Similar to distributed mutual exclusion problems, the first process to enter the CS can be.
Chapter 4 Downcasts and Upcasts. 4.1 Downcasts At first we assume the case where the root has m distinct items A = {  1, …,  m }, each destined to one.
Communication Networks Recitation 3 Bridges & Spanning trees.
Lecture 8: Asynchronous Network Algorithms
Chapter 15 Basic Asynchronous Network Algorithms
Leader Election Let G = (V,E) define the network topology. Each process i has a variable L(i) that defines the leader.  i,j  V  i,j are non-faulty.
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
Self Stabilizing Algorithms for Topology Management Presentation: Deniz Çokuslu.
1 K-clustering in Wireless Ad Hoc Networks Fernandess and Malkhi Hebrew University of Jerusalem Presented by: Ashish Deopura.
Termination Detection of Diffusing Computations Chapter 19 Distributed Algorithms by Nancy Lynch Presented by Jamie Payton Oct. 3, 2003.
Lecture 7: Synchronous Network Algorithms
Minimum Spanning Trees
Locality Sensitive Distributed Computing Exercise Set 2 David Peleg Weizmann Institute.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
1 Complexity of Network Synchronization Raeda Naamnieh.
CPSC 668Set 2: Basic Graph Algorithms1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
CPSC 668Set 3: Leader Election in Rings1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
Distributed Algorithms Broadcast and spanning tree.
1 Delay-efficient Data Gathering in Sensor Networks Bin Tang, Xianjin Zhu and Deng Pan.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
HyperCuP – P2P Network Boyko Syarov. 2 Outline  HyperCup: What is it?  Basic Concepts  Broadcasting Algorithm  Topology Construction  Ontology Based.
1 Fault-Tolerant Consensus. 2 Failures in Distributed Systems Link failure: A link fails and remains inactive; the network may get partitioned Crash:
TCOM 501: Networking Theory & Fundamentals
Dept. of Computer Science Distributed Computing Group Asymptotically Optimal Mobile Ad-Hoc Routing Fabian Kuhn Roger Wattenhofer Aaron Zollinger.
1 Brief Announcement: Distributed Broadcasting and Mapping Protocols in Directed Anonymous Networks Michael Langberg: Open University of Israel Moshe Schwartz:
Raeda Naamnieh 1. The Partition Algorithm Intuitively, the idea of the following algorithm is to choose each cluster as a maximal subset of nodes whose.
P2P Course, Structured systems 1 Introduction (26/10/05)
Chapter 14 Synchronizers. Synchronizers : Introduction Simulate a synchronous network over an asynchronous underlying network Possible in the absence.
Complexity of Bellman-Ford Theorem. The message complexity of Bellman-Ford algorithm is exponential. Proof outline. Consider a topology with an even number.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Lecture 12-2: Introduction to Computer Algorithms beyond Search & Sort.
Minimum Spanning Tree Given a weighted graph G = (V, E), generate a spanning tree T = (V, E’) such that the sum of the weights of all the edges is minimum.
10.- Graph Algorithms Centro de Investigación y Estudios Avanzados del Instituto Politécnico Nacional Introduction Routing Algorithms Computation of Shortest.
Benjamin AraiUniversity of California, Riverside Reliable Hierarchical Data Storage in Sensor Networks Song Lin – Benjamin.
Complexity of Bellman-Ford
1 Broadcast. 2 3 Use a spanning tree Root 4 synchronous It takes the same time at link to send a message It takes the same time at each node to process.
Teacher: Chun-Yuan Lin
A correction The definition of knot in page 147 is not correct. The correct definition is: A knot in a directed graph is a subgraph with the property that.
1 Leader Election in Rings. 2 A Ring Network Sense of direction left right.
Hwajung Lee. Why graph algorithms ? It is not a “graph theory” course! Many problems in networks can be modeled as graph problems. Note that -The topology.
Leader Election (if we ignore the failure detection part)
2016/1/6Part I1 A Taste of Parallel Algorithms. 2016/1/6Part I2 We examine five simple building-block parallel operations and look at the corresponding.
DISTRIBUTED ALGORITHMS Spring 2014 Prof. Jennifer Welch Set 2: Basic Graph Algorithms 1.
Tree Constructions Distributed Algorithms for Multi-Agent Networks Instructor: K. Sinan YILDIRIM.
Vertex Coloring Distributed Algorithms for Multi-Agent Networks
Graphs Slide credits:  K. Wayne, Princeton U.  C. E. Leiserson and E. Demaine, MIT  K. Birman, Cornell U.
Hwajung Lee. Let G = (V,E) define the network topology. Each process i has a variable L(i) that defines the leader.   i,j  V  i,j are non-faulty ::
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Spring 2014 Prof. Jennifer Welch CSCE 668 Set 3: Leader Election in Rings 1.
Construction of Optimal Data Aggregation Trees for Wireless Sensor Networks Deying Li, Jiannong Cao, Ming Liu, and Yuan Zheng Computer Communications and.
Spanning Trees Dijkstra (Unit 10) SOL: DM.2 Classwork worksheet Homework (day 70) Worksheet Quiz next block.
Chapter 11. Chapter Summary  Introduction to trees (11.1)  Application of trees (11.2)  Tree traversal (11.3)  Spanning trees (11.4)
CIS 825 Lecture 9. Minimum Spanning tree construction Each node is a subtree/fragment by itself. Select the minimum outgoing edge of the fragment Send.
CIS 825 Lecture 8. Leader Election Aim is to elect exactly one node as the leader.
Distributed Algorithms for Network Diameter David Peleg, Liam Roditty and Elad Tal.
1 Traversal Algorithms  sequential polling algorithm  traversing connected networks (tree construction) complexity measures tree terminology tarry’s.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
Graphs Chapter 20.
The Echo Algorithm The echo algorithm can be used to collect and disperse information in a distributed system It was originally designed for learning network.
Michael Langberg: Open University of Israel
Source Code for Data Structures and Algorithm Analysis in C (Second Edition) – by Weiss
Lecture 9: Asynchronous Network Algorithms
Minimum Spanning Tree Neil Tang 3/25/2010
Tree Construction (BFS, DFS, MST) Chapter 5
Lecture 8: Synchronous Network Algorithms
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
Brad Karp UCL Computer Science
CSE 417: Algorithms and Computational Complexity
Control-Data Plane Separation
Presentation transcript:

Broadcast & Convergecast Downcast & Upcast Distributed Algorithms for Multi-Agent Networks Instructor: K. Sinan YILDIRIM

Broadcast from a Single Source A broadcast operation is initiated by a single processor, the source. The source wants to send a message to all other nodes in the system. For any broadcast algorithm The message complexity of broadcast is at least n – 1. The source's radius is a lower bound for the time complexity. PROOF: Every node must receive the message.

Tree Broadcast The message is transmitted from the root to all its children each internal vertex of the tree getting the message from its parent forwards it to all its children. any broadcast algorithm can also be used to build a tree in the network. The message complexity: lower bounded by n - 1 The time complexity: lower bounded by the depth of the tree

Flooding Algorithm The message complexity: lower bounded by the number of edges The time complexity: lower bounded by the radius of r. PROOF: If you do not try every edge, you might miss a whole part of the graph behind it.

Spanning Tree Flooding Algorithm implicitly constructs a directed tree T rooted at source r spanning all vertices of the network the parent of each non-root vertex is the vertex from which it has received the message for the first time. synchronous setting - BFS Tree asynchronous setting

Convergecasts The process of collecting information upwards on a tree is called convergecast Enables the source to detect the fact that the broadcast operation has completed. termination detection “This subtree has finished the task.” collecting back acknowledgements in a leveled fashion on a spanning tree. The message complexity: is the number of edges The time complexity: is the depth of the spanning tree

Flooding/Echo Algorithm It is possible to get a broadcast algorithm with acknowledgements the source can detect the termination of the broadcast Flooding algorithm constructs a spanning tree T this tree can be used for the convergecast a vertex sends Ack to its parent only after the subtree of T rooted at v has been constructed and all its vertices have received the message. The message complexity of broadcast is at least n - 1 The source's radius is a lower bound for the time complexity. PROOF: - Every node sends one message to each of its neighbors and one to its parent. - The flooding algorithm requires at least a time complexity of the radius of the source to reach all nodes. The Echo phase requires the same amount of time.

Flooding/Echo Algorithm State Machine COLLECT CHILD INIT COLLECT ECHO TERMINATE

Rule of Thumb In general, considering the line topology Gives a lower bound for the message complexity An upper bound for the time complexity considering fully-connected network Gives an upper bound for the message complexity A lower bound for the time complexity

Global Function Computation Suppose that each vertex in the graph holds an input We would like to compute some global function of these inputs. Semigroup function f is well-defined for any subset of the inputs f is associative and commutative A semigroup function can be computed efficiently on a tree T by a convergecast process. the value sent upwards by each vertex in the tree will be the value of the function on the inputs of the vertices in its subtree T 5

Converge Algorithm F 4 F T 1 2 T F T 14 12 3 F 4 F T 5 42

Downcast Root has m distinct items each destined to one specific vertex in the tree. The time complexity of downcast is at least Depth(T) and at most n + Depth(T) PROOF: (1) If the last message’s destination is the node that is the furthest (2) or the closest

Upcast Data items are initially stored at some of the vertices of the tree T. The goal is to end up with all the items stored at the root of the tree. The time complexity of upcast is at most Depth(T) PROOF: Consider line topology.

Applications - I Smallest k-of-m collect the smallest k elements at the root. The global function computation scheme First, find the minimum element and inform all the vertices by broadcasting it throughout the tree. Now, find the next smallest element by the same method and so on. This should take O(kDepth(T)) time. An alternative and faster Every vertex keeps the elements it knows of in an ordered list. In each step, each vertex sends to its parent the smallest element that hasn't been sent yet. Upcasting the k smallest elements on a tree T can be performed in Depth(T) + k time.

Applications - II Information gathering and dissemination Disseminating information among the vertices of a tree. Suppose that m data items are initially stored at some of the vertices The goal is to end up with each vertex knowing all the items collect the items at the root of the tree then broadcast them one by one. the broadcast phase can be completed within O(m + Depth(T)) collecting phase can be performed by an upcast operation with a similar complexity. The entire problem can be solved in time O(m + Depth(T)).

Applications - III Route-disjoint matching Our goal is to find a matching of these vertices into pairs such that the routes connecting them are all edge-disjoint. "Finding" the matching means that each vertex in W should know the identifier of the vertex with which it is paired

Applications - IV The token distribution problem n tokens are initially distributed among the n vertices of the tree with no more than K at each processor. redistribute the tokens so that each processor will have exactly one token. The cost of the entire redistribution process equals the sum of the distances traversed by the tokens in their way to their destinations.