Peer-to-Peer Live Video Streaming on the Internet Issues, Existing Approaches, and Challenges 指導教授:許子衡 教授 學生:王志嘉 Introduction (i) Live video streaming is still a controversial issue, because it can play a best-effort and the ultimate realization of Internet service quality and customer satisfaction expectations. Many challenges were identified and pursued in the design of video streaming systems, such packet loss, network congestion, stream synchronization, and lack of service guarantee. 2016/7/13 2 Introduction (ii) From the encoding perspective there were also many proposals on error-resilient codec in attempts to deal with packet loss using error concealment techniques. There are two categories of proposals, one offering multicast at the native IP layer. The other, called end system multicast, pushing multicast functionality to the edge of the network, that is, at the application level. 2016/7/13 3 Introduction (iii) Content distribution network (CDN) providers that strategically place a large number of video servers around the Internet. End users to obtain streaming video from one of the nearby servers, thus reducing the end-to-end delay and overall network congestion. Our study also revealed that multi-segment and multi-path routing can help to reduce the connection time while exhibiting little impact on video playback quality. 2016/7/13 4 Introduction (iv) One of the key features in a P2P system is that each node contributes resources including bandwidth, storage space , and the total system capacity can actually increase as more nodes join a system. It overcame some of the fundamental limitations in classical IP multicast protocols 2016/7/13 5 Introduction (v) It demonstrated that an overlay architecture can be effectively constructed in the dynamic and heterogeneous Internet environment. In this article, we examine the P2P streaming technology to determine what shapes the current system design and what are the limitations and challenges in the current systems. Coolstreaming system, we provide observations on possible future development. 2016/7/13 6 Multi-Rate Multicast (i) The earlier Internet video streaming system was largely built on the IP multicast model. The key innovation is to ensure simultaneous dissemination of packets to a set of destinations traversing each link only once without duplication. There are primarily two issues within the IP multicast framework (Fig.1): Heterogeneity in that each receiver differs in its computing capability and access bandwidth. Dynamic in that video playback quality varies in the besteffort Internet. 2016/7/13 7 Fig.1 2016/7/13 8 Multi-Rate Multicast (ii) IP multicast encountered the following problems in the deployment: Scalability in that there are potentially a large number of multi-cast groups that must be managed in a large network. A requirement for coordination of dynamic spanning tree(s) construction at routers across different autonomous subnets. Routers must maintain the state, which violates the principles and creates difficulty in the design of high-level functions 2016/7/13 9 P2P File Distribution Protocols (i) P2P applications describe a class of applications that take advantage of often untapped resources — storage, cycles, and content such as file, audio, and video. We examine the basic architecture in one of the most popular P2P file distribution protocols, BitTorrent or BT. 2016/7/13 10 P2P File Distribution Protocols (ii) BitTorrent consists of two major components, one is the creation of torrent files and the other is the mechanism associated with downloading files. The torrent contains metadata about a file that must be shared and the host information. BitTorrent protocol is used for actual file transmission. The group of peers sharing a particular torrent is usually referred to as a swarm. 2016/7/13 11 P2P File Distribution Protocols (iii) There are two issues associated with this; the first is the order in which a client should request the chunks from a file. The second issue is with whom a peer should send and receive the data. There could be many incentive-based schemes with the objective of optimizing download and upload performance. 2016/7/13 12 Application-Layer Multicast (i) There have been many proposals in the framework of so called application-layer multicast or overlay multicast. The construction of a multicast tree was performed using an overlay network, that is, a virtual topology over the unicast Internet. This demonstrated the feasibility of implementing multicast functions at the end system while keeping the core functionality of the Internet intact. 2016/7/13 13 Application-Layer Multicast (ii) In Sripanidkulchai used a large set of traces to validate the following important requirements: Sufficient resources for an overlay network construction Inherent stability Can an potentially support large scale. Rao et al. evaluated a multi-tree framework and proposed a contribution awareness index as the incentive to enable better contribution from peer nodes . 2016/7/13 14 Application-Layer Multicast (iii) In general, overlay multicast has not been adopted in real commercial systems. 2016/7/13 15 Coolstreaming (i) Coolstreaming is based on a data-centric design, in which the key novelty is that every peer node periodically exchanges its data availability information with a set of partners. The fundamental advantage of such a data-centric approach is that it eliminates the requirement for constructing and maintaining any specific overlay network. 2016/7/13 16 Coolstreaming (ii) This also offers the following unique advantages: Easy to deploy Efficient Robust and resilient Figure 2 depicts the system diagram. There are three basic modules in the CoolStreaming system: Membership manager, which helps peers to maintain a partial view of other overlay nodes. Partnership manager, which establishes and maintain partnership with other peer nodes. Scheduler, which is responsible for the transmission schedule of the video segment. 2016/7/13 17 Fig.2 2016/7/13 18 Coolstreaming (iii) Membership Manager: each node has a unique identifier, such as its IP address and maintains a membership cache (mCache) In a basic node joining algorithm, a newly joined node first contacts the origin node. It randomly selects a deputy node from its mCache and redirects the new node to the deputy. The new node can obtain a list of partner candidates from the deputy and contacts these candidates to establish its partners in the overlay. 2016/7/13 19 Coolstreaming (iv) Partnership Management: a video stream is divided into segments of a uniform length, and the availability of the segments in the buffer of a node can be represented by a buffer map (BM). 2016/7/13 20 Coolstreaming (v) Scheduler: Given the BM of a node and its partners, a schedule is to be generated for fetching the expected segments from the partners. The scheduling algorithm must meet two constraints: the playback deadline for each segment and the heterogeneous streaming bandwidth required from the partners 2016/7/13 21 There have been many studies on the overlay topology. There are two primary measurements of interest; one is the overlay efficiency, and the other is the stability. 2016/7/13 22 Topology From our experience with Coolstreaming, we present the following observations: On a small timescale, the data-centric approach does not seem to lead to any specific topology given the random assignment of peer partnership On a large timescale, there is strong evidence that the overlay architecture converges to a tree-like topology, especially for each sub-stream. 2016/7/13 23 Traffic Engineering And Scalablity (i) P2P streaming applications gain popularity largely due to their cost-effectiveness and easy deployment. Longer start-up time or channel-switching time. In a client and server system, the availability of servers ensures that a client can easily locate the service. The P2P approach, however, relies on availability of peers and content; given the dynamics of the system, it usually takes a longer time to locate the service in a P2P system. 2016/7/13 24 Content Distribution Networks Content distribution networks (CDN) strategically place a large number of servers around the Internet. These collaboratively deliver content to end users transparently. The existence of CDN might well complement P2P streaming in two ways: One major problem of current P2P streaming systems is that the content is retrieved from a random set of peer nodes in the network. 2016/7/13 25 Content Distribution Networks It is difficult for a P2P network to provide the same level of service guarantee comparable with that of an infrastructure-based network. 2016/7/13 26 Conclusion In this article, we provided an overview of the stateof-the-art P2P streaming technologies. We summarized the main innovations in the Coolstreaming system and described the main challenges. Our intuition is that for a large system, the combination of P2P and CDN might well be the solution. 2016/7/13 27