and what can be done about it. - pub.tik.ee.ethz.ch · common assumptions in theory and simulation...

49
23-Nov-05 Why today's sensor networks don't sell... … and what can be done about it. Jan Beutel Computer Engineering and Networks Lab, ETH Zurich

Upload: others

Post on 22-Sep-2019

1 views

Category:

Documents


0 download

TRANSCRIPT

23-Nov-05

Why today's sensor networks don't sell...… and what can be done about it.

Jan BeutelComputer Engineering and Networks Lab, ETH Zurich

2

Deployment-support networkOperational conceptJAWS Demo

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

Experiences:Simulation caveats

Emulators and testbeds

Why today’s sensor networks don’t sell…Motivation: Evolution and History of SNs

Vision: Full life-cycle supportExample: Bluetooth multihop networking

3

Deployment-support networkOperational conceptJAWS Demo

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

Experiences:Simulation caveats

Emulators and testbeds

Why today’s sensor networks don’t sell…Motivation: Evolution and History of SNs

Vision: Full life-cycle supportExample: Bluetooth multihop networking

4

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

5

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

Prototypes, Experiments and Research Demos

WSN Community

6

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

ProductionApplications

Prototypes, Experiments and Research Demos

WSN CommunityOtherPeople

7

Argo – Global Ocean Observation StrategyGlobal array of temperature/salinity profiling floats

Satellite data relay to data centers on shoreOperational since 2000Developed and maintained mainly by oceanographers

8

Anti-Submarine Surveillance

Distributed acoustic monitoring and surveillanceAdvanced signal processingMostly wireline and analogFixed installations and mobile unitsMilitary development since the cold war

9

Globally Networked Weather Stations

10

Sensor Netzworks – A new platform class

time

log

(# u

serp

er c

ompu

ter) $ 500’000

$ 100’000

$ 10’000

$ 0.1-10

$ 1’000

11

The WSN Evolution

“I have Motes.”Aka I write simulation papers.

“I have downloaded the TOS installer.”

“I checked out a demo example.”

“I changed a line of code.”“I use CVS and contribute.”

Peop

le/P

aper

s

12

Wireless Sensor Network Systems Today

13

WSN Development Reality

It is hard to deploy anywhere beyond 10-20 nodes today.

Coordinated methods and tools are missing today.

14

WSN Experiences

R. Szewczyk – GDI: [EWSN2004]

Nodes die at randomCalibration necessitates,secondary infrastructure

K. Langendoen – LOFAR [Dagstuhl2005]

Murphy’s law: everything that can go,wrong will go wrong…

G. Tolle – Redwoods [SenSys2005]

40% data yieldExtracting meaningful information……can be a challenging task.

Humidity vs. Time

35

45

55

65

75

85

95

Rel Hum

idity (%

)

101 104 109 110 111

Temperature vs. Time

81318232833

7/7/039:407/7/0313:417/7/0317:437/7/0321:458/7/031:478/7/035:498/7/039:518/7/0313:538/7/0317:558/7/0321:579/7/031:599/7/036:019/7/0310:03

Tem

pera

ture

(C

)

15

Visions 1991 1999 20001996 20032001 2004

Beyond the proof-of-concept of WSNs

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

Design, test, deployment and validationof WSNs are in their infancy

Metrics are non-existent

Designs are custom-fit

Development is hard, error-prone and repetitive

Functional validation and verification done in trial runs only

16

Vision: Full Life-Cycle Support for WSNs

Stepwise refinement

Feedback to DesignDevelopment

Monitoring of FunctionalityQuality

Validation and Verification

17

400 horses100 microprocessors

Exponential increase in software complexityIn some areas code size is doubling every 9 months [ST Microelectronics, Medea Workshop, Fall 2003]

... > 70% of the development cost for complex systems such as automotive electronics and communication systems are due to software development[A. Sangiovanni-Vincentelli, 1999]

Slide courtesy of T. Henzinger

18

$4 billion development effort40% system integration & validation cost

Slide courtesy of T. Henzinger

19

Mars, July 4, 1997Lost contact due to priority inversion bug

A few days into the mission, not long after

Pathfinder started gathering meteorological

data, the spacecraft began experiencing total

system resets, each resulting in losses of data.

Slide courtesy of P. Marwedel

20

Deployment-support networkOperational conceptJAWS Demo

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

Experiences:Simulation caveats

Emulators and testbeds

