Elsevier

Computer Networks

Volume 54, Issue 8, 1 June 2010, Pages 1316-1327
Computer Networks

An adaptive peer-to-peer live streaming system with incentives for resilience

https://doi.org/10.1016/j.comnet.2009.10.022Get rights and content

Abstract

Recently, there have been a lot of research efforts on peer-to-peer (P2P) live streaming services. P2P systems can be easily deployed since a participating peer’s resources (i.e., upload link bandwidth) can be exploited to distribute contents. However, how to adapt to leaving peers and how to encourage peers to contribute resources voluntarily are still challenging issues. In this paper, we propose Climber, an adaptive P2P live streaming system with incentives for resilience. Climber is based on the hybrid structure of a tree and a mesh, so as to achieve self-improvement and adaptation to users’ dynamic joining and leaving. Moreover, Climber substantiates an incentive mechanism that provides better resilience for peers with more upload bandwidth allocated. Simulation results reveal that Climber significantly reduces the topology maintenance cost compared to SplitStream and NICE-PRM. Also, simulation and analytical results verify that Climber can bound the level of disruption by dynamically adapting to the user churning rate.

Introduction

Recently, live streaming services over the Internet (e.g., sports game or music concert) are becoming popular. For example, Akamai [2] provides an infrastructure support for these services; AOL broadcast [3] and MSN broadcast [4] serve as streaming portals. Live Earth concerts in July 2007 on MSN broadcast service recorded 15 million streaming sessions, with 237,000 simultaneous viewers at the peak [4]. These services leverage infrastructures (i.e., server-farm based solutions or content delivery networks (CDNs)) where contents are replicated on a number of servers to improve the speed of content delivery. However, infrastructure-based live streaming systems have some drawbacks in terms of cost, scalability, and deployment. Akamai reports an aggregate traffic of 885 Gbps during peak traffic periods through 30,000 servers in 67 countries [5].

Unlike these infrastructure-based services, peer-to-peer (P2P) live streaming is gaining much attention in the literature [6], [7], [8], [9], [10] because of its scalability, low cost, and tactical deployment. In P2P live streaming, all peers participate in distributing contents by sharing their resources (i.e., upload link bandwidth). However, providing a resilient P2P streaming service is a key challenge since peers are prone to departures and failures. Especially, a peer acts as both a server and a client, and thus each failure of a peer causes streaming disruption for peers downstream until the time the relevant topology is reconstructed.

In this paper, we focus on two challenging issues for resilient P2P live streaming: (1) efficiency and (2) incentive. The first issue is how to efficiently support dynamic membership; i.e., each peer dynamically joins or leaves (peers easily fail or leave at will) the P2P network. Hence resilience to churning rate should be taken into account. In general, sending more signaling packets (e.g., keep-alive or heartbeat messages) between peers will increase the resilience level of the network, while consuming a considerable amount of network resources. There is a trade-off between the service resilience and the signaling overhead of the system; so the target level of resilience should be carefully decided. The control overhead of a system is also tightly coupled with the complexity of the system. The system should be designed to be as simple as possible for efficient operations.

The second issue, incentive, is more crucial. The performance of P2P systems strongly relies on how much resources are contributed by peers. Therefore, the way to encourage peers to contribute their resources for stream distribution should be devised in order to improve the quality of live streaming services in terms of delay and resilience. In P2P file-sharing applications (e.g. [11], [12]) with an incentive mechanism, download rate of a peer is roughly proportional to the peer’s contributions. Hence, peers with more contributions need a shorter time to receive a file than others. Even though a peer with low contribution (i.e., a peer with small upload capacity) is able to receive a complete file, it will take longer time than peers with high contributions. This incentive mechanism makes sense since the objective is just to share the file. However, there is a significant difference in live streaming applications and file-sharing applications. Especially in the P2P live streaming applications, the incentive mechanism should be designed by considering unique characteristics of P2P live streaming which contrast with those file-sharing applications.

There have been some P2P live streaming proposals that have similar incentive mechanisms to the file-sharing applications. Generally, peers contribute to a system by providing their upload bandwidth in order to gain reputation (e.g. [13], [14]) or currency (e.g. [15]) as a reward. In these systems, reputation is used to compete for connections with better neighbors against other peers, or currency is consumed to buy chunks from other peers. However, streaming packets of a stream are generated by a source in live streaming applications, encoded and sent to other peers (suppose the stream is k kbps). Live streaming packets are periodically generated and streaming packets at the current moment are disseminated. Thus, if a peer with high contributions is receiving a stream of k kbps, there is no way to give more incentive to this contributor. Peers with low contributions, receiving lower than k kbps, cannot play a video due to the nature of live streaming. Therefore, we should devise a different incentive mechanism for live streaming applications.

