Abstract

A huge amount of data, generated by Internet of Things (IoT), is growing up exponentially based on nonstop operational states. Those IoT devices are generating an avalanche of information that is disruptive for predictable data processing and analytics functionality, which is perfectly handled by the cloud before explosion growth of IoT. Fog computing structure confronts those disruptions, with powerful complement functionality of cloud framework, based on deployment of micro clouds (fog nodes) at proximity edge of data sources. Particularly big IoT data analytics by fog computing structure is on emerging phase and requires extensive research to produce more proficient knowledge and smart decisions. This survey summarizes the fog challenges and opportunities in the context of big IoT data analytics on fog networking. In addition, it emphasizes that the key characteristics in some proposed research works make the fog computing a suitable platform for new proliferating IoT devices, services, and applications. Most significant fog applications (e.g., health care monitoring, smart cities, connected vehicles, and smart grid) will be discussed here to create a well-organized green computing paradigm to support the next generation of IoT applications.

1. Introduction

Fog computing or fog networking, also known as fogging, is pushing frontiers of computing applications, data, and services away from centralized cloud to the logical stream of the network edge. Fog networking system works on to build the control, configuration, and management over the Internet backbone rather than the primarily control by network gateways and switches those which are embedded in the LTE network. We can illuminate the fog computing framework as highly virtualized computing infrastructure which provides hierarchical computing facilities with the help of edge server nodes. These fog nodes organize the wide applications and services to store and process the contents in close proximity of end users. Sometimes, fog computing used frequently and often interchangeably the term “edge computing.” However, there is a little bit difference between those two concepts. Fog and edge computing both involve pushing the processing and intelligence capabilities down to the proximity where the information is originating. The main difference between both architectures is exactly where the computing and intelligence power is placed. In both structures data is sent by the same sources or physical assets, like pumps, relays, motors, sensors, and so on. All those devices perform a physical chore in this world such as electrical circuits, pumping water, switching, or sensing the task around them [1].

In past couple of years, the main idea was given to build mega data center architecture with the demand of centralized computing services called centralize cloud computing (CC) model (e.g., Google, Amazon, IBM, and Microsoft Azure). CC was moved all intelligently to the IoT but still a lot of processing power was done by the cloud server itself. Cloud was done with all data that creates some kind of files to put into some log files or in video files and others. So before fog computing architecture, moving information for data analytics, processing services, control systems, and data storage into the centralized cloud had become a popular trend. With getting entrance into the new world, known as the world of technology, we have thousands of billion IoT devices which are connected to each other. With the passage of time IoT devices also have been proliferating with its explosive growth through the connection of physical things and operational components. However, if all those devices try to load whole computation at the cloud for just only functionality work, there would not be enough bandwidth to allow all these devices to communicate constantly with the cloud server [2]. Cloud servers themselves will get over loaded and there will be a big problem. Despite the power of the cloud structure, it is not applicable to facilitate operations that are time critical or cannot operate where Internet connectivity is poor. This has especially become true in time critical scenarios such as telemedicine and patient care, where milliseconds can have fatal consequences.

It is essential to make the concept of IoT clear. IoT is considered as a set of transformation period generated by the connected devices through over the world. So there is a question raised, that is, why we need to build that IoT? The answer is to dig up, access, and analyze the information that is previously available. All produced information in the environment formed analogues which cannot be a data. This information might be utilized in parking and might be placing a call at home. With connectivity of those things, those uniquely can be addressed and recognized with an IP address; the information can generate digital data, for example, communication of browsers, downloading of applications, and online transactions. The digitally translated data not only are more responsive but also opens up new analytical occasions in both technology and industrial fields.

At present, there is a mounting variety of powerful end users or devices like servers and smart access devices (e.g., smart phones, tablets, smart appliances in homes, cellular base stations, smart traffic direction polls along the roadside, connected smart vehicles, smart sensors, and controllers in smart power grid, smart building, and industrial control systems), which just are few names. Many more devices converge at industries specialization with the integration of information technology (IT) and operational technology (OT). Most of the use cases are established by industrial growth in particular sector (e.g., temperature sensors on a chemical vat and sensors that work at oil rigs stations). Thus, we can say that all these connecting things formulate the IoT. The ancestry of IoT goes back to several existing technologies like a machine to machine communication, RFID, and sensors.

According to Ovum and CISCO report, [3, 4] in March and June 2017, respectively, the main areas of investment are the deployment of IoT devices in industries (including manufacturing operations, transportation, smart grid technologies, smart buildings and increasingly, consumer IoT, and smart home automation). This is the main reason for raising the interest around the Industrial Internet of Things (IIoT) [3]. This situation is initiating a variety of new technologies and strategies to deal with, all the manufacturing and production related, rapidly rising amount of information and data at the core of IIoT. This is definitely the main idea which modernized the terms edge computing to fog computing by SISCO [5]. Fog applications might generate some real-time radio and network information that can offer a better analyzed experience to the user. This translated data (big IoT data) is not only much responsive but also opens up new extension of opportunities. Big data analytics from fog computing can help to glean insights and also enable devices to make smart and inelegance based decisions without human interaction.

Consequently, it is realistic and exciting to ask the question what should be done closer to the end users? Can a car turn into your key data storage? Can a smart home electrical device put together the different services that have been providing by other smart things, such as smart TV box, energy control boxes, and routers? What will happen if our smart phones give together the performance as radio network control functions without human interaction, those are executed by the LTE networks currently? Can smart devices at the edge become collectively enabled to support time-sensitive applications, like real-time data analysis at the edge, data mining of the transmitted formation, and many other industrial control functionalities? In the solution, fog computing exemplifies and also accelerates click to brick swings back from two directions: one is data plane and the other one is control plane [6].

In this manuscript, we have summed up the uniqueness that makes the fog compute towards the appropriate and significant platform that can deliver the quality of service (QoS) to significant connected IoT, particularly in future services and applications, such as connected vehicle, smart grid, and smart cities and in general wireless sensors and actuators networks. It is disruptive in several ways to handle all generated big IoT data or information which is explosively growing up. This survey will observe big data handling disruptions and concentrate on new aspects that IoT adds to big data from particularly distributed sources at the edge. We also will explain how big IoT data analytics is applicable to the industrial growth and can power the Internet of Things (IoT) for the industry [7].

Recently precise researches and achievements also would be discussed to meet above challenges in this manuscript. A transformational approach would be discussed, in Section 3.2.1, using the techniques of big data analytics based protected cluster management framework for optimized control plane at Software Define Network (SDN). Finally, ant colony algorithm is used to facilitate a big data analysis scheme for significantly improving the processing and accuracy of applications running in SDN. User mobility (e.g., from one node to another) makes QoS forecast and predicted values deviated from actual values in traditional cellular networks available. In Section 3.2.2, we will discuss an achievement in the context of service recommendation mathematical approach based on collective filtering which enables the QoS prediction for best user mobility. Smart connected vehicle is another required approach for fog enabled smart technology environment. A substantial accomplishment will inquire into Section 7.2.3, namely, virtual vehicle platform, a virtual vehicle coordination system based on the group coordination concept for sensing the environment information. Specifically, virtual vehicle system proposes a discovery algorithm to find the optimal smart vehicle groups. Then, based on multigroup consent theory, they formulate a coordination algorithm to control virtual vehicle groups for multigroup synchronization among smart connected vehicles.

This work complements our whole work to present the prospective benefits of fog computing in terms of competency and low latency. This overview also focuses on enhanced programming models and applications for better and reliable deployment of fog computing structure. Some other architectural ideas for many upcoming systems and applications will be discussed such as cyber physical systems, IIoT structure, and embedded Artificial Intelligence (AI). Fog computing framework offers to explore structural designs, in this overview, which gives a particular concentration at large application domain of IoT situated at the edge of the fog computing structure deployment.

