Fault-tolerant and secure distributed data storage using random linear network coding

Pouya Ostovari, Jie Wu · 2016

Network coding is a technique which can be used in wired and wireless networks to increase the throughput of the networks and provide reliable transmissions. Also, it can be used in distributed storage systems to store large data on different storages and provide fault tolerance against storage failures. Using network coding, the set of packets that form a file can be encoded to an infinite number of packets, and a subset of these coded packets is sufficient to retrieve the original data. In addition to providing fault tolerance, network coding is an efficient tool for protecting the data from eavesdroppers. An eavesdropper is not able to decode the coded packets and retrieve the original data unless it has access to a sufficient number of coded packets. Increasing the redundancy enhances the fault tolerance. However, it makes the system more vulnerable against eavesdropper attacks. In this work, we perform a tradeoff between security of a distributed storage system and its fault tolerance. We formulate the problem as a mixed integer and linear programming, and propose two linear programming optimizations to solve it.

Read the paper · More papers on PaperTik