Get Complete Project Material File(s) Now! »
Publish/Subscribe architecture categories
Regarding the architecture of a pub/sub system, they can be classified in two categories: client-server and peer-to-peer [53].
Client-Server In this model, the entities are classified under two roles, either they are event servers or event clients. The event server receives events (publication or subscription) while the event client acts as publishers, subscribers or both.
The topologies accepted in this model are: star, hierarchical, ring and irregular polygon.
Peer-to-Peer In this model there is no differentiation in the role performed by the entities in the network, every node can act as a publisher or a subscriber.
Data dissemination
The routing protocols for sensor network are designed for synchronous communications. However, if one assume the pub/sub model the data should be routed in an asynchronous way given that publishers and subscribers do not know each other and are not aware of the production of the data. The routing in the context of data-centric network is thus classified as follow [78]:
• Centralized-based – All messages, query and event, are sent to a central broker that is the only destination in the network.
• Broadcast-based – The query is broadcasted by the subscriber to all nodes in the network. Upon receiving a query, the publisher, that has a matching event, publishes the data.
• Gossip-based – In this solution, publisher and subscriber use random walks to disseminate their queries and events as a gossip. In this method, each query and event are replicated on all nodes visited by the random walk to allow that an event finds all the matching queries.
The Pub/Sub paradigm characteristics make it suitable in the context of WSANs. However, in this context, the introduction of a novel concept, called Virtual Broking (VB), has been explored in order to decrease the cost in energy consumption associated with the dissemination of queries and events. The VB is implemented by a number of Virtual Broker Nodes (VBNs) that store all the data produced in the network, and mediate the communication between publishers and subscribers. In the basic operation of this model, the data producers as well as the data consumers send their events and queries, respectively, to the VB. As an instance of such approach, [51] proposes a VB based architecture where the network is divided into a number of small partitions similar to the one illustrated in Figure 2.6. In each partition, virtual broker nodes (depicted in black) are located at the center; and the remaining nodes, the publishers and subscribers, are spread all over the network. For the remainder of this thesis, we follow the realistic assumption of a WSAN with a VB-based architecture made up of several partitions, such as the one illustrated in Figure 2.6, that operates under the Pub/Sub model described above.
Coding techniques
In wireless networks, as many packet are lost or corrupted due to the mobility and instability of the communication channels [33], coding-based schemes are employed as a solution to increase data reliability through the storage of redundant packets. By using coding schemes, the nodes introduce packet redundancy in the network at a lower overhead than using replication. This happens because using coding technique to store redundant packets, the receiver can recover the packets even that some packets are lost. The quantity of lost packets born in the network depending on the redundancy level employed. With the replication technique, on the contrary, for each packet lost, a packet retransmission is requested overloading the network. By exploiting the advantages of the coding techniques, Network Coding (NC) and Erasure Coding (EC) have been proposed to improve reliability in distributed data storage schemes in WSNs [19, 65, 28, 93, 43, 89, 29, 30, 81, 37].
Table of contents :
Abstract
1 Introduction
1.1 Contributions
1.2 Organization
2 Background
2.1 Wireless Sensor Networks (WSNs)
2.2 IEEE 802.15.4 standard
2.2.1 Duty cycle mechanism
2.3 WSNs evolution (IoT)
2.4 Data management
2.4.1 In-Network data storage
2.5 Publish/Subscribe paradigm
2.5.1 Publish/Subscribe architecture categories
2.5.2 Data dissemination
2.6 Coding techniques
2.6.1 Linear Network Coding (LNC)
2.7 Conclusion
3 VBC: Virtual Broking Coding data storage scheme
3.1 Motivation and context
3.2 Related works
3.2.1 Pub/Sub-based storage schemes
3.2.2 Reliable coding-based storage schemes
3.2.3 Summary
3.3 VBC: Virtual Broking Coding data storage scheme
3.3.1 Publish operation
3.3.2 Subscribe operation
3.3.3 Discussion
3.4 Theoretical packet delivery ratio analysis
3.4.1 Model assumptions
3.4.2 Analysis
3.4.3 Comparison of results: VBC vs BS
3.5 Theoretical communication cost analysis
3.5.1 Comparison of Coding Schemes: VBC vs DEC
3.5.1.1 Assumptions
3.5.1.2 Communication costs analysis
3.5.2 Comparison of VB-based data storage schemes: VBC vs BS
3.5.2.1 Assumptions
3.5.2.2 Error-prone communication channel (EPCC)
3.5.2.3 Failure-prone VB (FPVB)
3.6 Performance evaluation
3.6.1 Simulation settings
3.6.2 Simulation results
3.6.2.1 Packet delivery ratio
3.6.2.2 VB communication cost
3.6.2.3 Cost-benefit trade-off
3.6.2.4 Storage load balancing
3.6.2.5 Delay
3.7 Conclusion
4 DA-VBC: Dynamic Adaptive VBC Data Storage Scheme
4.1 Motivation
4.2 State of the art
4.2.1 WSAN integration in IoT realm
4.2.2 Data storage in IoT/WSANs
4.3 System model
4.3.1 System definition
4.3.2 Storage scheme
4.3.2.1 Publish operation
4.3.2.2 Subscribe operation
4.3.3 Application Example
4.4 Theoretical analysis: a generalization
4.4.1 Packet delivery probability
4.4.2 VB communication Cost
4.4.3 Cost-benefit trade-off
4.5 Optimization problem formulation
4.5.1 Dynamic Optimization Methodology
4.5.2 Dynamic Adaptive VBC algorithm (DA-VBC)
4.6 Performance evaluation
4.6.1 Simulation settings
4.6.2 Simulation results
4.6.2.1 Comparison of mdp and fixed redundancy levels
4.6.2.2 Comparison of mdp and heuristic-based redundancy levels
4.7 Conclusion
5 Node Activity Scheduling and In-Network Data Storage: Impact of Introducing duty-cycling on DA VBC 71
5.1 Context and issues
5.2 Related works
5.3 Duty cycle adaptation in traditional WSN
5.3.1 Problem description
5.3.2 DBSAA: a self-adaptive duty cycle approach
5.3.3 DBSAA algorithm
5.3.4 Performance evaluation
5.3.4.1 Simulation setting
5.3.4.2 Simulation results
5.4 Duty cycle in DA-VBC-based WSANs
5.4.1 Theoretical analysis of the impact of duty cycling in a VB structure
5.4.2 The DCDA-VBC approach
5.4.3 Performance evaluation
5.4.3.1 Simulation setting
5.4.3.2 Simulation results
5.5 Conclusion
6 Conclusions
6.1 Perspectives
List of Figures
List of Tables
Bibliography