2. Fog Computing Overview

Data is increasingly generated by the proliferating IoT devices at the core network. Consequently, an essential structure can efficiently process all data at the close proximity of IoT, to be needed. Previous work such as micro data center [8, 9] about cloudlets [10] and at fog computing roll in IoT [2] has been initiated to the community based traditional CC. This concept will not always be efficient for data processing when data are going to be produced close to the edge of the network.

This section provides an overview of fog definitions and understanding about fog computing infrastructure with some related projects of previously established studies. It will also point out that why fog computing is going to be more efficient than CC, as well as from other terms for quality computing services.

2.1. Definitions of Fog

Fog computing presents a hierarchical distributed architecture with support of the integration of technological components and services might be in near future like smart cities, smart grid system, connected vehicles, and smart homes [11]. For the security of smart future, the deployment of fog structural networks at the edge is essential, to perform intelligent computations, big data analysis for better predictive processing, and identification of strange and unsafe events [12]. Thus, fog computing definition should be cleared at this emerging phase of fog computing framework. Definitions from [13, 14] give an extended vision about fog computing but cannot point out the unique similarity with the cloud. The fundamental definition is required to define and compare all functionalities of fog with preexisting structure, so here comes our definition.

Fog computing is an architectural development of computing with a resource pool where one or more ubiquitous and decentralized node(s) are enabled for potentially cooperating and communicating with each other or in group transmission exclusively at the extreme edge level, rather than backed by cloud processing. Fog nodes process tasks without third-party interference and collaboratively provide computational flexibility, better communication, storage capacity, and much more additional new mart services in a hierarchical environment for rising number of devices, clients, or end users in its close proximity.

Figure 1 is showing that fog is a complemented computing structure of cloud for providing reliability in computing services to make sure that QoS is at the edge of the core network. Fog computing is also an extension of cloud services at the edge of IoT devices to compete the challenges of traditional CC. Nodes at the edge are focused on sensing the raw data collection, command, and control of IoT devices. In this example, edge level nodes could be operated at millisecond or neon second to avoid contamination and ensure safety. Cloud level nodes, in the example, are focusing on data compression, filtering, analyses, and transformation. Each of them has the capability of operating and computing as a cloud model. These micro cloudlets will provide some edge level analytics required for critical real-time processing. The higher level nodes will focus on aggregating data and turning that data into knowledge. Mobile network facilitators are providing the services of fog similarities and they can offer fog computing services with IaaS, PaaS, or SaaS platform to the enterprise businesses through already providing services at their service network or even through cell towers [15].

2.2. Similar Terms

There are some matchings or similar terms of fog computing, called cloud computing, cloudlet architecture, mobile edge computing, and so on, which need to be explained here as follows.

Cloud Computing (CC). CC is comprised of software and applications running on the central server having a big data center and built-in local network [16]. Let us visualize the different types of clouds: (i) Private cloud is provisioned and used by a single organization. (ii) Community cloud provides the functionality of specific use for community of specific users. (iii) Public cloud is known for functionality of centralized computing for open use. (iv) Hybrid cloud is composition of two or more distinctive cloud architectures (e.g., private, community, or public). One solution work is identified for hybrid cloud [17] to provide a combination of existing cloud computing architecture to make enormous IT solutions. (v) Virtual Private cloud alternatively operates for addressing issues related to public and private clouds. A cloud or centralized node which is available openly for general public is called a public cloud. While when we use the term, private cloud, it refers to internal data centers of an organization(s) those are not available for general public use. Hence, cloud computing is a sum of SaaS and utility computing (IaaS plus PaaS) [18]. Make availability of CC services for IoT structure is not an easy task, caused by challenges of synchronization, standardization, balancing, reliability, management, and enhancement [19].

Cloudlets. Cloudlets are also called micro cloud data centers, like a small cloud computing architecture which is inherited features from centralized CC [10]. Cloudlet emphasizes providing services related to time-sensitive and limited bandwidth used applications. Cloudlets computing structure seems to be essential, if we have a sight at previous work, which showed mobile code offloading [8] and cost reduction structure of the central cloud [9]. Hence an additional difference between the enterprise and the cloud service data center environment can be explained tentatively.

Mobile Edge Computing (MEC). MEC is enabling technologies to make computational functionalities of CC for QoS at the edge of the network available. Mobile edge computing mentions the technologies to allowing computation at the edge. For example, micro cloud node can become an edge node between mobile devices and cloud, gateways could be the edge devices between home IoT and cloud, and a smart phone might be an edge device between body things and cloud [20]. MEC is primarily located at mobile network base stations [8] and sometimes called mobile cloud computing (MCC) architecture [21]. In MCC architecture, both data storage and data processing managed outside from mobile devices [21]. The reasoning of edge computing is that computation facilities should be deployed at the proximity where data is generated. From our point of view, mobile edge computing is substitutable with fog networking [6], but mobile edge computing has been focusing more on the things side, whereas fog computing is focusing more on the infrastructure side. Here, we are also considering that fog computing is a better arrangement in the form of edge computing, in the old sense. Edge computing drives the intelligence computing, communication capabilities, and processing power of an edge gateway or appliance directly into devices, such as programmable automation controllers [20].

2.3. Fog Interfaces with Cloud, IoT, and Other Fog Nodes

As defined before, fog computing expands the CC functionality with more elasticity to the edge level of the core network and shared same processing strategies and features (virtualization, multitendency, etc.) to make extendable nontrivial computation services. Some existing features of transformations make the fog computing more significant: (i) high-speed itinerant applications (e.g., smart connected vehicle and connected rail), (ii) low latency required surroundings applications, (iii) distributed control systems in large scale (e.g., smart grids, connected tracks, and STLS), and (iv) geologically distributed applications such as sensor networks to monitor the different environments.

Fog computing architecture allows processing, networking, and storage services to dynamically transfer at the fog node, cloud, and IoT continuum. However, the interfaces for fog to interact with the cloud, other fogs, and the things or users must facilitate flexibility and dynamic relocation of the computing, storage, and control functions among these different entities. It enabled well-situated end user assessment for fog computing services and also allowed capable and effectual QoS management.

Fog to Cloud. From fog to cloud interface can be considered compulsory to support fog to cloud and cloud to fog collaboration which provides back-to-back services. It also supports functionalities, for example, (i) some functions at fog to be supervised or managed with the cloud computing ability, (ii) cloud and fog which can transfer data to each other for processing and comparing and for other required functionalities, (iii) cloud which can decide to distribute or schedule fog node(s) for allocation of the services on demand, (iv) cloud and fog both mutually which can differentiate for better management computing services, with each other, and (v) cloud which can make availability of its services through fog to the end users. It is essential to find out which information and services should be transversely passed at fog and cloud. Regularity and granularity of such data and information should decide how fog or cloud can response to that information or data.

Fog to Fog. Fog nodes must have pool resources functionality to support processing with each other. For example, all deployed fog nodes can share their data storage, computing, and processing capability tasks with prioritized node functionality system for one or several user applications. Multiple fog nodes might also act together with service for backups of each other.

Fog to IoT/End User. Fog computing provides its services to a widely distributed structure of IoT devices (e.g., smart devices and sensors) with the differential identification recognizing system. Fog to IoT interface or fog to user interface essentially needs to allow IoT access for fog services in user friendly environment and resource efficient and within secure ways.

