Fault-Tolerant and Secure Data Transmission Using Random Linear Network Coding
Pouya Ostovari, Jie Wu · 2017
Network coding is a technique used to improve both wired and wireless networks' throughput and provide reliable transmission. In network coding, original data packets can be encoded to an infinite number of coded packets. A subset of these coded packets is sufficient to decode the coded packets and retrieve the original data. In addition to providing reliable data transmission, network coding can be used as a lightweight security mechanism to protect data against eavesdroppers. An eavesdropper is not able to decode coded packets and retrieve original data unless it has access to a sufficient number of coded packets. In a data transmission application, transmitting more redundant packets increases the chance of delivering a sufficient number of coded packets to the destination. As a result, this increases the reliability of the data transmission. However, more redundant transmissions make the system more vulnerable to eavesdropper attacks because there is a higher chance that an eavesdropper will receive enough coded packets. In this work, we study network coding to provide reliable and secure data transmission schemes by performing a trade-off between the security and reliability of the data transmission. We formulate the problem as a mixed integer and linear programming problem, and we propose a linear programming approximation to solve it. We study the performance of our proposed methods through extensive simulations.