Using Bittorrent and SVC for Efficient Video Sharing and Streaming Abdelhalim Amer 1 Toufik Ahmed 2 Hidouci Walid-Khaled 3 Satoshi Matsuoka 1 1 Tokyo Institute of Technology 2 CNRS LaBRI Lab. UMR 5800-University of Bordeaux-1, Talence, France 3 Ecole nationale Suprieure d’Informatique, Algiers, Algeria IEEE Symposium on Computers and Communications, Turkey 2012 (ISCC’2012) A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 1 / 1
Outline A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 2 / 1
Motivation and Challenges Internet video Consumed Internet traffic in 2009 33.2% Predicted ratio for the end of 40% 2010 Long term prediction: 2009-2014 7x increase Youtube in 2007 (watched Inter- 60% net videos) Youtube in 2007 (HTTP traffic/ In- 20% / 10% ternet traffic) Internet video statistics [1][2][3] Internet traffic statistics [1] ◮ Internet video (Vod, video-to-TV, etc) dominates the Internet traffic ◮ Significant portion of the Internet traffic = user generated video content (e.g. Youtube) ⇒ Develop efficient means to transport video over the Internet and help users to share them A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 3 / 1
Motivation and Challenges Internet video challenges Internet not suitable to transport video Video needs sustained network connection and may require large network bandwidth Solutions ◮ Distributed system: Content Delivery Networks (CDNs), Peer-to-Peer (P2P) , and Cloud based streaming ◮ Adaptable video coding: Scalable Video Coding (SVC) , Multiple Description Coding (MDC), and Network Coding (NC) ⇒ Extend the Bittorrent protocol to support SVC video streaming A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 4 / 1
Motivation and Challenges Internet video challenges Streaming server Limits of the server Variable network conditions Internet not suitable to Various network accesses Different terminal transport video capabilities Video needs sustained network connection and may require large network bandwidth Small screen Medium screen Large screen Low CPU power Medium CPU power High CPU power Low network connection Medium network connection High network connection Internet video streaming challenges Solutions ◮ Distributed system: Content Delivery Networks (CDNs), Peer-to-Peer (P2P) , and Cloud based streaming ◮ Adaptable video coding: Scalable Video Coding (SVC) , Multiple Description Coding (MDC), and Network Coding (NC) ⇒ Extend the Bittorrent protocol to support SVC video streaming A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 4 / 1
Motivation and Challenges Internet video challenges Streaming server Limits of the server Variable network conditions Internet not suitable to Various network accesses Different terminal transport video capabilities Video needs sustained network connection and may require large network bandwidth Small screen Medium screen Large screen Low CPU power Medium CPU power High CPU power Low network connection Medium network connection High network connection Internet video streaming challenges Solutions ◮ Distributed system: Content Delivery Networks (CDNs), Peer-to-Peer (P2P) , and Cloud based streaming ◮ Adaptable video coding: Scalable Video Coding (SVC) , Multiple Description Coding (MDC), and Network Coding (NC) ⇒ Extend the Bittorrent protocol to support SVC video streaming A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 4 / 1
Motivation and Challenges Internet video challenges Streaming server Limits of the server Variable network conditions Internet not suitable to Various network accesses Different terminal transport video capabilities Video needs sustained network connection and may require large network bandwidth Small screen Medium screen Large screen Low CPU power Medium CPU power High CPU power Low network connection Medium network connection High network connection Internet video streaming challenges Solutions ◮ Distributed system: Content Delivery Networks (CDNs), Peer-to-Peer (P2P) , and Cloud based streaming ◮ Adaptable video coding: Scalable Video Coding (SVC) , Multiple Description Coding (MDC), and Network Coding (NC) ⇒ Extend the Bittorrent protocol to support SVC video streaming A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 4 / 1
Background Scalable Video Coding Outline A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 5 / 1
Background Scalable Video Coding Scalable Video Coding [4] Definition Encoding a single video stream that embeds multiple qualities How? ◮ Single video stream = Multiple layers = Base layer + enhancement layers ◮ Extension of single-layer H.264/AVC standard ⇒ High compression rate source source Single-layer simulcast Multi-layer multicast A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 6 / 1
Background Scalable Video Coding Types of Scalability ◮ Temporal scalability ◮ Spatial scalability ◮ Quality Scalability A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 7 / 1
Background Scalable Video Coding SVC structure and streaming buffer SVC stream structure ◮ { D max , Q max , T max } maximum spatial, quality and temporal level resp. ◮ Stream = { AU i , i = 1 .. FrameMax } is a set of Frames of Access Units (AUs) ◮ AU = { NAL i , i = 1 .. D max × Q max } is a set Network Abstraction Layer (NAL) units ◮ Stream = { Layer i , i = 1 .. D max × Q max × T max } is a set of Layers A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 8 / 1
Background Scalable Video Coding SVC structure and streaming buffer SVC stream structure ◮ { D max , Q max , T max } maximum spatial, quality and temporal level resp. ◮ Stream = { AU i , i = 1 .. FrameMax } is a set of Frames of Access Units (AUs) ◮ AU = { NAL i , i = 1 .. D max × Q max } is a set Network Abstraction Layer (NAL) units ◮ Stream = { Layer i , i = 1 .. D max × Q max × T max } is a set of Layers Current frame to play Sliding Window (1,1,1) (1,1,2) Q1 D1 (1,0,1) (1,0,2) Q0 (0,1,1) (0,1,2) Q1 D0 (0,0,0) (0,0,1) (0,0,2) (0,0,0) Q0 Time Complete frame Incomplete frame A sliding window’s buffer snapshot: 2 spatial, 2 quality, 3 temporal levels ⇒ 12 layers A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 8 / 1
Background Bittorrent protocol Outline A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 9 / 1
Background Bittorrent protocol Bittorrent protocol [7] ◮ P2P file-sharing protocol ◮ Entities ◮ Tracker: central unit for peer discovery (random) ◮ Seed: peer possessing the complete file ◮ Leecher: peer downloading the file ◮ Important algorithms: ◮ Piece selection ◮ File cut uniformly into pieces ◮ Request strategies: random, rarest first ◮ Piece download flow: ✭r❡❝✈✱❘❊◗❯❊❙❚✱s❡♥❞✮ ⇒ ✭s❡♥❞✱P■❊❈❊✱r❡❝✈✮ ⇒ ✭r❡❝✈✱❍❆❱❊✱❆❧❧✮ ◮ Peer selection (choking/unchoking) ◮ Tit-for-tat policy ⇒ reciprocation ◮ Based on download and upload rates ◮ Simulation of the protocol: Omnet++ [5], NS-2 [6] A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 10 / 1
SVC Bittorrent extension Proposed solution Outline A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 11 / 1
SVC Bittorrent extension Proposed solution SVC in Bittorrent Overlay network Overlay network of Quality 1 source1 source1 Tracker Tracker source2 source2 Overlay network of Quality 2 Single-layer scenario Multi-layer scenario Observation In addition to stream adaptation, multi-layer SVC increases the global availability of the content ⇒ Better P2P efficiency A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 12 / 1
SVC Bittorrent extension Proposed solution SVC in Bittorrent Overlay network Overlay network of Quality 1 source1 source1 Tracker Tracker source2 source2 Overlay network of Quality 2 Single-layer scenario Multi-layer scenario Observation In addition to stream adaptation, multi-layer SVC increases the global availability of the content ⇒ Better P2P efficiency Proposition: Change Bittorrent’s piece selection algorithm ◮ Follow SVC structure: Basic request piece is a NAL unit (variable size) ◮ Better adaptability of the stream. Can use RTP packetization [8] ◮ Large overhead !! ⇒ Multi-NAL unit requests [9] ◮ Fixed size sliding window [10] A. Amer (Tokyo Institute of Technology) Using Bittorrent and SVC for Efficient Video Sharing and Streaming ISCC 2012 12 / 1
Recommend
More recommend