We propose a novel P2P live streaming system, Climber. The salient characteristics of Climber are summarized as follows. (1) Climber is a hybrid of a tree and a mesh. That is, a single tree is a main structure for streaming; however, random (or redundant) edges between peers (not between parent and child) are added to the tree for resilient connectivity. (2) Climber is simple in the sense that the effect of the dynamic membership on the system topology is mitigated. Climber simply attaches a new joining node1 to the tree as a leaf node. When a non-leaf node leaves or fails, Climber minimizes the effect of peer departure by efficiently relocating its descendants to other positions of the tree. (3) Despite the time-varying network conditions (e.g., churning rate, congestion, delay), Climber bounds the level of resilience of a system. Climber adaptively changes its mesh topology (i.e., the random edges) to maintain a target level of resilience which is an input QoS parameter. (4) Climber keeps improving the transfer delay of a tree using the mesh topology. When a peer finds an alternative path that is faster than the current data path from the root, the peer switches its link to the alternative path. This switching process continuously improves the overall root-to-peer (or end-to-end) delay in the system. (5) Climber embodies an incentive mechanism that enhances resilience despite churning rate. The number of potential incoming data paths from a source to a peer is approximately proportional to the number of child nodes of the peer. Hence, a peer will experience more resilient services as the peer maintains more child nodes (or allocate more upload link bandwidth). This incentive mechanism encourages nodes to assign more upload link bandwidth for streaming data distribution, which leads to more (system-wide) resilient services.

The contribution of this paper is three-fold. First, we proposes a simple and adaptive system for resilient P2P streaming. Second, an analytical model, which demonstrates the effect of the disruption rate, is developed and validated by simulations. Third, extensive simulation results are given to evaluate the performance of Climber against other schemes. To the best of our knowledge, Climber is the first proposal that provides the required level of resilience probabilistically, and the incentives to contribute more resources for better resilience that suits P2P live streaming services.

The rest of this paper is organized as follows. Design concepts and the operations of Climber are introduced in Section 2, and we analyze the level of disruption of Climber in Section 3. Section 4 gives simulation results, followed by related work in Section 5. Finally, we conclude this paper in Section 6.

Section snippets

System model

