Fog Computing Resource Optimization: A Review on Current Scenarios and Resource Management

: The unpredictable and huge data generation nowadays by smart computing devices like (Sensors, Actuators, Wi-Fi routers), to handle and maintain their computational processing power in real time environment by centralized cloud platform is difficult because of its limitations, issues and challenges, to overcome these, Cisco introduced the Fog computing paradigm as an alternative for cloud-based computing. This recent IT trend is taking the computing experience to the next level. It is an extended and advantageous extension of the centralized cloud computing technology. In this article, we tried to highlight the various issues that currently cloud computing is facing. Here in this research article, we present a comprehensive review of fog computing, differentiating it from cloud computing, also present various use-cases of fog computing in different domains, we came to conclude that Fog computing leads in an efficient energy resource management, leveraging the energy both in terms of consumption and cost scenarios. Further, we highlighted its key features, challenges and issues, resource optimization methods.


Introduction:
Cloud computing paradigm is an acronym used for Internet and is defined as computing paradigm model for enabling global, suitable, ondemand network accesses to the related configurable computing resources like networks, servers, storage, applications and services that can be rapidly provisioned and released with minimal efforts or service provider intervention (1).The most challenging concerns of centralized cloud computing are resource management, its optimization in utilization and cost analysis.(2).Edge computing optimizing cloud computing systems by taking the control of computing applications, data, and services away from some central nodes (the "core") to the other logical extreme (the "edge") of the Internet" which makes contact with the physical world (3).IoT and cloud together form a cloud of things (4).Fog computing taking into account both cloud and edge computing for proper resource management and highlighted the challenges and key issues of IoT devices and applications in a centralized distributed platform (5).
Section 1 explains the future directions, feature and scenarios in fog computing, Section 2 highlights some of the recent articles and reviews in fog computing domain, explaining resource optimization and management.Section 3 is subdivided into sub-sections, describes the new horizons and architectural layers of fog computing.Section 4 focuses on resource optimization in fog computing.Section 5 provides a brief study on the challenges in fog computing and finally, Section 6 present the conclusion and future work in the fog computing paradigm.

A. Fog Computing Features:
Scalability: Offers scale-in and scale-down services according to the demand, traffic, and seasonal spikes, with fog it becomes more interactive and dynamic, any point of time, one's business may have the highest or lowest peak in demands of the resources, so to reduce the underutilized service costs can be under the control at the edge of the network.Business Agility & Flexibility: Agility and flexibility ads on the elasticity of the infrastructure, act as a business-enabling aspect of fog services that are appealing more and more customers to adopt it (7).

Mobility
Support: Smartwatches, smartphones, and connected vehicles are actively participating in the Fog-edge layer, edge devices will communicate with other devices directly or through fog smart gateways, and offers them the hassle-free connectivity and mobility (8).Enhanced User-experience: Long distance, jitter delays, communication noise is much improved than ever before by implanting the fog intimidator layer between the edge devices and cloud, it enriches the user experience.Speed: To run any service on a cloud platform, speed plays a vital role to make the customers stay glued and satisfied.Fog as an intermediate layers speed up the processing of communication among various IoT-edge devices.

Maximize Network Bandwidth Utilization:
Fog computing, to some extent, make most of the bandwidth channel and replace the idleness, the communication among the fog nodes and edge devices in edge networks, makes the idle bandwidth useable.
Optimal Operational Expense: the localized and decentralized nature of fog, offers the cloud users a choice how many resource are to be utilized, and when to release, leads to the better resource allocation, distribution and cost estimation becomes optimal and prove to be cost-efficient (9).Security & Risk Management: various nodes are actively participating in fog environment since devices maybe are connected with edge devices directly.If one node is malfunctioning, another node will overtake it, and not lead the system to be in the complete halt.Security and risk factor is being minimized in fog environment.
Handling Natural Calamities: Natural calamities like cyclone, storm or earthquake, the data stays safe and secure.It reduces the risks associated with data loss, the automotive industries can look at leveraging opportunities as fog computing has the ability to make automotive sector and its data processing and storage faster, safer and better than ever before (10).Better Interconnectivity: the centralized distribution of computing resources leads to the bottleneck issues, with fog, only the trimmed data is being sent to the network through edge devices making it efficient and elegant and uncongested interconnectivity (11).Geographical Distribution: Fog offers the resources and services to the end users geographically dispersed.Decentralized fog architecture is providing the data proximity to end users than cloud centralized architecture, and offers better location resource-awareness, powerful processing computational capabilities, and real-time decision making in a ubiquitous computing environment.(12).Interactive Cabin Systems: The smart cars enabled with IoT based peripherals, entertainment systems installed in it, with use of the IoT based GPS in the smart cars helping the drivers to tackle the varied roads and traffic situations.