Figure 2 explains about interfaces of fog with cloud and IoT both, through hierarchically distributed fog computing structure iteratively continuum. The right side of figure describes an emerging era of technology world from traditional cloud computing towards nearly deployed fog computing. It is also visualized that which type of interface is also included in different type of era (e.g., fog to cloud, fog to fog, and fog to IoT). In the left side of picture, it is pointed out that why we have a single and combined platform (fog computing) of these essential technologies. In the end, an important dispute or a question is raised that how all these interfaces and protocols to derive fog nodes functionality in existing or nearly distributed fog structure which will work together be designed. How the cost of required infrastructure could be reduced with providing high QoS to the end users or IoT.

3. Characteristics and Challenges

The main objectives of motivation from cloud to fog computing are extension of CC features to the edge level, which make CC services for increasing new variety of applications in IoT structure available. It also improves the QoS for them, for achieving low latency and high band width through better navigation services. A common uniqueness associated with fog computing is its hierarchical parallel processing operations at the edge of the core network [22, 23]. This implies that fog computing framework can become a nontrivial extended deployment of cloud computing. Hence, some important features are described in the following.

3.1. Characteristics of Fog

The major influences about the movement of a computational load from cloud to fog networking make an akin of CC at the proximity of edge. This procedure enables the development of new variety applications and services at IoT structure and defines the following characteristics of the fog computing.(i)Cognition. Cognition is responsiveness to client centric objectives. Fog based data access and analytics give a better alert about customer requirements, best position handling for where to transmit, store, and control functions throughout cloud to the IoT continuum. Applications, due to close proximity, at end devices provide a better conscious and responsive reproduced customer requirement relation [6].(ii)Heterogeneity. Fog computing is a virtualized structure so it offers computational, storage, and networking services between the main cloud and devices at the end. Its heterogeneity featured servers consist of hierarchical building blocks at distributed positions.(iii)Geographical Environment Distribution. Fog computing environment has a widely circulated deployment in context to provide QoS for both mobiles and motionless end devices [24]. Fog network distributes geographically its nodes and sensors in the scenario of different phase environment, for example, temperature monitoring at chemical vat, weather monitoring sensors, STLS sensors, and health care monitoring system.(iv)Edge Location with Low Latency. The coming out smart applications services are inadequate due to the lack of support at the proximity of devices with featured QoS at the edge of the core network. Video streaming in small TV support devices, monitoring sensors, live gaming applications, and many more are some examples of applications which required low latency services in its proximity [25].(v)Real-Time Interaction. Real-time interaction is a variety and requirement of fog applications, like monitoring a critical process at oil rig with the fog edge devices or sensors, real-time transmission for traffic monitoring systems, electricity distribution monitoring system applications, and so on. Fog applications are having real-time processing capabilities for QoS rather than batch processing.(vi)Support for Mobility. Mobility support is a vital fog computational advantage that can enable direct communication between mobile devices using SDN protocols (i.e., CISCO Locator/ID Separation Protocol) that decouples host identity from location identity with a dispersed indexing system [26].(vii)Large Scale Sensor Network. Fog has a feature applicable when environment monitoring system, in near smart grid applications, inherently extends its monitoring systems caused by hierarchical computing and storage resource requirements.(viii)Widespread Wireless Access. In this scenario wireless access protocols (WAP) and cellular mobile gateways can be classical examples as fog node proximity to the end users.(ix)Interoperable Technology. Fog components must be able to work in interoperating environment to guarantee support for wide range of services like data streaming and real-time processing for best data analyses and predictive decisions.

These clarified characteristics enable new services and business models that can help to expand revenues, cost reduction, or speed up product rollouts in the industry and also have attractions for new investors in the context of fog structure deployment. Table 1 summarizes the differences of some key features between traditional cloud, deployed edge computing, and emerging fog networking structure functionalities and services that are provided to the end user or IoT devices.

3.2. Challenges and Opportunities of Fog

This section identifies and concentrates on some apparent issues in fog computing structure development. These following issues provided better understanding for the direction of future work.

3.2.1. Fog Networking (SDN and NFV)

Fog network becomes heterogeneous, located at the edge of the network with extensions of CC functionalities. The responsibility of fog networking is to connect every required component at the node for maintaining and ensure QoS in core network connectivity and the provision of services upon all of those components. In the context of rising IoT used at large scale, this utilization might be not simple. Emerging technology, like SDN and NFV, should be planned to form elasticity and maintainability in such network environments. The deployment of SDN and NFV together can ease the achievement of increasing network scalability as well as cost reduction. It becomes very important in many use cases such as VM migrations, resource allocation, programmable interfaces, application aware control, and traffic monitoring [27].

To overcome the requirements of large scale network setups, the control plane is typically implemented as a distributed controller. Cluster management technology operates all types of proceedings and must continue a steady global network status, which significantly leads to big data in SDNs. Concurrently, the security of cluster technology becomes an open issue caused by the dynamic features of SDNs. To meet the above challenges, a big data analysis based secure cluster management framework for optimal control plane has been proposed recently [28]. An ant colony optimized method that uses big data analysis approach and the implementation system that optimizes the control plane are proposed. Ku et al. [29] have proposed a closest design in the context of SDN-based mobile edge cloud (fog nodes) architecture for QoS in mobile and vehicular ad hoc network (MANET and VANET). Table 2 also explains simulation results [29] that how a SDN-based network overtakes the other old-fashioned ad hoc networking protocols in packet delivery transfer ratio. The key feature of SDN-based approach responds faster. For example, SDN nodes update the SDN controller about the neighbor node’s data information, and then, the SDN controller instantly detects the topology changes and also sends out the control messages as needed [29]. However, there are some questions raised like how to deal with retaining the connectivity graph of whole network in different distributed conditions and then node updating, how to assist with different controllers in fog network [30], and how to plan better connectivity through SDN system to encounter fog computing challenges such as mobility, latency, and scalability.

Alternatively, NFV changes the network functionality with virtual machine operational environment, but NFV is not intentionally approved in the framework of fog computing, until now. In the cellular core network the author [31] proposed functional placement problem on virtualized and SDN “rotten” gateway for minimizing the network transparency for achieving low latency and better utilization of bandwidth. Several types of research about NFV show how to propose better performance of virtualized software in the middle box platform [32]. NFV software has introduced ClickOS [33] as an addition in fog networking until the first concern for achievement QoS in network virtualization appliances. NFV helps to save both capital expenses (CAPEX) and operating expenses (OPEX). In context to address cost reduction challenges in dynamic fog computing resource allocation on behalf of delay sensitive mobile applications, NFV could enhance the fog architecture. Specifically, new elasticity is afforded by NFV in dynamic fog deployment rather than the current fixed location MEC practices. Yang et al. [34] formulate an optimized cost reduction problem for dynamic approach of near MEC (fog) services.

Table 3 is showing the deployment cost result about proceeding to assess the improvements provided by SCPA through flow level simulations within large network topologies. To this end, researchers [34] have compared the resultant MEC (fog nodes) operational cost of Heuristic+Reoptimization in contradiction of Heuristic and lower bound of best solutions (denoted by ) under diverse network sizes, physical capacities, and latency requirements of NFV enabled nodes or servers [34].

3.2.2. Quality of Service (QoS)

