Task 1: System architecture for large-scale choreographies (Inria, UFG)
Based on target use case scenarios, we will elicit the envisioned choreography architecture, including:
Task 2: QoS metrics, QoS models, resource models and utility functions for service and resource optimization (Inria, UFG)
Based on the identified architecture of Task 1, we will develop QoS and resource models and related analyses. These models will be both formal/analytical and simulation-based models representing large-scale choreographies that integrate services shared among multiple choreographies, mobile services, and heterogeneous interaction protocols among services. We will formally verify these models and/or validate them based on datasets coming from real setups. Based on these models, we will then elicit related utility functions and algorithms for optimization in service selection and resource allocation.
Task 3: Proof-of-concept prototype implementation (Inria, UFG)
While Task 2 may run repeatedly for updating and improving the elicited models, utility functions and algorithms, we will develop in the present task a prototype implementation of these artefacts. This will enable their validation on a running system and related experimentation that will provide valuable results for: (i) improving the artefacts as part of a continuous development process, and (ii) evaluating our runtime models and dynamic choreography adaptation.
|Research result||Summary (click for more details)|
|eVolution Service Bus (VSB)||
Middleware for interaction inside choreographies of business and Thing servicesInternet-of-Things (IoT) protocols are constantly increasing in the research and industrial landscape. However, the slow pace of current standardization efforts limits the possibilities for incorporation of Things as first-class entities into choreographies, as this requires well-defined technology interfaces. To tackle this interoperability barrier, we propose and demonstrate the eVolution Service Bus (VSB), a middleware solution targeted to enable the interaction between Things-based and business-oriented services. Particularly, we demonstrate the incorporation of a service/Thing into the following choreographies: i) temperature sensors interacting with a business-oriented service, and ii) business-oriented services interacting with a route planner service. This result was published in the demonstration session of ICSOC'2016.
|Performance Models for mobile pub/sub middleware||
Analytical solution (mean-value approach), simulation with real-world traces and comparison with prototype implementationChoreography peers deployed in mobile environments are typically characterized by intermittent connectivity and asynchronous reception of data. In such environments, it is essential to guarantee acceptable levels of timeliness between the data sources and mobile users. In order to provide QoS guarantees in different application scenarios and contexts, it is necessary to model the system performance by incorporating the intermittent connectivity. Queueing Network Models (QNMs) offer a simple modeling environment, which can be used to represent various application scenarios, and provide accurate analytical solutions for performance metrics, such as system response time. We provide an analytical solution regarding the end-to-end response time between the users and the data sources by modeling the intermittent connectivity of mobile users with product-form QNMs. We utilize the publish/subscribe middleware as the underlying communication infrastructure for the mobile users. To represent the subscriber's connections/disconnections, we model and solve analytically an ON/OFF queueing system by applying a mean value approach. Finally, we validate our model using both simulations with real-world workload traces and comparison with an actual implementation of a Java Messaging Service middleware. The deviations between the performance results foreseen by the analytical model and the ones provided by the simulator and the prototype implementation of a real system are shown to be less than 5% for a variety of scenarios. This result was published in ICPE 2017.
|Performance models for mobile IoT middleware||
Analytical solution (2-D Markov chain model) and simulationInternet of Things (IoT) applications consist of diverse Things (sensors and devices) in terms of hardware resources. Furthermore, such applications are characterized by the Things' mobility and multiple interaction types, such as synchronous, asynchronous, and streaming. Middleware IoT protocols consider the above diversity and support the development of effective applications by providing several QoS features. These features aim to enable application developers to tune an application by switching different levels of response times and delivery success rates. However, the profusion of the developed IoT protocols and the intermittent connectivity of mobile Things result in a non-trivial application tuning. To facilitate this, we model the performance of the middleware overlay infrastructure using Queueing Network Models. To represent the mobile Things' connections/disconnections, we model and solve analytically an ON/OFF queueing center by relying on a 2-D Markov chain model. We apply our approach to streaming interactions with mobile peers. Finally, we validate our model using simulations. The deviations between the performance results foreseen by the analytical model and the ones provided by the simulator are shown to be less than 5%. This result was published in ICC 2017.
|Algorithms for resource synthesis on clouds||
QoS models for choreographies and synthesis mechanism that is suitable for dynamic adaptationWe proposed a model-based approach to abstracting, simplifying, and automating cloud resource management decisions to deploy a set of service choreographies subject to non-functional constraints. Given a high-level description of service choreographies and related constraints, the approach autonomously performs resource estimation, selection, and allocation in a hybrid cloud environment with multiple cloud providers whilst decreases resource utilization costs and inter-services communication overhead. The main motivation for this work is that service choreographies can be widely used for the development of solutions with complex needs, with service sharing among them. This scenario makes resource management a challenging task, mainly due to the different roles that a service assumes, the interference among constraints, and the large number of available resource types. The thesis also proposes an architecture that extends the approach with strategies for dynamic resource management to face constraint violations. This architecture was partially implemented in a prototype that was used in the proposed approach evaluation. This result was published in the [PhD thesis](#thesis-raphael) of Raphael de Aquino Gomes.
|Models and analyses for middleware-layer interoperability and QoS||
Abstraction of interaction paradigms, interconnection of heterogeneous paradigms, QoS models and analysesInternet of Things (IoT) applications consist of diverse Things including both resource-constrained/rich devices with a considerable portion being mobile. Such devices demand lightweight, loosely coupled interactions in terms of time, space, and synchronization. IoT middleware protocols support one or more interaction types (e.g., asynchronous messaging, streaming) ensuring Thing communication. Additionally, they introduce different Quality of Service (QoS) features for this communication with respect to available device and network resources. Things employing the same middleware protocol interact homogeneously, since they exploit the same functional and QoS features. However, the profusion of developed IoT middleware protocols introduces technology diversity which results in highly heterogeneous Things. Interconnecting heterogeneous Things requires mapping both their functional and QoS features. This calls for advanced interoperability solutions integrated with QoS modeling and evaluation techniques. The main contribution of this thesis is to introduce an approach and provide a supporting platform for the automated synthesis of interoperability software artifacts. Such artifacts enable the interconnection between mobile Things that employ heterogeneous middleware protocols. Our platform further supports evaluating the effectiveness of the interconnection in terms of end-to-end QoS. More specifically, we derive formal conditions for successful interactions, and we enable performance modeling and analysis as well as end-to-end system tuning, while considering several system parameters related to the mobile IoT. This result was published in the [PhD thesis of Georgios Bouloukakis](https://hal.inria.fr/tel-01592623).
|Automated synthesis of interoperability artifacts||
Generic Middleware (GM) connector model for IoT middleware protocols; lightweight, flexible, distributed protocol bus; evaluationInternet of Things (IoT) data link protocols enable direct local interactions among Things. To interconnect Things that use different data link protocols, multi-protocol gateways are employed. Gateways or proxies that can host complete protocol stacks further allow connecting resource-constrained Things to the Internet. Alternatively, to enable direct Internet connectivity for Things, solutions relying on IPv6 adaptation for resource- constrained devices have been applied. These solutions enable autonomous Things through the deployment of complete protocol stacks, including a middleware layer, on Things. In either case, the profusion of IoT middleware-layer interaction protocols introduces technology diversity and high fragmentation in the IoT systems landscape with siloed vertical solutions. To enable the interconnection of heterogeneous Things across these barriers, advanced interoperability solutions at the middleware layer are required. In this paper, we introduce a solution for the automated synthesis of interoperability software artifacts that support the interconnection of heterogeneous Things. Our systematic approach relies on the Generic Middleware (GM) connector model, which comprehensively abstracts and represents existing and potentially future IoT middleware protocols. Thanks to GM, Things seamlessly interconnect through a lightweight, highly flexible and fully distributed protocol bus. We validate our solution with respect to: (i) the support to developers when developing heterogeneous IoT applications; (ii) the runtime performance of the synthesized interoperability artifacts. This result has been submitted to IoTDI 2018.
|Performance models for reliable and unreliable pub/sub protocols||
Queueing Network Models for pub/sub protocols, statistical QoS analysis, tuning of application parametersMobile Internet of Things (IoT) applications are typically deployed on resource- constrained devices with intermittent network connectivity. To support the deployment of such applications, the Publish/Subscribe (pub/sub) interaction paradigm is often employed, as it decouples mobile peers in time and space. Furthermore, pub/sub middleware protocols and APIs consider the Things’ hardware limitations and support the development of effective applications by providing several Quality of Service (QoS) features. These features aim to enable developers to tune an application by switching different levels of response times and delivery success rates. However, the profusion of pub/sub middleware protocols coupled with intermittent network connectivity result in non-trivial application tuning. In this paper, we model the performance of middleware protocols found in IoT, which are classified within the pub/sub interaction paradigm – both reliable and unreliable underlying network layers are considered. We rely on Queueing Network Models (QNM) for the modeling both reliable and unreliable protocols by considering QoS semantics for data validity as well as the intermittent availability of peers. Finally, we perform statistical analysis by varying these QoS semantics, demonstrating their significant effect on the rate of successful interactions in exemplar scenarios of Traffic Information Management systems. The developed PerfMP performance modeling pattern may be tailored for a variety of deployments, in order to control fine-grained QoS policies. This result has been submitted to ICPE 2018.
See an associated team description at https://www.inria.fr/en/associate-team/achor
VSB is a development and runtime environment dedicated to complex distributed applications of the Future Internet. Such applications are open, dynamic choreographies of extremely heterogeneous services and Things. VSB's objective is to seamlessly interconnect, inside choreographies, services and Things that employ heterogeneous interaction protocols at the middleware level, e.g., SOAP Web services, REST Web services, Things using CoAP. VSB presents a significant rethinking of the architecture and the implementation of a service bus destined to serve dynamic choreographies of services but also Things as first-class entities.
For more, you can check at https://mimove.inria.fr/vsb/.
The CHOReography deployment Virtual Machine (CHORVM) provides a Platform as a Service (PaaS) that automates the resource (Virtual Machine) discovering, estimation, selection to a set of service choreographies in a multi-cloud environment as well as the distributed deployment of these composition.
Mcloudsim is Cloudsim extension for simulating mobile users.