1 Efficient Broadcasting and Gathering in Wireless Ad-Hoc Networks Melih Onus (ASU) Kishore Kothapalli (JHU) Andrea Richa (ASU) Christian Scheideler (JHU) 2005 International Symposium on Parallel Architectures, Algorithms and Networks, Las Vegas Nevada
2 Ad-Hoc Networks Mobile devices communicating via radio Network without centralized control Broadcasting: Sending a packet from a source node to all nodes in the network Gathering: Sending one packet from a subset of nodes to a single sink node in the network
3 Our Results Near optimal algorithms for broadcasting and information gathering (time and work) A realistic wireless communication model which takes into account –Different transmission & interference ranges –Non-uniformity of signal propagation of real antennas –Physical carrier sensing
4 Communication Models Unit Disk Graph (UDG) Disk shaped transmission area u R v w Packet Radio Network (PRN) Transmission Range = Interference Range v u w
5 Communication model u v w rtrt riri For a given transmission range r t, transmission area of v is { u V | c(v,u) r t } Transmission range, interference area via cost function c For given interference range r i, interference area of v is { u V | c(v,u) r i } Cost Function: c(u,v) [(1- )d(u,v), (1+ )d(u,v)] d(u,v) is Euclidean distance [0,1), depends on the environment
6 Communication model (cont.) u v w rtrt riri If c(v,u) ≤r t then v is guaranteed to receive the message from u provided no other node w with c(v, w) ≤ r i also transmits at the same time. r t : Transmission range r i : Interference range If c(v,w) ≤ r i, node w can cause interference at node v.
7 Physical Carrier Sensing These ranges grow monotonically in both the sensing threshold T and the transmission power. 14 u r si (T) v w r st (T): Carrier sense transmission (CST) range r st (T) r si (T): Carrier sense interference (CSI) range
8 Constant density spanner Constant density spanner: Given a graph G find a sparse subgraph G’ of G such that distance between any two nodes in G’ is less than a constant factor of original distance. Active node Inactive node Gateway node Gateway edge Other edges
9 Constant density spanner (cont.) Active nodes form a maximal independent set Gateway nodes connect active nodes which are within 2 or 3 hops from each other Active node Inactive node Gateway node Gateway edge Other edges
10 Motivation Previously proposed broadcasting and gathering algorithms will not work for the communication model that we have considered.
11 s ( )(( )) Isolated Broadcasting Active node Inactive node Gateway node Gateway edge Other edges Firstly, node s sends out the broadcast message. ((( ))) v u
12 message CTS RTS Isolated Broadcasting (cont.) If u is a gateway node and has already received the message, it sends out an RTS signal with probability p. If v is an active node or a gateway node and v has not received the broadcast message yet, then v checks if it correctly received an RTS signal. If so, v sends out a CTS signal. If v is a gateway node and sent out a RTS signal, then v checks if it received a CTS signal. If so, v sends out the broadcast message. s v u
13 Isolated Broadcasting (cont.) Active node Inactive node Gateway node Gateway edge Other edges s v u (( ))((( )))( ) If node v: – is an active node – received the broadcast message in the previous round – it is the first time it received the broadcast message Then, it sends out the broadcast message.
14 Our Results D(s): diameter with respect to s W(s): minimum work for broadcast The broadcast algorithm needs O(D(s)+log n) rounds, with high probability, to deliver the broadcast messages to all nodes. The broadcast algorithm needs O(W(s)) work Extendable to multiple broadcasts
15 Information Gathering Stage I: Building Gathering Tree T(s) Stage II: Gathering on Tree T(s)
16 Building Gathering Tree T(s) We select a shortest path tree rooted at s on the spanner graph by running a modified Bellman-Ford type algorithm that takes into account message interference. In order to show that this RTS/CTS scheme works efficiently, it is crucial to note that the spanner is of constant density: Hence a constant number of RTS/CTS handshakes are enough to guarantee the successful delivery of a message w.h.p..
17 RTS route m. Building Gathering Tree T(s) (cont.) CTS s v u Firstly, node s sends out the route message. (( ))((( )))( ) If the shortest path estimate d'(s,u) is not infinite and u needs to broadcast the latest update on d’(s,u), then u sends a RTS signal with probability p If v received an RTS signal then v sends a CTS signal. If u received a CTS signal, u sends out the route message.
18 Building Gathering Tree T(s) (cont.) s v u Each node u has a label which is the shortest path distance to sink node. Each node u has a parent node which is the node that node u received the route message
19 I-RTS Gathering on Tree T(s) (Inactive Nodes) Active node Inactive node Gateway node Gateway edge Other edges If w is inactive and has a packet to send and w is awake then w sends a I-RTS signal to its parent with a probability 1/2. s w Inactive nodes have a state {asleep, awake} v
20 Gathering on Tree T(s) (Inactive Nodes) Active node Inactive node Gateway node Gateway edge Other edges s w v If v is active; v receives an I-RTS signal, send an I-CTS signal v senses a busy channel, send a collision message v senses a free channel, send a free message I-RTS
21 Gathering on Tree T(s) (Inactive Nodes) Active node Inactive node Gateway node Gateway edge Other edges s w v If w is inactive; w receives an I-CTS signal, send the packet w receives a collision message, become asleep with p=1/2 w receives a free message, become awake
22 Gathering on Tree T(s) (Active Nodes) Active node Inactive node Gateway node Gateway edge Other edges If v is active and has a message to send, then v sends the message to its parent. s v u message
23 RTS Gathering on Tree T(s) (Gateway Nodes) Active node Inactive node Gateway node Gateway edge Other edges If u is a gateway node and has a non-empty queue then u sends an RTS message containing the id of its parent with probability p. If u receives a CTS message from its parent, then u sends the message to its parent. If an active node receives an RTS message containing its id, it sends a CTS message. s v u CTS message
24 Our Results : maximum density of inactive nodes m: number of messages W’(s): the optimal work A gathering tree T(s) with sink node s, the information gathering algorithm presented above needs O(m+ (logn)(log )+D(s)+logn) time steps w.h.p.. Once a stable gathering tree has been constructed, the gathering protocol described above needs O(W’(s)) work
25 Conclusions and Future work Algorithms for broadcasting and information gathering on a realistic model for wireless communication Node mobility and node faults Anycasting and multicasting