The Internet of Things (IoT) advocates for multi-layered platforms---from edge devices to Cloud nodes---where each layer adopts its own communication standards (media and data formats). While this freedom is optimal for in-layer communication, it puzzles cross-layer integration due to incompatibilities among standards. Also enforcing a unique communication stack within the same IoT platform is not a solution, as it leads to the current phenomenon of ``IoT islands'', where disparate platforms hardly interact with each other. In this paper we tackle the problem of IoT cross-layer and cross-platforIntem integration following a language-based approach. We build on the Jolie programming language, which provides uniform linguistic abstractions to exploit heterogeneous communication stacks, allowing the programmer to specify in a declarative way the desired stack, and to easily change it, even at runtime. Jolie currently supports the main technologies from Service-Oriented Computing, such as TCP/IP, Bluetooth, and RMI at transport level, and HTTP and SOAP at application level. We integrate in Jolie the two most adopted protocols for IoT communication, i.e., CoAP and MQTT. We report our experience on a case study on Cloud-based home automation, and we present high-level concepts valuable both for the general implementation of interoperable systems and for the development of other language-based solutions.

Gabbrielli, M., Giallorenzo, S., Lanese, I., Zingaro, S.P. (2019). Linguistic Abstractions for Interoperability of IoT Platforms. Cham : Majchrzak, Tim A. and Mateos, Cristian and Poggi, Francesco and Gr{o}nli, Tor-Morten [10.1007/978-3-030-28430-5_5].

Linguistic Abstractions for Interoperability of IoT Platforms

Gabbrielli, Maurizio;Giallorenzo, Saverio;Lanese, Ivan;Zingaro, Stefano Pio
2019

Abstract

The Internet of Things (IoT) advocates for multi-layered platforms---from edge devices to Cloud nodes---where each layer adopts its own communication standards (media and data formats). While this freedom is optimal for in-layer communication, it puzzles cross-layer integration due to incompatibilities among standards. Also enforcing a unique communication stack within the same IoT platform is not a solution, as it leads to the current phenomenon of ``IoT islands'', where disparate platforms hardly interact with each other. In this paper we tackle the problem of IoT cross-layer and cross-platforIntem integration following a language-based approach. We build on the Jolie programming language, which provides uniform linguistic abstractions to exploit heterogeneous communication stacks, allowing the programmer to specify in a declarative way the desired stack, and to easily change it, even at runtime. Jolie currently supports the main technologies from Service-Oriented Computing, such as TCP/IP, Bluetooth, and RMI at transport level, and HTTP and SOAP at application level. We integrate in Jolie the two most adopted protocols for IoT communication, i.e., CoAP and MQTT. We report our experience on a case study on Cloud-based home automation, and we present high-level concepts valuable both for the general implementation of interoperable systems and for the development of other language-based solutions.
2019
Towards Integrated Web, Mobile, and IoT Technology
83
114
Gabbrielli, M., Giallorenzo, S., Lanese, I., Zingaro, S.P. (2019). Linguistic Abstractions for Interoperability of IoT Platforms. Cham : Majchrzak, Tim A. and Mateos, Cristian and Poggi, Francesco and Gr{o}nli, Tor-Morten [10.1007/978-3-030-28430-5_5].
Gabbrielli, Maurizio; Giallorenzo, Saverio; Lanese, Ivan; Zingaro, Stefano Pio
File in questo prodotto:
File Dimensione Formato  
lnbip2019.pdf

accesso aperto

Tipo: Postprint
Licenza: Licenza per accesso libero gratuito
Dimensione 2.18 MB
Formato Adobe PDF
2.18 MB Adobe PDF Visualizza/Apri

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/695947
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? ND
social impact