Heterogeneity & Interoperability:
The physical nodes deployed at various fog edge locations are heterogenetic in nature, devices like servers, base stations, local access points, smart gateways, routers etc. Installation of different system and application software, Fog computing provides interoperability among the interconnected, network-based heterogeneous devices (13).

B. Fog Computing Scenarios:
There are various areas where fog applications are being introduced and implemented successfully.Some of the scenarios of the fog computing are as; Connected Vehicles: The real-time operations in Connected Vehicles Fog computing is an ideal platform as it makes the communications between the connected devices, cars, access points and traffic lights safe and secure Smart Grids: The smart grids are making way for green computing and removing the ageing effect of the old infrastructure when electricity was limited to customer utility.As more machines interact continuously, smart grids will help the electricity demands which would work in cooperation with the cloud.Smart Cities: Fog computing is obtaining data generated by various sensors, actuators integrate it among the various tagged IoT edge devices to distribute and process the data uniformly Smart Houses: Fog computing is an ideal platform for the initiative to bring automation in the houses in smart cities, Fog will offer real-time interaction and will be best for monitoring and controlling them remotely Wireless Sensor and Actuators: Fog nodes and smart gateways can control itself the flow of the processes in IoT environment by forming the closed-loop system, further these devices in fog domain can monitor the sensor signalling and create alarm notification for emergency situations and avoid the unfavourable situations.These nodes can be of high importance in real-time scenarios like in railways, air traffic and mineral and tunnel mining (11,14).

Related Work:
The fog computing paradigm is the recent trend in the IT industry, in this section; we mostly consider the articles which highlighted fog concepts, terminologies, definition, resource management and optimization.Redowan Mahmud et al. (9) authors not mentioned any particular problem rather highlighted the fog taxonomy, nomenclature and discussed the various research challenges and issues, more precisely the authors highlighted fog nodes configuration, nodal collaboration, resource provisioning, service level objectives, applicable networks and security concerns along with the new aspects especially edge, mobile cloud and mobile edge computing were also explained briefly.Mohammad Aazam et al. (10) the authors here used the new term, "Cloud of Things", it is an integration of IoT's and Cloud, the data generation, storage usage, power consumption, services & resource management are some of the cumbersome jobs to handle, thankfully we have fog incorporated with cloud today that does this work in a sophisticated manner, only the desired data is being communicated in a cloud network, authors came with a new concept, Smart Gateways, which on adaptation of Smart Network or Fog Computing can trim the data, only fine-tuned data is sent over the network for communication purposes and is beneficial in resource utilization and management.Fatemeh Jalali et al. (11) energy optimization schemes, flow-based & time-based energy consumptions in nano datacenters (nDCs), which as per their result finding reduce the energy consumption by the applications running on these nDCs, fog computing can be much beneficent to the centralized domain as half of the applications running on nDCs can be energy efficient.Mohammad Abdullah Al Faruque et al. (12) the authors here proposed fog novel approach to handling the cloud computing limitations dealing with energy management, the data generated by IoT devices is heterogenetic & unpredictable in nature.The two prototypes i.e. home & micro grid-level energy management are being implemented.Scalability, adaptability that is featured in their proposed platform reducing the implementation & service charges and offer the customized control over the services.Mohammed A. Hassan et al. (13) cloud computing became the platform for handheld devices like mobiles to store data & speed up their computing power, but again the limitations of the cloud where the edge devices left with no option except to adopt the fog computing, that is becoming more predominant platform for the edge devices, the embedded intelligence make these devices to make decisions at the edge of the network rather than going for the core cloud network, leverage the data storage and improving the data throughput in real time.Ivan Stojmenovic et al. (14)

A. Edge & Fog Computing:
Fog computing is a pervasive and ubiquitous computing infrastructure were information, computing power, and storage, applications are distributed in the most sophisticated way.In a real sense, it extends the cloud computing capabilities and services with proper network suit, delivering the benefits and processing power of the cloud nearer to the enduser devices, where the data is generated in realtime.The main purpose of fog is to enhance the capabilities of cloud computing over the edge of the network, sometimes it is regarded as edge computing, but Fog computing is a broader concept.It provides an opportunity in the field of IoT technology where the end-users devices like cellular smartphone, household items, traffic surveillance system are remotely accessible and manageable ( 21).Edge Computing is the model which optimizes and enhancing the cloud computing at the edge of the network where the end-user devices are controlled and accessed at the edge of the network.Incorporating the functionalities of the fog in between cloud and edge computing, it provides a better experience to access the resources.The response time is so high as the requests are served at the edge because of reduced latency (22).Figure 1 shows the Fog Nodes as an intermediator between Edge devices and cloud platform.