Why today’s sensor networks don’t sell…Motivation: Evolution and History of SNs

Vision: Full life-cycle supportExample: Bluetooth multihop networking

21

The BTnode Platform

Prototype

IO/Peripherals

2nd Generation 3rd Generation

Communication Computation

22

Bluetooth Multihop Network Topologies

Initial experimentsTime-multiplexed, dumbbell-like connections

XHOPLarge, connected topologiesSimple, top-down tree-building

TreeNetDistributed tree topology formationRandom connection pointsStreaming data

DSNtrees

23

Simple Scatternet Tree Construction

Link layer connectivityRandom search and connect

Distributed coordinationInquiry() and connect() operations can exhibit long delaysNo a priori guarantee for successSerialization of parallel processes

loop {while (my_slaves < max_degree) dofound_nodes = inquiry();forall nodes in found_nodes doconnect();

}}

24

Making a Seven Line Algorithm Work

+ Adaptation to devicesRoot lockup, cycle elimination

+ Error handlingDeadlocks, timeouts

+ Robustness, performanceGreedy behavior, heuristics

loop {while (my_slaves < max_degree) do

found_nodes = inquiry();forall nodes in found_nodes do

connect();}

}

#define HEX2BYTE(c) ((u_char)(((c)<='9') ? (c)-'0' : tolower(c) - 'a' + 10))typedef struct _jaws_stack {

FILE *uart_terminal;HANDLE table_changed_event;bt_addr_t my_addr;struct btstack* bt_stack;bt_l2cap_stack_t *l2cap_stack;

} jaws_stack_t;jaws_stack_t* _jaws_stack;//int foo __attribute__ ((section (".noinit")));//int foo2 __attribute__ ((section (".eeprom")));void bt_print_bt_addr(bt_addr_t addr)

DEBUGT("%.2x:%.2x:%.2x:%.2x:%.2x:%.2x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]);const char *bt_addr_to_string( char *buf, bt_addr_t addr)

sprintf_P( buf, PSTR("%.2x:%.2x:%.2x:%.2x:%.2x:%.2x"),addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]);

return buf;}u_char* string_to_bt_addr(u_char* str, u_char* addr){

char i;u_char *strp = str;// skip whitespacewhile(*strp == ' ')

strp++;for(i = BD_ADDR_LEN-1; i >= 0; i--){

if(isxdigit(strp[0]) && isxdigit(strp[1])){addr[(u_char) i] = HEX2BYTE(strp[0]) << 4 |

HEX2BYTE(strp[1]);strp+=2;

}else{break;

}// skip ':'if(i > 0){

if(*strp == ':')strp++;

elsebreak;

}}

