Top Banner
Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003
23

Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

Dec 29, 2015

Download

Documents

Shona Phelps
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

Service-Oriented Software Architecture for Sensor Networks

Jan BlumenthalUniversity of Rostock

IMCRostock, 17th June 2003

Page 2: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

2

Outline

• Introduction to sensor networks

• Requirements

• Software Engineering

• Approach

• Conclusion

Page 3: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

3

Evolution of sensor nodes

Smart

Dust

(UCB)

Piece of

Silicon

Sensor,Actuator

Battery

Processor HF

Picoradio

(UCB)

WINS

(UCLA)

PC

Blue-Node (UoR)

Page 4: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

4

Characteristics of Sensor Nodes

• Limited capacity of– Battery (Lifetime: days – 10 years)– Processing capabilities– Transmission range (5…20

meters)

• Data rates: Bit/s … KB/s• Transmission methods:

– Bluetooth– ZigBee– nanoNET

• One specific application• Price: some cents

Coming up sensor nodes

Page 5: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

5

Characteristics of Sensor Networks

Properties:• Wireless sensor nodes connect together autonomously• Distributed organization• Contain one or more data sinks • Huge number of nodes to compensate transmission range (density: 0.1

- 20 nodes/m2)• Nodes may move around

Tasks:• Cooperative data acquisition:

– Cooperative data collection and preprocessing– Running distributed applications regionally– Forwarding of results to higher application levels

• Adaptive reactions on environment modifications• Network has to behave robustly and fault-tolerant to:

– Failure on single nodes– Transmission errors and distortion through obstacles– Intrusion and jamming

Page 6: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

6

Applications

Stress Monitoring

Measurements in FluidsIntra Corporal Measurements

Sensor Node

Protecting flood dam with sandbags

Page 7: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

7

Requirements of Sensor Networks

1. Self-Organization– Ad hoc network formation– Autonomous connection establishment

2. Network Maintenance– Addressing of nodes– Routing facilities– Compensation of network failures

3. Cooperative Processing– Context awareness– Location positioning and location awareness– Preprocessing of collected raw data

4. Security Mechanisms5. Energy Optimizations

Page 8: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

8

Context Awareness

• Infrastructure context– Refers to the infrastructure around the node– Example: Perception of bandwidth and reliability

• Domain context– Refers to the current environment of the node– Example: Knowledge of next data sink in the network

Data sink node

Simple node

Transmission range

Context Awareness: Adapts the behavior of the node to the current environment

Page 9: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

9

• Transfer to

• Measurement the field strengths of and

• Triangulation / multilateration• Transfer of determined

positions to data sink• Max. 6 transmissions• Decentralized positioning

Cooperative Algorithms

• Reduction of data by preprocessing and aggregation • Minimization of data stream to data sinks

Example: Positioning

3E

3N

1E

2E

1E

2E

3E

3N

1N2N

Page 10: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

10

Network Maintenance

• Attribute based addressing– Assignment of data to location of data mining– Location awareness necessary– ID based addressing unfavorable

• Random node distribution • Routes become obsolete quickly due to mobility

– Example: Temperature at location (x, y) ?• Cooperative network behavior

– Data aggregation– Address resolution / location awareness– Adaptive routing strategy depends on mobility of nodes

• Communication reduction / avoidance– Connectionless transmission– Prevent network traffic through data aggregation– Event based communication in contrast to request / reply– Polling avoidance

Page 11: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

11

Software Engineering

• Hides the complexity of the distributed system• Standardized API to node application• Provides access to services on remote nodes

Network MaintenanceServices

Hardware AbstractionCooperative Algorithms

Context Awareness

Middleware

Common Middleware:

Goal: Same middleware on different platforms

Page 12: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

12

Middleware Properties

Scalable Middleware• Customization of data types during compile time• Removing of unused components

Generic Middleware• Platform independent middleware leads to increased number of

complex interfaces• Adaption of interfaces instead of programs

void setBaudrate(int handle, int baudrate){ hardware_addr=getIOAddress(handle); hardware_addr->BTR0=baudrate;}

