Upload
hadar
View
37
Download
0
Embed Size (px)
DESCRIPTION
“ Fault Tolerant Energy Aware Data Dissemination Protocol in Sensor Networks ” , in DSN ’ 04. ICS280 Lee, Kyoungwoo. SPMS. [Khanna, DSN04] Fault Tolerant Energy Aware Data Dissemination Protocol G. Khanna, S. Bagchi, and Y. Wu - PowerPoint PPT Presentation
Citation preview
“Fault Tolerant Energy Aware Data Dissemination Protocol in Sensor Networks”, in DSN
’04ICS280
Lee, Kyoungwoo
2
SPMS• [Khanna, DSN04] Fault Tolerant Energy Aw
are Data Dissemination Protocol – G. Khanna, S. Bagchi, and Y. Wu– Dependable Computing Systems Lab at Electri
cal and Computer Engineering in Purdue Univ.– “Fault Tolerant Energy Aware Data Disseminati
on Protocol in Sensor Networks”, in DSN ’04
3
SPMS - Overview• Motivation
– Battery-powered sensor nodes– Data implosion in sensor networks meta-data negotiation
from SPIN (Sensor Protocols for Information via Negotiation)– Prone to link and node failures
• Problem– How to disseminate data reducing energy-consumption and
end-to-end delay in the face of node and link failures • Solution
– Each node maintains routes in the zone– Data transfer in multiple hops using the lowest energy level
• Contribution– Resilient to node and link failures– Lower overall delay– Energy efficient data dissemination protocol
4
SPMS Protocol• Initial phase
– Zone Neighbors: nodes which lie within a node’s zone
• Zone: the region that a node can reach at the maximum power level
– Maintain a routing table for each of its zone neighbors
• Meta-data exchange phase– Broadcast ADV (Advertise) to zone
neighbors– Send REQ (Request) to the source
through the shortest path• Directly to the source in SPIN and
who is next hop neighbor in SPMS• Indirectly to the source through
multiple hops • Data dissemination phase
– Transmit DATA to the destination in exactly the same manner as the received REQ
• Direct form the source to the destination if they are next hop neighbors
• Otherwise through multi-hop communication
S
zone of S
C
FD
B
A
2
2
1
1
3
5
Zone radiuswith Max Tx Power
Dest Cost Next Hop Neighbor
A 2 YesB 2 YesC 1 YesD 3 NoF 2 No
1
Routing Table of S
5
SPIN vs. SPMS• SPIN
① S broadcasts ADV② C,D, & F sends REQ to S③ S sends DATA to C,D, & F
• SPMS① S broadcasts ADV
1. D & F check routing table2. D & F start TADV waiting for F
& C to send ADV of the same data
② C sends REQ to S③ S sends DATA to C④ C broadcasts ADV
1. F cancels TADV and starts TDAT2. D resets TADV
⑤ F sends REQ to C⑥ C sends DATA to F⑦ F broadcasts ADV
1. D cancels TADV and starts TDAT⑧ D sends REQ to F⑨ F sends DATA to D
S
zone of S
C
FD
B
A
2
2
1
11
3
5
DATA
REQ
ADV13
2
1ADV
2REQ3
DATA
4ADV 5REQ
6DATA
7ADV
8REQ
9DATA
C,D, & F are interested in DATA and no failure
[Claim] SPMS is better than SPIN in terms of energy & delay•Multi-hop communication with varying transmit power levels can reduce energy since Ed2
•Reducing power level of transmission can cause a smaller level of MAC layer contention
6
SPMS Protocol for Fault Tolerance
• Main Idea– Maintain alternate node in the routing table– PRONE: Primary Originator Node
• First choice node for requesting data from– SCONE: Secondary Originator Node
• Second choice to be used in case the PRONE is unreachable• Algorithm
– Update PRONE and SCONE if closer node broadcasts ADV– Send REQ to PRONE with timer– Send REQ to SCONE if timer expires
• SPMS can tolerate– Failure of the source node after its data has been received
by any of its neighbor nodes– Failure of any intermediate node
7
SPMS – Fault Tolerance• CASE 1: F fails before
broadcasting ADV① S broadcasts ADV
1. D & F check routing table and update PRONE and SCONE
2. D & F start TADV waiting for F & C to send ADV of the same data
② C sends REQ to S③ S sends DATA to C④ C broadcasts ADV
1. F cancels TADV and starts TDAT2. D resets TADV and updates
PRONE and SCONE⑤ F may send or not REQ to C⑥ C may send or not DATA to F⑦ F can not broadcast ADV
1. TADV of D expires2. TDAT of D starts
⑧ D sends REQ to C through F1. TDAT of D expires since F fails
⑨ D sends REQ to C (PRONE) directly using higher Transmit Power
⑩ C sends DATA to D directly
Dest Cost Next Hop Neighbor
S 3 NoC 2 NoF 1 Yes
S
zone of S
C
FD
B
A
2
2
1
11
3
51ADV
2REQ3
DATA
4ADV 5REQ
6DATA
7ADV
8REQ
10 DATA
C,F,& D interested in DATA and F fails
PRONE SCONE① S S
9 REQ
PRONE SCONE① S S④ C S
Routing Table of D
8
SPMS – Fault Tolerance (cont’)
• CASE 2: F fails after broadcasting ADV
① S broadcasts ADV1. D & F check routing table and
update PRONE and SCONE2. D & F start TADV waiting for F & C
to send ADV of the same data② C sends REQ to S③ S sends DATA to C④ C broadcasts ADV
1. F cancels TADV and starts TDAT2. D resets TADV and updates
PRONE and SCONE⑤ F sends REQ to C⑥ C sends DATA to F⑦ F broadcasts ADV and fails
1. TDAT of D starts⑧ D sends REQ to F
1. TDAT of D expires since F fails2. D regards F dead and TDAT for C
starts⑨ D sends REQ to C (SCONE)
directly using higher Transmit Power
⑩ C sends DATA to D directly
S
zone of S
C
FD
B
A
2
2
1
11
3
51ADV
2REQ3
DATA
4ADV 5REQ
6DATA
8REQ
10 DATA
C,F,& D interested in DATA and F fails
Dest Cost Next Hop Neighbor
S 3 NoC 2 NoF 1 YesPRONE SCONE① S S④ C S
9 REQ
7ADV
PRONE SCONE① S S④ C S⑦ F C
Routing Table of D
9
SPMS – Fault Tolerance (cont’)
• CASE 3: F and C fail① S broadcasts ADV
1. D & F check routing table and update PRONE and SCONE
2. D & F start TADV waiting for F & C to send ADV of the same data
② C sends REQ to S③ S sends DATA to C④ C broadcasts ADV
1. F cancels TADV and starts TDAT2. D resets TADV and updates PRONE
and SCONE⑤ F sends REQ to C⑥ C sends DATA to F⑦ F broadcasts ADV and F & C fail
1. TDAT of D starts⑧ D sends REQ to F
1. TDAT of D expires since F fails2. D regards F dead and TDAT for C
starts⑨ D sends REQ to C (SCONE) directly
using higher Transmit Power What if C and F all fail?
S
zone of S
C
FD
B
A
2
2
1
11
3
51ADV
2REQ3
DATA
4ADV 5REQ
6DATA
8REQ
C,F,& D interested in DATA and C&F fail
Dest Cost Next Hop Neighbor
S 3 NoC 2 NoF 1 YesPRONE SCONE⑦ F C
9 REQ
7ADV
•SPMS keeps a pair of PRONE and SCONE Multiple SCONE can increase fault tolerance
Routing Table of D
10
SPMS – Energy Analysis• ESPIN = (A+D+R)*E1 + (A+D+R)*Er
• ESPMS = k*A*E1 + k*(D+R)*Em + k*(A+D+R)*Er
-(k-1) relay nodes from the source to the destination -A: size of ADV-D: size of DATA-R: size of REQ-E1, E2, …, Em where Ei>Ei+1: energy consumed per transmitted bit corresponding to the different transmission power levels-Er: energy required to receive the packet
Src Dest1 2 3 k-1D*E1
ADVA*E1 DATA
REQ R*E1
D*Er
A*Er
R*Er
Src Dest1 2 3 k-1
A*E1
DATA
REQ
ADV
D*Em, R*Em
ADV ADV ADV
A*Er, D*Er, R*Er
DATA
REQ
ESPIN
ESPMS
11
SPMS – Energy Analysis (cont’)
• ESPIN = (A+D+R)*E1 + (A+D+R)*Er
• ESPMS = k*A*E1 + k*(D+R)*Em + k*(A+D+R)*Er
• Ratio of Energy (SPIN/SPMS) = ESPIN/ESPMS
(Observation) •Higher radius of transmission indicates higher distance from the source to the destination•In SPIN, the energy overhead increases exponentially since Ed2 but it increases linearly in SPMS
12
SPMS – Energy Experiments• Assumptions
– Sensor field with uniform density of nodes– Power level: 3.1622, 0.7943, 0.1995, 0.05, and 0.0125 mW taken from Berkeley MICA2– Distance: 91.44, 45.72, 22.86, 11.28, and 5.48 m– The maximum number of the zone is six– Size of DATA: 40 bytes– Size of REQ and ADV: 2 bytes– All-to-all communication: each node generates 10 new packets and every node is interested in them
(Observation) •SPMS saves 26 ~ 42 % of energy compared to SPIN•SPMS outperforms SPIN with increases of the number of nodes and radius of transmission
13
SPMS - Conclusion• Fault-Tolerance
– Maintain PRONE and SCONE at routing table
– Select alternate if node fails• Energy-Efficiency
– Multi-hop communication since Ed2
• End-to-end delay– Less delay due to less contention of MAC
14
SPMS - Discussion• Single-hop vs. multi-hop transmission
– Depends on application• Increase fault-tolerance using multiple SCO
NEs– Increase sleep time and decrease delay when
the multiple failures occur
[Szewczyk, SENSYS04] R. Szewczyk, A. Mainwaring, J. Polastre, and D. Culler, “An Analysis of a Large Scale Habitat Monitoring Application” in SenSys 04
Real measurement of lifetime of sensors in Habitat Application
Lifetime in the single hop network Lifetime in the multi-hop network
" Balancing Energy Efficiency and Quality of Aggregate
Data in Sensor Networks", To Appear in the VLDB Journal
Special Issue on Data Stream Processing, 2005
16
GaNC and TiNA
• [Sharaf, VLDB05] GaNC and TiNA – M. A. Sharaf, J. Beaver, A. Labrinidis, and P. K. Chrysa
nthis– Dependable Computing Systems Lab at Computer Sci
ence in Univ. of Pittsburgh– “Balancing Energy Efficiency and Quality of Aggregate
Data in Sensor Networks”, in VLDB ’05• Propose group-aware network configuration meth
od (GaNC) and a framework to use temporal coherency tolerances (TiNA) to provide significant energy savings and a negligible drop in quality of data
17
GaNC & TiNA - Overview• Motivation
– Further energy savings in the context of In-network aggregation• Goal
– Reduce the size of transmitted data– Minimize the number of transmitted messages– Without significant QoD
• Solution– GaNC can reduce the size of transmitted data– TiNA can minimize the number of transmitted messages as well
• Contribution– Propose enhanced network configuration scheme– Provide a framework on top of existing in-network configuration
18
GaNC• Group-Aware Network Configuration
method• Observation
– The length of messages sent depends on the number of groups in the routing subtree
• Idea– Reduce the number of groups to red
uce the length of messagesGroup-aware Network Configuration
• Cluster along the same path sensor nodes that belong to the same group
• Consider semantics of the query and properties of sensor nodes
• Reduce the size of transmitted data
A
B C
A
B C
Group1 Group2
Group2 Group2
19
TiNA• Temporal coherency-aware In-
Network Aggregation• Goal
– Reduce the size of transmitted data
– Minimize the number of transmitted message
• Idea– Exploit temporal correlation in
streams of sensor readings• Suppress insignificant readings• Potentially allow nodes to switch
to sleep mode• Work on top of existing in-
network aggregation• Introduce TOLERANCE for
temporal coherency tolerance
A
C
D •Old = 20•New = 21•If TOLERANCE = 10%,don’t Transmit Newbecause (21-20)/21 < 0.1
BGroup1 Group2
•Old = 20•New = 25•If TOLERANCE = 10%,Transmit Newbecause (25-20)/21 > 0.1
Reduce the numberof messages
Reduce the size of data
20
Synchronization in TAG• TAG
– Divide a given DURATION into Communication Slots
• Duration of each Communication Slot = DURATION/d
• where d = number of slots = maximum depth of routing tree
– Provide a query result every Epoch DURATION
• During a given Communication Slot, one level (A) sending and another level (B) listening
• At the next Communication Slot, A goes to sleep mode and B sending (C may be listening)
A
C
D
B
d (depth) = 3
1ABCD
2 3
Listening
Sending Sleep
Listening
Sending
Listening
Sending
Sleep
Sleep
Sleep
Sleep Sleep
21
Synchronization in Cougar• Cougar
– Pragmatic approach– Algorithm
• In a certain round, A adds C to its waiting list if A receives data from C
• In the following rounds, A waits to hear from all nodes in the waiting list
• To prevent indefinite waiting, each node transmits reading or notification
– Reduce response time for uncongested network
A
CB
waiting_list={B} {B,C}
22
Network Configuration Method
• First-Head-From Network Configuration
– Based on network proximity
– Algorithm1) Root sensor prepares query
msg with query spec. & Ls and broadcasts
2) Sensor i receives msg & sets Li=Ls+1
3) Sensor i sets Pi=Ids, then sets Ls=Li & Ids=Idi
4) Steps 2) & 3) repeated
• Group-aware Network Configuration
– Keep members of the same group within same path
– Algorithm1) Root prepares query msg wi
th query spec. Ls, & Gs and broadcasts
2) i receives msg & sets Li=Ls+1
3) i sets Pi=Ids & PGi=Gs, then sets Ls=Li , Ids=Id, & Gs =Gi
4) i continues to listen5) Tie-breaker conditions to se
lect better parent 6) Steps 2) to 5) repeated
Main Difference: GaNC can switch to a better parent• First tie-breaker: the same group ID preferred
same group can reduce size of msg• Second tie-breaker: the lower distance preferred
closer parent saves tx energy
23
TiNA - algorithm• Main Idea
– Use temporal correlation in a sequence of sensor readings by suppressing insignificant readings
• TOLERANCE clause in SQLTOLERANCE tct (eg: tct=10%)– Specify the temporal coherency toleran
ce for the query– Output filter– Only report readings differing from the l
ast reported readings by more than 10%
• Information to utilize TOLERANCE– Leaf node: keep the last reported readi
ng– Internal: last reported data from each
child as well
• Algorithm– Leaf node
• Report VNEW if VNEW violates tct s.t. |Vold-Vnew|/Vnew > tct
– Internal node1) Collect the data from children2) Compute the partial result3) Take its own reading which can
be aggregated within a group already exists in the partial result regardless of tct
4) If a new group, the reading is only added when violating tct
5) Compares an OLD partial result with the NEW partial with tct = 0
24
TiNA on top of TAG• Use the predefined
communication slots for sending and listening
• When communication slot expires, parent checks and takes the last reported data for each child it didn’t heard from
• Representation– Circles: nodes– Arrows: the flow of data– Boxes: current state
• Old – last reported reading• New – current reading
– Table: previously reported partial result
– Cost: the size of table•Every reading is sent from child to parent
25
TiNA on top of TAG (cont’)④ New = 6, Old = 5 and |6-5|/6 > 0.1,
thus send New⑤ Just add 11 to 6 and compares 17
(New) with 15 (Old), and |17-15|/17 > 0.0, thus send New partial aggregate value
⑥ |4.1-4|/4.1 < 0.1 thus suppress⑦ Aggregate reading to partial
(17+4=21) and compares it with Old (21), it suppresses since no change
• Algorithm– Leaf node
• Report VNEW if VNEW violates tct s.t. |Vold-Vnew|/Vnew > tct
– Internal node1) Collect the data from children2) Compute the partial result3) Take its own reading which can be agg
regated within a group already exists in the partial result regardless of tct
4) If a new group, the reading is only added when violating tct
5) Compares an OLD partial result with the NEW partial with tct = 0
•Less number of sent messages
26
TiNA on top of Cougar
• In Cougar, parents wait to hear from all their children
• Send heartbeat message [notification] when it can tolerate the quality
notify
notify
•Energy saving by sending notificationPacket instead of data packet with Respect to size of message
27
TiNA with GaNC• Further energy saving
– Reduce total size of messages– Reduce total number of messages
•Presentation•Circles: nodes•Groups: Blue or not•Boxes: New data (violating tct)•Value: difference b/w New & Old•m: transmission of a messageof unit size
Totally 5 messages sent& total size of messages is 6
Totally 4 messages sent& total size of messages is 4
Complementary data(+5 & -5) canceleach other savetransmission
28
Evaluation by simulation• Energy, REM (Relative Error Metri
c), and Response Time• Energy
– 4 main activities• Txing, Listening, • Sampling, Processing
– Parameters for Txing & Rxing• Sensor operates 3 volts• Data rate: 40 Kbps• Tx current: 0.012 Amp• Rx current: 0.0018 Amp
– Tcost = 3 V * 0.012 A * 1/40,000 sec = 0.9 uJoules
• Energy consumption for one bit transmission
– Rcost = 3 V * 0.0018 A * 1 sec = 0.0054 Joules
• Listening for one second• Independent of number of messag
es
29
Experiments• Sensitivity to temporal coherency tolerance
– Measure Energy, REM, response time for TiNA vs. for Cougar and TAG varying tct– Tradeoff between Energy Saving and REM
TiNA with Cougar uses 56% of energy by CougarAt tct=30%, only 24% but REM increases to 3.3%
TiNA with TAG uses 86% of energy by TAGAt tct=30%, only 74.9% but REM increases to 3.7%TiNA on TAG must listen for entire assigned time slot
30
Experiments (cont’)• Sensitivity to temporal coh
erency tolerance (2) – Tradeoff between energy savi
ng and response time– The time to hear from all chil
dren decreases• TiNA can send Notification i
nstead of readings within tct– For tct=0% (30%), the respon
se time of TiNA on Cougar 60% (27%) of Cougar’s
– The response times for TiNA on TAG are always same as the duration
31
Experiments – Energy vs. Duration &
Scalability
The amount of energy increases with an increaseof Duration in TAGmore sensors can send readings as Dur increases
Energy consumption increases with an increaseof number of sensors in CougarEnergy saving increases as network increases
32
Experiments –Energy Effect of GaNC
1) GaNC can save energy in sensor network for the most part (positive effect)GaNC can reduce the size of transmitted message
2) The energy savings of GaNC over FHF decreasesas tct increases (negative effect)Some nodes switch to parents in the same group(switching parents can cause more messages sent)
For larger network, positive effects outweigh negativeEffects. As tct increases, less nodes transmitting
33
Experiments – TiNA with GaNC vs. number of groups
AT the small group (eg. 5), GaNC consumes significantly (41%,38%,37%) children nodes can select parents in the same group as themAt the large group (eg. 50), not reduce dramatically (12%, 10%,9%)less chances that children can find parents in the same group
34
Conclusion• GaNC (Group-aware Network Configuration)
– Consider semantics of the query and properties of sensor nodes– Reduce the size of transmitted data
• TiNA (Temporal coherency-aware in-Network Aggregation)– Temporal correlation in conjunction with in-network aggregation– Minimize the number of transmitted messages– Decrease the size of transmitted data
• Significant energy saving while negligible drop in Quality of Data– TiNA can reduce power consumption for communication by up to
60% and extend the life by up to 270%– Additional 33% of energy can be saved by incorporating the GaNC
with TiNA