QoS discusses as an important issue in fog computing framework and also can be listed into four magnitudes, reliability, delay, connectivity, and capacity which are described as follows:(i)Reliability. Reliability is one of key points for better and secure data transmission at core network. Madsen et al. [35] have reviewed the consistency requirement in the grid, clustering, and sensor networking towards a comprehensive research for reliable fog networking. Normally, reliability can be enhanced periodically through check points to resume after failure.(ii)Delay. Latency sensitive applications are essential software architectural requirement in fog networking deployment for provision a real-time streaming and processing response. Spatiotemporal system architecture [36] proposed a time-sensitive event processing, based on fog to mitigate high latency data transmission. Another research work [37] has been described and experimented at application named RECEP, which exploits overlapping on data and cache imprecise results for reusing of computational resources and reduction requirement. It can extend scalability and minimizes the delay of mobile CEP systems.(iii)Connectivity. Connectivity issue for fog networking framework must be solvable because fog network is made available opportunities of partitioning and clustering for cost reduction, data trimming, and expanding connectivity methods. Wang et al. [38] proposed a different approach from outdated service recommendation methods. They first have predicted QoS key teachers by reducing the impact of user locations mobility, instability in mobile networks, and instability of the similar services at diverse invoked times, although this approach expands service recommendation accuracy in MEC (fog).(iv)Capacity. Capacity for QoS can be divided into two types, first is network bandwidth and second is storage capacity. those are very important aspects to enable and achieve high bandwidth and proficient storage operations. There are some similar works which need to be discussed. Research and experiment, at sensors operations in a network according to the deployment of MANET [39], present a big new challenge in the scenario of real-time response. Fog nodes may be required to process on information that is generating by chemical vat sensor to avoid disaster which is a critical real-time response requirement. Thus, processing will not start prior to finishing the aggregation of whole data, which absolutely adds delay. Due to dynamic data positions and large volume in fog computing, there are some requirements to redesign searching algorithms for running queries on dispersed content [40, 41]. It is not easy to redesign cache functionality at fog node to utilize sequential locality for saving maximum bandwidth and attain low latency; therefore two works have been proposed: the first utilizes the cache at end device [42] and the second recommends edge router cache utilization [43].

3.2.3. Computation Offloading

Computational offloading can mitigate resource constraint problem at fog networking and provide assistance in the performance of applications, storage capacity, and extended battery lifetime. Computation offloading can be separated into six types: schema, adaptation, granularity, communication, objectives, and distributed execution [44]. Despite an abundance of research work, computation offloading in the context of CC and cloudlets [8, 10, 45, 46] provides some directions to compete this challenge. We will review here a few of them. MAUI [8] has suggested a profile and code offloading methods for conclusions on adapting the change of network connectivity, latency, and bandwidth. Code analyzer [45] performs technically to migrate or merge the point in byte code. Thinkair [46] is driven on flexibility and scalability of the cloud to increase the processing and storage capacity of mobile edge cloud processing by parallelized method executions through multiple virtual machines (VM). COMET [47] leverages with a mutual distributed memory to an enhancement of smart phones and tablets communication with machines. The question remains that how to panelize applications for offloading and how to plane for dynamic offloading at fog structure, devices, network, and server nodes.

The availability of QoS in fog networking is a key feature during attacks or a failure of infrastructure that can be mitigated with VM migration technique. One of migration approaches is VM live migration, in which VM processes migrate from one physical node to another physical node [27]. VM live migration ensures the continuous hosted applications services. Therefore, VM migration can be a resource intensive approach. Network shared storage between two hosted nodes reduces the data transfer time to run the applications on moving VMs. However, a theoretical smart live migration approach is offered for VM migration [27]. This approach can estimate the downtime to determine and carry on the stop and copy stage during system failure on both hosted fog nodes. This also reduces the downtime and migration time to make sure of resources and QoS to the end users (see Figure 3). The expected downtime results will be compared with a previously defined downtime verge. This dynamic approach defines the next hosted fog node where to move into the stop and copy phase.

3.2.4. Resource Provisioning and Management

Resource and service availability are an extension of CC still attractive feature in fog computing environment. Key challenges that we faced here are bandwidth, distributed processing, storage, and latency. In a connected vehicle situation, we can take an example of an ambulance and programmable STLS to keep green traffic signal on. In this scenario, a pathway of ambulance remains open which is also warnings other vehicles to keep a clearance of road. MigCEP [48] has been proposed as an assignment and source sharing method for both cloud and fog computing structure. Resource sharing and coverage are critical situation for application processing in fog. A method has been described, which can centralize the flooding strategies dynamically to save energy in assorted networks [49]. Alternatively, Nishio et al. [50] planned a framework for varied resource sharing of mapping heterogeneous resources like availability of CPU, high bandwidth, and better storage on fog nodes structure. Resource sharing optimization challenges can be proposed by utilization of service-oriented functions. Fan also defined challenges and the solution [51] to measure the inclusive capability of information system to handle data including big data analytics, for effective information system as data storage, based on data analytics at the edge.

3.2.5. Security and Privacy

Security measurement in fog networking is directed by privacy, integrity, and availability. An idea is given, in which characteristically significant mechanism should be considered for designing and deployment of a fog structure [52]. While confidentiality and integrity are closely related to data privacy, availability entails the ability to remotely access resources offered by cloud servers and fog nodes when needed. Some challenges at fog inherited as cloud structure complemented deployment. Its various characteristics and deployment locations at the edge of the core network make it vulnerable. Prospective issues diminished with the deployment of fog computing [14] that are authentication, intrusion attack, security, and privacy. A designed work distributes the cloudlets as a mesh based intrusion recognition system for security of micro clouds (fog nodes) from interferences and network attacks [53]. Previously predicted ideas [13] about security issues that are currently related to a VM based environment might create probable security anxiety at fog devices. Zhanikeev [54] has recognized challenges linked with consistency requirements at hardware platform homogeneity for federation facility. Wang et al. [55] verified a man-in-the-middle attack, which can be averted with an authentic gateway prior to adding spiteful code into system. An overview is cleared separately about both security and privacy issues that are appropriate in currently and nearly use cases.

Security in Fog Computing. The hierarchical features of fog computing indicate some key issues of accessible huge number of IoTs by frontage fog devices. Security solutions that were planned for CC would not be directly applicable in fog structure. Working environment of fog computing may face security problems that do not exist in a usual cloud working structure. Authentication based on different gateways is identified as a major security issue of fog services [56]. Authorization in perspective of smart grids and machine to machine communication has been offered in recent work of Stojmenovic et al. [57], to alleviate some of the security issues like multicast authentication with public key infrastructure [58] and with use of intrusion detection system [59]. A decoy IT approach has been proposed [60] to withstand malware insiders by masquerade signals to avert threatening of sensitive information. Zuo et al. [61] suggested a ciphertext attack system in fog computing that presents a solution primarily to present the security model. A security model [22] also has been presented with reviewing possibility and nature of attacks. It is explained that the most important security issues should be categorized into whole network structure to facilitate and deliver QoS to distributed devices and communication components at fog network. Until that time, Denial of Service (DoS) and rogue gateway attacks were known as possible attacks on network transmission, while service data centers can expose to whole privilege escalation, physical damage, privacy leakages, and interruptions for QoS manipulation that has been identified as probable threats belonging to security [22].

Privacy in Fog Computing. Typically, public remote storage sensitive services and private cloud data centers could be compromised and leaked. Researchers mostly raised issues about the significant capability of legislation such as the PATRIOT Act at US based services provider [6264]. Zhou et al. [65] have prolonged privacy protection of transited data for security of sensitive and important information. Their work ensures that anyone cannot access authorized user’s private information. In contrast, fog computing is providing a hierarchical privacy hazard during deployment of fog components at the edge of the core network. Significant privacy hazards like data privacy, location privacy, and usage privacy deployed in fog nodes and application both [59]. Those nodes are much vulnerable to preventing of data thefts when compared with the centralized cloud. Dong et al. [66] have comprehensive research about sensor working in networks which are susceptible for content based privacy. He is proposing superfluous fog loops to defend the location identification of the content source node to make confusion for opponent. To alleviate spiteful eavesdropping during data transmission, it is offered [67] that a fog friendly structure through public key encryption will be converted in to irregular key updating for avoidance from high overhead. Lopez et al. [68] explained a quality based operation of secured middleware access for the better privacy of user data and prevented the service providers. Smart grid related privacy issues have been presented as safeguard schema proposal [69]. It also targeted the use of multidimensional data analytics approach based on homomorphism techniques in coding.

