1 / 18

Lava: A Reality Check of Network Coding in Peer-to-Peer Live Streaming

Lava: A Reality Check of Network Coding in Peer-to-Peer Live Streaming. Mea Wang, Baochun Li Department of Electrical and Computer Engineering University of Toronto Infocom 2007. Question?. How helpful is networking coding in peer-to-peer streaming? Network coding

lynley
Download Presentation

Lava: A Reality Check of Network Coding in Peer-to-Peer Live Streaming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lava: A Reality Check of Network Coding in Peer-to-Peer Live Streaming Mea Wang, Baochun Li Department of Electrical and Computer Engineering University of Toronto Infocom 2007

  2. Question? • How helpful is networking coding in peer-to-peer streaming? • Network coding • Realistic testbed, Lava • With actual network traffic • P2P streaming, Vanilla • Pull-based peer-to-peer live streaming protocol

  3. Network Coding • Originally proposed in information theory • Theoretically improve network throughput of multicast sessions in directed acyclic graphs, achieving their cut-set capacitybounds. directed acyclic graph • A promising information theoretic approaches to improve performance in peer-to-peer and wireless networks

  4. Why Network Coding? • Node B • Packet 1 or Packet 2? • Packet 1 : • Link between node B and node C can not be used • Packet 2 : • Without any knowledge of the transfers in the rest of the network • Which is the right packet? • Node B download a linear combination of packets 1 and 2 from A • Can be used with Node C Network Coding benefits when nodes only have local information.

  5. Lava • Experimental testbed of network coding in peer-to-peer live streaming • Lava: Architecture • Lava: Steaming with Vanilla • Lava: Progressive network coding

  6. Lava: Architecture • A cluster of 44 high-performance servers • Interconnected by Gigabit Ethernet • Emulating upload bandwidth capacities on each peer at the application layer

  7. Lava: Streaming with Vanilla • A standard peer-to-peer streaming protocol • Data-driven pull-based peer-to-peer protocol

  8. Lava: Progressive Network Coding • Randomize network coding : • a segment Is divided into n blocks • Randomly chooses a set of coding coefficients

  9. Lava: Progressive network coding • Progressive decoding • Using Gauss-Jordan elimination instead of Gaussian elimination • It can start to decode as soon as the first coded block is received • The decoding time overlaps with the time required to receive the original block. • Reduced row-echelon form (RREF)

  10. Experimental Result • With network coding • Decoding BW decreases faster than the encoding BW as the number of blocks increases. • Make decoding process the bottleneck of network coding in the streaming process. • Support a wide range of streaming rates (100kB – 8MB per second)

  11. Experimental Result • With / without network coding • Transmission time: the time required to completely receive a segment • Recovery time: the time spent in the decoding process to recover the original blocks after all blocks have been received. The computational overhead of Gauss-Jordan elimination Decoding times are almost completely concealed within the time required to receive the segment

  12. Experimental Result • Tuning density and aggressiveness : • Density: the ratio of none-zero entries in the set of coding coefficients d(0<d<1) • The lower coding density leads to a smaller number of blocks being coded, which reduces the coding complexity. • Aggressiveness: the peer starts producing and serving new coded blocks after a*n (0<a<1) coded blocks has been received. • A lower aggressiveness setting leads to more “supply “ of coded blocks.

  13. Experimental Result • playback quality: • Playback skips: • Bandwidth redundancy: the percentage of discarded blocks (due to linear dependence or obsolescence) insignificant The best playback is achieved when both aggressiveness and density are 100% For typical streaming rates (e.g., 64 KB per second), the aggressiveness and density settings do not have significant effect on the playback quality and bandwidth redundancy.

  14. Experimental Result • Three different streaming rate: • Supply > demand • Supply ~= demand • Supply < demand Better when a closes match between supply and demand Peers may be served by multiple randomly selected upstream peers that have coded blocks of the requested segment. Network coding makes it possible to perform data streaming with finer granularity, so that the impact of a bandwidth supply shortage is significantly less severe.

  15. Experimental Result • Balance between bandwidth supply and demand The buffering levels with network coding increases slowly at the beginning of a session, due to processing overhead of coded blocks. (increasing initial peers)

  16. Experimental Result • Scalability • Add one peer on each server at a time Though network coding doesn’t improve the playback quality in static sessions, it reduces the amount of redundancy with respect to bandwidth usage.

  17. Peer Dynamic • Interarrival times of peer join events and peer lifetimes are modeled as a Weibull distribution (k,λ), • with a PDF • Shape parameter k, scale parameter λ Without initial skips Slow increase of buffering levels at the beginning of a session Better performance with network coding, especially when peers depart at a faster rate. With initial skips

  18. Peer Dynamic Although Vanilla enjoys a better overall playback, its buffering level fluctuates significantly More stable and better performance in higher churn rate. Despite initial skips, network coding demonstrates its resilience to network dynamics, without incurring any additional bandwidth.

More Related