B. Fog Architectural Layers:
The latest and recent trend in IT is Fog computing and becoming the buzzword and is considered to be the solution to the centralized cloud computing, precisely defined by Cisco, "Fog is an extension of cloud computing to the edge of an enterprise's network.The technology allows massive amounts of data to be processed quickly as well" (3).Since fog platform is the recent one, offers the advantageous features to edge network entrepreneurs.It offers smooth functioning of IoT devices in the geographically dispersed distributed network.It incorporates the functionalities of cloud and provides the enriched experience to cloud users in real time.The localized and decentralized fog enhance the latency issues of cloud computing, the real-time content delivery which is of more importance in delay sensitive like healthcare, traffic, connected vehicles, smart grid systems, windmills, performs pre-processing computation before sending it permanently to cloud data centre for storing it.Fog has storage constraints as its micro data centre can't hold the bulk-sized workloads because of storage limitations.The Fog operates on the data generated by the edge devices at the point of generation, intelligence and computational capabilities is being offered to the edge device over the network and can act according to the in real time environment (5).The layered architectural design in Figure 2 as the Cloud Core Network layer, Fog Nodes and Edge Device Network.All the three layers work in coordination in for the successful completion of a process.The process is distributed into small chunks and each chunk from the edge device to fog nodes for processing and temporarily stored in fog cloudlets (it provides reduced latency to mobile edge.It cannot hold and store the data permanently because of storage space limitations.So from fog cloudlets, it is sent to Cloud's Datacenter (Macro datacenter) for permanent storage.

Reduced Latencies & Resource Optimization in Fog Computing:
Cost analysis in cloud paradigm with Autoscaling methods had great influence in resource management and optimization, with scalability features offering resources accordingly to the user's requirements on-demand basis (7).In the fog, price and billing calculation formulation given below is the one which considerably minimizing the cost of resources utilized and underutilized, the proper service level agreements of the cloud-fog user with the service providers.The formulated formulae define a set of parameters where services are not only offered on an ad-hoc basis but have to predict in advance to be fairly efficient in resource management.
MEdia FOg Resource Estimation is the model which is calculating the given-up ratios in resource optimization, by this both the parameters i.e. quality of service and experience (QoSE), this model is being carried in two ways, on the historical background of cloud consumer and manages the computing resources in an effective and proper way, and secondly by doing it indirectly have its impact on quality of services (4).
i* ((1-(P i (L/H) s ))-σ 2 )*(1i )*ф)  is required resources in the designed formula, The already existing heuristic genetic algorithm can be used in fog computing to minimize the latency oriented problems.Hops count play an important role in resource management, as the cloud centralized paradigm while the communication among the various entities leads to increase the number of hop count, while as in cloud-fog based computing, the hop count is reduced considerably.The latency of each dataset can categorize in Processing latency, and return latency.The overall latency of the fog computing system presented by makespan depending on various parts of the process (10).T= Max i (c i /t i+ c i /t i+ c i /t i+ g (ci, p, q)) Cloud-based resource management with queuing theory is also an important aspect to optimize the resources according to the requirement while relinquishing the underutilized resources, reduce the service charges.The resources are not kept idle and utilized the utmost during cloud computational processes.Servers, CPU, memory resources are being used according to user demand (19).

Reduction in Latencies:
The latency issues in cloud computing were the serious issue for the time sensitive devices (traffic, healthcare and smart connected vehicles), incorporating the fog, it offers them reduced latency in a real-time environment, and low latency offers the big deal to the heterogenetic devices.It enables the business to look big virtually and operate extensively very near to end user.The handheld electrical appliances like computers, mobiles, and camera are provided within fog storage space to store their data over the cloudlets in the safe and secure way.Unanimously both Fog & Edge are going to be fully implemented in the manufacturing, telecommunication, education, health, traffic and automotive units, devices at the Fog-Edge-Layer acquire data generated and transmitted by IoT devices and are processed locally at the edge network rather than sending them to the core network (20).The reduction in hops count leads to the reduction in the distance that indirectly and enrich the data movement among the devices smoothly, the end to end communication becomes more interactive than ever before in a distributed environment.The latency scenarios in the cloud domain were something a lagging process, but the shift in computing paradigm (Cloud to fog computing), efficiently reduce the latency issues.End user's viewpoint, latency is an important aspect which enriches the communication process, realtime sensitive decision making becomes even more real in IoT environment with the help of Fog-Edge computing (23).

