Document

advertisement
Aggregation and Secure
Aggregation
Learning Objectives
• Understand why we need aggregation in
WSNs
• Understand aggregation protocols in WSNs
• Understand secure aggregation protocols in
WSNs
Prerequisites
• Module 7
• Basic concepts of computer networks
• Basic concepts of network security
Why do we need Aggregation?
• Sensor networks – Event-based Systems
• Example Query:
– What is the maximum temperature in area A between 10am and 11am?
– Redundancy in the event data
• Individual sensor readings are of limit use
• Forwarding raw information too expensive
– Scarce energy
– Scarce bandwidth
• Solution
– Combine the data coming from different sources
• Eliminate redundancy
• Minimize the number of transmissions
• Aggregation: Summary
[Aggre_1] Section 1
4
What is Aggregation?
Base
Station
Legend
N
Wireless Sensor Node
Data Transmission
vi
K
Sensor Measurement
A
H
v3
f(v1, v2, v3)
v1
B
C
L
J
D
E
I
v2
F
M
G
One Example of Aggregation - Count
• Example: consider a query that counts the
number of motes in a network of indeterminate
size
Sensor #
1
2
3
4
5
Goal: Count the number of
nodes in the network.
1
2
3
4
5
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Time
Number of children is
unknown.
Scenario: Count
adopted from slides from S.
Madden
7
Sensor #
1
2
1
2
3
4
5
1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
3
Goal: Count the number of
nodes in the network.
Number of children is
unknown.
Scenario: Count
Time
Sensor #
1
2
1
2
3
4
5
1
-
-
-
-
1
1
1
-
-
1+2
1
1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
3
4
Goal: Count the number of
nodes in the network.
Number of children is
unknown.
Scenario: Count
Time
Sensor #
1
2
1
2
3
4
5
1
-
-
-
-
1
1
1
-
-
1+2
1
1
1
-
1+2
1+
½
1+
½
1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
3
4
5
Goal: Count the number of
nodes in the network.
Number of children is
unknown.
Scenario: Count
Time
Sensor #
1
2
1
2
3
4
5
1
-
-
-
-
1
1
1
-
-
1+2
1
1
1
-
1+2
1+
½
1+
½
1
1
1+3
1+ ½
1+ ½
1+1
1
-
-
-
-
-
-
-
-
-
-
3
4
5
Goal: Count the number of
nodes in the network.
Number of children is
unknown.
Scenario: Count
Time
Sensor #
1
2
1
2
3
4
5
1
-
-
-
-
1
1
1
-
-
1+2
1
1
1
-
1+2
1+
½
1+
½
1
1
1+3
1+ ½
1+ ½
1+1
1
1+3
1+2/
2
1+2/
2
1+1
1
-
-
-
-
-
3
4
5
Goal: Count the number of
nodes in the network.
Number of children is
unknown.
Scenario: Count
Time
Sensor #
1
2
1
2
3
4
5
1
-
-
-
-
1
1
1
-
-
1+2
1
1
1
-
1+2
1+
½
1+
½
1
1
1+3
1+ ½
1+ ½
1+1
1
1+3
1+2/
2
1+2/
2
1+1
1
1+4
1+2/
2
1+2/
2
1+1
1
3
4
5
Goal: Count the number of
nodes in the network.
Number of children is
unknown.
Scenario: Count
Time
Count Example – A Better Scheme
• Each leaf node in the tree reports a count of 1
to their parents
• Interior nodes sum the count of their children,
add 1 to it, and report that value to their parent
Data Aggregation Process
• Sensor nodes are organized into a tree
hierarchy rooted at the Base Station
• Non-leaf nodes act as the aggregators
Example Aggregation
•
•
•
•
Max, Min
Count, Sum
Average
Median
Tiny Aggregation
• Distribution phase
– Aggregate queries are pushed down into the
network
• Collection phase
– Aggregate values are continuously routed up from
children to parents
Energy Consumption
Time v. Current Draw During Query Processing
20
15
Current (mA)
Snoozing
Processing
and Listening
10
Transmitting
5
Processing
0
0
0.5
1
1.5
Time (s)
2
2.5
3
Declarative Queries for Sensor Networks
• Examples:
1 SELECT nodeid, light
FROM sensors
WHERE light > 400
EPOCH DURATION 1s
Sensors
Epoch Nodeid
Light
Temp
Accel Sound
0
1
455
x
x
x
0
2
389
x
x
x
1
1
422
x
x
x
1
2
405
x
x
x
•Time is partitioned into epochs of duration i
A single aggregate value is produced to combine the readings of all
devices during the epoch
Aggregation Queries
SELECT AVG(sound)
Epoch
0
AVG(sound)
440
FROM sensors
1
445
2
EPOCH DURATION 10s
Epoch roomNo AVG(sound)
3
FROM sensors
0
0
1
2
360
520
GROUP BY roomNo
1
1
370
HAVING AVG(sound) > 200
1
2
520
SELECT roomNo, AVG(sound)
EPOCH DURATION 10s
Rooms w/ sound > 200
Illustration: Aggregation
SELECT COUNT(*)
FROM sensors
Sensor #
1
1
2
3
Slot 1
1
4
5
1
2
3
Slot #
2
3
4
4
1
1
Section 4.1 of TAG
5
Illustration: Aggregation
SELECT COUNT(*)
FROM sensors
Sensor #
1
2
3
Slot #
3
1
4
1
2
Slot 2
5
1
2
3
2
2
4
4
1
5
Illustration: Aggregation
SELECT COUNT(*)
FROM sensors
Sensor #
1
2
3
1
5
1
2
Slot #
1
4
1
3
Slot 3
3
2
3
2
1
3
4
4
1
5
Illustration: Aggregation
SELECT COUNT(*)
FROM sensors
Sensor #
1
2
3
Slot #
2
3
2
3
1
5
1
2
Slot 4
1
4
1
4
5
1
3
4
5
5
Illustration: Aggregation
SELECT COUNT(*)
FROM sensors
Sensor #
1
2
3
Slot #
5
1
2
2
3
2
3
1
1
4
1
4
Slot 1
1
3
4
5
1
1
5
Flow Up the tree during an epoch
How parents choose the duration of the interval
in which they will receive values?
Topology Maintenance and Recovery
• How to address the unreliable nature of WSNs
in TAG?
– Each node maintains a fixed size of its neighbors –
Select a better parent node
– If a node does not hear from its parent for some
time, it assumes that its parent has failed
Section 7.1 of [Aggre_1]
Secure Aggregation
Secure Aggregation
• It is challenging to design suitable security
mechanisms for Wireless Sensor Networks
(WSNs)
– Stringent resource constraints on energy,
processing power, memory, bandwidth, etc.
• WSNs need lightweight secure mechanisms
• We introduce an LCG-based secure
aggregation scheme
– Efficiency and simplicity
Security Goals
• Security Goals
– Confidentiality
• Sensor data/readings cannot be disclosed to attackers
– Integrity
• If an adversary modifies a data message, the receiver should be able
to detect this tampering
– Authenticity
• Ensures that data messages come from the intended sender
• Assumptions
– The existence of a key management scheme
– WSN nodes can negotiate the key and trust setup
LCG-based Security Protocols
• Basic Hop by Hop Message Transmission
Base Station
J
E(AggrH | MAC(AggrH, KHJ), KHJ)
G
I
A
H
E(PA | MAC(PA, KAH), KAH)
F
B
E(PB | MAC(PB, KBH), KBH)
• Notations
D
C
E
E(PB | MAC(PB, KDH), KDH)
E(PB | MAC(PB, KCH), KCH)
– A, B, C…: Sensor Nodes
– E(P, K): Encryption of plaintext
message P using key K
– P1|P2: Concatenation of message
P1 and P2
– MAC(K, P): Message
Authentication Code (MAC) of
message P using key K
– X0: seed of the LCG
– a, b, m: Parameters of the LCG
Integrity and Authenticity
• CBC: Cipher Block Chaining
Assignment
• 1. Why do we need aggregation in wireless
sensor networks?
• 2. What is the basic idea of TAG?
• 3. What is the basic idea of LCG-based secure
aggregation in wireless sensor networks?
Download