Fog computing, also known as edge fog computing, is a distributed computing paradigm that extends the concept of edge computing by pushing computing resources closer to the end-users or devices located at the network edge. Similar to edge computing, fog computing seeks to address the limitations and challenges of cloud computing in terms of latency, network bandwidth, security, and privacy concerns.
The term ’fog computing’ was coined by Cisco in 2012 and refers to a layer of computing nodes situated between the edge devices and the cloud, forming a ’foggy’ layer. The fog layer provides a platform for data processing, storage, and communication closer to the edge devices, improving their responsiveness and reducing the network load on the cloud.
Fog computing differs from edge computing in that it enables more complex applications and services to be run at the network edge by utilizing the additional resources available in the fog layer. In contrast, edge computing typically focuses on simple data processing tasks and provides a streamlined, lightweight platform for deploying edge applications.
For example, self-driving cars require real-time processing of large amounts of data from multiple sensors, such as cameras and Lidar systems. This data processing cannot be done solely on the edge device since it requires significant computing resources, and the latency and network bandwidth limitations would not allow for the real-time processing necessary for safe driving. However, with the addition of a fog layer, the data processing can be distributed and performed closer to the edge device, allowing for faster response times and reduced network traffic.
In summary, fog computing is an extension of edge computing, which enables more complex applications and services to run at the network edge. It involves creating a distributed computing layer between the edge devices and the cloud to improve performance and address the limitations of cloud computing.