A Network-based Compute Reuse Architecture for IoT Applications

04/08/2021
by   Boubakr Nour, et al.
0

The tremendous advancements in the Internet of Things (IoT) increasingly involve computationally intensive services. These services often require more computation resources than can entirely be satisfied on local IoT devices. Cloud computing is traditionally used to provide unlimited computation resources at distant servers. However, such remote computation may not address the short-delay constraints that many of today's IoT applications require. Edge computing allows offloading computing close to end users to overcome computation and delay issues. Nonetheless, the edge servers may suffer from computing inefficiencies. Indeed, some IoT applications are invoked multiple times by multiple devices. These invocations are often used with the same or similar input data, which leads to the same computational output (results). Still, the edge server willfully executes all received redundant tasks. In this work, we investigate the use of the computation reuse concept at the edge server. We design a network-based computation reuse architecture for IoT applications. The architecture stores previously executed results and reuses them to satisfy newly arrived similar tasks instead of performing computation from scratch. By doing so, we eliminate redundant computation, optimize resource utilization, and decrease task completion time. We implemented the architecture and evaluated its performance both at the networking and application levels. From the networking perspective, we reach up to an 80% reduction in task completion time and up to 60% reduction in resource utilization. From the application perspective, we achieve up to 90% computation correctness and accuracy.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset