Middleware architecture for searching semantic-based IoT service 

Get Complete Project Material File(s) Now! »

Toward a service-oriented middleware for searching IoT things

In the following, we call the services offered by the connected objects as IoT services. Devices and their related IoT services are associated to a physical space that we call a smart space.
Besides, we define service search, the action of looking for and retrieving service descriptions that satisfy, at a certain degree, a given request and without having any priori knowledge about them. Finally, we call service discovery the action of both service registration in a registry and service search. The realization of the scenario and the IoT vision mentioned above requires searching for IoT services while dealing with a number of issues related to the characteristics of an IoT environment. These IoT environment characteristics are: its scale, its heterogeneity and its dynamicity [11].
Regrading the scale and according to [12], there will be around 50 billions of connected objects by 2020. Moreover, the number of connected devices per person increased from 0.08 in 2003 to 1,84 in 2010 and the number of smartphone users will surpass 1.75 billions in 2014 [13]. When considering the number of possible sensors and actuators hosted in each smartphone and when knowing that the number of Internet users is growing fast, we can expect a rapid increase in the number of IoT devices. With scale, several constraints can be considered. For instance, the system needs to be able to identify effectively and access appropriate things, among billions, to provide needed functionalities [14].
Another challenge related to IoT environment characteristics is its dynamicity. This dynamicity is due to the mobility of devices. It is also due to the fact that devices can be broken and replaced by new ones. Moreover, some devices can have limited availability due to their constrained resources to partake in a sensing, actuation or processing task. As a consequence, IoT services availability will be changing over time and sometime their location will be changing due to mobility. The system needs to be able to manage such dynamicity and identify quickly available IoT services within a given smart space [15].
Finally, interoperability is essential to have a global infrastructure of things able to communicate together and to compose their services despite their heterogeneity. However, things in the IoT, manufactured by different entities, will likely have different communication interfaces, different ways to be addressed and different capabilities [16]. This heterogeneity will make finding suitable services to interact with, challenging. Thus, it is crucial to think about solutions to enable homogeneity among things.

Contributions and Outlines

To address the above challenges, we introduce in this thesis a service-oriented, semantic-based middleware with a main focus on the service search functionality. The middleware is able to manage heterogeneous, large scale and mobile devices while performing flexible, exhaustive and large scope search of IoT services. The most important contributions are structured along this document as follows:
• Chapter 2 gives an overview about efforts to address the heterogeneity issue in the IoT. It also surveys existing solutions in the IoT to search for semantic-based IoT services and analyzes their ability to support large scale and mobile services and to perform flexible, exhaustive and scalable search.
• Chapter 3 presents our semantic-based middleware architecture for IoT service discovery in heterogeneous, large scale and dynamic context. We give an overview of the middleware architecture and we focus on its semantic layer that handles semantic-based IoT service search. We detail its main components and their interactions. The semantic layer is instantiated into semantic gateways, each one mapped to a smart space and hosting its IoT semantic service descriptions. Semantic gateways handle search requests. We published initial ideas about the semantic gateways in the IOT-A project deliverable D4.1 [31].
• Chapter 4 considers a static context and details the semantic-based service discovery mechanism to register and search large scale semantic-based service descriptions within semantic gateways. Based on clustering and aggregation mechanisms of IoT semantic service descriptions in each semantic gateway, the system is able to return all services that respond to a request while limiting the number of needed service-request matching operations. We described parts of this work in our publication at iThings 2013 [32] and the IOT-A project deliverable D4.3 [33]. A patent on some of these ideas was filed [34].
• Chapter 5 considers a dynamic context due to IoT service mobility and details mechanisms to enable dynamic management of semantic gateways content. For that, we propose an incremental clustering mechanism to update the service clustering in each semantic gateway. Thanks to these mechanisms, the search mechanism is flexible, exhaustive and scalable time. We described most of this work in a paper that will be published at PIMRC 2014 [35].
• Chapter 6 concludes the thesis. It provides a summary of our contributions along with the remaining research issues and perspectives to be further investigated.

READ  Generalities on hydrodynamics and sediment transport

Connecting and interacting with things over the Internet

The Internet of Things is characterized by the diversity and heterogeneity of connected devices and their supporting technologies. These devices are ranging from resource-constrained (e.g., wireless sensors and actuator networks (WS&AN)) to rich-resources (e.g., printers, lamps, home appliances). They are implementing different communication protocols (e.g., bluethooth, Zigbee, Wifi) to interact together. To bridge things to the Internet, specially for low power devices, approaches relying on the concept of gateways have been adopted ([36], [37], [38]) to federate different network protocols and to ensure bi-directional translation between different protocol stacks (for instance between IP and non-IP protocols). Bridging the physical world to the virtual one, has been enhanced by the development of uniform protocols such as CoAP (Constrained Application Protocol) [39] that enables lightweight communication with constrained devices. CoAP enables end to end HTTP communications between applications and resource constrained devices by compacting the form of HTTP request at the device level. At The networking layer, 6LoWPAN [40] enables to carry IP packets on constrained IP networks.

Table of contents :

1 Introduction 
1.1 IoT vision, scenarios and challenges
1.2 Toward a service-oriented middleware for searching IoT things
1.3 Contributions and Outlines
2 Searching IoT services: State of the Art 
2.1 From Physical Things to Virtual Services
2.1.1 Connecting and interacting with things over the Internet
2.1.2 Abstracting things as services: SOA meets IoT
2.1.3 Local service discovery protocols
2.2 Toward homogeneous service descriptions using Semantic Web technologies
2.2.1 The Semantic Web
2.2.2 Semantic Web technologies and IoT
2.3 Techniques for searching semantic-based service descriptions
2.3.1 Semantic service description matchmaking
2.3.2 Graph-based query: SPARQL based retrieval
2.3.3 Indexing-based search: Semantic search engine
2.4 Searching semantically-described IoT services
2.5 Discussion
3 Middleware architecture for searching semantic-based IoT service 
3.1 Architecture overview
3.2 The semantic layer
3.2.1 Information model
3.2.2 Main functions in the semantic layer
3.3 Deploying the solution through gateways
3.3.1 Physical gateways
3.3.2 Semantic gateways
3.3.3 Gateways mapping
3.3.4 Semantic gateway selection and user request forwarding
3.4 Concluding remark
4 The service search mechanism in a static context 
4.1 Problem statement and requirements
4.2 Background
4.3 Proposed solution
4.3.1 Matching metrics
4.3.2 Routing table
4.3.3 Thresholds for service search
4.3.4 Request forwarding
4.4 Exhaustive search: Formal validation
4.5 Scalable search: Numerical analysis
4.5.1 Metrics
4.5.2 Experiment parameters and settings
4.5.3 Impact of the number of services on search performance
4.5.4 Impact of service categories distribution on search performance
4.5.5 Impact of nodes graph topology on search performances
4.6 Concluding remarks
5 Service Mobility Support in a dynamic context 
5.1 Problem statement and requirements
5.2 Background
5.3 Proposed solution
5.3.1 Dynamic clusters creation and updating within a node
5.3.2 Clustering optimization within a node
5.3.3 Total Costs optimization within a node
5.3.4 Search cost optimization within the whole system
5.4 Numerical evaluation
5.4.1 Metrics
5.4.2 Experimental parameters and settings
5.4.3 Impact of the number of services per node: case of a single lowest node
5.4.4 Impact of margin values: case of a single lowest level node
5.4.5 Impact of service mobility on the nodes hierarchy
5.5 Concluding remarks
6 Conclusion 
6.1 Contributions
6.2 Perspectives
Bibliography

GET THE COMPLETE PROJECT

Related Posts