Distributed storage systems (DSSs) have gained a lot of interest recently, thanks to their robustness and scalability compared to single-device storage. Majority of the related research has exclusively concerned the network layer. At the same time, the number of users of, e.g., peer-to-peer (p2p) and device-to-device (d2d) networks as well as proximity based services is growing rapidly, and the mobility of users is considered more and more important. This motivates, in contrast to the existing literature, the study of the physical layer functionality of wireless distributed storage systems. In this paper, we take the first step towards protecting the storage repair transmissions from physical layer errors when the transmission takes place over a fading channel. To this end, we introduce the notion of a space-time storage code, drawing together the aspects of network layer and physical layer functionality and resulting in cross-layer robustness. It is also pointed out that existing space-time codes are too complex to be utilized in storage networks when the number of helpers involved is larger than the number of receive antennas at the newcomer or data collector, hence creating a call for less complex transmission protocols.
Most storage-related research focuses on the (logical) network layer, while the physical layer functionality is usually ignored due to the fact that many storage systems in big data centers are wired. Nonetheless, the authors are aware of some interesting works considering the physical layer. In @cite_15 , a so-called partial downloading scheme is proposed that allows for data reconstruction with limited bandwidth by downloading only parts of the contents of the helper nodes. In @cite_4 , the use of a forward error correction code (, LDPC code) is proposed in order to correct bit errors caused by fading. In @cite_9 , optimal storage codes are constructed for the error and erasure scenario. The present paper deviates from the previous work in that it addresses the actual of the transmitted repair data in order to fight the effects caused by fading.
@cite_9 @cite_15 @cite_4
1998021782 2951800112 2951975749 2105185344
We consider a distributed storage system employing some existing regenerate codes where the storage nodes are scattered in a wireless network. The data collector connects to the storage nodes via orthogonal channels and downloads data symbols from these nodes. In the existing data reconstruction schemes for distributed storage systems, the data collector downloads all symbols from a subset of the storage nodes. Such a full-downloading approach becomes inefficient in wireless networks since due to fading, the wireless channels may not offer sufficient bandwidths for full downloading. Moreover, full-downloading is also less power efficient than partial downloading. In this paper, given a coding scheme employed by the wireless distributed storage system, we propose a partial downloading scheme that allows downloading a portion of the symbols from any storage node. We formulate a cross-layer wireless resource allocation problem for data reconstruction in distributed storage systems employing such partial downloading. To derive the fundamental properties of partial downloading as well as to reduce the complexity of wireless resource allocation, we derive necessary and sufficient conditions for data reconstructability for partial downloading, in terms of the numbers of downloaded symbols from the storage nodes. We also propose channel and power allocation schemes for partial downloading in wireless distributed storage systems. Simulation results are provided to demonstrate the significant power savings by the proposed partial downloading scheme compared to the full-downloading methods for distributed storage. Distributed storage systems provide reliable access to data through redundancy spread over individually unreliable nodes. Application scenarios include data centers, peer-to-peer storage systems, and storage in wireless networks. Storing data using an erasure code, in fragments spread across nodes, requires less redundancy than simple replication for the same level of reliability. However, since fragments must be periodically replaced as nodes fail, a key question is how to generate encoded fragments in a distributed way while transferring as little data as possible across the network. For an erasure coded system, a common practice to repair from a node failure is for a new node to download subsets of data stored at a number of surviving nodes, reconstruct a lost coded block using the downloaded data, and store it at the new node. We show that this procedure is sub-optimal. We introduce the notion of regenerating codes, which allow a new node to download of the stored data from the surviving nodes. We show that regenerating codes can significantly reduce the repair bandwidth. Further, we show that there is a fundamental tradeoff between storage and repair bandwidth which we theoretically characterize using flow arguments on an appropriately constructed graph. By invoking constructive results in network coding, we introduce regenerating codes that can achieve any point in this optimal tradeoff. We consider the setting of data storage across n nodes in a distributed manner. A data collector (DC) should be able to reconstruct the entire data by connecting to any k out of the n nodes and downloading all the data stored in them. When a node fails, it has to be regenerated back using the existing nodes. In a recent paper, have obtained an information theoretic lower bound for the repair bandwidth. Also, there has been additional interest in storing data in systematic form as no post processing is required when DC connects to k systematic nodes. Because of their preferred status there is a need to regenerate back any systematic node quickly and exactly. Replacement of a failed node by an exact replica is termed Exact Regeneration.In this paper, we consider the problem of minimizing the repair bandwidth for exact regeneration of the systematic nodes. The file to be stored is of size B and each node can store alpha = B k units of data. A failed systematic node is regenerated by downloading beta units of data each from d existing nodes. We give a lower bound for the repair bandwidth for exact regeneration of the systematic nodes which matches with the bound given by For d >= 2k-1 we give an explicit code construction which minimizes the repair bandwidth when the existing k-1 systematic nodes participate in the regeneration. We show the existence and construction of codes that achieve the bound for d >= 2k-3. Here we also establish the necessity of interference alignment. We prove that the bound is not achievable for d = 2k-1. Distributed storage systems provide reliable access to data through redundancy spread over individually unreliable nodes. Application scenarios include data centers, peer-to-peer storage systems, and storage in wireless networks. Storing data using an erasure code, in fragments spread across nodes, requires less redundancy than simple replication for the same level of reliability. However, since fragments must be periodically replaced as nodes fail, a key question is how to generate encoded fragments in a distributed way while transferring as little data as possible across the network. For an erasure coded system, a common practice to repair from a single node failure is for a new node to reconstruct the whole encoded data object to generate just one encoded block. We show that this procedure is sub-optimal. We introduce the notion of regenerating codes, which allow a new node to communicate functions of the stored data from the surviving nodes. We show that regenerating codes can significantly reduce the repair bandwidth. Further, we show that there is a fundamental tradeoff between storage and repair bandwidth which we theoretically characterize using flow arguments on an appropriately constructed graph. By invoking constructive results in network coding, we introduce regenerating codes that can achieve any point in this optimal tradeoff.