Distributed Computing Framework Based on Software Containers for Heterogeneous Embedded Devices

The Internet of Things (IoT) is represented by millions of everyday objects enhanced with sensing and actuation capabilities that are connected to the Internet. Traditional approaches for IoT applications involve sending data to cloud servers for processing and storage, and then relaying commands back to devices. However, this approach is no longer feasible due to the rapid growth of IoT in the network: the vast amount of devices causes congestion; latency and security requirements demand that data is processed close to the devices that produce and consume it; and the processing and storage resources of devices remain underutilized. Fog Computing has emerged as a new paradigm where multiple end-devices form a shared pool of resources where distributed applications are deployed, taking advantage of local capabilities. These devices are highly heterogeneous, with varying hardware and software platforms. They are also resource-constrained, with limited availability of processing and storage resources. Realizing the Fog requires a software framework that simplifies the deployment of distributed applications, while at the same time overcoming these constraints. In Cloud-based deployments, software containers provide a lightweight solution to simplify the deployment of distributed applications. However, Cloud hardware is mostly homogeneous and abundant in resources. This work establishes the feasibility of using Docker Swarm – an existing container-based software framework – for the deployment of distributed applications on IoT devices. This is realized with the use of custom tools to enable minimal-size applications compatible with heterogeneous devices; automatic configuration and formation of device Fog; remote management and provisioning of devices. The proposed framework has significant advantages over the state of the art, namely, it supports Fog-based distributed applications, it overcomes device heterogeneity and it simplifies device initialization.

[1]  Ramakrishnan Rajamony,et al.  An updated performance comparison of virtual machines and Linux containers , 2015, 2015 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS).

[2]  Ian F. Akyildiz,et al.  Wireless sensor networks: a survey , 2002, Comput. Networks.

[3]  Leslie Lamport,et al.  Paxos Made Simple , 2001 .

[4]  Paolo Bellavista,et al.  Feasibility of Fog Computing Deployment based on Docker Containerization over RaspberryPi , 2017, ICDCN.

[5]  Tao Zhang,et al.  Fog and IoT: An Overview of Research Opportunities , 2016, IEEE Internet of Things Journal.

[6]  Raja Lavanya,et al.  Fog Computing and Its Role in the Internet of Things , 2019, Advances in Computer and Electrical Engineering.

[7]  Claus Pahl,et al.  Containerization and the PaaS Cloud , 2015, IEEE Cloud Computing.

[8]  Friedemann Mattern,et al.  From the Internet of Computers to the Internet of Things , 2010, From Active Data Management to Event-Based Systems and More.

[9]  Schahram Dustdar,et al.  A Scalable Framework for Provisioning Large-Scale IoT Deployments , 2016, ACM Trans. Internet Techn..

[10]  David E. Culler,et al.  TinyOS: An Operating System for Sensor Networks , 2005, Ambient Intelligence.

[11]  David Bernstein,et al.  Containers and Cloud: From LXC to Docker to Kubernetes , 2014, IEEE Cloud Computing.

[12]  Mario Di Francesco,et al.  Secure and low-power authentication for resource-constrained devices , 2015, 2015 5th International Conference on the Internet of Things (IOT).

[13]  Imrich Chlamtac,et al.  Internet of things: Vision, applications and research challenges , 2012, Ad Hoc Networks.

[14]  R. Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures (CHAPTER 5) , 2000 .

[15]  Larry L. Peterson,et al.  Container-based operating system virtualization: a scalable, high-performance alternative to hypervisors , 2007, EuroSys '07.

[16]  Sajal K. Das,et al.  A framework for multimodal sensing in heterogeneous and multimedia wireless sensor networks , 2011, 2011 IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks.

[17]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[18]  Nathalie Mitton,et al.  Enabling a lightweight Edge Gateway-as-a-Service for the Internet of Things , 2016, 2016 7th International Conference on the Network of the Future (NOF).

[19]  Marimuthu Palaniswami,et al.  Internet of Things (IoT): A vision, architectural elements, and future directions , 2012, Future Gener. Comput. Syst..

[20]  David Thaler,et al.  Internet Engineering Task Force (ietf) Default Address Selection for Internet Protocol Version 6 (ipv6) , 2022 .

[21]  Mario Di Francesco,et al.  Cloud Databases for Internet-of-Things Data , 2014, 2014 IEEE International Conference on Internet of Things(iThings), and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom).

[22]  Vlad Trifa,et al.  Towards physical mashups in the Web of Things , 2009, 2009 Sixth International Conference on Networked Sensing Systems (INSS).

[23]  Sajal K. Das,et al.  An integrated cloud-based framework for mobile phone sensing , 2012, MCC '12.

[24]  John K. Ousterhout,et al.  In Search of an Understandable Consensus Algorithm , 2014, USENIX ATC.

[25]  Adam Dunkels,et al.  Contiki - a lightweight and flexible operating system for tiny networked sensors , 2004, 29th Annual IEEE International Conference on Local Computer Networks.

[26]  Asad Javed,et al.  Container-based IoT Sensor Node on Raspberry Pi and the Kubernetes Cluster Framework , 2016 .

[27]  Augusto Neto,et al.  Virtualization at the network edge: A performance comparison , 2016, 2016 IEEE 17th International Symposium on A World of Wireless, Mobile and Multimedia Networks (WoWMoM).

[28]  Mario Nemirovsky,et al.  Key ingredients in an IoT recipe: Fog Computing, Cloud computing, and more Fog Computing , 2014, 2014 IEEE 19th International Workshop on Computer Aided Modeling and Design of Communication Links and Networks (CAMAD).

[29]  Sherali Zeadally,et al.  Virtualization: Issues, security threats, and solutions , 2013, CSUR.

[30]  Robert P. Goldberg,et al.  Formal requirements for virtualizable third generation architectures , 1973, SOSP 1973.