04/06/2016Applied Algorithmics - week101 Dynamic vs. Static Networks  Ideally, we would like distributed algorithms to be: dynamic, i.e., be able to.

Slides:



Advertisements
Similar presentations
Energy-Efficient Distributed Algorithms for Ad hoc Wireless Networks Gopal Pandurangan Department of Computer Science Purdue University.
Advertisements

An Adaptive Compulsory Protocol for Basic Communication in Ad-hoc Mobile Networks Ioannis Chatzigiannakis Sotiris Nikoletseas April 2002.
* Distributed Algorithms in Multi-channel Wireless Ad Hoc Networks under the SINR Model Dongxiao Yu Department of Computer Science The University of Hong.
Impossibility of Distributed Consensus with One Faulty Process
Lecture 8: Asynchronous Network Algorithms
Routing in a Parallel Computer. A network of processors is represented by graph G=(V,E), where |V| = N. Each processor has unique ID between 1 and N.
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.
Distribution and Revocation of Cryptographic Keys in Sensor Networks Amrinder Singh Dept. of Computer Science Virginia Tech.
Rumor Routing Algorithm For sensor Networks David Braginsky, Computer Science Department, UCLA Presented By: Yaohua Zhu CS691 Spring 2003.
Gossip Algorithms and Implementing a Cluster/Grid Information service MsSys Course Amar Lior and Barak Amnon.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
Broadcasting in UDG Radio Networks with Unknown Topology Yuval Emek, Leszek Gąsieniec, Erez Kantor, Andrzej Pelc, David Peleg, Chang Su, Weizmann Liverpool.
Broadcasting Protocol for an Amorphous Computer Lukáš Petrů MFF UK, Prague Jiří Wiedermann ICS AS CR.
Information Dissemination in Highly Dynamic Graphs Regina O’Dell Roger Wattenhofer.
Università degli Studi dell’Aquila Academic Year 2009/2010 Course: Algorithms for Distributed Systems Instructor: Prof. Guido Proietti Time: Monday:
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
1 Efficient Broadcasting and Gathering in Wireless Ad-Hoc Networks Melih Onus (ASU) Kishore Kothapalli (JHU) Andrea Richa (ASU) Christian Scheideler (JHU)
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
1 Complexity of Network Synchronization Raeda Naamnieh.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Wireless Sensor Networks 21st Lecture Christian Schindelhauer.
Graph & BFS.
Fast Distributed Algorithm for Convergecast in Ad Hoc Geometric Radio Networks Alex Kesselman, Darek Kowalski MPI Informatik.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 3 – Distributed Systems.
A Unified Energy Efficient Topology for Unicast and Broadcast Xiang-Yang Li*, Wen-Zhang Song † and WeiZhao Wang* *Illinois Institute of Technology † Washington.
Localized Techniques for Power Minimization and Information Gathering in Sensor Networks EE249 Final Presentation David Tong Nguyen Abhijit Davare Mentor:
© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
Communication operations Efficient Parallel Algorithms COMP308.
Impossibility of Distributed Consensus with One Faulty Process Michael J. Fischer Nancy A. Lynch Michael S. Paterson Presented by: Oren D. Rubin.
Dariusz Kowalski University of Connecticut & Warsaw University Andrzej Pelc University of Quebec en Outaouais Broadcasting in Undirected Ad hoc Radio Networks.
Dept. of Computer Science Distributed Computing Group Asymptotically Optimal Mobile Ad-Hoc Routing Fabian Kuhn Roger Wattenhofer Aaron Zollinger.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 4 – Consensus and reliable.
Dominating Connectivity and Reliability of Heterogeneous Sensor Networks Kenneth Berman Fred Annexstein Aravind Ranganathan.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 2 – Distributed Systems.
Adaptiveness vs. obliviousness and randomization vs. determinism Dariusz Kowalski University of Connecticut & Warsaw University Andrzej Pelc University.
Topology Control Algorithms Davide Bilò
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
Message Passing Systems A Formal Model. The System Topology – network (connected undirected graph) Processors (nodes) Communication channels (edges) Algorithm.
ROUTING ON THE INTERNET COSC Aug-15. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
Message Passing Systems A Formal Model. The System Topology – network (connected undirected graph) Processors (nodes) Communication channels (edges) Algorithm.
Johannes PODC 2009 –1 Coloring Unstructured Wireless Multi-Hop Networks Johannes Schneider Roger Wattenhofer TexPoint fonts used in EMF. Read.
1 A Modular Approach to Fault-Tolerant Broadcasts and Related Problems Author: Vassos Hadzilacos and Sam Toueg Distributed Systems: 526 U1580 Professor:
Selected topics in distributed computing Shmuel Zaks
Introduction Distributed Algorithms for Multi-Agent Networks Instructor: K. Sinan YILDIRIM.
CS4231 Parallel and Distributed Algorithms AY 2006/2007 Semester 2 Lecture 10 Instructor: Haifeng YU.
GRAPH SPANNERS by S.Nithya. Spanner Definition- Informal A geometric spanner network for a set of points is a graph G in which each pair of vertices is.
Consensus and Its Impossibility in Asynchronous Systems.
Review for Exam 2. Topics included Deadlock detection Resource and communication deadlock Graph algorithms: Routing, spanning tree, MST, leader election.
CS4231 Parallel and Distributed Algorithms AY 2006/2007 Semester 2 Lecture 8 Instructor: Haifeng YU.
Data Communications and Networking Chapter 11 Routing in Switched Networks References: Book Chapters 12.1, 12.3 Data and Computer Communications, 8th edition.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 10, 2005 Session 9.
GPSR: Greedy Perimeter Stateless Routing for Wireless Networks EECS 600 Advanced Network Research, Spring 2005 Shudong Jin February 14, 2005.
SysRép / 2.5A. SchiperEté The consensus problem.
Impossibility of Distributed Consensus with One Faulty Process By, Michael J.Fischer Nancy A. Lynch Michael S.Paterson.
UNIT IV INFRASTRUCTURE ESTABLISHMENT. INTRODUCTION When a sensor network is first activated, various tasks must be performed to establish the necessary.
Page 1 Mutual Exclusion & Election Algorithms Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
CIS 825 Review session. P1: Assume that processes are arranged in a ring topology. Consider the following modification of the Lamport’s mutual exclusion.
March 9, Broadcasting with Bounded Number of Redundant Transmissions Majid Khabbazian.
Introduction Wireless Ad-Hoc Network  Set of transceivers communicating by radio.
Delay-Tolerant Networks (DTNs)
Ad Hoc Radio Networks Radio Network is a collection of transmitter-receiver devices (denoted as notes). Each node can transmit data to nodes which exist.
The Model & Basic Computations
Lecture 9: Asynchronous Network Algorithms
TexPoint fonts used in EMF.
Communication operations
Presentation transcript:

04/06/2016Applied Algorithmics - week101 Dynamic vs. Static Networks  Ideally, we would like distributed algorithms to be: dynamic, i.e., be able to respond to changes in the network, and fault-tolerant, i.e., able to recover correctly and gracefully from failures  However, for simplicity, we present here network algorithms for networks that remain static during algorithm execution

04/06/2016Applied Algorithmics - week102 Synchronisation  One of the most important considerations in the message- passing model for distributed computing is the assumption that we about the synchronisation of processors in the network  The synchronous model and asynchronous model are the two most utilised models in distributed algorithm design

04/06/2016Applied Algorithmics - week103 Synchronous Model  In synchronous model each processor has an internal clock that times program execution the clocks of all processors are synchronised the execution speeds of the processors are uniform and each processor takes the same amount of time to perform the same operation it takes the same amount of time to send a message through any connection in the network

04/06/2016Applied Algorithmics - week104 Asynchronous Model  In asynchronous model There are no assumptions on the internal clocks and the execution speed of processors the steps in an asynchronous algorithm are determined by conditions or events each communication channel is a FIFO queue that can buffer an arbitrary number of messages (each message is eventually sent) there is a basic fairness assumption that guarantees that if a processor p has an event enabling p to perform a task, then p will eventually perform the task

04/06/2016Applied Algorithmics - week85 Communication problems in networks  To enable efficient collaboration of processing entities (nodes) in the network one need to introduce well defined secure/robust communication protocol for neighboring (with direct access) nodes supported by a system of primitive communication routines providing communication between remote nodes  Typical communication primitives include: Broadcasting Multicast Gossiping Routing

04/06/2016Applied Algorithmics - week86 Broadcasting versus Gossiping  Broadcasting refers to one-to-all communication  The goal in broadcasting is to disseminate a broadcast message from a distinguished source node to all other nodes in the network  Gossiping refers to all-to-all communication, a.k.a. total information exchange  The goal in gossiping is to exchange messages within all pairs of nodes (points) in the network

04/06/2016Applied Algorithmics - week87 Broadcasting

04/06/2016Applied Algorithmics - week88 Gossiping  Gathering  Broadcasting

04/06/2016Applied Algorithmics - week89 Radio Networks

04/06/2016Applied Algorithmics - week810 Radio Networks lunch? sure why not yeah

04/06/2016Applied Algorithmics - week811 Radio Networks lunch? coffee? sure why not yeah HUH??

