Realtime decision making is associated with an on-demand, latency aware resource allocation. Fog nodes along with cloud infrastructure, when used effectively can ensure real-time decision making. In this article, we propose an efficient resource allocation and fault tolerance mechanism for the fog layer. Our work takes the advantage of game theory, where Nash equilibrium is the initial allocation strategy, which is then passed on to the reinforcement learner. The allocation is done proactively based on the network status and traffic history. The performance of our system is compared with the existing open shortest path first and neural network algorithms. Besides, fault tolerance mechanism has also been proposed which takes the advantage of the fail-over cluster formation to find the link failure and provide an alternate path in the smart switch, which is the networking component of the fog network. The proposed work gives an improved recovery time and average service time in case of failure with a recovery time of 32 ms. The experimental results are justified in terms of improved service time, lower delay, and optimal energy utilization.
K E Y W O R D Sdeep reinforcement learning, failover cluster, fog computing, game theory, resource allocation
INTRODUCTIONA surge in the importance of sensors and real-time monitoring has brought about the convergence of two major technologies, the cloud and Internet of Things (IoT), which lead to the emergence of cloud of Things. 1 Processing of large streaming data and providing low latent, power-efficient, high accurate decision making has yet again emerged a new technology-Fog Computing, proposed by CISCO. 2,3 This computing layer helps to alleviate congestion in the cloud by the execution of time-sensitive tasks and data filtering near the edge. 4 Researchers use the terms Edge/fog/mist computing based on the distance of the computing layer from the source of data. 5 Our work takes the advantage of the fog layer to execute the latency aware tasks and effectively distribute the load in the fog layer.One of the most commonly used techniques for load distribution is task or code offloading 6 which helps to distribute the load from the cloud to the lower layer. Latency sensitive tasks are offloaded to the intermediate layer near the edge for better performance. 7,8 This helps in a significant reduction of data being transferred to a remote location, thereby saving bandwidth utility.Software-defined network (SDN) plays a major role as the networking component in a fog network creation. The SDN is an intelligent paradigm of networking, which consists of two planes, the data and the control plane to take care of delivery and networking of the application. 9,10 The Open-Flow protocol ensures the communication between the control plane and the data plane, 11 which instructs the data plane reactively or proactively on packet handling.Traffic engineering plays a key role in path-finding and route establishment in a network. A good algorithm enhances the throughput and minimizes the d...