void setBaudrate(int baudrate){ // getIOAddress(handle); BTR0=baudrate;}

Non Generic Middleware Generic Middleware

Savings: parameter delivery, function call, stack operation, return value assignment, field operation

Valid only, if one interface present

Page 13: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

13

Middleware Properties II

Adaptive Middleware• Mobility and changes in infrastructure require adaptions to the

software– Cluster head selection requires additional routing software– Changing measurement methods leads to new programs

• Exchange and run components dynamically– Start of new services

Reflective Middleware• Ability to understand and influence itself• Application layers are not affected• Inspection: Analyze behavior via logging / debugging• Adaptation: Changing behavior of internal layers.• Example: Customizing routing strategy depending on mobility

To overcome all the mentioned requirements we designed a software model! !

Page 14: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

14

Our Approach

• Adaption of program to the application taskinsteadadaption of application task to the program

• Adaption of interfaces to the programinsteadadaption of the program to the interfaces

• Application-dependent customized software componentsinsteadmultipurpose software on each node

Page 15: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

15

Definitions

• Measurements and storage of data

• Hardware dependant• Example:

– Software driver for temperature sensor

Sensor Application

• Application specific parts

• Middleware (routing, discovering nodes)

• Contains sensor application

Node Application

Sensor Network Application

• Describes main tasks of the entire network• Contains several node applications• Optional administration interface

Page 16: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

16

Node Application

Internal interface (generic middleware)

Operating System

CPU

Sensor Driver

ServicesModulesAlgorithms

Host Middleware

Middleware Management

VM

Sensor

No individual high level application, because:• Nodes provide services only to the network• Focus: Success of sensor network application instead of

node application• Cooperative behavior of nodes

Sensor application

Dynamic components

Page 17: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

17

Sensor Network Application

systemwide interfaces

• Middleware and Operating System are compiled and optimized to each hardware

• Sensor Network Application– Composition of all node services

• Optional administration terminal to manage the entire network

Middleware

Operating System

Hardware

Distributed Middleware

Middleware

Operating System

Hardware

Administration Terminal

Node A Node B Node C

Sensor Network Application

Middleware

Operating System

Hardware different node hardware

boot, logging

customized node‘s software

Page 18: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

18

Sensor Network Design

Compile/Link

Design & Edit

Distribute

Execute/Administrate

Development Studio

ResourceHardware

driven

Monitoring

Evaluation Optimization

Components

Changes to common design methods.

• Create hardware-optimized software components (driver, operating system)• Create hardware-independent software components (middleware, services)• Combining of predefined components• Source code generation• Removing unused components• Optimization of interfaces• Optimization to node‘s hardware

• Distribution of nodes in different environments

• Monitoring the execution• Creation of logfiles

• Evaluation of logfiles

Page 19: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

19

Conclusion

• New challenges of software development in sensor networks

• Optimization of node‘s software based on– Interface design– Adaptive and reflective middleware

• Design of service-oriented middleware in sensor networks

• Future work– Realization of presented software concept– Development studio

Page 20: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

Thank youAny questions ?

Page 21: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

21

Services

• Discovering and using services• Cascading of services without previous knowledge of each

other

Definition: Little program accessed by standardized interfaces over the network.

Service infrastructure for remote access:

Service Proxy

PhysicalPhysical

LANBluetooth

Surrogate Host

Proprietary protocol

Sensor ASensor B

Sensor C

Surface profile service

Surface profile ?

Client

RequestRequest

TCP/IPReply Reply

Page 22: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

22

Software ArchitectureDesktop Model Resource optimized

Application SpecificOS Modules

Middleware

Application

Middleware

Application

Operating System

Hardware Hardware

Sensor Node

Middleware

SensorDriver

NodeSpecific

OS Modules

Hardware Sensor

• Independent applications

• Standardized middleware

• Standardized operating system

• Example: Jini

• Independent applications

• Standardized middleware

• Standardized interfaces

• Unused components removed

• No independent applications

• Customized middleware

• Proprietary interfaces• Optimized driver

software

Not optimized (Partly) optimized modules

Page 23: Service-Oriented Software Architecture for Sensor Networks Jan Blumenthal University of Rostock IMC Rostock, 17 th June 2003.

23

Example

Middleware

SensorDriver

NodeSpecific

OS Modules

Hardware Sensor

Middleware

ARMTemperature

Sensor

SensorDriver

NodeSpecific OS

Modules

68HC11

NodeSpecific

OS Modules

Middleware

68HC11PressureSensor

NodeSpecific

OS Modules

SensorDriver

Middleware

Sensor Node Model

• ARM Microcontroller• Temperature Sensor

• 68HC11 Microcontroller• Pressure Sensor

• 68HC11 µC• No Sensor