The structure of Climber is based on a single tree, rooted at the source, but more than one data path from the source may exist for each peer. We focus on P2P live streaming applications where 10 or 20 s of delay is tolerable, which is normally assumed in the literature [9], [16]. We focus on the packet forwarding aspect of Climber, and how to achieve reliability is out of the scope of this paper. Reliable transmission can be achieved by error control techniques (e.g., forward error correction

Disruption rate analysis

Climber allows resilient streaming services by adding random edges. The system-wide number of random edges is adjusted based on λt sent by a root node. There is a trade-off between the resilience of a system and the signaling overhead over random edges. In this section, we analyze Climber with a focus on the effect of random edges on the disruption rate.

We have the following notation and assumptions. m nodes form a complete g-ary tree with height h. Let G denote the set of all nodes of the

Methodology

We use the GT-ITM topology generator [21] to generate the network topology, which consists of 3000 peers and 600 routers, using the Transit-Stub graph model. The topology consists of three transit domains with 8 transit routers each. There are an average of three stub domains per transit router, and an average of eight stub routers per stub domain (hence, there are total 3×8×(1+3×8)=600 routers). Peers are randomly connected to one of 576 stub routers. Link delays for the simulation are derived

Related work

P2P live streaming solutions can be broadly classified into two categories depending on the overlay structures: tree-based and mesh-based approaches. The tree-based approach implements a single or multiple distribution trees, where a root node is the source of the stream. In a tree, each node always receives streaming packets from a parent and hands down to its child nodes. Due to the well-defined “parent–child” relationships, the signaling overhead is marginal. However, its performance can be

Conclusion

This paper introduces Climber, an adaptive peer-to-peer live streaming system with incentives for resilience. We focus on efficiency and incentive in P2P live streaming. The main structure of Climber is a tree for simple and efficient stream distribution. To address the problem of dynamic membership, we add random edges to the tree; the number of random edges are dynamically adjusted to maintain service quality. Climber also embodies an incentive mechanism, which allows a peer with more

Acknowledgements

This work was supported by the Korea Research Foundation Grant funded by the Korean Government (MOEHRD, Basic Research Promotion Fund) (KRF-2007-331-D00267) and the IT R&D program of MKE/IITA (2008-F-034-02). The ICT at Seoul National University provides research facilities for this study.

Kunwoo Park received his B.S. in computer science from Korea Advanced Institute of Science and Technology (KAIST) in 2004. Currently, he is working towards a Ph.D. degree at the School of Computer Science and Engineering, Seoul National University. His research interests include peer-to-peer networks, overlay streaming, IPv6, and mobility management.

References (31)

  • K. Park, S. Pack, T. Kwon, Climber: an incentive-based resilient peer-to-peer system for live streaming services, in:...
  • Akamai, 2009....
  • AOL, 2007....
  • MSN, 2007....
  • P. Gilmore, How Akamai works, in: 10th UK Network Operators’ Forum,...
  • Y. Chu, S.G. Rao, S. Seshan, H. Zhang, A case for end SystemMulticast, in: Measurement and Modeling of Computer...
  • M. Castro, P. Druschel, A. Kermarrec, A. Nandi, A. Rowstron, A. Singh, Splitstream: high-bandwidth multicast in...
  • X. Zhang, J. Liu, B. Li, T. Yum, DONet/CoolStreaming: a data-driven overlay network for live media streaming, in: IEEE...
  • V. Venkataraman, P. Francis, J. Calandrinoz, Chunkyspread: Multi-tree unstructured peer-to-peer multicast, in: IPTPS...
  • V. Pai, K. Kumar, K. Tamilmani, V. Sambamurthy, A. Mohr, Chainsaw: eliminating trees from overlay multicast, in: IPTPS...
  • B. Cohen, Incentives build robustness in bittorrent, in: 1st Workshop on Economics of Peer-to-Peer Systems,...
  • K.G. Anagnostakis, M.B. Greenwald, Exchange-based incentive mechanisms for peer-to-peer file sharing, in: ICDCS 2004,...
  • A. Habib, J. Chuang, Service differentiated peer selection: an incentive mechanism for peer-to-peer media streaming,...
  • F. Pianese, D. Perino, J. Keller, E. Biersack, Pulse: an adaptative, incentive-based, unstructured P2P live streaming...
  • G. Tan, S. Jarvis, A payment-based incentive and service differentiation scheme for peer-to-peer streaming broadcast,...
  • Cited by (5)

    • Enhancing real-time applications by means of multi-tier cloud federations

      2016, Proceedings - IEEE 7th International Conference on Cloud Computing Technology and Science, CloudCom 2015

    Kunwoo Park received his B.S. in computer science from Korea Advanced Institute of Science and Technology (KAIST) in 2004. Currently, he is working towards a Ph.D. degree at the School of Computer Science and Engineering, Seoul National University. His research interests include peer-to-peer networks, overlay streaming, IPv6, and mobility management.

    Sangheon Pack received the B.S. (magna cum laude) and Ph.D. degrees from Seoul National University, Seoul, Korea, in 2000 and 2005, respectively, both in computer engineering. Since March 2007, he has been an Assistant Professor with the School of Electrical Engineering, Korea University, Seoul. From 2005 to 2006, he was a Postdoctoral Fellow with the Broadband Communications Research Group, University of Waterloo, Waterloo, ON, Canada. He was the recipient of IEEE ComSoc APB Outstanding Young Research Award in 2009 and a Student Travel Grant Award at the 2003 IFIP Personal Wireless Conference (PWC). From 2002 to 2005, he was a recipient of the Korea Foundation for Advanced Studies Computer Science and Information Technology Scholarship. In 2003, he was a Visiting Researcher at Fraunhofer Institute for Open Communication Systems (FOKUS), Berlin, Germany. His research interests include mobility management, wireless multimedia, vehicular networks, and Future Internet.

    Ted ”Taekyoung” Kwon is an associative professor in the school of computer science and engineering, Seoul National University (SNU) since 2004. Before joining SNU, he was a post-doctoral research associate at UCLA and at City University New York (CUNY). He obtained B.S., M.S., and Ph.D. degree from the department of computer engineering, SNU, in 1993, 1995, and 2000, respectively. During his graduate program, he was a visiting student at IBM T. J. Watson research center and University of North Texas. His research interest lies in sensor networks, wireless networks, IP mobility, and ubiquitous computing.

    A preliminary version of this paper was presented at The International Workshop on Peer-to-Peer Systems (IPTPS’ 08) and published as an electronic archive [1].

    View full text