4. Fog Architectural Design and Implementations

We have disputed that location awareness applications are in danger due to the sense-process-actuate loop, as would be any other applications with feedback loops. In short, the cloud is too far from many IoT devices in the scenario of latency sensitive applications. Here, is small discussion listed about design and architecture implementation of fog computing framework.

4.1. Fog Frame Work and Architectures

Extension of computing, communication, and storage at the edge are described mathematically for simplified effective information system capacity as computation, data transmission, and storage [51]. To measure the comprehensive capability for a given information system, it can handle the involved data (including big data), for the effectiveness of information system as data capacity based processing for data analytics at the edge. Ha et al. [70] and Satyanarayanan et al. [71] both have designed comprehensively and obtained executed results in a real-time response through wearable smart devices assistance as Google Glass supported by cloudlet. CISCO related studies and information [26] explained an overview about a developing fog computing architecture with a three-layered approach of distributed AI services for better QoS at edge location of the network as well as distributed intelligence and predictable fog computing. Two systems can be discussed for the availability of resources near the edge of the network [72] that is explained for live sensor streaming analysis and cloudlets [10, 28] that are interactive for applications which are previously proposed and also will be discussed in next sections. A sequence in SDN [73, 74] is the basic structured property of a secured communications network in fog computing, having confidentiality, integrity, availability of information, authentication, and nonrepudiation. Programming and process as midlevel SDN structure for fog computing have been allowed [7577], but these researches only allow and give a view about inserting routing logics, not basic application logics into network elements. Furthermore, SDN offers an expandable resource model for general principle applications. Implementation of a simple fog architecture with micro cloud nodes has been described, in between centralized cloud chains through end devices for health care smart sensor devices which are sensing and monitoring health care systems [78].

Existing work is paying attention to design and deployment of fog, such that, ParaDrop [79] and DECM [80] proposed fixing and solving extra energy consumption throughout the wireless data transportation by leveraging dynamic cloudlets model. Hong et al. refer to BOLO [81] which provides an essential abstraction to keep tracking for device performance and development of applications with intelligence processing pattern. It can help in fog computing for large scale and latency sensitive applications development at IoT structure. Bonomi et al. [2] previously and Chiang and Zhang [6] and Sarkar et al. [82] surveyed fog computing structural design which showed that fog computing is only the suitable platform for proposed applications in the context of fog computing framework, such as connected smart vehicles, smart grids, and smart cities. The importance of four layered fog computing architecture [77] has been described in detail which are lacking in current commercial CC models with smart pipe line monitoring examples through fiber optic sensor network. A research [35] has been presented in the field of signals and image processing which is proposing an analysis and showing how emerging of fog computing projects is challenged. It is clearly identified that an estimation and pricing model [83] for fog computing based micro datacenter might be deployed with the support of dynamic resources for IoT and end user devices.

Figure 4 is realizing hardware architectures as well as four-layer high level software architecture, deployed as a fog node. Hardware framework assorted physical components which contain servers, edge routers, access points, setup boxes, and scheduled storage devices with additional virtual image functionalities to support cost reduction and elasticity in fog computing architecture deployment. The platform is hosted by different OSs and software applications, thus having a wide range of software and hardware capabilities. A generic driver interface is provided by the abstraction layer of the software framework for managing the hardware such as storage, NIC, memory, and other types of hardware for seamlessly resourcing management and control [84].

With software architecture perception, fog computing nodes are highly virtualized with several VM APIs running with support of highly proficient hypervisor enhanced applications. That hypervisor includes real-time enhancements and security to serve the needs of critical fog applications. This virtualized enhancement enables multiple OS to coexist on a single physical platform to make sure of efficient use of resources. The multitenancy application process shown on top ensures the segregation of different tenanted applications on the same node. They are carefully segregated from each other with the fog VM application controller and can communicate with functions via APIs only. The orchestration layer provides a policy based life cycle for managing fog services. This orchestration functionality provides a distributed approach as an underlying fog structure [84]. A hypervisor runs on top of all these APIs for providing a virtualized environment. The orchestration layer API achieves four basic targets, namely, mining and submission of data, analytics operations at submitted data, handling requests with scheduling, and preallocation of resources to implement at the predictive decision [85].

Certainly, the better deployment of fog based processing framework demands different significant algorithms and application work for dealing with consistency of the whole networks of cloud to the IoT at core network continuum.

4.2. Fog Proposed Application Taxonomy

Miscellaneous fog applications are recommended mostly as literature. In this section, we are reviewing a classification of those proposed application designs and implementation techniques. In the context of fog computing, previously it has been described that IoT smart devices might be used as fog nodes, and it might happen with your mobile phones or personal gateways [86]. Therefore, author [12] suggested a “Steiner” hierarchy idea based on caching schema, in which fog node servers primarily produced a Steiner hierarchy system to reduce whole path, load, and processing cost, for playing down the resource caching overheads. Extensive research works have been done [87, 88] at the use of fog computing services in existing health diagnosing and monitoring system, like that real-time fall detection which can imply mostly in health care real-time monitoring. Zhu et al. [26] also comprehensively organized fog computing for processing and transmitting video applications and smart services range in proxy assisted rate adaptation towards intellectual caching for on-demand video streaming. This feature improves the QoE virtually for in-hand interactive structural system of video surveillance cameras.

A vehicular ad hoc network (VANET) is designed with the complemented structure of SDN and fog computing to offer preprocessed low latency data transmitting [73]. Gazis et al. [89] have proposed a unique system as industrial perspective for organized fog computing framework to provide elasticity for individual operational processing requirements. Femtocloud by Habak et al. [90] has offered a dynamically self-configured mobile cloud with multicomponent by a clustered mobile devices structure to make availability of cloud services at the edge. The assessment recommended that this point of view offers a sensibly resourceful computational capability. In complex structures, the amount of data collection and analysis is increased exponentially, but the central cloud approach is also no longer sufficient.

Some extensions have been offered in the scenario of predefined smart meter structure for a flexible and cost efficient solution [91]. Tang et al. [77] described a hierarchically distributed fog computing structural design and application work which supports the integration immense number of mechanism and services in future of smart cities, for securing upcoming communities. This is essential to build a huge geospatial sensing system which will perform big data analytics and can identify inconsistent and harmful events within real-time most favorable response for better AI computing. Bonomi et al. [24] examined those disruptions and proposed hierarchical differentiate architecture which extends reliability and security towards the edge of the core network of fog computing. It also elaborated, deeply, a STL system and Wind Farm frameworks in the scenario of fog computing. Osanaiye et al. [27, 92], respectively, referred to fog computing as a substitute of cloud that can deliver location and requirement based services at mobile devices or end users (e.g., sample display application in shopping centers, shared parking, smart vehicular, and bus application services at fog networks) and also extended the reliability of migration with an abstract smart predefined VM live migration system. Osanaiye et al. [27] also mathematically approved that its VM live migration system with a linear regression approach from cloud to near fog structure also has been discussed in previous section (see Figure 5). Lee et al. [93] established the functionality of fog towards hybrid surroundings that can provide elastic and reliable fog computing services in the near targeted 5G network. The authors give fog computing development with intelligent vehicle smart grid to autonomous connected vehicles and vehicular fog network. The concept will help evolution to the Internet of Vehicles or the vehicular fog which will be the equivalent of existing Internet cloud for vehicles.

