1.1 Introduction
Being associated with the internet-of-things environment, it is obvious that the loosely connected devices are connected through heterogeneous networks. The main intention in this case is to collect and process data from the devices linked with internet of things in order to mine and detect patterns, perform predictive analyses or optimization, and ultimately provide better decisions within the stipulated time. Data in such cases can be accumulated either in big stream or as big data. In some cases, the transient data can be captured constantly from smart devices linked with internet of things, and in most cases, the persistent data and knowledge can be stored and archived in centralized cloud storage environments. As soon as data are collected and aggregated from a virtual network along with smart devices, they are linked with the cloud servers. In such case, the cloud computing offers a solution at the infrastructure level that supports processing of big data. It enables highly scalable computing platforms that can be configured on demand to meet constant changes of application requirements in a pay-per-use mode, thus reducing the investment necessary to build the desired analytics application. As mentioned previously, this perfectly matches the requirements of big data processing when data are stored in a centralized cloud storage. By the way, as compared with the cloud, the fog provides services with a faster response. Accordingly, the fog computing is treated as a better option to enable the facilities of internet of things to provide efficient and secure services. The combination of internet of things with cloud in the long run is a better option to overcome all the issues related to storage as well as data processing in cloud. Basically, it simplifies the mechanism of gathering the data in virtual servers and provides low-cost installation and integration for complex data processing as well as deployment. Also, these are subsequently analyzed to determine decisions regarding implementation mechanisms. Linking these data with cloud usually requires excessively high network bandwidth. To overcome these issues, fog computing can be adopted whose application is very similar to cloud. It provides services to users and is based on providing data-processing capabilities and storage locally in fog devices instead of sending them to the cloud. Each fog node hosts local computation, networking, and storage capabilities.
1.2 Review of Literature
Vats et al. [1] in their work have focused on the effectiveness of cloud computing in analyzing the performance of computational platforms and data centers. They observed that the centralized models will perform better with the adequate number of connected devices.
Hany et al. [2] in their work have focused on the basic features of fog computing linked to mobility, wireless accessing, streaming, and real-time applications. They also observed the effectiveness of these applications in different internet-of-things applications and services. As such, sometimes implementing similar techniques becomes challenging in terms of scalability, complexity, dynamicity, and heterogeneity.
Yeboah-Boateng et al. [3] in their study have discussed about the mechanisms of cloud and its link with fog computing to handle existing situations. They tried to mobilize the services by providing accessibility of data in remote locations.
Satyanarayanan [4] primarily focused on the effectiveness of fog computing linked to different distributed information collection points. He observed that the synthesis of fog and cloud computing has a great impact on private and public organizations.
Rajkumar et al. [5] in their study described the application of internet of things in various sectors such as process and discrete manufacturing industries, energy and power industries, connected cars, services, connected towns, and transportation.
Adams [6] discussed the utilities and opportunities associated with the integrated mechanism of fog and cloud computing. According to Adams, the efficiency can be increased by enhancing material utilization with scalability and flexibility.
In their work, Botta et al. [7] tried to focus on the support of fog and cloud computing based on real-time associations between internet-of-things tools to minimize latency constraints in data processing and analysis.
Ahmed and Rehmani [8] discussed the impacts of fog and cloud computing with their implementation in different applications related to internet of things. They observed that integration of fog and cloud computing will be definitely beneficial toward agility and data safety.
Aazam and Huh [9] proposed the architecture layer linked to fog computing to minimize resources used in servers. They observed that, in general, the probability-based model can be used to analyze the characteristics of fog computing along with the requirement of resources.
Wang et al. [10], in their study, provided the architectural concept of fog computing and discussed the applications and mechanisms of fog computing nodes. They also differentiated the performance of conventional cloud computing schemes with the application of internet of things in smart grids.
In Ref. [11], it has been observed that fog computing sometimes faces challenges while linked with edge computing, and also the issues can be highlighted while the applications are associated with centralized distributed platforms.
Ab Rashid and Ravindran [12] discussed the capabilities of cloud and the ability of processing computational power in the edge device over the network. They observed the vital issues and challenges of cloud computing in such scenario while associated with resource allocation and provisioning, network congestions, and privacy and security management.
Redowan and Rajkumar [13] described the localized and decentralized nature of fog. Practically, it offers the cloud users a choice on how many resources to use and when to release them, which leads to better resource allocation and distribution. So, the cost becomes optimal and the system proves to be cost-efficient.
Fatemeh et al. [14] studied the centralized distribution of computing resources. They discussed the bottlenecks in applications of fog computing, in which only the trimmed data are sent to the network through edge devices making...