Design of Wireless Sensor

brainybootsΚινητά – Ασύρματες Τεχνολογίες

21 Νοε 2013 (πριν από 3 χρόνια και 11 μήνες)

92 εμφανίσεις

Software Architecture
Design of Wireless Sensor
Networks

John Henkel

Overview


Wireless sensor networks


concepts
and applications


Characteristics and Requirements


Comparison of two proposed
software architectures


Quick glance at the applicable design
processes.


What exactly are WSNs?


Self
-
organizing network comprised of
wireless nodes which collect data


Many different sensors


Concept size 10s to 100,000s of nodes


Dynamic Network Organization


Cooperative Processing


Why to we care?


Hot Research Topic Today


Large Amounts of Government and Corporate
Funding


Variety of applications


Military


Industrial Control


Process control


Inventory (RFID)


Civil Engineering


Day to day life


Virtual keyboards!


Interfaces for the disabled


Noteworthy Research Projects


Berkley’s smartdust


PicoRadio


WeBS




Why so few?

Difficulties


Hardware


Size


Power


Life / Robustness


Software


Fault tolerant design


Highly embedded systems


Optimize for energy efficiency


Concurrency intensive


Again, why do we care?


WSN Characteristics point to a
unique architecture.


Mutilayered, just like any network
architecture.


Unique in terms of the distributed
layers.



Berkley to the rescue


Berkley made TinyOS


Tiny microthreading operating system


Provides a good framework:


Concurrency intensive


Efficient modularity


Effective hardware management

WSN Characteristics


Self Organizing


Large numbers of nodes


Robust operation


No redundancy


Fault tolerance


If a node fails, will the network recover?

WSN Characteristics


Concurrency and Cooperative
Processing


Limited memory


Triangulation


Sensor data acquisition, processing,
targeting


Data aggregation


WSN Characteristics


Energy Efficiency


Nodes in a WSN have limited power
supplies


Hostile Environments


Architecture can play a large role.


Power sensitive task scheduling

WSN Characteristics


Modularity


The actual hardware of the nodes may
vary.


Temp sensors, hall effect, proximity, etc…


While the drivers and software on each
node may be specific, the interface
presented to the distributed software
should be generic.


Basic Architecture


Client


Connect at any place on the network


Sensor Application


Requests certain information from the
network


Network software


Handles request, maintenance, etc…


Node specific software and hardware

Software Architecture Components


Middleware


“….the software layer between operating
system and sensor application on the
one hand and the distributed application
which interacts over the network on the
other hand.” [2]


In essence, the complexity and layer
architecture of the middleware defines
the software architecture of the entire
system.

What makes it special?


Scalable


Should perform optimization based on resource constraints at
runtime


Adaptive


Changes in the network and event under observation call for
change.


Network restructuring


Distributed application task reallocation


Supports scalability and robustness


Reflective


Changes the actual behavior of layers on the fly


Example: The modification of routing strategy depending on
mobility.


Generic


Standard or generic interfaces between middleware
components.


Customize Application interfaces.


Architecture A


Basic Service
Oriented


Previous information and
requirements call for a flexible
software architecture.


What happens if a sensor node is
regarded as the basic architectural
unit?


Node software layers are required to
handle network maintenance and
service requests.

Node Application Structure

Node Application Structure [1].


OS handles tasks
specifically relating
to node operation.


Host middleware is
specifically tailored
to the node.


Handles services
offered to the
network.


Cooperative
algorithms, additional
modules, and Virtual
machine support to
enable platform
independent
application execution.

Sensor Network Software Architecture [1]


Sensor Network Software Architecture Cont..


Individual nodes interact with the
distributed middleware.


Together performs the actions requested
by the sensor application.


Note: In this architecture node middleware
handles network formation and maintenance.


The distributed middleware exists logically
in the network layer, but physically in the
nodes.


Administrative terminal…

Disadvantages…


Energy Efficiency


Network topology


Ad
-
hoc network


Power available limits transmission range.