04/06/2016Applied Algorithmics - week812 Radio Networks Represent as a graph

04/06/2016Applied Algorithmics - week813 Radio Networks Topology could be unstable ….

04/06/2016Applied Algorithmics - week814 Radio Network Model  Directed graph  Node identifiers from set {1,2,…,n}  Full synchronization: discrete time steps Common/shared clock all start at time 0  Message transmitted from v is instantly sent to all neighbors  No collision detection is feasible: if two messages reach u at the same time step, then u hears nothing

04/06/2016Applied Algorithmics - week815 Round Robin: O(n 2 ) algorithm Protocol: id, time, history  {receive, transmit(m)} Assumption: topology is not known! Simplifying assumption: n is known Running time: # of steps till all nodes know t maximized over all networks of size n 1,2,…,n, …, 1,2,…,n (n times) Radio Network Model

04/06/2016Applied Algorithmics - week816 Oblivious Algorithm: Sequence of transmission sets Ŝ = S 1 S 2 S 3 … Code of node v at time t : if v knows m and v  S t then transmit(m) else receive(); General scheme for radio broadcasting

04/06/2016Applied Algorithmics - week817 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m

04/06/2016Applied Algorithmics - week818 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m

04/06/2016Applied Algorithmics - week819 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m m 4 m 2 m

04/06/2016Applied Algorithmics - week820 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m m 4 m 2 m

04/06/2016Applied Algorithmics - week821 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m m 4 m 2 m 7 m

04/06/2016Applied Algorithmics - week822 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m m 4 m 2 m 7 m

04/06/2016Applied Algorithmics - week823 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m5 3 m 4 m 2 m 7 m 8 m 6 m

04/06/2016Applied Algorithmics - week824 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m 5 3 m 4 m 2 m 7 m 8 m 6 m

04/06/2016Applied Algorithmics - week825 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m5 3 m 4 m 2 m 7 m 8 m 6 m

04/06/2016Applied Algorithmics - week826 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m 5 3 m 4 m 2 m 7 m 6 m 8 m

04/06/2016Applied Algorithmics - week827 Ŝ = {1,5}, {2,4,6}, {3,4}, {4,7,8}, {2,7} 1m 3 m 4 m 2 m 7 m 6 m 8 m 5 m

04/06/2016Applied Algorithmics - week828 X v active (know m) s dormant Some intuitions … at time t node v is dormant X = active neighbors of v v will receive m iff |S t  X| =1 StSt Mechanics of radio broadcasting

04/06/2016Applied Algorithmics - week829 X v Y active dormant at time steps t,…,t’ nodes in set Y get activated... if |S j  X| = 1 and S j  Y = Ø for some j then v will receive m SjSj SjSj SjSj SjSj Mechanics of radio broadcasting

04/06/2016Applied Algorithmics - week830 Mechanics of radio broadcasting  The transmission sets S j are defined on the basis of (k,m,n)-selectors (see Group Testing), where n is the number of nodes in the network  The rows in selectors represent characteristic vectors of transmission sets  The algorithm uses a family of interspersed (time multiplexed) selectors S i,for i=0..log 4/3 n-1, s.t., S i = (n/(4/3) i,n/(4/3) i+1,n)-selector, s.t., every other log 4/3 n time steps next transmission set from any selector is used  The size of each S i is O(n·log n / (4/3) i )

04/06/2016Applied Algorithmics - week831 Algorithm Do-broadcast; each stage has one set from each S i each block of O(n·log n / (4/3) i ) consecutive stages contain all transmission sets from S i Mechanics of radio broadcasting run n·log n stages such that

04/06/2016Applied Algorithmics - week832 Theorem Do-broadcast completes broadcasting in time O(n log 2 n). After O(n log n) stages progress is 2n, so we’re done Claim: For each stage s amortized progress is  (1/log n) State transition of each node= progress  2n inner frontier dormant F Proof: three states: Mechanics of radio broadcasting

04/06/2016Applied Algorithmics - week833 Wireless networks embedded into plane  Apart from strictly graph based models for wireless networks there also (probably more accurate) more geometric models, e.g., using embedding into plane  One of the most common models is a Unit Disk Graph model in which two nodes on the plane are connected by a bi-directional edge if the distance between them is ≤ 1 ≤ 1

04/06/2016Applied Algorithmics - week834 Unit Disk Graphs (UDG)  If the points (nodes) on the plane are to close to each other the connections can form very dense (e.g., a complete graph) which is rather difficult in the context of transmission collisions There is a lot of noise in there

