Supporting Internet-of-Things Analytics in a Fog Computing Platform

Modern IoT analytics are computational and data intensive. Existing analytics are mostly hosted in cloud data centers, and may suffer from high latency, network congestion, and privacy issues. In this paper, we design, implement, and evaluate a fog computing platform that runs analytics in a distributed way on multiple devices, including IoT devices, edge servers, and data-center servers. We focus on the core optimization problem: making deployment decisions to maximize the number of satisfied IoT analytics. We carefully formulate the deployment problem and design an efficient algorithm, named SSE, to solve it. Moreover, we conduct a detailed measurement study to derive system models of the IoT analytics based on diverse QoS levels and heterogeneous devices to facilitate the optimal deployment decisions. We implement a testbed to conduct experiments, which show that the system models achieve reasonably good accuracy. More importantly, 100% of the deployed IoT analytics satisfy the QoS targets. We also conduct extensive simulations for larger-scale scenarios. The simulation results reveal that our SSE algorithm outperforms a state-of-the-art algorithm by up to 89.4% and 168.3% in terms of the number of satisfied IoT analytics and active devices. In addition, our SSE algorithm reduces CPU, RAM, and network resource consumptions by 18.4%, 12.7%, and 898.3%, respectively, and terminates in polynomial time.

[1]  Robert Grimm,et al.  A catalog of stream processing optimizations , 2014, ACM Comput. Surv..

[2]  Enrique Saurez,et al.  Incremental deployment and migration of geo-distributed situation awareness applications in the fog , 2016, DEBS.

[3]  Panos Kalnis,et al.  Mizan: a system for dynamic load balancing in large-scale graph processing , 2013, EuroSys '13.

[4]  Hua-Jun Hong,et al.  Animation Rendering on Multimedia Fog Computing Platforms , 2016, 2016 IEEE International Conference on Cloud Computing Technology and Science (CloudCom).

[5]  Vincenzo Grassi,et al.  Optimal operator placement for distributed stream processing applications , 2016, DEBS.

[6]  Vincenzo Grassi,et al.  Distributed QoS-aware scheduling in storm , 2015, DEBS.

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

[8]  Francesco De Pellegrini,et al.  Cloud4IoT: A Heterogeneous, Distributed and Autonomic Cloud Platform for the IoT , 2016, 2016 IEEE International Conference on Cloud Computing Technology and Science (CloudCom).

[9]  Shin Sangjin,et al.  A Pub/Sub-Based Fog Computing Architecture for Internet-of-Vehicles , 2016 .

[10]  Roy Friedman,et al.  On Power and Throughput Tradeoffs of WiFi and Bluetooth in Smartphones , 2011, IEEE Transactions on Mobile Computing.

[11]  Sven Helmer,et al.  A Container-Based Edge Cloud PaaS Architecture Based on Raspberry Pi Clusters , 2016, 2016 IEEE 4th International Conference on Future Internet of Things and Cloud Workshops (FiCloudW).

[12]  Victor C. M. Leung,et al.  Developing IoT applications in the Fog: A Distributed Dataflow approach , 2015, 2015 5th International Conference on the Internet of Things (IOT).

[13]  Claus Pahl,et al.  Containers and Clusters for Edge Cloud Architectures -- A Technology Review , 2015, 2015 3rd International Conference on Future Internet of Things and Cloud.

[14]  Qing Han,et al.  The Scale2 Multi-Network Architecture for IoT-Based Resilient Communities , 2016, 2016 IEEE International Conference on Smart Computing (SMARTCOMP).

[15]  Konstantin Mikhaylov,et al.  Analysis of Capacity and Scalability of the LoRa Low Power Wide Area Network Technology , 2016 .

[16]  Aart J. C. Bik,et al.  Pregel: a system for large-scale graph processing , 2010, SIGMOD Conference.

[17]  Jennifer Widom,et al.  GPS: a graph processing system , 2013, SSDBM.

[18]  Nalini Venkatasubramanian,et al.  SCALE: Safe community awareness and alerting leveraging the internet of things , 2015, IEEE Communications Magazine.

[19]  Di Wu,et al.  ADDSEN: Adaptive Data Processing and Dissemination for Drone Swarms in Urban Sensing , 2017, IEEE Transactions on Computers.

[20]  Thomas Locher,et al.  Task allocation for distributed stream processing , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

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

[22]  Margo I. Seltzer,et al.  Network-Aware Operator Placement for Stream-Processing Systems , 2006, 22nd International Conference on Data Engineering (ICDE'06).