scalable localized routing in wireless sensor networks
DESCRIPTION
Scalable localized routing in wireless sensor networks. Tutorial. Ivan Stojmenovic [email protected] www.site.uottawa.ca/~ivan. Sensors route reports to a fixed sink …. Internet. humidity. Sink. End user. Multi-hop networks: Routing. Unit graphs radius. Sensor networks - PowerPoint PPT PresentationTRANSCRIPT
Ivan Stojmenovic 1
Scalable localized routing in wireless sensor networks
Ivan Stojmenovic
www.site.uottawa.ca/~ivan
Tutorial
Ivan Stojmenovic 2
Sensors route reports to a fixed sink …
Sink
End user
humidityInternet
Ivan Stojmenovic 3
Multi-hop networks: Routing
Unit graphsradius
Sensor networksPosition information
•Routing: source destination
Ivan Stojmenovic 4
Routing with/out position information ?• Sensors can function efficiently only with position information
GPS and location estimation advanced rapidly(cubic cm sensor with 7mm x 7mm x 2mm GPS)
• Sink can flood network with/out its own position
• Routes can be learn while flooding, or
• Only position of sink is learned and used
Ivan Stojmenovic 5
Proactive routing: ad hoc networks• Routing table contains the first hop/neighbor toward
each destination
• Bellman-Ford: Each node exchanges its routing tables with all its neighbors, and
• Best neighbors N for route from S to D is one that minimizes: cost of link S to N + cost N to D (from routing table in N)
• OLSR (Optimized Link State Routing): link changes are flooded + Dijkstra’s shortest path
• MPR (MultiPoint Relay) to reduce flooding
Ivan Stojmenovic 6
Reactive routing: ad hoc networks• Source floods route discovery (short) message
• Destination node replies back to source upon receiving discovery message(s) using memorized hops (AODV) or paths (DSR)
• Source sends full message using recorded path
• Multi-paths for QoS
• Route discovery message may contain accumulated delay, congestion, power, cost etc. along paths;
best path selected at destination
• Local route maintenance; expanding ring search
Ivan Stojmenovic 7
Route discovery by flooding
S D
S DEach sensor retransmits once
Problem: sink stable but sensors may sleep
DSR, AODV in ad hoc networks, position info not needed =‘directed diffusion’ for sensors Intanagonwiawat, Govindan, Estrin 2000
Ivan Stojmenovic 8
Directed diffusion• Monitoring center
broadcasts packet to all sensors in a region
• Sensors create links for reporting along reverse broadcast tree
• Link is toward sensor from which the first copy of packet is received
Ivan Stojmenovic 9
Greedy position based localized routing
SDA
B
Localized protocol: S knows only position of itself, its neighbors and destination D
S forwards to neighbor B closest to D
Finn 1987
Ivan Stojmenovic 10
Greedy: SABCD vs shortest path SECD
S A
E C
D
Localized vs. globalized protocol
SP Overhead: messages to maintain global information at each node following mobility and/or sleep/active periods changes
B
Ivan Stojmenovic 11
Greedy is loop-free
Assume A1 closest to D
A2 sends to A3 – contradiction, A1 is closer
D
An
An-1
A3
A2
A1
Ivan Stojmenovic 12
Progress based routing ‘84-86.
Random progress (Nelson, Kleinrock): A, C or FNFP- nearest forward progress (Hou, Li): C
MFR - most forward within radius(Takagi, Kleinrock): A
AB C
D
E FS
MFR: Choose closest projection on SD; minimize SA.SD
A’
Ivan Stojmenovic 13
MFR is loop-free
DAn.DA1 > DA2
.DA1
DAn.DA1>DA1
.DA2>DA2.DA3>…>
DAn-1.DAn > DAn
.DA1
A1 A2
D
An
An-1
A3
A2
A1
Proof by Stojmenovic, Lin 1998
Ivan Stojmenovic 14
Greedy vs. MFR
D
B
A’
A
S
B’
may choose different node AD<BD
choice is same most of time!
Similar performance
Ivan Stojmenovic 15
DIRectional routing methods
SDA
Basagni, Chlamtac, Syrotiuk, Woodward MOBICOM’98 (DREAM)
Ko, Vaidya MOBICOM ’98 (LAR)
Kranakis, Singh, Urrutia CCCG’99 (compass routing)
Send to all neighbors within angular range from direction [BCSW,KV]
location update schemes [BCSW, KV]
Closest direction
Flooding rate (# of messages vs SP) ??
Ivan Stojmenovic 16
DIR is not loop-free !
Transmission radius
D
H
G
F
E
Stojmenovic 1998Greedy and MFR are loop free
Ivan Stojmenovic 17
Performance evaluation
• Random unit graphs: Choose n nodes at random in [0,m]x[0,m]
• select average node degree d = 2,3,4,5,…
• sort all (n-1)n/2 edges in increasing order
• Radius R= nd/2-th edge in sorted order!
• Reject graph if disconnectedSuccess rate = high for high degree, low for low degree
hop count = successful Greedy/MFR close to SP, DIR >
flooding rate (#messages vs SP) = close to SP
Independent variable is d, not R !!!
Ivan Stojmenovic 18
Is hop count the best metric ?• Power consumption
• Reluctance (avoiding nodes with low energy)
• Power_reluctance
• Delay
• Expected hop count (realistic physical layer)
• COST - selected metric
Ivan Stojmenovic 19
Cost to progress ratio framework• Progress: measures advance toward destination• Progress = |SD|-|AD|=d-a• Select neighbor A that minimizes
cost(SA)/progress(A)• Hop count: cost=1 Maximize advance
S D
A
d
r aStojmenovic IEEE Network 2006
Ivan Stojmenovic 20
Parameterless behavior• Cost-to-progress ratio framework has no added
parameters such as thresholds
• Threshold based approach: eliminate ‘bad’ links, drop packet if there is no ‘good’ neighbor
• What if a solid path has just one weak ‘bridge’?• Experiments so far indicate that threshold based approaches are
inferior for all threshold values - either high failure rate or suboptimal since there is no notion of ‘best’ neighbor
Ivan Stojmenovic 21
Constant power minimize hop countpower =u(d)= d + c minimize total powerMany articles assume c=0; in practice c>0 since power is needed to run hardware at each node, and correct reception requires minimal transmission power (no energy free transmission at zero distance)
reluctance f(A) to forward packets ==1/g(A) g(A) in [0,1] lifetime minimize total costPower_reluctance = f(A)u(d)
A d B
Power saving localized routing
model by Rodoplu, Meng 1999
Ivan Stojmenovic 22
Ideal and localized power aware routing
• # of hops n d(a( -1)/c)1/
• minimal power: v(d)= dc(a(-1)/c)1/ + da(a( -1)/c)(1-)/ = O(d)
• A = minimizes u(r)+ v(s) among neighbors of S
S x A d-x D
Stojmenovic, Lin 1998S D
A
dr s
Ivan Stojmenovic 23
Localized power aware routing
• Kuruvila, Nayak, Stojmenovic 2004
• Power progress: minimize (r+c)/(d-a)
• Iterative power progress: select B if power(SB)+power(BA) < power(SA)
• (Iterative) Projection power progress
S D
A
dr a
Ivan Stojmenovic 24
‘Reluctance’ routing algorithmA
S Ddr a
f(A)= reluctance =1/g(A) g(A) in [0,1] lifetime
A = neighbors of S that minimizes f(A) + f’(S)*s/R( cost of A + average cost around S * ideal number of hops from A to D)
If D is neighbor of S then deliver to D else forward to A
Reluctance/progress: minimize f(A)/(|SD|-|SA|)
Kuruvila, Nayak, Stojmenovic 2004 (no added parameters)
Stojmenovic, Lin 1998
Rediscovered by: Yu, Govindan, Estrin: GEAR, TR-01-0023, Aug. 2001.
Ivan Stojmenovic 25
Power_reluctance routing
S D
A
dr a
A = neighbors of S that minimizes u(r) + v(s)
If D is neighbor of S and u(d) < min [u(r) + v(s)]
then deliver to D else {A = neighbor of S that minimizes f(A)u(r) + v(s)f’(S); forward to A }
Power*reluctance/progress: minimize f(A)power(SA)/(|SD|-|SA|)
Kuruvila, Nayak, Stojmenovic 2004 (no added parameters)
Stojmenovic, Lin 1998
Ivan Stojmenovic 26
Physical layer impact• Expected hop count (counting all transmissions and
possibly acknowledgements)
• F(SA)= expected hop count from S to A
• Minimize F(SA)/(d-a)• Kuruvila, Nayak, Stojmenovic 2004
• Delay …
• QoS routing …
• Bitrate …
S D
A
dr a
Ivan Stojmenovic 27
Physical layer impact
=4
p(R)=0.5
Pac
ket r
ecep
tion
pro
babi
lity
R
Unit graph model:
Prp(x)=1, xR
Prp(x)=0, x>R
Lognormal shadowing model
Distance between nodes
What is the transmission radius ? Who are neighbors?
Ivan Stojmenovic 28
Simulation dilemma• Home-made simulator or one used by others (NS-2,
Qualnet, J-sim,…)?• Greedy routing uses hop count as measure• NS-2 applies realistic physical layer, which mostly
penalizes long hops • Why to use simulator that defeats the model, hides physical
models and parameters which impact the data, impact comparison, and provide no explanation?
• Solution: build protocols and simulators in parallel, so that results can be explained and protocols improved
• Network layer protocol need to be designed with more realistic physical layer, not with unit disk graph model
Ivan Stojmenovic 29
How to simulate ?• Study one variable at a time, explain it fully
• Ideal MAC, no congestion, for initial studies
• If one routing A is on average better than one routing B, it should cause less congestion, thus show even more advantage at the transport layer
• Simulation to match ‘ideal’ assumptions• Stable graphs first; localized design takes care of dynamics
• Independent variable is one that matters e.g. density (average number of neighbors per node), not transmission radius
• Compare against the best (e.g. shortest path), not against worst (e.g. flooding)
Ivan Stojmenovic 30
Approximate packet reception probability
p(x) 1-(x/R)q/2 for x < R
(2-x/R)q/2 for 2R x R
q depends on L, packet length, 2 6• Signal strength is a random variable, and deviation cannot be predicted in advance (but some articles use it to select best neighbors)
• Transmission power is assumed fixed and same • q=1 for L=1; q2 for L=120.• Exact formula complex, time consuming and unreliable• each bit is received or not independently (no coding) packet received correctly iff all bits received
Ivan Stojmenovic 31
Reactive routing with physical layer• In route discovery phase, forward the sum of
Expected Hop Counts along partial route, or
• Wait retransmission proportional to EHC on link
• Problems:
• A single retransmission by a given node may not reach the best forwarding neighbor; tradeoff # of retransmissions and gains made
• Real traffic may not use routes created by control traffic – different packet lengths, or low packet reception probability
Ivan Stojmenovic 32
Hello messages with physical layer• ‘fixed hello protocol’
• Send hello messages fixed number of times, to increase the probability of reception by neighbors
• ‘variable hello protocol’• Send hello packets until sufficient number of such
packets from neighbors received (learn enough neighbors for desired density)
• Goel, Kalaichelvan, Nayak, Stojmenovic, Villanueva-Pena 2006
Ivan Stojmenovic 33
Greedy routing is not hop count optimal
• Ideal routing
– Place additional nodes between Source and Destination as required. – Ideal Hop count computed for different u and values– Each received packet is acknowledged u times
• Low values for 0.6Rx 0.9R u=1• 50% higher at x=R, very high x>R or x<0.1R
•Kuruvila, Nayak, Stojmenovic 2004
x = d/nx xxxxx
n1d
Ivan Stojmenovic 34
IHC for Different u Values (=2)
Ivan Stojmenovic 35
Expected progress routing
C D
Axa
c
Progress: c-a
Expected hop count for u=1: f(x,1) = 1/p2(x)+1/p(x)
Best value of u: u1/p(x)
Forward to neighbor (closer to destination) that maximizes
(c-a)/f(x,1) (EPR-1) or (c-a)/f(x,u) (EPR-u)
Hop by hop ack
Ivan Stojmenovic 36
tR Greedy Algorithm
• The redefined notion of greedy routing. • Current node S selects neighbor closest to D
among all neighbors that are closer to D than itself, and which are at distance at most tR from S, for forwarding the message.
• Experiments for t = 1, 1.25 and 1.4377• Threshold based greedy routing
Ivan Stojmenovic 37
Performance summary
• Good performance for localized parameterless algorithms
• low hop counts for dense networks and 100% success rates
• tR-greedy are significantly inferior: a choice of ‘long’ edge is quite likely on a
route which then contributes to very high expected hop count measure, or– ‘optimistic’ parameter choice fails traffic unnecessarily
Ivan Stojmenovic 38
Loop-free with guaranteed delivery
• Stop if message is to be returned to neighbor it came from = concave node
• MFR, DIR, Greedy• Flooding Greedy, Flooding MFR:• Concave nodes flood message to all
neighbors and then reject further copies of the same message
• Loop-free methods that guarantee delivery, reasonable flooding rate
• But nodes memorize past trafficStojmenovic, Lin 1999
Ivan Stojmenovic 39
Routing around void areas ?
S
A ?
Recovery, perimeter, face mode
D
Ivan Stojmenovic 40
1. Constructing planar graph: faces
S
Some planar graphs (Gabriel graph) can be constructed without message exchange!
Bose, Morin, Stojmenovic, Urrutia, 1999
A ?D
Ivan Stojmenovic 41
2. Traverse proper face until recovery
-Select face containing SD
- Follow that face by left hand or right hand rule
until recovery (= closer node reached)
Bose, Morin, Stojmenovic, Urrutia, 1999
S ?D
B
C
Ivan Stojmenovic 42
GFG= Greedy-FACE-Greedy• run Greedy until delivery or a failure node A, |AD|=d, • run FACE until delivery or B reached, |BD|<d, • run Greedy …• paths close to SP for higher degrees, • <3.5 times longer than SP for low degrees• No traffic memorization, localized, close to SP
scalable !!• Karp and Kung MOBICOM 2000 duplicated (with citation)
GPSR= GFG (added MAC, mobile nodes)Bose, Morin, Stojmenovic, Urrutia, 1999
Ivan Stojmenovic 43
Gabriel graph
U V
P QW
Gabriel graph GG(S) contains an edge (U,V) iff the disk with diameter (U,V) contains no other point from S
= distance from other points to center of UV is > |UV|/2
= Acute angles for all joint neighbors in GG
GG(S) is planar and connected (contains MST)
Gabriel, Sokal 1984
Ivan Stojmenovic 44
Gabriel graph is planar
Planar graph = no two edges intersect
U
VQ
P Proof by contradiction: Assume
UV, PQ GG(S), UV PQ
PUQ < /2, PVQ < /2,
UPV < /2, UQV < /2,
Sum of angles in UPVQ < 2
Ivan Stojmenovic 45
Gabriel graph contains MST
P Q
WBy contradiction: Assume
PQ MST, PQ GG;
W, PW<PQ, QW<PQ, PW MST
Replace PQ by PW in MST
new MST has smaller sum of edge lengths. contradiction
Gabriel graph connected
Ivan Stojmenovic 46
Unit (connected) graph contains MST
Kruskal’s algorithm to construct MST:
Sort all edges by their length, from shortest to longest.
Consider each edge in that order for inclusion in MST:
Include it in MST if its addition does not create a cycle.
Unit graph edges considered before any other edge. After their consideration, MST is already connected, and no more edges can be added.
GG(S) U(S) planar and connected!
Ivan Stojmenovic 47
Traversal of selected face leads to recovery
-Line SD intersects the face in X on an edge EF
- E or F is closer to D than A (if nothing else found before)
B
S ?D
XE
F
C
Ivan Stojmenovic 48
Getting closer on the face is guaranteed for GG
E
F
DS X
S < /2, D< /2 since EF is in GG E > /2 or F > /2
F > /2 |SD| > |FD| F is closer to D than S
Frey, Stojmenovic MOBICOM 2006
Ivan Stojmenovic 49
Conclusions
• Imprecise location information is challenge for georouting with guaranteed delivery
• Georouting in 3D has no guaranteed delivery• Unit disk graph is required• For planar graphs GFG still always works,
but GPSR by Karp and Kung does not
• For other metrics, there is still no alternative to GG based face routing for recovery mode, which prefers close neighbors (except shortcuts, dominating sets..)
Frey, Stojmenovic 2006
Ivan Stojmenovic 50
Greedy, GFG (greedy-face-greedy)
W
U
I
A
G
V
D
J
KL
CE
F
H
B
Ivan Stojmenovic 51
Robustness of GFG
• GFG requires unit graph = equal transmission radius, no obstacles, nodes in plane
• Extension for fuzzy unit graphs = connected if distance < r, nor connected if distance >R, may or may not be connected otherwise, R/r < 1.41Barriere, Fraigniaud, Narajanan, and Opatrny 2001
• Loop-free for static nodes; loops can be created by mobile nodes but exit can be found by adding timestamp of the last intersection with imaginary line SD and ignoring links created afterwards
Ivan Stojmenovic 52
Shortcut procedure in FACE mode
AF
EC
B G
ABCE replaced by AF
2-hop information needed
Datta, Stojmenovic, Wu 2001
Ivan Stojmenovic 53
Restricting FACE to a dominating set
• Paths in FACE mode may be quite long
• Reduce paths by restricting routes to a connected dominating set (CDS)
• Each node is either in CDS or neighbor of a node from CDS
• Localized maintenance of CDS preferred
• Dominating set status to be communicated, or 2-hop information needed
Datta, Stojmenovic, Wu 2001
Ivan Stojmenovic 54
Beaconless greedy routing• Füßler, Widmer, Käsemann, Mauve, Hartenstein 2003• Heissenbüttel Braun 2003
• No ‘hello’ messages• S transmits packet containing position of destination• Each receiving node sets timeout based on its distance to destination• If a packet from a neighbor received while waiting, cancel
retransmission• Otherwise retransmit at end of timeout• Details for reducing the # of paths searched, e.g.• Sender asks for help, and sends full message only to neighbor that
responded first
Ivan Stojmenovic 55
Beaconless routing with guaranteed delivery
• In face mode, nodes respond to S based on distance to S, not distance to D
• Closer neighbors respond sooner
• In basic variant, all neighbors respond (optimizations possible)
• ‘Witness’ node B for a non-GG edge SA responds before A since |SB|<|SA|, and that message is received by A
• Neighbors that discover ‘witness’ cancel their Gabriel edge
• After learning Gabriel edges, apply face mode routing
• Chawla, Goel, Kalaichelvan, Nayak, Stojmenovic 2006
Ivan Stojmenovic 56
QoS routing• Find a route which satisfies delay, bandwidth etc. QoS
criteria• Huang, Dai, Wu 2004• Localized routing, maximizes progress/cost• Progress =advance on the projection to destination • Cost from QoS criterion used• Backward checking = iterative improvement
A B
C
Instead of routing to B, route to C if cost(AC)+cost(CB) < cost (AB)
Ivan Stojmenovic 57
QoS DFS routing
• Depth First Search with Greedy to sort neighbors, and O(1) memory in each node, guarantee delivery
• bandwidth criterion = edge elimination
• delay criterion = hop count + more bandwidth
• new connection time criterion • Jain, Puri and Sengupta; Stojmenovic, Russell, Vukojevic 1999
• Power and cost addition: Vukojevic, Stojmenovic 2005
Ivan Stojmenovic 58
Power/cost aware localized routing with guaranteed delivery
PFP= power-face-power
• run Power-aware until delivery or a failure node A, |AD|=d,
• run FACE until delivery or B reached, |BD|<d,
• run Power-aware …
• CFC = Cost-FACE-Cost
• PcFPc = PowerCost-FACE-PowerCost• Competitive with respect to globalized solutions
Stojmenovic, Datta 2000
Ivan Stojmenovic 59
Component routing
DU
FE
B
A
W
V
GHI
J
QP
Routing from A to D: reject nodes
B forwards to E,W from two neighbors connected components; E fails, W delivers
Concave nodes send packet to one neighbor in each connected component of subgraph of neighbors:
Parallel path search = reduced flooding greedy
Lin, Lakhsdisi, Stojmenovic MobiHoc 2001
Ivan Stojmenovic 60
Assisted routing
AP1
AP2
S
D
A B
C
Figure 4: the operation of AGPF
AP1
AP2
S
D
A B
C
AP1
AP2
S
D
A B
C
Figure 4: the operation of AGPF
Blazevic, Giordano, Le Boudec 2000