Fog computing concepts have been around for some time, but as the number of devices in the Internet of Things (IoT) world have increased per node/user, fogging has become a critical strategy for delivering performance across large-scale populations. “QoS-Aware Deployment of IoT Applications Through the Fog” ( published in IEEE Internet of Things Journal ( Volume: 4 , Issue: 5 , Oct. 2017 ) provides a simple model for multicomponent IoT applications to Fog infrastructures.
Abstract: Fog computing aims at extending the Cloud by bringing computational power, storage, and communication capabilities to the edge of the network, in support of the IoT. Segmentation, distribution, and adaptive deployment of functionalities over the continuum from Things to Cloud are challenging tasks, due to the intrinsic heterogeneity, hierarchical structure, and very large scale infrastructure they will have to exploit. In this paper, we propose a simple, yet general, model to support the QoS-aware deployment of multicomponent IoT applications to Fog infrastructures. The model describes operational systemic qualities of the available infrastructure (latency and bandwidth), interactions among software components and Things, and business policies. Algorithms to determine eligible deployments for an application to a Fog infrastructure are presented. A Java tool, FogTorch, based on the proposed model has been prototyped.
Edge Computing is often confused with Fog Computing, but Edge Computing refers to the systems that process, compute, and store data near the edge, close to the source, and the Fog Computing infrastructure enables repeatable edge devices/systems, pushing cloud computing out from central processing to provide better performance and scaling. There are numerous opportunities in IoT to decentralize data processing and improve the overall user experience. At the same time, Fog Computing provides new ways to think about data segmentation and security within organizational structures, and provides an alternative to what is becoming the traditional implementation of Cloud services.