CS 268: Lecture 24 Sensor Network Architecture (SNA) Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Berkeley, CA 94720-1776 1 Sensor Network Protocols Today Obligatory David Culler Slide… Appln EnviroTrack Hood FTSP Transport Routing Scheduling SPIN TTDD TORA CGSR AODVDSR ARA GSR DBF DSDV TBRPF Resynch Phy Ascent GPSR SPAN ReORg PC Drip Arrive MintRoute GRAD GAF FPS Yao SMAC PAMAS Link Trickle Deluge MMRP Topology TinyDB Diffusion Regions WooMac TMAC Pico WiseMAC Bluetooth RadioMetrix RFM CC1000 eyes BMAC 802.15.4 nordic What if I want to use any two protocols together?? 2 Network Model Patch Network Sensor Node - Sensor Patch Gateway Many resource constrained Non-homogeneous Modalities, roles, HW, SW Power, BW Transit tier - Often specialized wireless - Provides gateways Transit Network Client Data Browsing and Processing Dense patches of sensing nodes Internet Tier - Multiple connections to infra - Deep storage, proc. Viz Basestation Base-Remote Link Internet SNA should not require unconstrained nodes Should utilize unconstrained nodes to reduce burden on constrained ones Mobility within physically embedded context Data Service 3 What is an Architecture? Architecture is how to “organize” implementations - What interfaces are supported - Where functionality is implemented Architecture is the modular design of the network Architecture is not the implementation itself 4 Internet vs Sensor Nets Internet goals Interconnect separate networks Resilience to loss and failure Support many comm. services Accommodate variety Distributed management Cost effective Low effort attachment Resource accountability Network Architecture Sensor Nets Resource efficiency Data centric design Deal with intermittent connectivity Self-managed Observation, monitoring of various environments Cost effective Scalability 5 Internet vs Sensor Nets Internet goals Interconnect separate networks Resilience to loss and failure Support many comm. services Accommodate variety Distributed management Cost effective Low effort attachment Resource accountability Network Architecture Sensor Nets Dense real world monitoring Resilience to loss, failure and noise Support many applications Scale to large, small, long Cost effective Evolvable in resources Composable Security 6 Why not IP? One or very few applications running on a sensornet vs huge number running in the Internet Large variety of traffic patterns (most not point-to-point): - Any-to-any, many-to-one, many-to-few, one-to-many - Inneficient to impl. these patterns over point-to-point IP does not address (well): - Resource and energy constraints Unattended operation Intermittent connectivity Space embeded nodes ... 7 A Sensor Network Architecture (SNA) Narrow waist: Sensornets Protocol (SP) - Goals: generality and efficiency Position: between data-link and network layers Service: best-effort, single hop Common to both single- vs multiple-hop deployments 8 Properties of SP SP provides mechanisms for network protocols to operate - Network protocols may introduce policy Three key elements of SP: - Data Reception - Data Transmission - Neighbor Management 9 Collaborative Interface Control - Reliability Best effort to transmit the msg - Urgency Priority mechanism Feedback - Congestion Was the channel busy? • Should I slow down? - Phase Was there a better time to send? • Decouple appl sampling from communication 10 Message Reception Receive SP Message arrives from link SP dispatches Network protocols establish - naming/addressing - filtering 11 Message Transmission Send Receive Msg Pool SP Messages placed in shared message pool - All entries are a promise to send a packet in the future Messages include - Pointer to first packet and # of packets - Control information: reliability and urgency - Feedback information: congestion and phase 12 Neighbor Management Neighbors Neighbor Table Send Receive Msg Pool SP SP provides a shared neighbor table - Cooperatively managed - SP mediates interaction using table • No policy on admission/eviction by SP • Scheduling information 13 SP Architecture Network Service Manager Network Protocol 1 Neighbors Network Protocol 3 Receive Msg Pool SP Adaptor B Data Link B Link Estimator PHY A Link Estimator Data Link A Send Neighbor Table SP SP Adaptor A Network Protocol 2 PHY B 14 Neighbor Table Neighbor Required Link Message Pool Network sp_message_t control destination message quantity urgent reliability feedback 1 phase D adjustment congestion true or false 2 address time on time off listen quality address_t local time node wakes local time node sleeps true or false estimated link quality Neighbor Table address_t 1st TOSMsg to send # of pkts to send on or off on or off Msg Pool SP 15 SP Message Futures 1) Network Protocol SP Message 1st packets 2) 3) packet (1) (5) Next Packet Handler 4) 5) 6) (6) Send Submit an SP Message for Transmission Message added to message pool SP requests the link transmit the 1st packet Link tells SP the transmission completed SP asks protocol for next packet Protocol updates packet entry in message pool Msg Pool SP (2) Message Dispatch (3) msg* (4) Link Protocol 16 What SP Isn’t SP does not dictate any header fields - Messages are opaque to SP Instead, rely on abstract data types - Can query for address, length, etc No explicit security mechanism - Message content opaque to SP - Link, Network, and App security can be built transparently to SP 17 Benchmarks Minimal performance reduction in single hop - Compare to B-MAC paper - Compare to IEEE 802.15.4 Simpler multihop/network protocol code Power consumption Network protocol co-existence 18 Results: mica2 Throughput 16000 14000 0.9 12000 0.8 0.7 10000 0.6 8000 0.5 6000 0.4 4000 2000 0 0 0.3 B-MAC SP SP + CC SP + LPL + CC SP + LPL + CC + Phase Channel Capacity 5 10 Nodes (n) Percentage of Channel Capacity Throughput (kbps) 1 0.2 0.1 15 0 20 19 Results: mica2 Throughput 16000 14000 0.9 12000 0.8 0.7 10000 0.6 8000 0.5 6000 0.4 4000 2000 0 0 0.3 B-MAC SP SP + CC SP + LPL + CC SP + LPL + CC + Phase Channel Capacity 5 10 Nodes (n) Percentage of Channel Capacity Throughput (kbps) 1 0.2 0.1 15 0 20 20 Results: mica2 Throughput 16000 14000 0.9 12000 0.8 0.7 10000 0.6 8000 0.5 6000 0.4 4000 2000 0 0 0.3 B-MAC SP SP + CC SP + LPL + CC SP + LPL + CC + Phase Channel Capacity 5 10 Nodes (n) Percentage of Channel Capacity Throughput (kbps) 1 0.2 0.1 15 0 20 21 Results: mica2 Throughput 16000 14000 0.9 12000 0.8 0.7 10000 0.6 8000 0.5 6000 0.4 4000 2000 0 0 0.3 B-MAC SP SP + CC SP + LPL + CC SP + LPL + CC + Phase Channel Capacity 5 10 Nodes (n) Percentage of Channel Capacity Throughput (kbps) 1 0.2 0.1 15 0 20 22 Results: mica2 Throughput 16000 14000 0.9 12000 0.8 0.7 10000 0.6 8000 0.5 6000 0.4 4000 2000 0 0 0.3 B-MAC SP SP + CC SP + LPL + CC SP + LPL + CC + Phase Channel Capacity 5 10 Nodes (n) Percentage of Channel Capacity Throughput (kbps) 1 0.2 0.1 15 0 20 23 Results: Single Hop Benchmarks (802.15.4) 24 Conclusion SNA: provide context for sharing our community work and accelerate the development and deployment of sensornet applications Effective link abstraction, SP, allows network protocols to run efficiently on varying power management schemes 25