Upload
elsa-kimbley
View
223
Download
0
Tags:
Embed Size (px)
Citation preview
11
Message Oriented Message Oriented Middleware and Hierarchical Middleware and Hierarchical
Routing ProtocolsRouting Protocols
Smita SinghaniyaSmita Singhaniya
Sowmya Marianallur DhanasekaranSowmya Marianallur Dhanasekaran
Madan PuthigeMadan Puthige
22
Wireless Sensor NetworksWireless Sensor Networks
increasing development of wireless sensor networks increasing development of wireless sensor networks
(WSNs)(WSNs)
scarce resources (memory, battery, processing capacity)scarce resources (memory, battery, processing capacity)
thousand of nodesthousand of nodes
event-driven event-driven
traditional middleware systems are traditional middleware systems are heavyweightheavyweight
request/replyrequest/reply communication is not adequate communication is not adequate
44
Message Oriented Message Oriented MiddlewareMiddleware
MIRESMIRES – Middleware for WSNs – Middleware for WSNs
enables communication between sensing-based enables communication between sensing-based
applicationsapplications
provides a set of middleware servicesprovides a set of middleware services
hides the complexity of communication underlying hides the complexity of communication underlying
mechanisms from the mechanisms from the sensing-based sensing-based applicationapplicationss
55
MIRES MIRES [[Basic FactsBasic Facts]]
message-oriented middlewaremessage-oriented middleware
publish/subscribe servicepublish/subscribe service
asynchronous communicationasynchronous communication
encapsulatesencapsulates network-level protocols network-level protocols
routing and topology control protocolsrouting and topology control protocols
aggregationaggregation service service
collects and integrates data generated from a large and physically collects and integrates data generated from a large and physically
dispersed set of nodesdispersed set of nodes
API (API (Application ProgrammingApplication Programming Interface) Interface)
66
MIRES MIRES [[ArchitectureArchitecture]]
Sensors CPU Radio
Operating System
MIRESRouting Routing Service 1
AggregationService Service N
ServiceN
Node ApplicationNode Application
Publish/subscribe service
77
MIRES MIRES [[Publish/Subscribe Publish/Subscribe ServiceService]]
a publish/subscribe a publish/subscribe
middleware middleware publishes (“sender”) and publishes (“sender”) and
subscribers (“receivers”) subscribers (“receivers”)
applicationsapplications
asynchronous asynchronous
communicationcommunication
sender and receiver may sender and receiver may
not be present in the not be present in the
network at the same timenetwork at the same time
topics (subject)topics (subject)
Hardware
Operating System
MOM
Sender Receiver
Queue
send(m)
notifica
tion
88
MIRES MIRES [[Publish/Subscribe Publish/Subscribe ServiceService]]
allows the communication allows the communication
between middleware servicesbetween middleware services
responsibleresponsible for for advertises advertises
topicstopics
maintains the list of topics maintains the list of topics
subscribed by the node subscribed by the node
applicationapplication
publishes messages publishes messages
containing data related to containing data related to
the advertised topicsthe advertised topicsSensors CPU Radio
Operating System
MIRES
Routing Routing Service1
AggregationService Service
NServiceN
Node ApplicationNode Application
Publish/subscribe service
99
MIRES MIRES [[Publish/Subscribe Publish/Subscribe ServiceService]]
TinyOSTinyOS nesC language nesC language
component-based component-based
programming modelprogramming model
each component provides each component provides
and uses servicesand uses services
component’s interface is component’s interface is
made up of commands made up of commands
(procedures)(procedures)
Sensors CPU Radio
Operating System
MIRES
Routing Routing Service1Aggregation
Service ServiceNServiceN
Node Application
Publish/subscribe service
1010
MIRES MIRES [[Publish/Subscribe Publish/Subscribe ServiceService]]
publish/subscribe service publish/subscribe service
-> other components-> other components
Node application Node application
advertises its ability of advertises its ability of
sensing data related to a sensing data related to a
topictopic
the publish/subscribe the publish/subscribe
services sends that services sends that
information to the network information to the network
sink node
user application
1111
MIRES MIRES [[Publish/Subscribe Publish/Subscribe ServiceService]]
message arrival from the message arrival from the
networknetwork all messages are addressed to all messages are addressed to
the sink nodethe sink node
MultiRouter signalises an MultiRouter signalises an
intercept an eventintercept an event
the publish/subscribe service the publish/subscribe service
updates its internal controlupdates its internal control
the publish/subscribe services the publish/subscribe services
returns areturns ann indication that the indication that the
message can be forwardedmessage can be forwarded
sink node
user application
1212
MIRES MIRES [[Publish/Subscribe Publish/Subscribe ServiceService]]
topic subscriptiontopic subscription
user application broadcasts user application broadcasts
subscribed topics to the subscribed topics to the
networknetwork
BCast signals a BCast signals a receivereceive
eventevent
the publish/subscribe the publish/subscribe
service notifies services service notifies services
attached to itattached to it
sink node
user application
sensor nodes
1313
MIRES MIRES [[Publish/Subscribe Publish/Subscribe ServiceService]]
sink node
user application
sensor nodes
1414
MIRES MIRES [[Aggregation ServiceAggregation Service]]
the aggregation of data the aggregation of data
collected from sensors collected from sensors
reduces the number of reduces the number of
transmissionstransmissions
performed in each nodeperformed in each node
configuration parametersconfiguration parameters aggregation function (e.g., aggregation function (e.g.,
suppression, min, max, suppression, min, max,
average)average)
stop criteriastop criteria
Room 1
user application
sink
Room 2
Room 3 Room 4
1515
MIRES MIRES [[Aggregation ServiceAggregation Service]]
user application
Nodeapplication
TinyOSMires
Sensorreadings
Publishmessages
Incomingmessages
Room
1616
Multi-hop routing algorithmMulti-hop routing algorithm Clustering-based Hierarchical Clustering-based Hierarchical
Routing ProtocolsRouting Protocols
MIRES MIRES [[RoutingRouting]]
1717
Hierarchical ProtocolHierarchical Protocol
Multi hop communication with Multi hop communication with network clusteringnetwork clustering
Data Aggregation and FusionData Aggregation and Fusion LEACHLEACH PEGASISPEGASIS TEEN and APTEENTEEN and APTEEN
1818
Low-Energy Adaptive Low-Energy Adaptive Clustering HierarchyClustering Hierarchy
Cluster head for the current round if the random Cluster head for the current round if the random number is less than the following thresholdnumber is less than the following threshold p is the desired percentage of cluster headsp is the desired percentage of cluster heads r is the current roundr is the current round G is the set of nodes that have not been cluster heads in G is the set of nodes that have not been cluster heads in
the last 1/p roundsthe last 1/p rounds
1919
Low-Energy Adaptive Low-Energy Adaptive Clustering HierarchyClustering Hierarchy
Cluster Heads at time t Cluster Heads at time t + d
2020
Drawbacks of LEACHDrawbacks of LEACH
Single-hop routing – each node Single-hop routing – each node transmits directly to the cluster-transmits directly to the cluster-head and cluster-head directly to head and cluster-head directly to the sinkthe sink
Dynamic clustering – extra Dynamic clustering – extra overheadoverhead
2121
Power-Efficient Gathering in Power-Efficient Gathering in Sensor Information System Sensor Information System
[[PEGASISPEGASIS]] Eliminates dynamic cluster formationEliminates dynamic cluster formation Minimizes distance non-leader nodes Minimizes distance non-leader nodes
must transmitmust transmit Limits the no. of transmissions and Limits the no. of transmissions and
receptions among all nodesreceptions among all nodes Only one transmission to the BS per Only one transmission to the BS per
roundround
2222
Chaining in PEGASISChaining in PEGASIS
C0,C1,C3,C4 - Non-leader nodes
C2- Leader Node
Each node communicates only with the closest neighbor
Gathered data moves from node to node, get fused and sent to the BS by the designated leader node
Nodes take turns being the leader ( I mod N)
Chaining is done using the greedy approach
When a node dies chaining is done again
2323
Hierarchical PEGASIS with Hierarchical PEGASIS with CDMACDMA
Constructs a chain of nodes, that Constructs a chain of nodes, that forms a tree like hierarchyforms a tree like hierarchy
Data transmitting in parallel Data transmitting in parallel Tree is balanced, the delay will be in Tree is balanced, the delay will be in
O (log N)O (log N)
2424
Nodes at even positions transmit data to their right
Nodes receiving at each level rise to next level in hierarchy
2525
Comparison of PEGASIS with Comparison of PEGASIS with LEACHLEACH
PEGASIS has been shown to PEGASIS has been shown to outperform LEACH by about 100 to outperform LEACH by about 100 to 300% for different network sizes and 300% for different network sizes and topologiestopologies
2626
Threshold sensitive Energy Threshold sensitive Energy Efficient sensor Network Efficient sensor Network
protocolprotocol
2727
Threshold sensitive Energy Threshold sensitive Energy Efficient sensor Network Efficient sensor Network
protocolprotocol
Responsive to sudden changes in the Responsive to sudden changes in the sensed attributes such as temperaturesensed attributes such as temperature
Cluster head broadcasts to the nodesCluster head broadcasts to the nodes AttributesAttributes Hard threshold Hard threshold Soft threshold.Soft threshold.
TEEN is not good for applications TEEN is not good for applications where periodic reports are neededwhere periodic reports are needed
2828
Adaptive Threshold sensitive Adaptive Threshold sensitive Energy Efficient sensor Energy Efficient sensor
Network protocolNetwork protocol Captures both periodic data and Captures both periodic data and
reacts to time-critical eventsreacts to time-critical events Historical, to analyze past data valuesHistorical, to analyze past data values one-time, to take a snapshot view of one-time, to take a snapshot view of
the networkthe network Persistent, to monitor an event for a Persistent, to monitor an event for a
period of timeperiod of time
2929
Threshold sensitive Energy Threshold sensitive Energy Efficient sensor Network Efficient sensor Network
protocolprotocol
Time line for the operation of TEEN Time line for the operation of TEEN and APTEENand APTEEN
3030
Drawbacks of TEEN and Drawbacks of TEEN and APTEENAPTEEN
Overhead and complexity of forming Overhead and complexity of forming clusters in multiple levelsclusters in multiple levels
Implementing threshold-based Implementing threshold-based functions functions
Dealing with attribute-based naming Dealing with attribute-based naming of queriesof queries
3131
ConclusionConclusion
publish/subscribe paradigm – publish/subscribe paradigm –
asynchronous communication asynchronous communication
model model multi-hop routing algorithm – multi-hop routing algorithm –
hierarchical routing algorithmhierarchical routing algorithm