P2P Streaming - Part-1: Native Multicast,

Preview:

Citation preview

P2P Streaming-

Part-1: Native Multicast, End-System Multicast,

and intro to P2P-Streaming

CS 7270Networked Applications &

ServicesLecture-12

Reading-1

• “Opportunities and Challenges of Peer-to-Peer Internet Video Broadcast” by J. Liu et al.

• Very nicely written tutorial• To appear at IEEE Proceedings this year• Based on (highly influential) ESM project

from Hui Zhang’s group at CMU• Hui’s slides: http://

www.cs.cmu.edu/~hzhang/Talks/ESMPrinceton.pdf

Reading-2

• “Insights into PPLive: A Measurement Study of a LargeScale P2P IPTV System” by X. Hei et al.

• PPLive: one of the most popular P2Pstreaming systems, mostly used for Chinese TV shows

• Very little known about system architecture

• The paper attempts a measurement-based reverse engineering study

Basics• PPLive: free P2P-based IPTV• As of January 2006, the PPLive network

provided 200+ channels with 400,000 daily users on average.

• The bit rates of video programs mainly range from 250 Kbps to 400 Kbps with a few channels as high as 800 Kbps.

• The video content is mostly feeds from TV channels in Mandarin.

• The channels are encoded in two video formats: Window Media Video (WMV) or Real Video (RMVB).

• The encoded video content is divided into chunks and distributed to users through the PPLive P2P network.

System architecture

• Cached contents can be uploaded to other peers watching the same channel.

• This peer may also upload cached video chunks to multiple peers. • Received video chunks are reassembled in order and buffered in

queue of PPLive TV engine, forming local streaming file in memory.

• When the streaming file length crosses a predefined threshold, the PPLive TV engine launches media player, which downloads video content from local HTTP streaming server.

• After the buffer of the media player fills up to required level, the actual video playback starts.

• When PPLive starts, the PPLive TV engine downloads media content from peers aggressively to minimize playback start-up delay.

• When the media player receives enough content and starts to play the media, streaming process gradually stabilizes.

• The PPLive TV engine streams data to the media player at media playback rate.

Measurement setup• One residential and one campus PC “watched”

channel CCTV3• The other residential and campus PC

“watched” channel CCTV10 • Each of these four traces lasted about 2 hours. • From the PPLive web site, CCTV3 is a popular

channel with a 5-star popularity grade and CCTV10 is less popular with a 3-star popularity grade.

Session durations • Signaling versus video sessions• All sessions are TCP based• The median video session is about 20 seconds and about

10% of video sessions last for over 15 minutes or more.

Video traffic breakdown among sessions

Start-up delays

• Two types of start-up delay: – the delay from when one channel is selected until

the streaming player pops up; – the delay from when the player pops up until the

playback actually starts.

• The player pop-updelay is in general 10-15 seconds and the player buffering delay is around 10-15 seconds.

• Therefore, the total start-up delay is around 20 30 seconds.

• Nevertheless, some less popular channels have a total start-up delays of up to 2 minutes.

Upload-download rates

Upload-download rates (cont)

Estimating the redundancy ratio• It is possible to download same video blocks more than once

• Excluding TCP/IP headers, determine total streaming payload for the downloaded traffic.

• Utilizing video traffic filtering heuristic rule (packet size > 1200B) extract video traffic.

• Given playback interval and the media playback speed, obtain a rough estimate of the media segment size.

• Compute the redundant traffic by the difference between the total received video traffic and the estimated media segment size.

• Define redundancy ratio as ratio between redundant traffic and estimated media segment size.

Dynamics of video participants

Peer arrivals & departures

Geographic distribution of peers

Recommended