Fog Computing, also sometimes known as Edge Computing has been around in one form or another since the advent of Cloud Computing. The term was coined by Cisco as a description of extending a Cloud Computing environment to the edge of an enterprise’s network. In effect, the cloud is extended to the edge of the network to form small clouds, sometimes called cloudlets.
Simply put, Fog Computing transfers many of the functions carried out at the core of the network to devices at the edge of the network.
It is important to note that because of the relative newness of the technology, the distinctions between Cloud, Edge and Fog computing can be blurred, and there is an active discussion going on around precise definitions of the terms. To help clarify, the US National Institute of Standards and Technology (“NIST”) issued a document in March 2018 to attempt to standardise much of the terminology.
There is even a type of Fog Lite, known as Mist Computing, where data is pre-processed by microcontrollers and microcomputers before being passed on into the Fog environment.
The reason for Fog Computing came about following the difficulties being experienced in large networks, both those physically large, and those processing large amounts of data. Users realised that the quality of the content they were receiving was being adversely affected by the limitations of the network itself and of the core equipment used to process the data.
Processing data In a network, large by either the volumes of data to be processed or by its sheer physical size and geographical spread involves transferring data from the edge to the core to be processed by servers and returned to the edge. Maintaining an acceptable quality of service implies investments in high-speed network connections and bigger iron in the data centre. Sustainable connectivity is a must.
Fog Computing, as opposed to Cloud Computing has been designed to support the Internet of Things (“IoT”), where anything than can be connected to anything else potentially could be connected. At a personal level, such devices include smartphones, tablets, digital wearable devices such as the FitBit, and digitally augmented reality devices such as Google Glasses. Some domestic appliances have digital interfaces. There are already large numbers of factory floor devices that can be connected. A recent development has been driverless vehicles, connected to and controlled by a central cloud-based server.
The IoT brings with it special considerations. Sensors and IoT devices typically generate immense amounts of data. If it is transmitted over the network, both network performance and the performance of the IoT devices themselves can be adversely affected. Where there is a need for business-critical real-time analysis and management, for example vehicle networks and some manufacturing environments, delays, even of milliseconds or loss of network services can have very serious and potentially life-threatening consequences.
The solution is to use Fog Computing to move time-critical processing to the edge of the cloud, in effect spread the cloud out to the edge. In that way, data relevant to the situation at hand can be processed immediately, and is protected from loss of connectivity.
There are disadvantages and differences between Fog Computing and Edge/Cloud Computing.
- Location. Fog Computing reduces the amount of data transmitted over the network. The fixed physical locations of the edge devices removes the “Anywhere, Any data, Anytime” benefits of the Cloud.
- Points of Failure. In edge Computing, individual devices carry out computational tasks independently. In Fog Computiing, data is passed to a network device for processing. Edge computing is therefore more resilient against network failure, while Fog computing is more scalable.
- Security. Having critical processes potentially outside the security mantle of the Cloud increases the potential for hacking and malware attacks. There are also concerns with automatic authentication, particularly in a WiFi environment.
- Cost. There are increased costs associated with providing Fog-enabled hardware and software.
It is important to note that Fog Computing does not replace Cloud Computing. The devices at the cloud edge carry out short-term analytic processes using smart devices, and any long-term resource analysis still happens at the core on a server.
Fog Computing is here to stay in one form or another, and is unlikely to replace Cloud Computing anytime soon.