Using Layered Video to Provide Incentives in P2P Live Streaming
Published byModified over 4 years ago
Presentation on theme: "Using Layered Video to Provide Incentives in P2P Live Streaming"— Presentation transcript:
1 Using Layered Video to Provide Incentives in P2P Live Streaming Zhengye LiuYanming ShenShivendra PanwarKeith W. RossYao WangPolytechnic University, Brooklyn, NY, USAACM SIGCOMM P2P-TV Workshop, Kyoto, 20071
2 Outlines Introduction P2P live streaming System architecture and designLayered Video / MDCSimulation resultsConclusion
3 BT (Basic idea) Chop file into many pieces. piece : typically 256KB in size.Replicate different pieces on different peers as soon as possible.As soon as a peer has a complete piece, it can trade it with other peers.Hopefully, we will be able to assemble the entire file at the end.33
4 BT (Basic components) Seed Leacher Torrent file Tracker Peer that has the entire file.LeacherPeer that has an incomplete copy of the file.Torrent fileFiles are typically fragmented into 256KB pieces.The torrent file lists the hashes of all the pieces to allow peers to verify integrity.Typically hosted on a web server.TrackerThe tracker is responsible to help the peers find each other and to keep the download/upload statistics of each peer.Returns a random list of peers.44
6 BitTorrent: Incentive Question: What is the incentive to provide higher upload rate?Answer: To get file fasterImplementation: Tit-for-tat mechanism. Search for trading partners that upload to you at higher rates6
7 BitTorrent: TradingAlice measures rate she receives bits from each neighbor.Alice sends chunks to 4 best neighbors.Every 10 seconds, she recalculates rates & possibly modifies set of 4 peers.Every 30 seconds, she “optimistically unchokes” random peer.7
8 BitTorrent: Trading (1) Alice “optimistically unchokes” Bob (2) Alice becomes one of Bob’s top-four providers; Bob reciprocates(3) Bob becomes one of Alice’s top-four providersWith higher upload rate, can find better tradingpartners & get file faster!8
9 Basic idea P2P live streaming trackerobtain listof peerspeertradechunksSourceof video9
10 Incentives for Live Streaming Why upload at all?Currently no tit-for-tat mechanism in existing deploymentsIs tit-for-tat a sufficient incentive?No! Why provide more upload bandwidth if you’re receiving the video at the full rate?Our main idea:If you upload more, you get better quality.10
11 Layered Video Single layer Video Layered video All peers receive the same video qualityPPStream, PPLive, CoolStreamingLayered videoA video is encoded into several layersMore layers introduce better video qualityNested dependence between layersA higher layer can be decoded only if all the lower layers are availableHigher upload contribution results in better received video quality11
12 Multiple Description Coding (MDC) Video encoding/decoding technologyVideo content is encoded into several descriptionsEach description can be decoded independentlyEven receiver only receives one description, the video is displayed with low qualityThe more descriptions received, the better video qualityCompatible for transmitting video streaming in the InternetVideo qualityMDCMDCVideo contentencodingdecoding# of description12
13 Layered Video w/ Tit-for-Tat Generate multiple layers, each layer divided into layer chunks (LCs)Assign higher priorities to the lower layersExchange LCsMeasure download rates from neighborsReciprocate to neighbors based on their contributions13
14 Supplier & Receiver Side Schedulers Supplier: How to allocate uplink bandwidth to neighbors?BitTorrent roughly gives each unchoked neighbor an equal share.Receiver: How to maximize the received video qualityMultiple LCs are to be requested14
15 Supplier Side Scheduler Goal: Supply neighbors in proportion to their contributionsMeasure the download rates, dk from neighbor kMaintain separate FIFO rqst queue for each neighborServe neighbor k next with probability:15
16 Receiver Side State Peer request LCs at beginnings of rounds Figure 1: Buffer state at a given time.Peer request LCs at beginnings of roundsPeer may request LCs from the current time up until a window of B chunks times into the future, B=8 here.16
17 Receiver Side Scheduler (1) Goal: Maximize the received video qualityWhich LC should be requested first?Assign heuristic “importance” to each LC, taking into account:Layer indexPlayback deadlineRarenessRequest LCs from the highest importance to the lowest importance17
18 Receiver Side Scheduler (2) Where to send the request for the LC?Estimate the current delay from each neighbor:where mk is # of outstanding requests, r is the video bit rate of one layer, Δis chunk lengthSend request to neighbor that will send it firstAs long as it can come before deadline18
19 Performance Study: Schemes Single layer video without incentives (Single-Layer)A video is encoded by single layer video codingLayered video without incentives (Layered)A video is encoded into multiple layers; however, the upload contribution is ignored and each peer is treated equallyMDC with incentives (MDC-Incent)A video is encoded into multiple descriptions, and the received video quality of a peer depends on its upload contributionLayered video with incentives (Layered-Incent)our proposed scheme19
20 System Setup (1) Peers Video Uplink bandwidth: Ethernet peer: 1000 kbps; cable peer: 300 kbps; free-rider: 0 kbpsFix ratio of Ethernet peers to cable peers: 3:7; change percentage of free-riders (5%~30%)VideoForeman video sequence (CIF, 30 frames/sec)SVC (Scalable Video Coder) video codec20 layers, with each layer having a bit rate of 50 kbpsEach layer is further divided into 1 second LCs.20
21 System Setup (2) Video Overlay MDC-Incent scheme Single-Layer scheme Apply multiple description FEC (MD-FEC) scheme on the FGS encoded bit stream to generate 20 descriptionsThe bit rate of each description is 50 kbpsSingle-Layer schemeCode “Foreman“ sequence into a single layer bit stream with bit rate 400 kbps using the H.264 codec JM9.6The GOP length is 1 secondWe divide each GOP into 8 chunksOverlayEach peer, total 1000 peers, has 14 to 18 neighborsRandomly replace worst neighbor every 30 seconds
22 Performance Metrics Useful rate received (R) Discontinuity ratio (α) The bits that are useful for video decodingDiscontinuity ratio (α)The percentage of time that a video is undecodable and unplayableAverage PSNR (Q)Received video quality22
23 Differentiated Service (1) (a) Ethernet peerEthernet peers with Layered-Incent scheme have much higher received useful rates.Peers with high upload contributions receive better video quality.Figure 3: Cumulative distribution of received useful rate for all peers during the simulation period under different schemes. The percentage of free-rider is 5%. Average (Q, α) for each class of peers are indicated.
24 Differentiated Service (2) (b) Cable peerEthernet peer can receive more descriptions than a cable peerPeers with low contributions receive relatively low but still acceptable video quality.
25 Differentiated Service (3) (c) Free riderFree-riders receive unacceptable video quality.The discontinuity ratio for free-rider is high (Layered-Incent: 13% and 20%, MDC-Incent: 76%), which is unacceptable for video service.For the Single-Layer case, just about every peer receives the video at the encoded rate of 400kbps.
26 Free-Riding (1)R : the average received useful rate for a particular class of peers.With Layered-Incent, the Ethernet peers receive much higher rates.Received video quality does not degrade with free- riding.Figure 4: Robustness of schemes to free-riding for different users under different performance metrics. (a)-(c) Ethernet peers. Vary the percentage of free-riders in the system from 5% to 30%.
27 Free-Riding (2)The Single-Layer scheme is seriously affected by free-riding.
28 Free-Riding (3)The video quality degradation is less severe than that with Single-Layer, the average PSNR Q decreases more than 2 dB.Received video quality does not degrade with free- riding.
29 Conclusion A decentralized incentive mechanism for video streaming Performance studies show that the scheme canProvide differentiated video quality commensurate with a peer’s contributionLargely prevents free-riders29
30 References A. Habib and J. Chuang, “Incentive mechanism for peer-to-peer media streaming,” Proceedings of International Workshop on Quality of Service (IWQoS) 2004, 2004. X. Hei, , C. Liang, J. Liang, Y. Liu, and K. W. Ross, “A measurement study of a large-Scale P2P IPTV system,” IEEE Transactions on Multimedia, December 2007. Z. Liu, Y. Shen, S. Panwar, K. Ross, and Y. Wang, “P2P video live streaming with MDC: Providing incentives for redistribution,” IEEE ICME 2007, Beijing, 2007. Y. Wang, A. R. Reibman, and S. Lin, “Multiple description coding for video delivery,” Proceeding of the IEEE, pages 57-70, Jan X. Hei and Y. Liu and K.W. Ross, “Inferring network-wide quality in P2P live streaming systems,” IEEE JSAC, special issue on P2P Streaming, December 2007 .Z. Liu, Y. Shen, K.W. Ross, S. Panwar, K.W. Ross, Y. Wang, “Substream Trading: Towards an Open P2P Live Streaming System,” International Conference on Network Protocols (ICNP), Orlando, October 2008.