180 likes | 194 Views
Explore challenges & solutions for flooding in dynamic networks with high mobility. Focus on theoretical analysis, routing protocols, and engineering constraints. Examines counterflooding & listflooding algorithms.
E N D
Information Dissemination inHighly Dynamic Graphs Regina O’Dell Roger Wattenhofer
Motivation • Highly Dynamic Networks • Mobility • zebra herd, flock of birds, cars, ... • Stationary nodes BUT unstable links • Roof-top network • Sensor network in changing environment • Flooding • High mobility reactive protocol flooding element • Guaranteed information delivery • Fundamental ingredient • Routing • Service discovery • Sensor network management • … DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Motivation – Previous Work • Simulations • Lots of mobility models • Algorithm correctness depends on model? • “Coarse-grained” mobility • Periods of stability • Link failures between completed route requests • Worst-case analysis [Awerbuch et al, 2005] • Assumptions on path stabilities • Graph restrictions • Unit Disk Graph (UDG) • Quasi-UDG • “bounded-growth” graphs DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Our View • “fine-grained”, theoretical worst-case mobility analysis We ask: • how mobile can the network, • how limited can the system be such that flooding is still possible? anything? DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Outline • Model • Network, mobility, algorithm • Flooding • Knowing |V| • Storing IDs • Finding max ID • Impossibility Conjecture • Routing • Outlook DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Model – “Environmental Challenges” • Graph Gt = (V,Et), V same, • Gt connected for all times t • Time between N(v) changes ¸T for all nodes v • T = max message transmission time • Broadcast medium • Negligible local processing time • Asynchronous message transmissions • x2N(v) during entire transmission • Events: • Message receipt • Neighborhood change (N(v) 0) Obs: Transmission at v will reach some node after at most 2T time. arbitrary changes Node w enters N(v) w should receive message from v “lost messages” possible simultaneously DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Goals – “Engineering Constraints” no more messages sent task dependent correct terminate do not know |V| O(log |V|) space storage, header unique small IDs no upper bound! N(v) DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
“3 out of 4” Flooding send forever send nothing correct terminate do not know |V| O(log |V|) space DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
COUNTERFLOODING • Assume: know n¸ |V| (polynomial upper bound) • Algorithm • counter kv = 0 • retransmit message when N(v) ;, inc kv • while kv < 2n • Proof idea • Border intact normal flooding • Otherwise N(v) at border node v • Comments • Reaches n nodes in time O(n) • Explicit termination? • Synchronous: easy! N DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
“3 out of 4” Flooding correct terminate do not know |V| O(log |V|) space estimate |V| DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
lmax LISTFLOODING • Assume: store & send O(n) IDs • Algorithm • list lv of known nodes, set nv = |lv| • receive lw merge: lv = lvÅlw • if |lv| >nv • nv = |lv| • COUNTERFLOODING( f(nv),lv) • Proof idea • Set of flooding nodes increases • Or: lmax increases • Comments • Correct in time O(n2) for f(n) = n + 1 • probably in O(n) for f(n) = 2n f(n) = • n + 1 • 2n • … DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Flooding correct terminate do not know |V| O(log |V|) space DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
IDFLOODING • Idea: find max ID upper bound on |V| • Algorithm • store nv = max ID seen • receive ID w • if w>nv • nv = w • COUNTERFLOODING( f(nv),nv) • Proof idea • Same principle as LISTFLOODING • Max ID of flooding nodes will grow • Comments • Needs unique polynomial IDs • Intuition: IDs encode information about |V| IDs strong assumption! DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Flooding – No IDs • General idea • Receive new information about graph (|lv| >nv, w>nv) • Update estimate nv • Restart COUNTERFLOODING with f(nv) • Counter example (idea) • General argument? • Guessing ID? • dynamic naming/initialization problem • randomized DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Routing • What about routing? possible! • Destination: send ACK • Initiates “termination” phase • Idea: 2 modes • counter nv • FLOOD: inc nv, send message • every N(v) • if received n’>nv update nv • TERM: COUNTERFLOODING(nv) • if received n’>nv update nv • restart COUNTERFLOODING(nv) • Correct in time O(n) • Actually: “optimal path” DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Outlook • First step • Theoretical analysis possible • More general mobility model • Lots of open questions • Impossibility of flooding? • Does randomization help? • Explicit termination? • Local dynamic synchronizer • Even more mobility • Nodes join and leave • Even less mobility • Restricted link changes • Timing assumptions DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Thank You! Questions?Comments? DistributedComputing Group DIALM-POMC 2005 Flooding in Highly Dynamic Graphs
Goals – “Engineering Constraints” • Requirements: • Correctness (task dependent) • Termination (no messages sent) • Conditions: • n = |V| unknown, nor any upper bound • O(log n) overhead (storage, message header) • Unique O(log n)-bit IDs • Neighborhood table prohibitively expensive • Idea: • Separate conditions analyze effect must haves design, cost, environment, … DIALM-POMC 2005 Flooding in Highly Dynamic Graphs