R2: Random Push with Random Network Coding in Live Peer-to-Peer Streaming

  • Authors:
  • Mea Wang;Baochun Li

  • Affiliations:
  • Univ. of Toronto, Toronto;-

  • Venue:
  • IEEE Journal on Selected Areas in Communications
  • Year:
  • 2007

Quantified Score

Hi-index 0.07

Visualization

Abstract

In information theory, it has been shown that network coding can effectively improve the throughput of multicast communication sessions in directed acyclic graphs. More practically, random network coding is also instrumental towards improving the downloading performance in BitTorrent-like peer-to-peer content distribution sessions. Live peer-to-peer streaming, however, poses unique challenges to the use of network coding, due to its strict timing and bandwidth constraints. In this paper, we revisit the complete spectrum in the design space of live peer-to-peer streaming protocols, with a sole objective of taking full advantage of random network coding. We present R2, our new streaming algorithm designed from scratch to incorporate random network coding with a randomized push algorithm. R2 is designed to improve the performance of live streaming in terms of initial buffering delays, resilience to peer dynamics, as well as reduced bandwidth costs on dedicated streaming servers, all of which are beyond the basic requirement of stable streaming playback. On an experimental testbed consisting of dozens of dual-CPU cluster servers, we thoroughly evaluate R2 with an actual implementation, real network traffic, and emulated peer upload capacities, in comparisons with a typical live streaming protocol (both without and with network coding), representing the current state-of-the-art in real-world streaming applications.