mimik Technical Post
How can we transform billions of connected devices from a security challenge to a global opportunity?
Internet of Things has started to impact every aspect of our daily lives. Our appliances, cars, gadgets, communication devices, tools, and even some of our clothing have become nodes on the internet. By 2020, as many as 50 billion devices will be connected so there will be skyrocketing growth of traffic generated by devices at the edge of the network posing a monumental challenge to our networks and central cloud computing. Thankfully, we can take advantage of the ever-increasing computing capabilities of edge devices to turn them into cloud servers and extend central-cloud capabilities to the edge. Edge cloud to central cloud is like WiFi to Cellular Communication. Just as WiFi carries most of the global wireless traffic today, edge devices will soon manage most of the cloud computing burden.
According to Gartner’s 2017 Hype Cycle for Emerging Technologies, edge cloud computing is on the brink of becoming an “innovation trigger”. Microchips and sensors continue to become embedded in everyday objects, making edge cloud computing an immense opportunity. There are billions of potential edge servers today and there will be tens of billions more tomorrow.
An illustrative example: self-driving cars
Self-driving cars have many potential benefits: optimized traffic flow, improved fuel efficiency, reduced accidents, and drivers with more free time. However, a big challenge for self-driving cars is to find a cost-effective way to process the vast amounts of data that they generate. On average, every self-driving car generates approximately one GByte/sec of data which is orders of magnitude more data than the capacity of a 4G base station and an order of magnitude large than a 5G base station. There are no networks in the foreseeable future that can be used to send all this data back to the central cloud for processing. Most of this data needs to be processed locally and only a minimal set of processed data should be sent back to the “central cloud” for global coordination. Moreover, in order to meet latency requirements to take agile decisions, self-driving cars should communicate in the fastest way possible. This demands instantaneous processing of information and when possible peer to peer communication. This is where distributed edge cloud computing comes into play, transforming cars to “data centers on wheels” where most of the communication and processing is performed as close as possible to the edge.
In a distributed edge cloud environment, every car can be a set of microservices that can sense other cars not only because of all the sensors but also because their microservices can communicate with microservices of other cars. To make this work, microservices (within a car and between cars) need to form ad-hoc clusters based on scopes such as proximity, network or account affinity. This way, cars can process the terabytes of data as quickly and as efficiently as possible leveraging not only the processing power at the “central cloud” but also their own collective computing, storage and memory resources in a collaborative fashion with other cars on the road.
Edge cloud computing is the next major computing revolution
Throughout the last few decades, computing has experienced different cycles shifting between centralized and distributed. In the early days, computing was centralized with mainframe computing. In the mid-80s, with the advent of personal computers the industry shifted to distributed computing. In the last decade, we witnessed the move to centralized cloud computing. Many falsely predicted that this was the holy grail of computing and we would move to an era of thin clients where devices would be dumb screens and input devices and all the processing would be performed in data centres in the “cloud”. This made sense for some applications such as music or video streaming or hosting some software applications. In all these cases, edge devices do not generate too much data and are mostly passive receivers of information.
In the last few years, two major socio-technical trends have contributed to a fundamental change in production and consumption of data.
First, thanks to mobile internet and social media, ordinary people generate massive amounts of data turning them from mere consumers to consumers and producers. For example, today close to 500 million photos are uploaded on Facebook and Instagram and roughly 500 thousand hours of video is uploaded to YouTube daily; this is more than what the three major US networks generate in content over two years!!! This is not a consumer phenomenon but also applies to enterprises; for instance, more than 80% of businesses have started to leverage user-generated content in their marketing efforts.
Second, we have the rapid growth of IoT devices where many new edge devices produce valuable data. There are already 20 billion connected devices, 2.5 billion of which are B2B IoT devices. Over 300M wearable devices were sold in 2017 alone. Many of these devices generate small amounts of data but many generate massive amounts of data; for example, when video meets IoT. We apply machine-learning algorithms to video feeds allowing cameras to recognize people, objects, and situations automatically. There will be phenomenal growth in AR/VR in the gaming industry, and even the enterprise starting with creative applications and quickly moving to brick and mortar industries and manufacturing. Robots will also be producers of massive amounts of data at the edge.
Clearly, we are amid an explosion of data generated at the edge and the tsunami is yet to come. The question is can our communication networks scale to cope with the data generated at the edge? To try to answer this, we can look at two predictors: the Moore’s law in computing and its equivalent in network bandwidth. History has shown that computing power roughly doubles every 18 months (or hundred times every decade) whereas network bandwidth grows about 50 times every decade. In other words, even if the number of devices do not grow (which they clearly will), the communication network will be the bottleneck for the growth of IoT.
Setting bandwidth aside, many IoT applications such as self-driving cars or tactile control communications in various industries require low latency response. In this case, even if the network capacity is miraculously increased to cope with the data, laws of physics inhibit remote processing of data in the central cloud due to large latencies in the long-haul transmission of data.
So, what is the solution? How can we cope with the explosion of data at the edge and strict latency requirements of some IoT applications? The answer is distributed edge cloud computing. Edge cloud computing means that any device (or node) becomes a cloud server. As much as possible, the data is processed at the edge of a network, as close to the originating source as possible, instead of processing everything in the “central cloud”. This approach is faster, more efficient, and scalable: data can be immediately analysed and put into action overcoming bandwidth limitations and latency constraints on the network. Edge cloud computing is essential to meet stringent requirements on bandwidth and latency and at the same time minimizes power consumption and infrastructure costs.
Edge cloud computing is a paradigm shift that enables every device, appliance, or gadget to communicate and share resources making them part of the solution for scaling of IoT. It allows drones and robots to harness their collective resources in industries such as manufacturing, oil and gas, agriculture or mining, delivering real-time data and improving business efficiency. This new computing model will revolutionize the world in ways that we may not be able to predict at this moment.
The great news is that the technology is ready for developers today. mimik has developed a fully distributed edge cloud platform that extends central cloud to the edge: mimik arms developers with a platform to unleash the power of edge devices. mimik SDK solves many of the current challenges that centralized cloud computing “alone” cannot address. We extend the power of the “central cloud” to the edge and boost its reach so that bandwidth, latency constraints, and infrastructure cost do not become the bottleneck for the healthy and scalable growth of IoT.
We need a paradigm shift that transforms tens of billions of devices from a challenge to an opportunity. IoT requires a revolution in computing that unlocks the power of connected devices. Distributed edge cloud is the ideal solution to harness computing resources at the edge, unlocking the promise of a smart connected world that will bring massive efficiencies to enterprises and digital freedom to consumers.