Separately smart transport system (STS) is used by Osanaiye et al. [27, 85] to diverse and circulate designed systems. Those extended systems frequently can monitor whole traffic and transmit all monitored data in real-time environment through smart devices and sensors, which preempt the whole traffic and provide safety to commuters. Some application works for fog structure, in the domain of healthcare high latency intolerant and augmented reality, have been proposed [87, 94, 95] that can be utilized for improvement of websites response through preprocessing and caching functionality. Saharan and Kumar [96] explained their work in four divergent domains of fog computing applications (e.g., STL system, wireless and actuator networks, smart grid, and connected vehicles). In the end, Table 4 is summarizing the comparison of some benefits and complications belonging to the deployment of fog computing structure.

5. Real-Time Use Cases

5.1. Video Streaming

Data transmission of applications related to video services seems to be well-organized at fog platform, caused by the capacity and elasticity of fog networking for provisioning low latency, mobility, and location identifications, with real-time data analysis. Related work [81] proved a video observation application with the requirement of three-level hierarchal structure to act upon motion detection through smart cameras and then did face recognition process with fog computation followed by identity data collection process at cloud instances. Magurawalage et al. [97] expressed aqua computing, which is the result of inspiration by water cycle that can execute in both fog and cloud processing environment. This proposed application design consists of clones at edge that will be served in video streaming circumstances, at the end user’s device, as acted as a buffer. In support of on-demand video streaming [98] fog services are used, like enhanced communication at a virtual desktop structured system for provision real-time video data analytics for surveillance cameras. Other prospective benefits from systemized fog computing deployment are to improve video streaming, likely in artificial intelligent cache streaming. There is a similar research [99] that identified key demands for deployment of fog computing arrangement as a hierarchical structure of CC to support an intellectual network edge node.

5.2. Healthcare Monitoring Systems

Influential health observations or monitoring is the key target of application in biomedical data analytics for correctly predictable smart healthcare decisions in future. This achievement can be possible with the deployment of ubiquitous framework and systems and transmitting data in real-time response environment through fog nodes rather than transmitting at the cloud. Cao et al. [87] have proposed a real-time monitoring application, U-Fall, which can be separated into three major sections, front-end, back-end, and communication module, where both front-end and back-end make independently detections result. Therefore, a collaborative detection increases the accuracy and reduces the wrong alarms rate. Another important experiment is signifying the feature of U-Fall application that involuntarily detects the extensive fall throughout existing moderate strokes, during health monitoring. In the end obtained results suggested that a high sensitivity has been achieved. Utilizing fog as a smart gateway to give services for computing in some complicated methods like embedded data mining and prioritized storage has also been proved [95].

A case study about features of electrocardiogram mining plays a very important role in the analysis of cardiac diseases. In some tentative results of health care diagnosis and analysis monitoring, where fog computing attains more than 90% bandwidth usage efficiency with low latency in real-time response [87], FAST [100] has been proposed as an application method that is a distributed data analytics system in health monitoring with fog based sensors for monitoring and diminishing of strokes. Another application framework has proposed its services for monitoring special diseases with mature body sensor network at the nearest node at the edge [101]. However, fog deployed gateways are used mostly to improve the whole health care systems by improved QoS, like ECG feature extraction. Aazam and Huh [102] proposed a smart phone application work, named Emergency Help Alert Mobile Cloud, which operates in fog environment for preprocessing and offloading for real-time response reporting to an appropriate emergency department (e.g., ambulance) with the help of already stored contact details. These services can make a better help system to identify the incident locations as well as make possibilities to tracing the patients. Dubey et al. [103] have experimented the use of preanalyzed data for next data mining and analytics at unprocessed data collected by distributed sensors in smart health care monitoring. Ahmad et al. [104] presented fog structure as the central layer between centralized cloud and the end users (IoT) through a systemized framework. Therefore, a security solution, named Cloud Access Security Broker, has been introduced as a vital part of health care monitoring at fog nodes.

5.3. Gaming

The initiation of cloud computing has offered computer gaming without existing of more than one players and essential gaming hardware structure; therefore, online gaming facilitators and users are rapidly growing. Wang and Dey [105] described mobile gaming application framework based on the cloud servers, where centralized server works on all possessing load of the game. In this scenario the cloud server transmits only the gaming commands to the players, but in this system disruption is faced due to the high latency and limitation of the cloud structure. There must be a targeted QoS in fog computing to achieve and ensure high gaming QoE [106], but low latency and real-time requirements of latest gaming applications are inherently at risk. Lee et al. [107] have introduced an experiment that how to provide a quick response time with low latency in gaming with cloud processing that can improve the user experience. Consequently, a related model has been developed for better prediction or preassessments about real-time requirements for game inputs. Another structure with cloud services extension [108] has been proposed that can deploy more different geographically distinct devices equipped with intelligent physical resources. Those distributed devices seem to be fog structural nodes for better QoE cloud and also at edge cloud (fog node) gaming environment within the high recognition of massively multiplayer online gaming. A lightweight method [109] described the deployed super nodes for extension of video games processing near proximity of players or end users with low latency and high bandwidth QoS. In this experiment, a collected data encoding rate increases the playback consistency and end time driven by buffer forecast approach.

5.4. Smart Traffic Light (STL) System

Smart traffic light (STL) system interacts with several sensors of fog for monitoring instances for accidents deterrence, preservation of a steady traffic flow, collections of related data for analysis, and improvement of the STL system [2]. That analyzed information can be used in the prevention of possible accidents occurrence through preempt warning signals with connected vehicles. Stojmenovic and Wen [56] are evaluating a system, for sensing and monitoring with video surveillance cameras, the existence of an ambulance through its alert alarm, and emergency light to systematically change traffic lights to permit pass through the traffic for emergency vehicles. Bonomi et al. [24] have clearly identified three major goals of STL system: (i) steady traffic flow management; (ii) prevention from accidents; (iii) analysis at received data to analyze and improve the STL system. Accidental preemptions require a real-time response, while data retrieval and traffic flow control can be referred to lesser priority for real-time set of process. In this scenario, WAP and smart traffic light units can be deployed alongside the road for provision real-time transmitting data services, such as vehicle-to-vehicle, vehicle to fog nodes, and fog nodes to fog nodes.

6. Occasions for Big Data Analytics

Future of developed IoT revolution and technologies will be a key role in IT and OT over next two to four years. So here most related solutions take place that fog computing and big data are both of the most prominent technologies in the nearest future, since providing the groundwork for convergence with the help of mobility, consumerization, predictive analytics, and in-memory databases. Therefore, we will discuss IoT big data analytics challenges and opportunities of process plan through fog structure, rather than processing and storage at centralized cloud framework [110].

6.1. Big Data Opportunities

Few decades ago data was generated and accumulated by the worker or employees of a company. With the high growth of Internet, users are generating their own data on Facebook and Twitter, and these data become larger than older one. Now there has become a third level of this progression because now machines are accumulating data in the building of all over the cities with fully implanted sensors that are monitoring humidity, temperature, and electricity usage with smart meters. On the other hand the satellite around the earth is monitoring the earth 24 hours a day with taking pictures and accumulating data. However, these orders of magnitude are higher than user accumulated data. So it is a progression from employee generated data to the user’s generated data then machine’s generated data. Primarily intentions are very important for data analysis to achieve efficient operations and fault free and efficient cost running processes in industry [7].

6.2. Big Data Revolution