u_char get_uart_errors(FILE* stream){u_long parameter;u_char errors;// check driver status_ioctl(_fileno(stream), UART_GETSTATUS, &parameter);

if (parameter & UART_ERRORS) {errors = (u_char) (parameter & UART_ERRORS);// set error flags back to normalparameter = UART_ERRORS;_ioctl(_fileno(stream), UART_SETSTATUS, &parameter);

Seven lines

2000 lines~87 kbyte + Application support

Basic OS functionsDebugging, visualization, monitoringStepwise testing + deployment

25

DSNtrees – Field Experiments

Deployment using 70+ nodes on an office floor

Largest connected Bluetooth Scatternet

26

XTC – Bluetooth Mesh Networking

Bluetooth Mesh Networking based on BTnode Spec

Paper-grade algorithm to robust implementation

Experiments, measurements and

evaluation are ongoing

[Wattenhofer2004]

27

Deployment-support networkOperational conceptJAWS Demo

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

Experiences:Simulation caveats

Emulators and testbeds

Why today’s sensor networks don’t sell…Motivation: Evolution and History of SNs

Vision: Full life-cycle supportExample: Bluetooth multihop networking

28

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Specializedsimulation tools for

WSN applications

29Slide courtesy of R. Wattenhofer

30

Problems of Theoretical Work and Simulation

Typical simulation papers use Flawed assumptions, simplifications, wrong models [Kotz03/04,Min2003,Heidemann2001,Ganesan2002]

Limited comparability/reproducibility [Cavin2002]

Theoreticians try to understand the fundamentals.Need to abstract away a few “technicalities”.This allows nice formulas.

Abstracting away too many “technicalities“ renders theory useless for practice!

Material courtesy of R. Wattenhofer

31

Common Assumptions in Theory and Simulation

Random, uniform node distribution

Circular radio propagation Unit disk graph model

Simplistic algorithmsMac layer already in placeGlobal time synchronization

Material courtesy of R. Wattenhofer

32

Deployment-support networkOperational conceptJAWS Demo

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

Experiences:Simulation caveats

Emulators and testbeds

Why today’s sensor networks don’t sell…Motivation: Evolution and History of SNs

Vision: Full life-cycle supportExample: Bluetooth multihop networking

33

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Fast-prototyping in a controlled

environment

34

BEE - Berkeley Emulation Engine

A real-time hardware emulation engine for lower-power digital communication/DSP system

35

EmStar – Emulation on Backend Servers

LEDs EEPROM UART

Unmodified NesC Application

ADC

TimerC

SenseToRFM

AM

RadioCRCPacketClockC

UnderlyingEmStar Services

EmTOS Wrapper Library

EmStatusServer EmPacketServer TOS status

motesens

sensor/adc

motenic

link/mote0

Transceiver (Mote)

tos/leds tos/eeprom tos/tasksUser definedUser defined

hostmote

mote/0

Implements TinyOS API and low-level components…

Enables NesC applications to provide new EmStar services

By connecting to existing EmStar services

This fairly small investment of effort -- the wrapper library and some TinyOS components that make up a new TinyOS platform -- simultaneously addresses both goals of heterogeneous simulation and integration!

Wraps an unmodified NesCapp into an EmStar module

Material courtesy of L. Girod

36

EmStar – Emulation Array

ESSMote

EssDse

ESSSink

Multihop

ESSMote

EssDse

ESSMote

EssDse

…ESSSink

Multihop

HostMote Serial Protocol

MotesMicroservers

Simulation Server Serial MUX

Emulation ArrayEmulation/Real/Hybrid Mode

Real motes installed in environment

Serial multiplexer connects server to real motes, replaces channel model

Limits scale – improves reality

Transceiver

Transceiver

Transceiver

Transceiver

Transceiver

Transceiver

Material courtesy of L. Girod

37Slide courtesy of D. Estrin

38Slide courtesy of D. Estrin

39

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Test GridsmoteLab [Werner-Allen2005]

Emstar arrays [Cerpa03/04]

Kansei [Dutta2005]

Closing in on the“real” experience

40

MoteLab – Test Bed and Compute Server

Material courtesy of G. Werrner-Allen

41

SensorScope –Building Monitoring

Static deployment within a buildingNo wired/wireless backchannel

Experience:Fast initial setupHard to extend and adapt

42

Deployment-support networkOperational conceptJAWS Demo

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

Experiences:Simulation caveats

Emulators and testbeds

Why today’s sensor networks don’t sell…Motivation: Evolution and History of SNs

Vision: Full life-cycle supportExample: Bluetooth multihop networking

43

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Test GridsmoteLab [Werner-Allen2005]

Emstar arrays [Cerpa03/04]

Kansei [Dutta2005]

Closing in on the“real” experience

Specializedsimulation tools for WSN applications

Fast-prototyping in a controlled environment

44

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Test GridsmoteLab [Werner-Allen2005]

Emstar arrays [Cerpa03/04]

Kansei [Dutta2005]

DeploymentIn-network reprogramming [Levis2004,Hui2004]

Calibration and Verification[Szewczyk2004]

Trial-and-error [Mainwaring2004,Hemingway2004,Cerpa2001]

Dependence on infrastructure[Szewczyk2004]

45

From Proof-of-concept to Real-world WSNs

Traditional test gridWiredImmobileNot scalable

In-network toolsUnreliable

Self-organizing backbone network

with deployment-support

services

Deployment-Support Network

46

Target Sensor Network

Next-Generation Deployment-Support

Developer Workstation

Deployment-Support NetworkTemporary, minimal invasiveVirtual connections to nodesReliable, wireless, scalable

47

WSN TargetApplication

JAWS Application Partitioning

JAWS ApplicationTopology Control

Connection Management

Data Transport

Caching

Node Management

Target AdapterTarget ControlProgrammingLogging

MonitorThreads/IRQsHigh level context

Codesize 100 kB

4 kB

2 kB

48

JAWS Application Example

Next steps: Distributed, time-synched, tracing

Test Setup: 20+ nodes Event TracingContext switchesInterrupts

49

To probe further…

http://www.btnode.ethz.ch