Edge Computing vs Fog Computing
Improving data processing at a time when there is more and more data sounds good, doesn’t it? In this article, I will try to explain what exactly fog and edge computing are and point out what differences and similarities exist between these two technology platforms. With both of them, computational processes can be brought closer to where data is generated and collected.
But first… cloud computing
Before we jump seamlessly to edge and fog, it is worth mentioning the tip of the iceberg that is cloud computing.
Wanting to provide the simplest possible definition of cloud computing, it can be described as one of the computing models that relies on the external entities to share computing power remotely, but it is true that as many people there are as many definitions of the cloud… Why? In this case, its definition may depend on a particular person, company or institution, since to each of these parties the cloud may be used for different purposes. Here, though, we will focus on a more stripped-down definition without wanting to go into detail — after all, we need to move on to edge and fog, so to summarize it can be said that cloud computing is data procesing in the cloud, or more precisely, the use of external resources that help computers store, manage, process and/or transmit information.
From a private level, a good example is Google Drive or DropBox, where our device doesn’t physically have to store data — the cloud does it for them. Whereas for the corporate level, it looks different, as data can exist in many forms, come from IoT sensors (pieces of hardware that detect changes in an environment and collect data), and then be sent to a cloud service (e.g. Microsoft Azure, Amazon Storage Gateway, Veeam Cloud Connect or Backblaze, etc.). Physical devices need to send data to the cloud, and this is where the topic of edge computing and fog computing comes into play.
As the term suggests, with edge computing we are talking about “the edge” of the application network. We can understand it as an architecture of distributed IT resources, where data is processed at the edge of the network, as close to the sources of origin as possible. In this case, data is partially or completely processed and sent to the cloud for further processing or storage. However, it should be mentioned at this point that edge computing can realize the transfer of large amounts of data directly to the cloud, which can in turn affect system performance and capacity, as well as security.
And here fog computing sneaks in with help, which solves the above problem by putting a processing layer between the edge and the cloud. In this way, the fog computer receives the data collected at the edge and processes it before it goes to the cloud. So let’s skip to defining fog computing.
We understand fog computing as the calculation layer between the cloud and the edge. In the context of edge computing, fog acts as a “receiver” of data from the edge layer before it reaches the cloud (“decides” so what is relevant and what is not), while edge computing sends huge streams of data toward the cloud. With fog computing, irrelevant data can be removed through analysis in the fog layer, while important data remains in the cloud. Additionally, fog computing therefore increases efficiency and can be used to improve cybersecurity, as well as regulatory compliance.
Important to remember before we go into the overview — fog computing can’t replace edge, which in turn can actually function without fog.
Fog computing is therefore an add-on that requires investment, but it is an extremely helpful (but complex) system that needs to be integrated into the current infrastructure.
Key similarities and differences between Edge and Fog Computing
Actually, it can be said that edge and fog computing share many similarities. Starting with the basics — both provide data traffic to the cloud, but if we would like to distinguish in particular the most important benefits that edge and fog bring, we can mention:
- enhanced bandwidth
Bandwidth is the amount of data that can be transferred in a given time (with each network having a bandwidth limit). It can happen that networks to which many devices are connected will be overloaded due to bandwidth limitations, so edge and fog computing provide companies with a workaround for such limitations. By minimizing bandwidth requirements, they also reduce costs, which without them would be high if a company wanted to, for example, increase that bandwidth and the number of connected devices substantially. It is worth mentioning that, especially in IoT environments, solutions such as edge and fog computing help deal with the number of devices and the volume of data in the context of multiple devices.
- enabling autonomous operations
At this point, the theme plays out around the complete lack of connectivity. Some industries or companies (while having access to modern equipment and technologies like IoT or ML and others), have significantly worse conditions for catching an Internet connection (e.g. high altitude weather observatories, ships in open water or remote oil rigs, etc.). In such situations, edge and fog computing work together to process data locally even if both bandwidth and connectivity are limited. After local saving, they are able to transmit the data to a central platform.
- minimized lag and overload
In a network problem, latency is usually referred to as the time it takes to transfer data from one place to another. The speed at which data is transported can be affected, for example, by large distances between servers or clients. In turn, it is well known that in the business context, delays in data transfer realistically affect companies’ operations in terms of processing very important elements of daily work — monitoring the status of equipment, necessary analysis to help make decisions, etc. It’s real time that plays a key role here, so with edge and fog computing, you can execute processes in near real time thanks to local data processing.
- improved security and privacy
Even with the cloud, there can be some concern about the security of data — after all, it is transported from point to point. Edge and fog computing encrypt data until it leaves the edge. Importantly, they are also responsible for identifying potential cyber threats and taking action to prevent them — all thanks to the distributed yet complex nature of the environments. This ensures that threats caught by them do not affect the network. Also important at this point is private data, which can be encrypted thanks to edge and fog.
- compliance with regulatory requirements
Rules apply everywhere, and in the case described here we may be dealing with ones that limit the amount of data transferred and collected between regions/countries or continents. Through such regulations, companies must comply with the orders — otherwise they can get penalties for non-compliance. Edge and fog can be called such guardians of the law — they allow compliance with the regulations in question, as well as allow processing and encryption of raw data within a specific jurisdiction. This feature of theirs, therefore, makes it possible to hide data from global networks, or secure it from being sent over the network to a data center outside the jurisdiction.
Fog computing is a term originated by Cisco and is widely recognized as an alternative to cloud computing and data collection, while edge is the computing architecture itself, which without fog freely exists and implements data processing. The concept of fog computing implies that, in frequent cases, its process does not take place on the same device on which the data is acquired or processed. This distinguishes the concept from edge, where edge computers are mostly the same ones responsible for processing data.
Fog computing does not exist without an edge. It is unable to collect and process data on its own, while edge does well without fog — so it can be said that fog is simply a good helper for edge in many more difficult tasks.
The applications of both vary depending on the needs.
- processing and storage
A fog computer connects to a batch of edge computers, while an edge computer processes data on its own or in close proximity.
An example of an edge computer might be a smartphone connected to the cloud, while an example of a fog computer might be an IIoT environment in a manufacturing plant. Hence the differences in performance as well — fog provides a wider range.
- economic issues
Here it is worth recalling that fog computing services come down to the need to configure down to the ground, either through a combination of “as a service” deployments. This may then be more costly than edge, but is worth considering, as it will reduce potential problems resulting from the lack of this functionality in the long run. A company investing in fog may spend a lot on deployment, but it will save on problems arising from bandwidth, memory limitations or transmission delays.
Well, so… we made it to the end! By defining both terms, and starting at first from the cloud as such, we have arrived to the point where we know what the differences between edge and fog are, and what places they play in the context of operations with data, how they can work together, what similarities there are between them, and what example applications they can have.
In my perception, metaphorically, edge can be described as a lens, while fog can be described as a filter through which a given image is formed, so it can clearly be seen that fog does not replace edge, but helps it. Some will say that there is no point in defining fog at all, but I believe that distinguishing between the two terms allows one to understand the bigger picture of cloud operations. Thanks for reading!
Words by Kinga Kuśnierz, Content Writer at Altimetrik Poland