CS 851 Wireless Sensor Networks Summary Lecture Professor Jack Stankovic Department of Computer Science University of Virginia November 24, 2003
Goals for Today’s Class WSN – its niche Applications revisited Fundamentals - early Intriguing Concepts Future Research Areas
WSN – Its Niche Distributed Computing –Load balancing, group management, distributed OS, middleware, network protocols, … Sensor Networks (wired or powerful wireless) –Submarines, automated factories, fleets of ships, … –Real-time systems Radio Communications (Wireless) –Radio signal –Sensing signal –DSP MANET
How the Problems Change Environment –connect to physical environment (large numbers, dense, real-time) –massively parallel interfaces (sometimes) –faulty, highly dynamic, non-deterministic –wireless – contention, irregular patterns –power management critical Network –structure is dynamically changing –sporadic connectivity –new resources entering/leaving –large amounts of redundancy –self-configure/re-configure –individual nodes are unimportant - route/query to AREA
How the Problems Change OS/Middleware –manage aggregate performance control the system to achieve required emerging behavior How do we know it works? –self-organizing (self-*) –fuzzy membership and team formation –manage power/mobility/real-time/security tradeoffs –geographical/location based (spatial) –real-time/real world (temporal) –data centric –support new paradigms
Implications Fundamental Assumptions underlying distributed systems technology has changed –wired => wireless (limited range, high error rates) –unlimited power => minimize power –Non-real-time => real-time –fixed set of resources => resources being added/deleted –each node important => aggregate performance New solutions necessary
Applications Passive sensing of environment/data collection Same as above with actuators Active tracking/target discrimination Degree of mobility Interface with the Internet Handheld PDAs/laptops (seemless integration) Heterogeneity Placed versus ad hoc deployment Any killer apps? Any wild new apps? Impact of cost changes?
Cost 200 nodes at $100 ea. -> $20,000 20,000 nodes at $1 ea. -> $20,000 20,000 nodes at.10 ea. -> $2,000
Architecture - WSN Sensors Actuators CPUs/Memory Omni-dir. Radio
Architecture - WSN Fixed Deployment (grid, mesh, …)
Taxonomy HW Capabilities Application Requirements Software/Middleware
Fundamentals What is truly fundamental about WSN? –Power limitations? Solar cells/close down for a time to recharge/plug into wall socket, etc. Probably a major problem for a long time and for many applications –Cpu/memory capacity? New platforms are being built –Scale? Not necessarily for all systems –Long Lifetimes?
Fundamentals Interact with the environment – sensing –Consider all the realities of sensing … –Sensor fusion/data aggregation Multi-hop wireless radio communication –Consider all the realities of radio comm. Ratio of communication/sensing ranges False alarm processing Asymmetry, lost messages, nodes move, nodes sleep or die, etc.
Radio Model in Evaluation Radio Model DOI = Degree of Irregularity DOI = 0.05 DOI = 0.2
Sensing versus Communication Sensing/communication range ratio Sensing/communication/power tradeoffs Sensing Range Communication Range What if the opposite? Required degree of coverage?
Fundamentals Self-configure, self-manage, self-heal Self-awareness –Space (location/geography), time, energy, dynamics, security, reliability Self-calibrate Self-* Unattended operation (completely or almost completely) -> difficult physical accessibility Self-stabilizing algorithms
A mechanism for discovering spatial relationships among objects
Fundamentals Aggregate Behavior – biological metaphors Simple decentralized algorithms (localized behavior) –Epidemic/virus type algorithms –Randomized algorithms –Develop local rules that yield desired macroscopic behavior Uncertainty Lazy behavior (most of the time/mobility) Composition –Functional –Performance
Epidemic Algorithms Final state –Backward links The flood extends towards the source –Stragglers MAC-level collisions –High clustering Most nodes have few descendants A significant few have many children
Fundamentals - Events Size of targets/events (point/area) Discrete versus continuous Probabilistic Fire X Explosion
Fundamentals Programming Paradigm
Programming Environment OS: cygwin/Win2000 or gcc/Linux Software: atmel tools mot e programmin g board mote-PC comms Code download
nesC the nesC model: –interfaces: uses provides –components: modules configurations application:= graph of components Component A Component B Component D Component C Application configuration Component E Component F
Sensor/Actuator Clouds Heterogeneous Homogeneous Resource management, team formation, networking, … Severe constraints power, memory, bandwidth, cpu, cost,...
Make Scripts Mobile Script can populate/migrate Language + Run-time Environment = SensorWare Scripts move NOT due to explicit user instructions, but due to node’s state and algorithmic instructions
Fundamentals Group Management and Consensus
Example: Consensus Classical consensus: all correct processes agree on one value –No power constraints –No real-time constraints –Does not scale well to dense networks –Approximate agreement (some work here) - on sets of values (physical quantities) New Solutions ?
New Concept of Consensus Termination: every correct processor eventually decides some value Uniform Agreement: no two processors decide differently Group Membership: join/leave - everyone knows who is in the group Termination: “at least n” correct processors decide some value by time t Group Agreement: at least n processors decide the same value within epsilon Area/Function Membership: join/leave an area or by function Classical New Definitions
Examples: Tracking and Map Regions Base Station
Group Management - API –Create_Group(name,function,criterion,atleast,acc uracy) - implicit and explicit –Destroy_Group(name) –Join() –Leave() –Merge() –Move_COG() –Expand() -- to gain sensing confidence –Shrink() -- to save power –Commit(grp_ID) - to synchronize group re- configurations
Mobicast Framework Delivery zone: the area that message should be delivered Forwarding zone: The area that message should be forwarded, which is some distance ahead of the delivery zone Headway distance: The physical distance between the forwarding zone its delivery zone Hold & Forward Zone: The area that receive the message before entering the forwarding zone Delivery ZoneFuture Delivery Zone Forwarding Zone Headway Distance Hold & Forward Zone
What’s Hard Multiple targets Crossing targets False Alarms –Depends on (changing) environment, sensors, confidence tradeoffs, noise, lost messages, …) Speed of targets Uniqueness of targets Classify targets Proper abstractions Save power/minimize communication
Fundamentals - Security What is the single most important issue that could prevent WSNs from wide scale deployment? –Security –2 nd issue -> Privacy At application level –Authenticity and integrity Security of each service (examples) –Routing: non-secure if a single node is captured! Eavesdrop or change message Flood Insidious unintended consequences of collecting data –Monitor oceans for fish migration (data mine location of submarine fleet)
Fundamentals - Analysis Control Theory Markov Processes Real-time Schedulability Analysis Optimization Theory Graph Theory (Random Graphs?) Information Theory Phase Transitions Guarantee Quality of Service Diffusion Theory?
Intriguing Concepts Space (geography/location) Time (deadlines/periods/event lifetime/power lifetime) Behavior (emerges versus controls)
SPEED USE VELOCITY
Bound Errors End-to-end Real-time Collisions Congestion Destination Source Error Propagates Race Ahead
Use Trajectories Source Destination Trajectory Based Forwarding and Its Applications Trajectory
Behavior Flooding – stragglers Epidemic algorithms and phase transitions Global routing behavior – more emerged than controlled
Feedback Control (FC) Delay Boo Packet 1 Beacon Packet 2 SPEED: A Stateless Protocol for Real-Time Communication in Sensor Networks.
Use FC – Packet Aggregation Adaptive choice of N Take into account the output Queue delay Delay is used to adjust the output queue push rate and degree of aggregation
Behavior - Integrated Solutions Routing solutions must be –Power aware –Robust to lost messages, dead motes, voids –Provide real-time QoS –Robust to communication range variations and asymmetries –Handle moving end points –Scale –Secure
Interactions Insidious interactions –High density with many motes off to enable long system lifetime; turn on when activity happens then too many with many collisions and poor response
Future Directions of Research New platforms/architectures Higher level middleware Aggregate behavior (algorithms, …) Systems implementations/applications Systems of systems (pervasive computing) Security Analysis Mobility Storage Systems Heterogeneous Programming Paradigms
The End!