Automated Synthesis of Software Artifacts for Middleware-layer Protocol Interoperability in the IoT Georgios Bouloukakis Donald Bren School of Information & Computer Sciences DSM Group, UC Irvine, June 2018
Enabling Emergent mobile systems in the IoT Traffic Information Management (TIM) system: TIM system Heterogeneous Dynamic Automated synthesis of interoperability artifacts – Georgios Bouloukakis 2
IoT heterogeneity at multiple layers Application layer Application layer Middleware layer Middleware layer Transport Layer Transport Layer Network layer Network layer Data Link layer (MAC & LLC) Data Link layer (MAC & LLC) Physical layer Physical layer IP CoAP Automated synthesis of interoperability artifacts – Georgios Bouloukakis 3
Middleware protocols in the mobile IoT DPWS CoAP MQTT ZeroMQ WebSockets …. Client-server Pub/sub Streaming …. reliable/unreliable mobile connectivity …. Automated synthesis of interoperability artifacts – Georgios Bouloukakis 4
Heterogeneous interconnections in the mobile IoT Yannis vehicle-devices Providing common Providing common API abstractions API abstractions Bridging Relying on a middleware service bus Protocol Y Protocol X protocols Convergence to a Convergence to a single protocol single protocol evaluation of specific protocols and their interconnections formal analysis of coupling in distributed architectures performance evaluation in pub/sub systems How to enable interconnections in the mobile IoT ? What is the end-to-end QoS of the interconnection ? Automated synthesis of interoperability artifacts – Georgios Bouloukakis 5
Our proposed solution Yannis vehicle-devices systematic solution to end-to-end interoperability performance analysis Protocol X Protocol Y e.g. MQTT subscriber e.g. CoAP server • • pub/sub push-based functional semantics • • resource topic • • mobile connectivity data feeds lifetime QoS semantics • • unreliable reliable Automated synthesis of interoperability artifacts : • enables functional middleware-layer interoperability End-to-end performance modeling & analysis : • evaluates the interoperability effectiveness Automated synthesis of interoperability artifacts – Georgios Bouloukakis 6
Models for core interaction paradigms one-way Client – Service (CS) client server Tight Time & Space Coupling two-way sync or async one-way subscriber Publish-Subscribe (PS) publisher broker Time & Space Decoupling subscriber two-way stream Data Streaming (DS) consumer producer two-way stream Tight Time & Space Coupling one-way reader Tuple Space (TS) writer tspace Time & Space Decoupling taker two-way sync Automated synthesis of interoperability artifacts – Georgios Bouloukakis 7
Generic Middleware (GM) connector model Our generic connector defines 4 basic interaction types: one-way each interaction is represented as combination of post and get primitives two-way async two-way sync post and get primitives abstract CS, PS, DS and TS primitives two-way stream We rely on the GM abstraction to introduce our middleware protocol interoperability solution Automated synthesis of interoperability artifacts – Georgios Bouloukakis 8
Our middleware protocol interoperability solution eVolution Service Bus (VSB) 1 vehicle- Binding Component 1 Binding Component 2 mobile app device BC logic BC logic PUBLISH ACCEPT event data PS Protocol X DS Protocol Y bus protocol bus protocol Protocol X Protocol Y GM connector A GM connector B GM connector C BC architecture: relies on GM for automated BC synthesis Primitives & data conversion between the bus protocol and the Things’ protocols A universal way to describe the Things ’ I/O required 1 G. Bouloukakis et al., ICSOC, 2016 Automated synthesis of interoperability artifacts – Georgios Bouloukakis 9
Automated BC synthesis Generic Interface Description Language (GIDL) & Generic BC Generic BC { "protocol": “Protocol Y”, Generic "operations": { BC logic "operation_1": { "type": "stream", BC "role": “consumer", generator "scope": "location", GM API GM API "input_data" : " lon,lat" } } } GM connector X GM connector Y Concrete BC Concrete GM API BC logic << Protocol Pool >> GM for GM for Bus protocol Protocol Y Protocol X Protocol Y … Protocol Z Protocol Y Bus protocol Automated synthesis of interoperability artifacts – Georgios Bouloukakis 10
VSB novelty vehicle estimation Binding Binding device service Component Component MQTT MQTT CoAP CoAP REST REST Lightweight bus Any bus protocol BCs employed only when necessary CoAP Support for any protocol classified under CS, PS, DS & TS traffic Automated BC synthesis light 75-96 % person-hours reduction when using VSB Evolution support Automated synthesis of interoperability artifacts – Georgios Bouloukakis 11
Software artifacts and adoption VSB is part of the zefxis 1 platform (https://gitlab.inria.fr/zefxis): • BC generator: https://gitlab.inria.fr/zefxis/BCgenerator • Eclipse plugin for defining Things’ GIDLs: https://gitlab.inria.fr/zefxis/GIDL • Web console: https://gitlab.inria.fr/zefxis/IoT-web-console Demos: • BC generation: https://youtu.be/UgfM3810RS8 • Web console installation: https://youtu.be/IGjZ5u3QYOw • Fire Detection scenario: https://youtu.be/SJeiqJkBhls VSB is used as a core component in H2020 CHOReVOLUTION project 1 zefxis in ancient Greek ( ζεῦξις ) means connection or coupling 12
Thank you! Automated synthesis of interoperability artifacts – Georgios Bouloukakis
Recommend
More recommend