Skip to main navigation Skip to search Skip to main content

Applying network coding to peer-to-peer file sharing

  • Stony Brook University

Research output: Contribution to journalArticlepeer-review

25 Scopus citations

Abstract

Network coding is a promising enhancement of routing to improve network throughput and provide high reliability. It allows a node to generate output messages by encoding its received messages. Peer-to-peer networks are a perfect place to apply network coding due to two reasons: the topology of a peer-to-peer network is constructed arbitrarily, thus it is easy to tailor the topology to facilitate network coding; the nodes in a peer-to-peer network are end hosts which can perform more complex operations such as decoding and encoding than simply storing and forwarding messages. In this paper, we propose a scheme to apply network coding to peer-to-peer file sharing which employs a peer-to-peer network to distribute files resided in a web server or a file server. The scheme exploits a special type of network topology called combination network. It was proved that combination networks can achieve unbounded network coding gain measured by the ratio of network throughput with network coding to that without network coding. Our scheme encodes a file into multiple messages and divides peers into multiple groups with each group responsible for relaying one of the messages. The encoding scheme is designed to satisfy the property that any subset of the messages can be used to decode the original file as long as the size of the subset is sufficiently large. To meet this requirement, we first define a deterministic linear network coding scheme which satisfies the desired property, then we connect peers in the same group to flood the corresponding message, and connect peers in different groups to distribute messages for decoding. Moreover, the scheme can be readily extended to support link heterogeneity and topology awareness to further improve system performance in terms of throughput, reliability and link stress. Our simulation results show that the new scheme can achieve 15%-20% higher throughput than another peer-to-peer multicast system, Narada, which does not employ network coding. In addition, it achieves good reliability and robustness to link failure or churn.

Original languageEnglish
Article number6497042
Pages (from-to)1938-1950
Number of pages13
JournalIEEE Transactions on Computers
Volume63
Issue number8
DOIs
StatePublished - Aug 2014

Keywords

  • file sharing
  • multicast
  • Network coding
  • peer-to-peer networks
  • web-based applications

Fingerprint

Dive into the research topics of 'Applying network coding to peer-to-peer file sharing'. Together they form a unique fingerprint.

Cite this