Unified IoT Platform Architecture Platforms as Major IoT Building Blocks

Ad-hoc approaches to building Internet of Things (IoT) solutions in the past had mostly failed. The sheer complexity of managing a mesh of distributed interconnected devices was unbearable. The appearance of IoT platforms has enabled the proliferation of successful products in this area. A full-scale, comprehensive IoT platform embraces the following three major capabilities: application enablement, data storage, and connectivity management. This paper presents an overview of technologies and techniques to realize such an IoT platform. The focus is on the platform that unifies edge and cloud computing. The paper refers to Mainflux as such reference example. Mainflux serves as a software infrastructure, that is built around the microservices architectural style, for development of IoT solutions, and deployment of intelligent products. It is conceived as an opensource project, and is already used in production settings. Therefore, the paper describes a real product, whose chosen set of methods, technologies and techniques are feasible and effective in crafting IoT systems. The Mainflux project contains an extensive set of automated tests, that could serve as an additional documentation regarding its usage.

[1]  Xinyu Yang,et al.  A Survey on Internet of Things: Architecture, Enabling Technologies, Security and Privacy, and Applications , 2017, IEEE Internet of Things Journal.

[2]  Ramazan Bayindir,et al.  A Comprehensive Study on Microgrid Technology , 2014 .

[3]  Carlo Pinciroli,et al.  Swarm-Oriented Programming of Distributed Robot Networks , 2016, Computer.

[4]  Humberto Cervantes,et al.  Designing Software Architectures: A Practical Approach , 2016 .

[5]  Ervin Varga,et al.  Composing Internet of Things Platforms in Smart Grid , 2018 .

[6]  Vlad Trifa,et al.  Building the Web of Things: With examples in Node.js and Raspberry Pi , 2016 .

[7]  Roy T. Fielding,et al.  Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing , 2014, RFC.

[8]  Prem Prakash Jayaraman,et al.  Internet of things: from internet scale sensing to smart services , 2016, Computing.

[9]  Francis daCosta Rethinking the Internet of Things: A Scalable Approach to Connecting Everything , 2014 .

[10]  Jeff Carpenter,et al.  Cassandra: The Definitive Guide , 2010 .

[11]  Carsten Bormann,et al.  The Constrained Application Protocol (CoAP) , 2014, RFC.

[12]  Alexey Melnikov,et al.  The WebSocket Protocol , 2011, RFC.

[13]  E. Brewer,et al.  CAP twelve years later: How the "rules" have changed , 2012, Computer.

[14]  Paul Clements,et al.  Software Architecture in Practice: Addison-Wesley , 1998 .

[15]  Patrick Wendell,et al.  Learning Spark: Lightning-Fast Big Data Analytics , 2015 .