The big data revolution is gradually rising up and there is no choice to accumulate and arrange for the intellectual and intelligent results for better decision systematically (e.g., health care monitoring applications and industrial controlled IoTs). Smart devices like wearable exercise bands, driverless vehicles, and environmental monitoring sensors, in our lives, are gradually going to digitally connect. These connected devices are producing explosive data packets. According, the information reported by IDC and EMC, the whole digital universe is replication in every two years and will generate 40,000 exabytes data by the year 2020 [4]. There are two key challenges which might be faced, caused by that growth of data. The first is that businesses are ongoing to digital transformation for their services in order to expand a competitive benefit, while the continued explosion of IoT devices is identified as the second [7].

Figure 5 is providing an example of daily based generated data assessments by CISCO in 2017 from large scaled implanted IoT and IIoT with graphical representation. IoT devices and applications are organized at an overwhelming rate from a countless of global endpoints. According to the research studies [51], the number of IoT devices is predicted to get bigger from 1.2 billion presented in 2015 to 5.4 billion connected devices globally by 2020. This proliferated forecast means that explosively huge amount data will be generated and it should be analyzed for accumulation of the benefits and QoS user’s applications. The term “big data,” for this large volume of data, is used. According to big data that can be divided into high volume, variety, and velocity informational sources [4, 51], cost effective and innovative forms of information processing are required. So, what is the appropriate effective way to manage and process large and complex big data that enables better decision making, enhanced insight, and process automation? For rising of all these queries and challenges, fog computing becomes visible as the best solution.

6.3. IoT Big Data Analytics and Industrial Growth

Industry and companies rest over many difficult operating problems, such as from complex supply chain to motion applications, in equipment constraints to labor limitations, over every single day. For manufactures solving problems is nothing new. However with IoT big data analytics, comparative organizations can find new cost saving and revenue opportunities, instead of their flood of data becoming in overwhelming challenges. Analytics helps in operations to sense what important, understand what values can be generated, and act immediately to capture those values. Specifically manufacturers are using data analytics to predict depending equipment failures and improve quality and market responsiveness by coordinating extended and complex supply chains. Data analytics can better engage with their customers to develop new revenue streams and enhance product features and new product development. We can say that streaming of IoT big data presents one of the biggest opportunities [7]. Figure 6 is characterizing the benefits of big data analytics at fog computing and showing some predictive progress as a five-dimension emerging targets in near smart industrial development through user’s smart devices growth.

6.4. The Future of Handling Big Data

What does a successful deployment of fog computing framework look like? Recently an accomplished computing and network framework to manage tremendously large amounts of big IoT data generated by end users or devices is described [111]. Fog computing is a framework which is an appreciative extension of the prenetworking system and cloud services. Fog and cloud computing operate together to generate IT solutions (e.g., increase network connectivity, processor capacity, security management, and analytics platforms). Previously it has been presented [86] that some experimental results claimed a sample of IoT framework with smart devices like mobile phones, home gateways, and so on. These devices can be operated for parallel data analytic but this procedure might be harmful in future application use. As a huge scale of data required to manage big data analytics, some organizations having the idea to the deployment of fog computing. Simultaneously, the security of cluster technology becomes an open issue caused by the dynamic features of SDNs. To overcome the requirements of large scale network setups, the control plane is typically implemented as a distributed controller. To meet the above challenges, a big data analysis based secure cluster management framework for optimal control plane has been proposed recently [28]. Respectively, cluster management technology operates all types of proceedings and must continue a steady global network status, which significantly leads to big data in SDNs. Concurrently, the security of cluster technology becomes an open issue caused by the dynamic features of SDNs. Jayaraman et al. [112] have proposed an application model which is an extensible, flexible, generic, and component based platform for real-time analytics. This application named CARDAP can be installed in complex dispersed mobile data analysis applications (e.g., sensing and monitoring environment in smart cities). CARDAP combines a number of resourceful data transmission strategies by real-time data stream mining in the context of data reducing and transmission.

From Figure 7 we see that the main feature of the CARDAP application is enabling the development of generated data analytics with connecting the featured components by using XML configuration files on a local device. The CARDAP has five key featured components. (1) Data capture component used the plugin and virtual sensor approach as an interface to handle the data stream. Collection of assorted data sources is enabled by the plugin and virtual sensors together. (2) Data analytics manager enables the access of users and developers for deploying specific data analysis algorithms. (3) Open mobile miner component applies a light weight clustering at analytic data to match high-speed data streaming. This technique also acquires best accuracy of data analytics based on existing resources. (4) Data Sink component allows applications to push processed data on any linked fog node or cloud. (5) The query and storage manager achieve the functionality of storing analytic data locally that could be used in critical real-time operation.

We believe that better deployment of fog framework will take place through a third-party service provider (e.g., ad hoc cellular mobile networks) which can deploy and manage fog nodes for enterprising work. Some of the ordinary enterprising difficulties to deploying a fog structure are similarly faced by organizations for private data infrastructure. That is why we have described a proposal which presents a framework for building mesh hybrid IT environments [51] in which data is produced by people, sensors, and devices at the edge that can be interconnected over low latency and high-speed connections securely. This blueprint is called Interconnection Oriented Architecture [1]. It presents all the benefits of fog framework as well as applicable for all types of non-IoT functionality to bring big data analytics to the edge of the core network. Businesses of all sizes will be utilizing some form of big data analytics to improve their industry and will be connected with digital services. Therefore, enterprises need to make sure that their IT infrastructure is operational to handle the growth of data and all operations for big IoT data analytics.

7. An Emerging Era of Fog

The discussion about fog computing features introduces and separates the fog computing framework from CC, for the new technology requirement of IoT. The corresponding system with centralized cloud, fog, is being prominent alongside the following two magnitudes:

(1) Accumulation of significant information and data storage at close proximity to end user, in spite of storage system that will be running only at cloud data center.

(2) Accumulation of significant amount of data for required processing at closer location of the end user or IoT devices, to reduce processing functionality at cloud framework. Such processing and organized functions can improve the following [113]:(i)Better functionality for big IoT data analytics generated by end users or IoT devices.(ii)Improved functionality for significant intelligent operational processes for proposed use cases in near future (e.g., smart cities, vehicles, and smart grids).(iii)Enhanced management with elasticity for IoT as well as IIoT in the context of 4th industrial revaluation state towards the next industrial state and superior use of cloud computation with its complemented fog networking for big IoT data analytics [7].

7.1. Future Work Use Cases Study

Due to the previous work discussion, there are some questions raised such as how to put the modules back together, who does what, and at what timescale? Significant structural design of fog computing supports a diversity of applications belongs to the IoT and IIoT as well as with those things that are frequently discussed in 5G technology requirements and big data analysis [43]. Particularly, fog computing architecture is featured with data plane and control plane both; each of them is rapidly rising the number of examples in protocol layers to the application layer from the physical layer.(i)Fog Data Plane. Fog data plane works at (i) bandwidth control and content caching at the edge, (ii) pooling of user’s idle computing/bandwidth/resources/storage and local contents, (iii) micro data centers and cloudlets at the edge, and (iv) device-to-device mutual data transmission.(ii)Fog Control Plane. Fog control plane is working through (i) sensing inference of network states, (ii) client level controlled cloud storage, (iii) content management over the top, (vi) fog computation driven RAN, (v) management of sessions and load of signals at the edge, (iv) IoT big data analytics and real-time data streaming, and (vii) client based HetNets control.

