Task Allocation and Coding Design for Secure Coded Edge Computing

Project: Research

View graph of relations


computing utilizes distributed computing resources close to data instead of moving data to centralized computing powerhouses as that in cloud computing. Edge computing is the pain relief for a lot of applications requiring low response time. It, unfortunately, also opens a door to additional security headaches. In edge computing, computing resources may come from users' computers, IoT devices, and edge servers owned by different service providers. The heterogeneous nature of computing devices in edge computing imposes two challenges in adopting edge computing for computation. Firstly, edge computing devices may not be trustable, thus, protecting data confidentiality becomes a critical requirement in distributing tasks to edge computing devices. Secondly, some devices may not return the results in a timely manner as edge computing devices are often less powerful than servers in datacenters. In this project, we aim to tackle these two challenges with linear coding. Linear coding can achieve data confidentiality by adding random information to the original data before it is distributed to edge devices. Linear coding can tolerate some stragglers, i.e., the devices that return results much later than expected, by adding redundant information to the original data. To this end, it is important to carefully design code such that the user can successfully decode the final result once sufficient, instead of all, intermediate results are received from the edge devices. Meanwhile, task allocation, which selects a set of edge devices to participate in a computation task, affects not only the total resource consumption, including computation, storage, and communication, but also coding design. In this project, we study task allocation and coding design, two highly-coupled problems in secure coded edge computing, in a unified framework. In particular, we take matrix multiplication, a fundamental building block of many distributed machine learning algorithms, as the representative computation task. We study optimal task allocation and coding design to minimize resource consumption while achieving information-theoretic security and meeting the task deadline. Tackling fundamental problems in edge computing systems that have a broad range of real-world applications, this project will create a set of algorithms and carefully-designed linear codes that have theoretically provable optimality and practically verifiable performance for task allocation in different system settings. With the above research outcome, this project will make significant contributions in scientific research and tangible impact in industrial practice. 


Project number9042818
Grant typeGRF
Effective start/end date1/01/20 → …