ACHOR Project - International Cooperation Inria-UFG

</p> <h1>ACHOR - 2016-2018</h1> <p><center> <strong>ACHOR - Adaptive Enactment of Service Choreographies</strong></p> <p><strong>International Scientific Cooperation Programme <a href="">Inria</a>/France-<a href="">FAPEG</a>-Brazil Call 2015</strong></p> <p><img src="img/logo_INRIA_en.png" /> <img src="img/logo-inf.png" /> <img src="img/logo_fapeg.png" /> </center></p> <!-- photo to use: --> <h1>Description</h1> <p>Development and <strong>dynamic adaptation</strong> of applications in <strong>large-scale scenarios</strong>, such as those based on the concept of <strong>service choreographies</strong>, still relies on piecemeal solutions, which tackle individual parts of the problem without a common framework or a uniform approach. <strong>Project ACHOR</strong> proposes such a uniform approach, one that can be used across application domains, thus leveraging the experience of application developers at the same time as it empowers the <strong>end-user as an active participant</strong> in the process of <strong>dynamic customization and adaptation</strong> of the applications. <!-- DIFF: older sentence ==> We therefore plan to contribute with the state-of-the-art in software engineering techniques by dealing with the above problem in the form of cross-domain principles for domain-specific modeling languages, including the processing of such languages using dynamically adaptable domain-specific middleware platforms. --></p> <p>The overall goal of the project is to design an architecture for adaptive middleware to support service choreographies in large-scale scenarios that involve dynamicity and diversity in terms of user requirements, interaction paradigms and the use of shared local, mobile and cloud resources. Specifically, we aim to formalize QoS metrics and related utility functions that are relevant for choreographies, providing a foundation for model-based adaptation and assurance of end-to-end QoS.</p> <h2>Main Challenges</h2> <ol> <li>Assurance of end-to-end QoS on top of mobile and cloud-based services shared by multiple choreographies</li> <li>Integration of mobile services and Things in large-scale heterogeneous scenarios</li> </ol> <h2>Work Plan</h2> <ul> <li><strong>1st year</strong> (2016): <ul> <li>Preliminary experiments for testing and experimental evaluation</li> <li>Definition and implementation of the runtime models</li> </ul></li> <li><strong>2nd year</strong> (2017): <ul> <li>Definition and implementation of the runtime models</li> <li>Design and implementation of the adaptation mechanisms</li> </ul></li> <li><strong>3rd year</strong> (2018): <ul> <li>Extension of the first prototype to include the runtime models and adaptation mechanisms</li> <li>Scenarios and experiments for validation and evaluation</li> <li>Final report and packaging of the software</li> </ul></li> </ul> <h3>Ongoing Research Tasks</h3> <ul> <li><p><strong>Task 1</strong>: System architecture for large-scale choreographies (Inria, UFG)</p> <p>Based on target use case scenarios, we will elicit the envisioned choreography architecture, including:</p> <ul> <li>Web services, mobile services and their interaction protocols</li> <li>Middleware components ensuring dynamic, adaptive choreographies by dealing with, e.g., service and resource management, service and protocol adaptation</li> <li>Cloud resources for service deployment, mobile service offloading, dynamic choreography management, etc</li> </ul></li> <li><p><strong>Task 2</strong>: QoS metrics, QoS models, resource models and utility functions for service and resource optimization (Inria, UFG)</p> <p>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.</p></li> <li><p><strong>Task 3</strong>: Proof-of-concept prototype implementation (Inria, UFG)</p> <p>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.</p></li> </ul> <h3>Current Results</h3> <table> <tr> <th>Research result</th> <th>Summary (click for more details)</th> </tr> <tr> <td>eVolution Service Bus (VSB)</td> <td> <details> <summary><i>Middleware for interaction inside choreographies of business and Thing services</i></summary> Internet-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. </details> </td> </tr> <tr> <td>Performance Models for mobile pub/sub middleware</td> <td> <details> <summary><i>Analytical solution (mean-value approach), simulation with real-world traces and comparison with prototype implementation</i></summary> Choreography 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. </details> </td> </tr> <tr> <td>Performance models for mobile IoT middleware</td> <td> <details> <summary><i>Analytical solution (2-D Markov chain model) and simulation</i></summary> Internet 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. </details> </td> </tr> <tr> <td>Algorithms for resource synthesis on clouds</td> <td> <details> <summary><i>QoS models for choreographies and synthesis mechanism that is suitable for dynamic adaptation</i></summary> We 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. </details> </td> </tr> <tr> <td>Models and analyses for middleware-layer interoperability and QoS</td> <td> <details> <summary><i>Abstraction of interaction paradigms, interconnection of heterogeneous paradigms, QoS models and analyses</i></summary> Internet 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]( </details> </td> </tr> <tr> <td>Automated synthesis of interoperability artifacts</td> <td> <details> <summary><i>Generic Middleware (GM) connector model for IoT middleware protocols; lightweight, flexible, distributed protocol bus; evaluation</i></summary> Internet 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. </details> </td> </tr> <tr> <td>Performance models for reliable and unreliable pub/sub protocols</td> <td> <details> <summary><i>Queueing Network Models for pub/sub protocols, statistical QoS analysis, tuning of application parameters</i></summary> Mobile 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. </details> </td> </tr> </table> <h1>Main Members</h1> <h2>Inria - Paris/France</h2> <ul> <li><a href="">Nikolaos Georgantas</a> - Research Scientist - INRIA Paris</li> <li><a href="">Georgios Bouloukakis</a> (postdoc, Inria)</li> <li>Radha Pallavali - (PhD Student, Inria)</li> </ul> <p>See an associated team description at <a href=""></a></p> <h2>Universidade Federal de Goias - Brazil</h2> <ul> <li><a href="">Fabio M. Costa</a> - Associate Professor - Instituto de Informatica - Federal University of Goias - Brazil</li> <li><a href="">Ricardo C. A. da Rocha</a> - Adjunct Professor - Department of Computer Science - Federal University of Goias (Regional Catalao) - Brazil</li> <li><a href="">Bruno Silvestre</a> (Institute of Informatics, UFG), Adjunct Professor</li> <li><a href="">Sergio Teixeira de Carvalho</a> (Institute of Informatics, UFG), Adjunct Professor</li> <li><a href="">Humberto Longo</a> (Institute of Informatics, UFG), Associate Professor</li> <li>Raphael Aquino Gomes (Assistant Professor, IFG Goiania)</li> <li>Junio Cesar de Lima (PhD Student, UFG)</li> </ul> <h1>Cooperation Events</h1> <ul> <li><a href="">1st workshop</a> (19-21 Oct' 2016) - Goiania, Brazil <ul> <li><strong>Participants</strong>: Fabio (BR), Nikolaos (FR), Ricardo (BR), Raphael (BR), Bruno Silvestre(BR), Leandro (BR), Marcelo Fortes (BR) and Marcelo Azevedo (BR)</li> </ul></li> <li><strong>2nd Workshop</strong> (2-5 May' 2017) - Inria, Paris, France <ul> <li><strong>Participants</strong>: Fabio Costa (Ass. Prof., UFG), Ricardo Rocha (Adj. Prof., UFG), Sergio Teixeira de Carvalho (Adj. Prof., UFG), Raphael Gomes (Postdoc researcher, UFG), Nikolaos Georgantas (Researcher, Inria), Georgios Bouloukakis (Postdoc researcher, Inria), Radha Pallavali (PhD student, Inria). Sergio Teixeira de Carvalho extended his visit until May 9 for discussions with the Inria team. Raphael Gomes extended his visit until May 12 for working with the Inria team </li> </ul></li> <li><strong>Next event</strong>: Workshop ACHOR at UFG, 11-15 December 2017 <ul> <li>Participants: Georgios Bouloukakis (Postdoc researcher, Inria), Fabio Costa (Ass. Prof., UFG), Ricardo Rocha (Adj. Prof., UFG), Sergio Teixeira de Carvalho (Adj. Prof., UFG), Raphael Gomes (Postdoc researcher, UFG). Georgios Bouloukakis visit will include a seminar talk at Instituto de Informatica, UFG</li> </ul></li> </ul> <h3>Additional Activities</h3> <ul> <li><a href="">Demo at the last Inria-Industry Meetings</a> edition on the theme "Data and their applications" in Paris on 17 October 2017. <ul> <li>The Inria team organized the demo entitled "Designing IoT applications with time-sensitive data: from middleware-layer communication interoperability to associated QoS analysis". The demo showcased ACHOR-related research results on supporting interoperability and end-to-end QoS evaluation at the middleware level of heterogeneous IoT systems via the VSB platform.</li> </ul></li> <li>Invited <a href="">keynote talk at MSPN'17</a> (International Conference on Mobile, Secure and Programmable Networking) in Paris on 30 June 2017. Nikolaos Georgantas gave the talk entitled "Enabling emergent mobile systems in the IoT: Functional and QoS interoperability aspects at the middleware layer" related to ACHOR results.</li> </ul> <h1>Restricted Documents</h1> <ul> <li><a href="">Project documents</a> - access restricted to project participants</li> </ul> <h1>Publications</h1> <ul> <li><a id="thesis-raphael"></a>Raphael de Aquino Gomes. <a href="">Efficient Deployment of Multiple Service Choreographies in Hybrid Clouds</a>. Ph.D. Thesis. Goiania, 2017. Instituto de Informatica, Universidade Federal de Goias.</li> <li>Georgios Bouloukakis. <a href="">"Enabling Emergent Mobile Systems in the IoT: from Middleware-layer Communication Interoperability to Associated QoS Analysis"</a>. PhD Thesis. Inria, France. 2017.</li> <li>Georgios Bouloukakis, Nikolaos Georgantas, Siddhartha Dutta, Valerie Issarny. <a href="">Integration of Heterogeneous Services and Things into Choreographies</a>. Demonstration session of 14th International Conference on Service Oriented Computing (ICSOC), Oct 2016, Banff, Alberta, Canada. 2016.</li> <li>Georgios Bouloukakis, Nikolaos Georgantas, Ajay Kattepur, Valerie Issarny. <a href="">Timeliness Evaluation of Intermittent Mobile Connectivity over Pub/Sub Systems</a>. International Conference on Performance Engineering (ICPE 2017), April, 2017.</li> <li>Georgios Bouloukakis, Ioannis Moscholios, Nikolaos Georgantas, Valerie Issarny. <a href="">Performance Modeling of the Middleware Overlay Infrastructure of Mobile Things</a>. IEEE International Conference on Communications (ICC 2017), May 2017, Paris, France.</li> <li>Georgios Bouloukakis, Nikolaos Georgantas, Patient Ntumba, Valerie Issarny. Automated Synthesis of Software Artifacts for Middleware-layer Protocol Interoperability in the IoT. 3rd ACM/IEEE International Conference on Internet-of-Things Design and Implementation (IoTDI 2018) (<em>submitted</em>).</li> <li>Georgios Bouloukakis, Ajay Kattepur, Nikolaos Georgantas, Valerie Issarny. Queueing Network Models for Reliable and Unreliable Pub/Sub Protocols. 9th ACM/SPEC International Conference on Performance Engineering (ICPE 2018) (<em>submitted</em>).</li> <li>Raphael de Aquino Gomes, Georgios Bouloukakis, Fabio Costa, Ricardo Rocha, Nikolaos Georgantas, Valerie Issarny. QoS-Aware Resource Allocation for Large Scale Pub/Sub Systems (<em>in preparation</em>).</li> </ul> <h1>Software</h1> <h3>VSB: eVolution Service Bus for the Future Internet</h3> <p>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.</p> <p>For more, you can check at <a href=""></a>.</p> <h3>CHORVM</h3> <p>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. </p> <!-- CHORVM is available at <> --> <h3>Mcloudsim</h3> <p><a href="">Mcloudsim</a> is Cloudsim extension for simulating mobile users.</p> <h1>News</h1> <ul> <li><a href="">UFG's proposal is selected for international cooperation with France</a> (in portuguese)</li> <li><a href="">Pesquisa tecnologica goiana selecionada para cooperacao com a Franca, por meio da Fapeg</a></li> <li>Interview with Nikolaos Georgantas about ACHOR project for <a href="">TV UFG</a>, exhibited in 31'Oct 2016. The full program about ACHOR project (in portuguese, no subtitles) starts at <a href="">8m46s</a> and includes interviews with other project members.</li> </ul> <iframe width="560" height="315" src="" frameborder="0" allowfullscreen></iframe> <p>