Fog data plane has been more broadly studied [10]. Here, we emphasize a few meticulous cases that demonstrate the challenges and potential of fog control plane. We will also see that fog computing operates across the hierarchical and distributed devices, accessing at an edge, and observes the associated work between fog and cloud, which are defined in following cases [6]:(i)Load balancing LTE states (in commercial deployment) with some complement of passive extents (e.g., RSRQ), throughput, dynamic analytics, and data mining might infer the number of resource blocks used state [114].(ii)Smart data pricing and deployment of OTT network (commercially) as fog computing for enhancement directly to the IoT structure and removing the reliance on the whole network [115].(iii)Client side HetNets control (in 3GPP Standards) with existence of diverse network components. There is a key attribute which exists in cellular networks [116], and in this case, fog to cloud structure allows real-time response relationship through its interface, while time taking parameters, like having RAT stability characteristic data, can pass from the cloud.(iv)Hierarchical user control cloud storage (in beta trial), by the use of cloud based cheap storage through control of client for privacy at fog nodes, we can achieve the best of both frameworks (cloud and fog) for described challenges based on new IoT structure [6]. For example, dispersal of bytes of a file across multiple public clouds by file portioning on the fog state can be secured and provide privacy for significant information, even given encryption key would be leaked [117].(v)Real-time processing in AI (in beta trial) is a consideration of virtual reality in which most of the information recovery and processing targets may be forwarded to the related devices, such as some on associated phones, some on smart home storage, and many others and then the rest to the cloud. Fog architecture may process for those devices in parallel, with intelligent location hierarchy [118].(vi)The future of big data analytics (in disruptive business models) is the best performance for a successful venture. IT strategy should be customized to the needs of the specific organization based on best data analysis. By using appropriate data analysis and prioritization techniques, critical data (which needs real-time treatment) can be recognized and processed at the fog node for provision QoS to the end users [111].

Many more cases can be discussed in context of emerging era of fog, for example, borrowing bandwidth from closest other idle devices or end users when multiple devices processing to the same node [119], bandwidth management at home gateway [120, 121], distributed beamforming, where fog existence has some physical layer, such as with utilization of multiuser MIMO which is described during laboratory demonstration for improving throughput and reliability [122]. These all can be done entirely at the client side through fog computing and helps meet the challenges of big IoT data analytics.

7.2. Nearly Targeted Use Cases
7.2.1. Smart Grids

Currently proposed work in the scenario of smart grids can be associated caused by the energy demands. Nowadays we have a rate of advancement that the energy power is produced and controlled by habitual method technology. There are also some requirements to impose reducing gas emission controlled curtail and climate change [123]. Cyber Physical Energy System [124] is proposed for improving performance and reliability, for efficient production consumption of power from grids through the better smart management of demand and supply, throughout fog intelligence framework. A model application of this system has been implemented with fog platform to support monitoring, automotive response, and scalability. Another paper work [125] described an important innovative energy supervision implemented with fog structure. This can monitor the energy management in tow domains of prototypes HEM and HVAC. Both prototypes will provide services in-house energy management and micro-grid-level energy management, respectively. Abdelwahab et al. [126] have explained cloud processing based remote sensing advancement to determine and aggregate smart grid operational data for QoS at smart power grid through fog computing. Cloud computing characteristics that are providing services to user and suppliers directly already have been proved for inefficient bandwidth approach.

7.2.2. Smart Cities

A smart city is another one of the key goals for IoT applications with fog based structure that has the range from automated traffic control to smart energy management buildings and homes. The objective is to overcome challenges associated with rapid urban growth. Yi et al. [127] recognized fog computing nodes at closed edge location which is a unique solution for near smart city projects as well as having extensions of all functionality of cloud structure in an integrated structure to enable and connect explosively increased smart applications with flexible resources. Kitchin [128] is describing a smart city model that has full control of ubiquitous processing for an economy that is driven by modernism and creative policies. IoT structure and applications frameworks for making a city to smart city will require high computational and storage capacities, and will face interoperability challenges. A smart city is described [68] as community system at the edge that has optimized energy utilization and can provide a better quality of life through the smart life of citizens. Byers and Wetterwald [129] identified complication that is associated with centralized cloud relating management of road traffic control, parking system, and environmental monitoring as a smart city use case. A comprehensive research which describes a strong relation between fog and big IoT data analytics [77] is a hierarchical fog networking structure to support a huge number of automotive components and services for smart cities in future work.

7.2.3. Smart Connected Vehicles

With the cumulative number of embedded sensor vehicles and the acceptance of various interfaces for communication, vehicles have become a sensing environment platform for many applications, for instance, road safety, traffic and weather monitoring, driver behavior, and urban surveillance analysis. Additionally, smart connecting vehicles could be synchronized to sense large scale data efficiently. Such direction requires massive computing, power, and communication resources. Wang et al. [130] recently have proposed a virtual vehicle coordination system based on the concept of group consent for sensing the environment information. Specifically, they propose a discovery algorithm to find the optimum virtual vehicle groups. Next, in the scenario of multigroup consent theory, they formulate a coordination algorithm to control virtual vehicle groups to attain multigroup harmonization by regulating the communication connectivity among virtual vehicles. Finally, the exact environment information is attained through the harmonization of multiple virtual vehicle groups.

Connected vehicles are a subsection of the smart city where vehicles will work as fog nodes at the edge to sense situation in driving, urban obstruction, and innovation of footage. In this case an application work [131] assists the safety and above-mentioned requirements. Vehicular cloud attributes are significantly compared with the traditional cloud structure. A vehicular fog computing has been proposed [132] where a connected vehicle can act as a fog node, and this functionality can engage the association of many end user devices. A vehicular fog as a fog computing structure in vehicles and the core network surroundings for improvement in automotive driving has been extended [93]. Lee et al. describe VANET as MANET and will use the vehicles as an end node for smart phones. An architecture is planned by merging VANET with in SDN [73] to provide services for future VANET anxiety. During crowded vehicles in parking, some solutions [133] are given for deficient management of shared parking. Simulations consequences have been indicating effectiveness and consistency in monitoring empty parking slot.

8. Conclusion and Future Work

We have to close up fog computing overview, as distributed and hierarchical framework having scheduled storage, virtual machine images (embedded virtual cache and transient storage), and network resources deployment with the complement of CC functionality at the edge of IoT. This work represented some key characteristics with enduring general ideas about possible challenges as like how fog computing can expand CC services at the edge. Hence, it is clarifying some use cases that provoked the necessity of fog computing especially about the real-time data analysis importance for IIoT, typically in health care, STLS, and smart grid. Our work emphasizes fog’s consequences and disruption in main three aspects, IoT, big data analytics, and storage. With concentration at the future potential of the emerging era of fog, this survey provided some nearly imminent use cases which recount some near time research directions and distributed application work for flexibility in QoS of fog computing framework. Fog computing having some dependency of existing key technology can be categorized, namely, computing (e.g., computation offloading and latency management), communication (e.g., SDN, NFV, and 5G), and storage (precache system and storage expansion). Fog networking could be more intelligent with the deployment of existing key technologies. SDN and NFV together can increase the network scalability as well as cost reduction and live VM migration (computation offloading) can meet the resource constraint challenges on edge devices.

In spite of many opportunities of fog computing for business continuity, proficiency, cost reductions, and so on, there are also many challenges faced at industrial data management phase. A lot of research works have been considering IIoT applications and most of them have been connected with fog computing, surely in primarily developing markets such as manufacturing or oil and gas. Yet, most of research works still in waiting or uncertain towards the progress and development of smart cities might be with combinations of smart building, STLS and sensor monitoring networks that are already organized. Cloud provides services for wide area connectivity, global coordination, heavy duty computation, and massive storage capacity, while fog will facilitate user-centric service, edge resource pooling, rapid innovation, and real-time processing [6]. This transformative epoch is an interesting era to start thoroughly discovering what fog may look like and which differences will be passed to the world of virtual computing in the next 10 years.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work is supported by the National Natural Science Foundation of China (no. 61472047).