Fog Computing Has Solid Use Cases but with Real Challenges
In a nutshell Fog Computing is a compute layer between the Cloud and the Edge. Where Edge Computing could send huge streams of data directly to the Cloud, Fog Computing can receive the data from the edge layer before it reaches the Cloud and decide what is relevant.
IoT applications are good uses of Fog Computing. Imagine sensors connected to an edge server that takes measurements every single second. Instead of sending huge amounts of data to the Cloud, a fog layer over a localized network can receive this data and decide what subset (e.g., exceptions) is worth sending on.
The impact on bandwidth and latency could be massive depending on the application.