04/06/2016Applied Algorithmics - week835 Gabriel Reduction in UDGs  When selection of neighbors is feasible one can implement some elimination process to reduce the number of edges and to make the graph of connections planar (without crossing edges)  One of the most common reductions is based on the property of Gabriel graphs  If the disk with the diameter based on edge (A,B) contains another point C the edge (A,B) is removed from the graph A B C A B C

04/06/2016Applied Algorithmics - week836 Gabriel Reduction - example 1 What about UDG?

04/06/2016Applied Algorithmics - week837 Gabriel Reduction - example 1 Very ugly, huh?

04/06/2016Applied Algorithmics - week838 Gabriel Reduction - example 1 Still ugly …

04/06/2016Applied Algorithmics - week839 Gabriel Reduction - example 1 Pretty ugly, huh?

04/06/2016Applied Algorithmics - week840 Gabriel Reduction - example 1 Still ugly …

04/06/2016Applied Algorithmics - week841 Gabriel Reduction - example 1 Still ugly …

04/06/2016Applied Algorithmics - week842 Gabriel Reduction - example 1 Still ugly …

04/06/2016Applied Algorithmics - week843 Gabriel Reduction - example 1 Still ugly …

04/06/2016Applied Algorithmics - week844 Gabriel Reduction - example 1 Still ugly …

04/06/2016Applied Algorithmics - week845 Gabriel Reduction - example 1 Almost there …

04/06/2016Applied Algorithmics - week846 Gabriel Reduction - example 1 No more edges can be removed!!

04/06/2016Applied Algorithmics - week847 Gabriel Reduction  Gabriel graph reduction leads to planar graph (there are no crossing edges)  The reduction process is totally based on local communication  Unfortunately the degree of the final graph is not bounded in the worst case  There are known other reduction procedures that lead to planar graphs with bounded (constant) degree, e.g., Yao graphs

04/06/2016Applied Algorithmics - week848 Routing in planar graphs  We assume that each node v on the plane knows its (x,y) coordinates as well as coordinates of neighboring node on each face that node v belongs to.  The main task in routing is to deliver message from the source node s to the target node t  While traversing the graph the Face/Compass routing algorithm visits consecutive faces of the graph after each face getting closer to the target node t  The cost of traversal of each face F is proportional to the number of edges on the perimeter of F

04/06/2016Applied Algorithmics - week849 Face/Compass Routing (Faces)

04/06/2016Applied Algorithmics - week850 Face/Compass Routing st

04/06/2016Applied Algorithmics - week851 Face/Compass Routing st

04/06/2016Applied Algorithmics - week852 Face/Compass Routing st

04/06/2016Applied Algorithmics - week853 Face/Compass Routing st

04/06/2016Applied Algorithmics - week854 Face/Compass Routing st

04/06/2016Applied Algorithmics - week855 Face/Compass Routing st

04/06/2016Applied Algorithmics - week856 Face/Compass Routing st

04/06/2016Applied Algorithmics - week857 Face/Compass Routing st

04/06/2016Applied Algorithmics - week858 Face/Compass Routing st

04/06/2016Applied Algorithmics - week859 Face/Compass Routing st

04/06/2016Applied Algorithmics - week860 Face/Compass Routing st

04/06/2016Applied Algorithmics - week861 Face/Compass Routing st

04/06/2016Applied Algorithmics - week862 Face/Compass Routing st

04/06/2016Applied Algorithmics - week863 Face/Compass Routing st

04/06/2016Applied Algorithmics - week864 Face/Compass Routing st

04/06/2016Applied Algorithmics - week865 Face/Compass Routing st

04/06/2016Applied Algorithmics - week866 Face/Compass Routing st

04/06/2016Applied Algorithmics - week867 Face/Compass Routing st

04/06/2016Applied Algorithmics - week868 Face/Compass Routing st

04/06/2016Applied Algorithmics - week869 Face/Compass Routing st

04/06/2016Applied Algorithmics - week870 Face/Compass Routing st

04/06/2016Applied Algorithmics - week871 Face/Compass Routing st

04/06/2016Applied Algorithmics - week872 Face/Compass Routing st

04/06/2016Applied Algorithmics - week873 Face/Compass Routing st

04/06/2016Applied Algorithmics - week874 Face/Compass Routing st

04/06/2016Applied Algorithmics - week875 Face/Compass Routing st

04/06/2016Applied Algorithmics - week876 Face/Compass Routing (Analysis) Proof: each face is explored at most once after each face we get closer to t each edge is traversed at most four times there are at most 3n-6 edges (Euler formula) after O(n) steps we find the target node t Lemma: Face/Compass routing always finds a path from the source node s to the target node t. The total cost of Face/Compass routing is O(n).