Upload
jared-rose
View
226
Download
2
Embed Size (px)
Citation preview
Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
A Message-Oriented Middleware for A Message-Oriented Middleware for Sensor NetworksSensor Networks
Eduardo Souto, Germano Guimarães, Glauco Vasconcelos, Mardoqueu Vieira, Nelson Rosa, Carlos Ferraz
{ejps,gfg,gpv,msv,nsr,cagf}@cin.ufpe.br
Centro de Informática
Universidade Federal de Pernambuco
Recife – Pernambuco, Brazil
2Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MotivationMotivation
increasing development of wireless sensor
networks (WSNs)
scarce resources (memory, battery, processing capacity)
thousand of nodes
event-driven
traditional middleware systems are heavyweight
request/reply communication is not adequate
increasing development of wireless sensor
networks (WSNs)
scarce resources (memory, battery, processing capacity)
thousand of nodes
event-driven
traditional middleware systems are heavyweight
request/reply communication is not adequate
3Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MotivationMotivation [ [ScenarioScenario]]
sink node
user application
observation regionsensor nodes
4Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
Our ProposalOur Proposal
MIRES – Middleware for WSNs
enables communication between sensing-
based applications
provides a set of middleware services
hides the complexity of communication
underlying mechanisms from the sensing-
based applications
MIRES – Middleware for WSNs
enables communication between sensing-
based applications
provides a set of middleware services
hides the complexity of communication
underlying mechanisms from the sensing-
based applications
5Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Basic FactsBasic Facts]]
message-oriented middleware
publish/subscribe service
asynchronous communication
encapsulates network-level protocols
routing and topology control protocols
aggregation service
collects and integrates data generated from a large and
physically dispersed set of nodes
API (Application Programming Interface)
message-oriented middleware
publish/subscribe service
asynchronous communication
encapsulates network-level protocols
routing and topology control protocols
aggregation service
collects and integrates data generated from a large and
physically dispersed set of nodes
API (Application Programming Interface)
6Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[ArchitectureArchitecture]]
Sensors CPU Radio
Operating System
MIRESRouting Routing Service 1
AggregationService Service N
ServiceN
Node ApplicationNode Application
Publish/subscribe service
7Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Publish/Subscribe ServicePublish/Subscribe Service]]
a publish/subscribe
middleware
publishes (“sender”) and
subscribers (“receivers”)
applications
asynchronous
communication
sender and receiver may
not be present in the
network at the same
time
topics (subject)
a publish/subscribe
middleware
publishes (“sender”) and
subscribers (“receivers”)
applications
asynchronous
communication
sender and receiver may
not be present in the
network at the same
time
topics (subject)
Hardware
Operating System
MOM
Sender Receiver
Queue
send(m)
notifica
tion
8Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Publish/Subscribe ServicePublish/Subscribe Service]]
allows the
communication between
middleware services
responsible for
advertises topics
maintains the list of
topics subscribed by the
node application
publishes messages
containing data related
to the advertised topics
allows the
communication between
middleware services
responsible for
advertises topics
maintains the list of
topics subscribed by the
node application
publishes messages
containing data related
to the advertised topics
Sensors CPU Radio
Operating System
MIRES
Routing Routing Service1
AggregationService Service
NServiceN
Node ApplicationNode Application
Publish/subscribe service
9Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Publish/Subscribe ServicePublish/Subscribe Service]]
TinyOS
nesC language
component-based
programming model
each component
provides and uses
services
component’s interface is
made up of commands
(procedures)
TinyOS
nesC language
component-based
programming model
each component
provides and uses
services
component’s interface is
made up of commands
(procedures)
Sensors CPU Radio
Operating System
MIRES
Routing Routing Service1Aggregation
Service ServiceNServiceN
Node Application
Publish/subscribe service
10Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Publish/Subscribe ServicePublish/Subscribe Service]]
publish/subscribe service
-> other components
Node application
advertises its ability of
sensing data related to
a topic
the publish/subscribe
services sends that
information to the
network
publish/subscribe service
-> other components
Node application
advertises its ability of
sensing data related to
a topic
the publish/subscribe
services sends that
information to the
network
sink node
user application
11Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Publish/Subscribe ServicePublish/Subscribe Service]]
message arrival from the
network
all messages are
addressed to the sink node
MultiRouter signalises an
intercept an event
the publish/subscribe
service updates its internal
control
the publish/subscribe
services returns an
indication that the
message can be forwarded
message arrival from the
network
all messages are
addressed to the sink node
MultiRouter signalises an
intercept an event
the publish/subscribe
service updates its internal
control
the publish/subscribe
services returns an
indication that the
message can be forwarded
sink node
user application
12Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Publish/Subscribe ServicePublish/Subscribe Service]]
topic subscription
user application
broadcasts subscribed
topics to the network
BCast signals a
receive event
the publish/subscribe
service notifies
services attached to it
topic subscription
user application
broadcasts subscribed
topics to the network
BCast signals a
receive event
the publish/subscribe
service notifies
services attached to it
sink node
user application
sensor nodes
13Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Publish/Subscribe ServicePublish/Subscribe Service]]
sink node
user application
sensor nodes
14Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Aggregation ServiceAggregation Service]]
the aggregation of data
collected from sensors
reduces the number of
transmissions
performed in each node
configuration parameters
aggregation function
(e.g., suppression, min,
max, average)
stop criteria
the aggregation of data
collected from sensors
reduces the number of
transmissions
performed in each node
configuration parameters
aggregation function
(e.g., suppression, min,
max, average)
stop criteria
Room 1
user application
sink
Room 2
Room 3 Room 4
15Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
MIRES MIRES [[Aggregation ServiceAggregation Service]]
user application
Nodeapplication
TinyOSMires
Sensorreadings
Publishmessages
Incomingmessages
Room
16Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004
Conclusion & Future WorkConclusion & Future Work
publish/subscribe communication is adequate to middleware for WSNs
facilitates the development of sensing-based applications
next step
to evaluate the middleware power consumption
Petri Nets models
publish/subscribe communication is adequate to middleware for WSNs
facilitates the development of sensing-based applications
next step
to evaluate the middleware power consumption
Petri Nets models