Tree network coding for peer-to-peer networks

Arne Vater, Christian Schindelhauer, Christian Ortolf
2010 Proceedings of the 22nd ACM symposium on Parallelism in algorithms and architectures - SPAA '10  
Partitioning is the dominant technique to transmit large files in peer-to-peer networks. A peer can redistribute each part immediately after its download. BitTorrent combines this approach with incentives for uploads and has thereby become the most successful peer-to-peer network. However, BitTorrent fails if files are unpopular and are distributed by irregularly participating peers. It is known that Network Coding always provides the optimal data distribution, referred as optimal performance.
more » ... timal performance. Yet, for encoding or decoding a single code block the whole file must be read and users are not willing to read O(n 2 ) data blocks from hard disk for sending n message blocks. We call this the disk read/write complexity of an encoding. It is an open question whether fast network coding schemes exist. In this paper we present a solution for simple communication patterns. Here, in a round model each peer can send a limited amount of messages to other peers. We define the depth of this directed acyclic communication graph as the maximum path length (not counting the rounds). In our online model each peer knows the bandwidth of its communication links for the current round, but neither the existence nor the weight of links in future rounds. In this paper we analyze BitTorrent, Network Coding, Tree Coding, and Tree Network Coding. We show that the average encoding and decoding complexity of Tree Coding is bounded by O(kn log 2 n) disk read/write-operations where k is the number of trees and n the number of data blocks. Tree Coding has perfect performance in communication networks of depth two with a disk read/write complexity of O(pnt log 3 n) where p is the number of peers, t is the number of rounds, and n is the number of data blocks. For arbitrary networks Tree Coding performs optimally using 2(δ + 1) t−1 p log 2 n trees which results in a read/write complexity of O((δ + 1) t−1 n log 3 n) for t rounds and in-degree δ. * Partly supported by DFG research fund Schi 372/5-1.
doi:10.1145/1810479.1810503 dblp:conf/spaa/VaterSO10 fatcat:fqc5kbrekfeqll3srqsctjzeh4