16
Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware A Message-Oriented Middleware for Sensor Networks for Sensor 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

Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

Embed Size (px)

Citation preview

Page 1: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 2: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 3: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

3Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004

MotivationMotivation [ [ScenarioScenario]]

sink node

user application

observation regionsensor nodes

Page 4: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 5: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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)

Page 6: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 7: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 8: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 9: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 10: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 11: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 12: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 13: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 14: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 15: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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

Page 16: Workshop on Middleware for Pervasive and Ad-Hoc Computing Toronto, Canada, October 2004 A Message-Oriented Middleware for Sensor Networks Eduardo Souto,

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