In his classic novel The Strange Case of Dr. Jekyll and Mr. Hyde, Robert Louis Stevenson writes about a person with two personalities: the gentle and caring Dr. Jekyll, and the evil sociopath Mr. Hyde. People who meet one or the other think they are two very different people, yet they are truly two faces of the same man. It is the same way in computing, where one can be tempted to see two opposite approaches – edge computing and cloud computing. They both address the same problem to implementing the IoT. But, on the contrary, I believe these computing schemes are two sides of the same coin.
First popularized by the Internet and mobile industries, edge computing describes architectures where nodes close to the user prefetch and cache network data to improve the customer experience through ultra-low latency. Initiatives like the Open Edge Computing Initiative attempt to standardize the concept. In the context of IoT, edge computing means that most device computing tasks are performed in the field. The tasks can be done in the end node itself or in a gateway that serves as a bridge between several simple nodes and the Internet.
Similarly, cloud computing, which originated from the IT world, describes enterprise software executing in the cloud on connected servers, as opposed to servers on premise. In the context of IoT, it means that most of the processing and decision-making is accomplished in the cloud.
You may see these two options in opposition to each other. A cloud computing approach would mean your edge device could be simpler, lower power, lower performance, and less expensive. Because all the logic and programming is in the cloud, it is very flexible. Updates are easy and can follow the well-established IT processes.
On the other hand, edge computing comes with other benefits. Because the edge does most of the work, edge computing is more resilient to network disruptions, and it is easy to implement schemes that ensure 24/7 availability. As the device directly processes the sensor data, real-time decisions are possible: In terms of decision-making, industrial systems require a deterministic behavior (predictable latency) with a latency usually between 250us to 20ms as opposed to servers and IT systems that can accept 0.5-2s. Best of all, you only need low data rates to the Internet, which translates to lower network and cloud costs due to lower network bandwidth and less data storage in the cloud.
[Table 1 | Edge vs. Cloud]
Differences are blurring
While it looks like there is a clear either/or choice to be made here, the truth is a convergence trend is happening, which makes it all less dramatic. Performance at the node is becoming less of an issue, and whether at the node or in a gateway, the edge is becoming smarter.
With the IoT, security and connectivity come to the edge. This commands higher performance controllers, with more software and more flexibility. The benefit of having IP to the end node is it pushes advanced communication stacks to the edge, requiring more capable processors with more memory, performance and software. Root-of-trust and run-time security monitoring in the edge becomes the norm, and because no one knows what security-breach future hackers will find, it is almost mandatory to be able to update firmware remotely for every node.
With the IoT, the world of IT software and embedded software collide, and it makes sense for developers to converge on coding language and development platforms. I wrote in another blog that the IoT is pushing the softwarization of hardware. Amazon’s latest release of the GreenGrass platform promises to use the same software in the cloud as on the device – a blatant demonstration of this trend.
All of this is happening while microprocessors (MPUs) and microcontrollers (MCUs) see an astonishing increase in their capabilities. MCUs in the 200MHz frequency range with Mbytes of flash and hundreds of Kbytes of RAM, like the Renesas Synergy S7 Series, are more common now. In addition, entry-level MPUs able to run Linux, like the Renesas RZ/A family, are available, too. Both MCU and MPU families come with advance software support, including open source, or they can be fully supported by one manufacturer, as is the case with the Renesas Synergy Platform.
The hybrid approach
The fact is that none of the options, pure edge or pure cloud, is satisfactory. Look at the benefit/drawbacks highlighted in Table-1 and think twice about what is needed from the customer point-of-view. None of the drawbacks of each solution is acceptable: no one wants an expensive node that requires lots of power. No one wants to have service disruptions or a network failure that downgrades the IoT device capabilities. And no one wants to pay much for network and cloud access, because that access is only an enabling technology, not the final service the IoT provides.
In the end, the ideal IoT device, i.e. the one that will be commercially successful, must provide all the benefits in Table 2. That is where the gentle Dr. Edge shows its true nature and can be Mr. Cloud, as well. The convergence between cloud and edge for security, networking stacks and platform creates an environment where the edge can be as flexible as the cloud, and as resilient as embedded devices are today. The availability of more capable embedded devices make the edge smarter, in the node or through a gateway, while keeping costs under control and power in check.
Table 2: Ideal IoT device benefits
Welcome Dr. Edgecloud
Historians of the technology sector would certainly point out that this hybrid combo idea is not new. When computers were expensive, the original computing solution in the 70s and 80s was the “client-server”, which meant a server mainframe (the cloud) was doing all the work while the client (the edge) was just a user interface. With the dramatic performance improvements and cost decreases of computing power over the years, the pendulum has swung completely to the other side as witnessed with PCs and workstations in the 90s.
Next came the Internet, and again, the industry pushed the other way. Some may recall the (failed) attempt by Oracle to introduce a “network computer” in the late 90s. In the last decade, increasing investment in server computing and storage by mega corporations like Amazon and Microsoft fueled the trend for SaaS and PaaS solutions -- both are cloud-computing options. Yet the edge is smarter than ever and the stable solution is one where both edge and cloud work together to provide users with the best quality of service.
The same history is repeating itself in the IoT, just much faster. From initially a cloud only solution with dumb devices, the market is evolving quickly toward the smart-device/smart-cloud hybrid approach. When the dualism between the two solutions gradually disappears, we can tip our hats and say hello to Dr. Edgecloud!