Nodes surrounding the data
-
sink will die
sooner


Unnecessary overhead



Architecture B


A different network topology can
help with all the issues with the first
architecture.


Clustering


A cluster is a set of adjacent sensors
which are grouped together and
interface with the rest of the network
through a
gateway
, or cluster head [4].


Can also help with QoS.

Gateways?


Higher energy
nodes


Perform data
aggregation


Organize nodes
into subsets


Maintain the
network in each
cluster

Example network cluster structure [4]

Architecture B


Cluster regarded
as the base
element.


Each node
communicates
with the data
sink only through
the gateway.


Distributed Cluster Mid
dleware

Middleware

Operating
System

Hardware

Node A

Middleware

Operating
System

Hardware

Node
B

Middleware

Operating
System

Hardware

Node
C



Clusters are required to exhibit dynamical
behavior.


Cluster localization.


Cluster formation and management on the fly as nodes
move, drop in and out, or the phenomena
moves/changes.


Cluster can overlap spatially, but nodes cannot belong to
multiple clusters.

Architecture B


Four main
layers


Application


Resource
Management


Cluster


Sensor
Network
Layer

Resource Management Layer


Controls resource allocation and
adaptation


Just a little important, yes?


Adapt to environment and system
changes


Tasks need to be reallocated


Guarantee QoS (or try to)

Advantages


Dynamic cluster formation


Increase network capacity


Power conservation


IF distributed and energy aware protocols
are used.


Different maximum transmission ranges
/ power levels


Specifically provides for QoS


More manageable?

Disadvantages


Overhead


Dynamic cluster formation


Resource allocation


Information and statistics gathering


Frequency of polling


Depends on implementation


Fault tolerance


Clustering increases vulnerability


Time wasted in network reconfiguration


Ad
-
hoc as a backup

Architecture B


Modifications to reduce
disadvantages


Redundant gateways


Avoid full
-
scale reclustering




So what about the process?


Node Software


Highly sensitive to
performance


Lends itself to an
iterative design
process


Application /
distributed
middleware


Not quite as sensitive

Conclusion


Wireless = cool. Or, at least,
frustrating.


Efficiency is a big issue in WSNs


Means good software design is a
necessity.


It all comes down to meeting
requirements.

Questions


References


References


Blumenthal, Jan; Handy, Matthias; Golatowski, Frank; Hasse, Marc;
Timmermann, Dirk.
Wireless Sensor Networks


New Challenges in
Software Engineering.

Emerging Technologies and Factory Automation,
2003. Proceedings. ETFA '03. IEEE Conference ,

Volume: 1 ,

16
-
19 Sept.
2003


Hill, Jason; Szewczyk, Robert; Woo, Alec; Hollar, Seth; Culler, David;
Pister; Kristofer.
System Architecture Directions for Networked Sensors
.
ASPLOS 2000.


Yu, Yang; Krishnamachari, Bhaskar; Prasanna, Viktor K.
Issues in
Designing Middleware for Wireless Sensor Networks
. IEEE Network,
Volume: 18 ,

Issue: 1 ,

Jan/Feb 2004

Pages:15


21. Copyright 2004 IEEE.


Gupta, G.; Younis, M.

Fault
-
Tolerant Clustering of Wireless Sensor
Networks
Wireless Communications and Networking, 2003. WCNC 2003.
2003 IEEE ,

Volume: 3 ,

16
-
20 March 2003. Pages:1579
-

1584 vol.
Copyright 2003 IEEE.


Liu, J.; Li, B.,

Distributed Topology Control in Wireless Sensor Networks
with Asymmetric Links,
Global Telecommunications Conference, 2003.
GLOBECOM '03. IEEE ,

Volume: 3 ,

1
-
5 Dec. 2003, Pages:1257
-

1262
vol.3, Copyright IEEE 2003.

Stuff just for fun


http://robotics.eecs.berkeley.edu/~p
ister/29Palms0103/


http://robotics.eecs.berkeley.edu/~p
ister/SmartDust/