Title: Networked Embedded Systems
1Networked Embedded Systems
- Kamin WhitehouseCS 696
- 09/05/07
2Technology Trends
- Sensors/actuators entering human habitats
- 32 million homes have security sensors
- 5 million homes have X10 devices
- Estimated 20 million ZigBee devices by EOY
- We will need
- To program them
- To debug them
- Privacy preservation
- Data stream processing
3Macro-programming
RPC (marionette)
for i 1100 val nodei.light.read() date
nodei.time() if val lt 50 printf(Error!)
else hashtable.put(i,val,date) end pda.di
splay(val) end
node
node
pda/server
node/server
pda
4Macroprogramming
Automatic Decomposition
- for i 1100
- val nodei.light.read()
- date nodei.time()
- if val lt 50
- printf(Error!)
- else
- hashtable.put(i,val,date)
- end
- pda.display(val)
- end
node
node
pda/server
node/server
pda
5Macroprogramming
Automatic Decomposition
for i 1100 val nodei.light.read() date
nodei.time() if val lt 50 printf(Error!)
else hashtable.put(i,val,date) end pda.di
splay(val) end
node
node
server
server
pda
6Macroprogramming
QoS Satisfaction
L lt 350
- for i 1100
- val nodei.light.read()
- date nodei.time()
- if val lt 50
- printf(Error!)
- else
- hashtable.put(i,val,date)
- end
- pda.display(val)
- end
node
node
server
server
pda
7Macroprogramming
QoS Satisfaction
L lt 350
- for i 1100
- val nodei.light.read()
- date nodei.time()
- if val gt 50
- printf(Error!)
- else
- hashtable.put(i,val,date)
- end
- pda.display(val)
- end
node
node
server
server
pda
8Macroprogramming
QoS Satisfaction
L lt 350
- for i 1100
- val nodei.light.read()
- date nodei.time()
- if val gt 50
- hashtable.put(i,val,date) else
- printf(Error!)
- end
- pda.display(val)
- end
node
node
server
server
pda
9Macroprogramming
QoS Satisfaction
L lt 350
- for i 1100
- val nodei.light.read()
- date nodei.time()
- if val gt 50
- hashtable.put(i,val,date) else
- printf(Error!)
- end
- pda.display(val)
- end
node
node
node
pda
pda
10Macroprogramming
QoS Satisfaction
L lt 350
- for i 1100
- val nodei.light.read()
- date nodei.time()
- if val gt 50
- hashtable.put(i,val,date) else
- printf(Error!)
- end
- pda.display(val)
- end
node
node
node
pda
pda
11Macroprogramming
QoS Satisfaction
L lt 350
for i 1100 val nodei.light.read() date
nodei.time() if val lt 50 printf(Error!)
else hashtable.put(i,val,date) end pda.di
splay(val) end
node
node
server
server
pda
12Outline check
- Programming
- Debugging
- Privacy
- Data Processing
13Debugging
14Debugging
Program
MCU
Add a trap
Debugger
15Debugging
16Debugging
- Break
- Step
- Watch
- Backtrace
- Etc
- 30KB of program memory
- 1KB of RAM
17Outline check
- Programming
- Debugging
- Privacy
- Data Processing
18Privacy Preservation
- Home or away
- Awake or asleep
- Bathroom usage
- Kitchen usage
- Showering, toileting, washing
- Cooking hot food or preparing cold food
19FATS Attack
Bathroom
Kitchen
Living Rm
20FATS success across 4 homes
21Preserving Privacy
Complete Privacy
Bayes Rule
Requirement For Privacy
22Counter Attacks
- Periodic Transmissions
- Assumes tolerable latency bound L
- Does not work with real-time or high bandwidth
requirements - Consumes bandwidth
- Consumes power
- Random Delays
- Exploit L with lower power bandwidth
requirements - Still assumes L
23Counter Attacks
- Mask fingerprints in hardware by varying features
for each transmission - Arms race scenario, unable to predict features
used by an adversary - Not supportable by current hardware
- Does not affect inference of sleep and home
occupancy variables
24Counter Attacks
- Increasing Packet loss ratio by
- Reducing transmission power
- Introducing RF attenuators
25Outline check
- Programming
- Debugging
- Privacy
- Data Processing
26Data Stream Processing
- Can the user infer desired info without making
strong assumptions?
27Data labeling
- Can we detect patterns without assumptions?
- Major time saver
28Data Labeling
29Results
30Results
31Data Sharing
- Personal sensors are prevalent
- Homes
- Cars
- Phones
- Shoes, etc
- Goal create infrastructure for sharing data
creating value
32- Shopkeepers publish data
- people in front of store
- people coming into store
- Credit card purchase info, etc
- Entrepreneurs provide service
- Effect of weather, concerts, etc on business
- Effect of advertising
- How to increase conversion rates, etc
- Plus
- Overall activity downtown
- Value of commercial real estate
- Effect of vehicular traffic on businesses, etc.
33Search
- Search is key to data sharing
- PageRank
- StreamRank mines the WWSW and creates links
between data streams - Correlation
- Ownership
- Browsing, etc
34Thanks
- Kamin Whitehouse
- Computer Science Department
- whitehouse_at_cs.virginia.edu