Fog Computing Challenges:
Fog computing is the future of cloud computing, it comes with immense advantageous potential, like cloud, fog has some issues and challenges as well both in terms of security and privacy, adoption and implementation, since being decentralized, each end users participating in IoT environment, make Fog computing to face various issues like availability of service in public cloud-fog storage.The end users devices are energy oriented, battery life, energy consumption are the concerns in its flawless streaming seamless operating functionalities, inactiveness of the edge device user will make fog unavailable in some circumstances.Although fog is termed a secure platform, it also has some security challenges.After reviewing some of the articles in the fog domain, most of the authors had cited the given below constraints, issues and challenges in fog computing (10,14,24,25).
Privacy Issues: In Cloud of things, privacy became a challenging job to handle.Microdata server or cloudlets are closer to end users, continuously collecting and generating data come sensitive.So privacy became a first priority to secure the end users data at edge network.Mask the location of various fog nodes is important as well to enhance the reliable communication in fog domain.Access Control: Accessing the various tagged entities in IoT environment is a challenging task to handle, as the edge devices get connected continuously are gaining access to the computing resources, it becomes an integral part and parcel of fog computation, By implementing the secured accessing protocols means the guarantee of an authorized authentication, it makes necessary check-ups to identify the connected component in fog computing platform.Authentication: In an IoT environment, a number of smart gateways offer the services at the front node, without proper authentication mechanism, fog platform often preys on the man-in-middle attacks.The data transmission.Various face recognition, image processing, biometric; fingerprint authentication methods will be effective to remove this problem by implanting various encryption and decryption algorithms.Data Protection: IoT-based computing in fog increase the number of nodes instantly.The data generated by the communicating nodes, their maintenance is important to protect the data of end users.The data integrity in fog is in threat always as the supervision is a cumbersome task, hard to deal with such continuous data generation.Masking and Decoy techniques are to be implemented in order to save and protect the data from the malicious interference of the intruder.
Malicious Activities: Since fog is a decentralized distributed paradigm, latency is reduced, the process of communication becomes much easier, and to detect the malicious node becomes quite tough and challenging task to perform in fog computing.It affects the quality of service, interruption in services (DoS), man-in-middle attacks are the major concerns in fog due to the malicious activities.To get rid-off these issues, the Intrusion Detection System is the need of an hour to reduce the risk factor in fog systems.It will provide timely updates and notification regarding any malicious found activities.

Conclusion:
We authors, investigate Fog computing paradigm, it feature, scenarios in various domains, and provide the comprehensive study on the various security concerns of current centralized & decentralized computing paradigms, some of fog computational features and data storage will take care of data-intensive services and applications in future on Fog computing platform, as it requires less cloud storage and transmission power for longterm analysis data and has been applied successfully in healthcare, smart cities and geospatial information systems.Further, future work will consider Resource Management, Utilization and Cost Optimization for the enhanced efficiency in data-storage and security measures.Fog is finding a place in the smart traffic lighting system, connected vehicles, Smart Grid, IoT, Cyber-physical systems, Wireless Sensor and Actuator Networks, Software Defined Networks (SDN).Fog Computing cannot be a solo technology to handle all these complicated tasks, to offer better and the best optimization and resource management services, its collaboration with cloud computing is mandatory.

Table . 1: Fog Computing in Resource & Management
(19) the authors described the Cisco's fog model which is going to cover every connected device up to 2020, briefly describe the importance & need of Cloud & edge paradigm in technology shift, Latency enhancement, location awareness, improved quality of services.Bhagyashree Dharaskar et al.(15)the authors here in their research article have briefly explained the goals and aims adopting the fog computing to enhance potency and scale back the number of knowledge transported to the cloud for process, analysis and storage, act as a key technology in IoT, suitable for smart cities, smart buildings and smart IoT tagged Objects like Vehicles Interoperability among the different computing paradigms.Mohammad Aazam et al.(16)has proposed a fog computing microdatacenter model which leads to the estimation of resource and pricing model in IoT, as cloud is becoming congested with the IoT devices intervention, the fog computing plays the vital role in decision making, reduce the burden on the core network, The results generated by their proposed probability method, Customer's Reliability-based Dynamic Resource Estimation giving comparatively better results in fog domain and are evaluated using the CloudSim toolkit.Zijiang Hao et al.(17)provide the detailed description about fog computing, challenges and problems, proposed a flexible software architecture WM-Fog offering flexible ways to explain the workflow and can be easily deployed and executed, through which considerable enhancement in performance with various user workflow, system architecture, synchronous customizing policies with fog computing.Carla Mouradian et al.(18)came with a descriptive analysis of anything in fog.From fog basic to fog algorithms and to fog architecture, authors come out with proper taxonomical designing after "Future Direction in Fog by Redowan Mahmud" this paper is best one among all the review papers in fog computing.Yang Liu et al.(19)discussed and compared various important topics like latency, reliability cost and fault tolerance in fog computing, genetic algorithm with Dirichlet distribution sampling approach to conduct and solve the resource optimization problems in fog computing, results showed the tremendous impacts on fog scalability as well, presented the fog architecture and framework for resource allocation and latency enhancement.Mohammad Aazam et al.