Fog computing is a decentralized computing infrastructure in which computing resources are located between the data source and the cloud or any other data centers. The word "fog" refers to its cloud-like properties, which are closer to the "ground", using edge devices that carry out locally computation, storage and communication tasks. An additional benefit is that the processed data is likely to be needed by the same devices that generated the...