Computer Networks 81 (2015) 1–18
Contents lists available at ScienceDirect
Computer Networks journal homepage: www.elsevier.com/locate/comnet
Coercion builds cooperation in dynamic and heterogeneous P2P live streaming networks Xin Jin a, Yu-Kwong Kwok b,⇑ a b
Yahoo Inc., Sunnyvale, CA, United States Department of Electrical and Electronic Engineering, The University of Hong Kong, Pokfulam, Hong Kong Special Administrative Region
a r t i c l e
i n f o
Article history: Received 9 October 2013 Received in revised form 11 January 2015 Accepted 6 February 2015 Available online 14 February 2015 Keywords: Peer-to-peer live streaming Heterogeneous networks Network dynamics Selfish topologies Cooperation Coercion
a b s t r a c t Sustaining reasonable performance in a peer-to-peer (P2P) network is contingent upon cooperation among peers. As autonomous agents, peers cooperate only when they are incentivized to do so. Typically, incentives are provided through bilateral exchange of useful data, in a tit-for-tat manner. Unfortunately, good for file sharing and video-on-demand systems as they are, such incentive schemes are ineffective in live streaming systems due mainly to the lack of sufficient opportunity to allow such reciprocity to happen, as recently demonstrated in a pioneering quantitative study. The key insight is that with stringent time constraint, good system performance can only be sustained by judicious peer selection. Despite that some pioneering efforts are done in peer selection, it is as yet a difficult challenge to tackle the inherent non-cooperation of peers in a dynamic and bandwidth-diverse network. In this paper, we meet this challenge by first presenting a novel hierarchical game model, covering strategic interactions among peers, trackers, and the content provider. Based on the analytical insights derived from the repeated game model, we propose a Striker strategy to coerce peers to cooperate, leading to significantly enhanced system performance, as demonstrated by our analytical and simulation results. Most importantly, our proposed incentive schemes are highly practicable in a real-life P2P network. Ó 2015 Elsevier B.V. All rights reserved.
1. Introduction Incentive provision [1] is a critical factor for the success of a peer-to-peer (P2P) network that relies heavily on peers’ cooperation to sustain reasonable system performance. Indeed, in the past decade, various effective schemes have been proposed and implemented in practical systems [2–7]. However, such schemes, typically based on reciprocity in the form of bilateral data exchange (i.e., tit-for-tat like behaviors) or virtual payments [1], are useful mostly for file sharing and video-on-demand (VoD) systems, but not for the increasingly popular live video streaming systems, e.g., PPLive [8], PPStream [9] and UUSee [10], serving millions of active daily ⇑ Corresponding author. Tel.: +852 2859 8059; fax: +852 2559 8738. E-mail address:
[email protected] (Y.-K. Kwok). http://dx.doi.org/10.1016/j.comnet.2015.02.006 1389-1286/Ó 2015 Elsevier B.V. All rights reserved.
users spread across the globe [11]. The key problem is that with stringent playback deadlines for live streaming, there is a lack of opportunity for timely data exchange. Specifically, Piatek et al. drew on real measurements of tens of thousands of peers in PPLive [8] and demonstrated the existence of limited trading opportunities among neighboring peers that decisively invalidated the efficiency of bilateral data chunk exchange mechanisms for P2P live streaming [12]. The key insight is that with the stringent time constraint, a more effective strategy is to support more judicious peer selection, so as to pair up peers to allow for timely exchange of relevant data chunks. Indeed, peer selection is critical to the effectiveness of the network topology in terms of connectivity, and hence, system performance, by establishing cooperative local connections leading to a high performance global overlay topology.
2
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
Broadly speaking, there are two different kinds of efficient peer selection schemes: capacity aware [13,12] and locality aware [14,15]. The essence of the former is to place high capacity peers closer to the source server so as to better utilize their upload capacity and achieve optimal system streaming quality. On the other hand, the latter promotes network friendliness by matching the overlay topology with the underlying physical networks. For instance, this can be achieved by clustering peers from the same ASes and thus reducing financial cost incurred by inter-AS traffic. For clarity, we focus our analysis on capacity aware peer selection that can be easily extended to locality aware peer selection. The efficiency of our proposed strategies is evaluated in both peer selection scenarios. As a pioneering effort, Piatek et al. proposed Contracts [12] to provide incentives against free-riding through capacity aware peer selection. To the best of our knowledge, Contracts is the only study to provide practical incentives by structuring topologies via judicious peer selection, instead of bilateral chunk exchanges [12]. Unfortunately, the success of Contracts is contingent on the presumed cooperation of peers in the peer selection process. To further aggravate the problem, it is as yet a difficult challenge to tackle the non-cooperative issue in a dynamic and heterogeneous network (i.e., peers are equipped with diverse upload/download bandwidth). With this motivation, this paper aims to propose practical incentive schemes for P2P live streaming, by fully exploring strategic peer selection. Our contributions in this paper are as follows. We first demonstrate quantitatively that peer non-cooperation is highly likely in strategic peer selection. We then model strategic peer selection as a repeated game, based on which we propose a Striker strategy for coercing peers to cooperate in P2P live streaming systems. Our Striker strategy works well in both centralized and fully distributed network environments. The key idea of the Striker strategy is to provide enough threat to selfish peers to thwart them from deviating from cooperation. The most important feature of our scheme is that it provides peers with no incentive to falsify their upload capacities. We are also among the first to study quantitatively the hidden effects of ineffective incentive protocols (i.e., crowding out of low bandwidth peers). Contrary to previous studies [13,12], both our empirical simulations and rigorous analytical modeling show that, due to the inevitable peer non-cooperation, prescribed protocols induced by capacity aware peer selection significantly deteriorate system social welfare, let alone provide sharing incentives in Nash equilibria (N.E.). In particular, such performance degradation is incurred by clustering among peers with similar upload capacities that is different from file sharing and VoD systems [16,17], due to different system requirements, such as stringent playback deadlines. The remainder of this paper is organized as follows. In Section 2, we present the system model of the interactions between the content provider and selfish peers, and a solution concept to quantify any peer selection protocol. Extensive simulation results show that noncooperation of peers in strategic peer selection is a general problem not
limited to capacity aware peer selection. Formal game theoretic analysis is then provided to model iterative peer selection in Section 3. Section 4 presents our Striker strategy for coercing selfish peers to cooperate in establishing effective topologies, followed by practical algorithms in Section 5. Section 6 validates the efficiency of our Striker strategy with extensive simulations. Recent advances in P2P networks are surveyed in detail in Section 7. Finally, we present conclusions and future work in Section 8. 2. System architecture and model In this section, we first present the system architecture and model. Before delving into our detailed rationality analysis and incentive scheme design, we quantitatively scrutinize implications of strategic peer selection for P2P live video streaming based on extensive simulation results, augmented with preliminary modeling efforts. Indeed, such preliminary analysis shows that existing overlay construction protocols based on capacity aware peer selection deteriorate social welfare in Nash equilibria because high capacity peers simply do not have the incentives to follow the prescribed protocols. This offers us valuable insights for more accurate system modeling leading to useful theoretical analysis. 2.1. System architecture We consider a practical P2P live streaming system (e.g., PPLive) that is based on a mesh topology or unstructured overlay [8,18]. A general architecture of live streaming overlays consists of: (a) content servers, (b) trackers, and (c) peers. Content servers, the streaming source, upload the video content to a small number of peers. Each video is divided into equal-sized pieces called chunks. Trackers maintain a list of all concurrently online peers. In a practical system such as PPLive, trackers are under centralized control to serve in the interest of the content provider [11]. The maintenance and functioning of P2P streaming overlays can be hierarchically decomposed into peer selection for efficient overlay construction, and chunk scheduling for distributed resource sharing [11,18]. Before the start of streaming, each peer first retrieves a list of concurrently online peers by gossiping with each other or querying trackers. A peer then selects a set of peers to connect with as neighbors. This peer selection process is also known as overlay construction [1]. Peers then periodically exchange buffer maps with neighbors to indicate chunk availability, and request unavailable chunks from neighboring chunk holders. This process is commonly referred to as chunk scheduling [1]. With such delineation, we can then conceive a hierarchical game model that provides a clearly-defined boundary between selfishness for chunk scheduling and peer selection. Resource Sharing Game. Peers are reluctant to share. This game concerns motivating them to contribute in chunk scheduling with rewards of virtual payments or relevant video packets [2–7].
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
Overlay Construction Game. Peers strategically select neighbors for connection. This game involves the content provider and other peers that is iterative due to network dynamics (e.g, peer arrivals and node departures). We do not study the resource sharing game in this paper because it is widely investigated in the literature [1] and bilateral chunk exchanges are already shown to be inefficient for P2P live streaming [12]. To focus on strategic peer selection, we consider the practical rarest first scheduling to promote chunk diversity and thus increase streaming quality. As mentioned in Section 1, there are mainly two approaches to effective peer selection, to reduce the operating cost of the content provider: (a) capacity aware peer selection to better exploit peer heterogeneity in bandwidth [13], and (b) locality aware peer selection to reduce financial cost incurred by inter-AS traffic [15]. In the remainder of this paper, we study protocol robustness against strategic peer selection, using capacity aware1 and locality aware peer selection as reference models. 2.2. System model We consider a P2P live video streaming system P ¼ fs; s; N g, where s is the logical source server of the system, s is the logical tracker of the system and N is the set of concurrently online peers. Source servers and trackers act on behalf of the content provider c. Peers are selfish and strategic for their own interests. Unless otherwise stated, for robustness against strategic peer selection, source servers randomly select a set of peers to connect with, though other schemes can also be used. We adopt the model with multiple bandwidth classes, because peer out-bound bandwidth is widely acknowledged as the only resource bottleneck in P2P video streaming networks [13,19,20], considering the bandwidth intensive nature of the content.2 In the system, n classes of peers coexist (n P 2). Peers from class i are equipped with the same out-bound bandwidth capacity Oi . According to out-bound bandwidth, we sort peer classes in descending order:
O1 > O2 . . . > On :
ð1Þ
3
and strategic peers for their self-interests. In this section, we seek to characterize strategic peer selection by quantifying payoffs based on ordinal preference [25]. For concreteness, we first give peer utility by considering a typical peer p. Peer p games to contribute less while receiving more. Thus, the utility, defined as follows, is determined by its streaming quality and bandwidth consumption. Definition 1. The utility function of peer p is:
U p , aq U qp ðkq þ qp Þ þ ab U bp ðkb up =Op Þ:
ð2Þ
There are two components in the peer utility definition. Here, both U qp ðÞ and U bp ðÞ are concave, increasing and twice differentiable. The first component is the payoff obtained from receiving system streaming services that is positively related with delivery ratio qp that is widely used to measure streaming quality. Delivery ratio qp is the number of chunks arriving at peer p before or on playback deadline over the total number of chunks issued by the source by the playback deadline [26]. The second component is to quantify cost of bandwidth contribution that is negatively related to outbound bandwidth contribution ratio up =Op , where up is the upload rate of peer p and Op is the outbound bandwidth of peer p. Note that our definition of peer bandwidth contribution is effort based because high bandwidth peers have more bandwidth to spare. Constants kq and kb are to keep U qp ðÞ and U bp ðÞ nonnegative. Coefficients aq and ab , satisfying aq þ ab ¼ 1, capture the relative importance of streaming quality and bandwidth contribution. We next present the utility of the content provider that captures system social welfare. Specifically, the content provider has two objectives to achieve: (a) streaming videos with high quality to as many client users as possible, and (b) reducing financial cost paid to Internet Service Providers (ISPs) by confining traffic within Autonomous Systems (ASes). Thus, we define the utility of the content provider as follows. Definition 2. The utility of the content provider is:
U c , as
X U p þ al jN j U lc ðc lÞ:
ð3Þ
p2N
Peers are aware of upload bandwidth of their one-hop neighborhood [12]. Trackers, as coordinators, can also obtain such information using various bandwidth estimation techniques [21–23]. This is practicable as evident in real-life system such as PPLive for peer selection [24]. Most importantly, as elaborated in Section 4.2, our incentive schemes discourage peers to falsify their upload capacities. 2.3. Analytical model of selfish topologies Players in the overlay construction game are the content provider c striving for a higher social welfare, 1 Contracts adopts capacity aware peer selection that is subject to strategic manipulations as shown later. 2 In this paper, we use capacity and bandwidth interchangeably.
We also note two components in the above definition. The first component represents payoffs obtained from user experience improvement and thus social welfare P W ¼ p2N U p . The second component denotes utility to confine traffic within ASes (i.e., savings of financial cost charged by ASes). We use l to represent the fraction of inter-AS traffic to characterize network friendliness. If the source and destination of a chunk share the same AS domain, it is counted as intra-AS traffic; otherwise, it is deemed as inter-AS traffic. Here, U lc ðÞ is a concave, increasing and twice differentiable function. Constant c is to keep U lc ðÞ nonnegative. Coefficients as and al , respectively, capture the cost of bandwidth and inter-AS traffic, satisfying as þ al ¼ 1. Their relative importance, reflected by as =al , reveals two types of
4
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
network awareness. When as =al 1, the content provider aggressively increases streaming quality, and trackers are quality aware; when as =al 1, the content provider aggressively enforces traffic locality, and trackers turn into locality aware. Constants kq ; kb , and c depend on specific P2P applications. For instance, in our calculation, we utilize kq ¼ 1; kb ¼ 2; c ¼ 2. We also use U qp ðÞ ¼ U bp ðÞ ¼ U lc ðÞ ¼ logðÞ, and aq ¼ 1 ab ¼ 0:9. 2.4. Protocol formulation In this section, we propose a novel solution concept to quantify any given tracker-side overlay construction protocol P. Under strategic peer selection, peers might not follow protocol P, due to conflict of interests. The solution concept consists of these three measures: Performance: the service quality experienced by a particular entity. Fairness: the property that peers obtain more if they give more. Robustness: the ability to resist strategic manipulation of selfish peers. It is important to note our observation that the above three measures crucially combine together to quantify a selfish topology, though all of them have been studied separately [27,28,4,17]. In the following, we give concrete definitions of the above three measures used in our study. It is also important to note that our results do not preclude other definitions. Performance of different players can be easily measured using metrics such as delivery ratio. We do not use utility here because we want to measure the service quality, experienced by peers and the entire streaming system. Fairness promotion leads to robust system design, compared with incentive provision. Jain’s fairness index [27] is commonly used to evaluate fairness levels:
P
p2N cp
2
: FðcÞ ¼ P 2 n p2N cp
ð4Þ
where cp is peer p’s bandwidth consumption over its streaming contribution that we call fairness ratio in this study. c ¼ fcp jp 2 N g, where N represents the set of all concurrently online peers. If and only if cp ¼ ck ; 8p – k, we can achieve the maximum fairness index of 1. We denote the upload rate and the outbound bandwidth of peer p by up and Op , respectively. Although bandwidth consumption can be conveniently defined as peer p’s download rate dp , we present two measures of contribution: absolute contribution up , and relative contribution up =Op that is effort based. Thus, we can define the absolute fairness ratio
cooperative peers. This is inspired by price of anarchy (PoA), that is used to bound the overall system performance degradation due to agent rationality in multi-agent systems [28,29]. That is,
Robustness ,
1 Ws ¼ e; PoA W
ð5Þ
where W s and W e are, respectively, the social welfare of the selfish topology established when peers are rational and strategic, and the efficient overlay built by fully cooperative peers. The reason for our robustness definition is that we want to quantify the resistance of protocol P towards strategic manipulation of selfish peers. There exist other definitions of robustness that do not apply to our study on selfish topologies [4,17]. For instance, Zhao et al. use robustness to represent whether the system stays in a high bandwidth contribution level for their focus on incentives against free-riding [4]; Rahman et al. define robustness of protocol P as the ability that a majority of the population executing it outperforms a minority executing other protocols because they study the coexistence of different protocol variants in BitTorrent networks [17]. In our definitions, all three measures are normalized into the range ½0; 1. In the following section, we present our analysis based on a simple scenario in which trackers and peers game rationally and autonomously. 2.5. Robustness of prescribed protocols In this section, we apply the above analytical model and protocol quantification approaches to the analysis of strategic peer selection.3 We study two types of trackers for efficient overlay construction revealed in utility of the content provider: (a) quality aware trackers,4 and (b) locality aware trackers. To study protocol robustness, the first step is to investigate strategic manipulation of heterogeneous peers: low capacity peers and high capacity ones. Specifically, low capacity peers refer to those sending connection requests to peers with higher capacities; similarly, when the same peer sends a request to a peer with a lower capacity, it is a high capacity peer in this interaction. In this manner, the same peer can be a low capacity peer in one interaction, yet a high capacity one in another interaction. Thus, intrinsic to a class i peer is cooperative probability pci , the probability that it accepts connection requests from a low capacity one.5 Class i peers can strategically manipulate the prescribed protocols by varying pci . We first study quality-aware trackers that take capacity aware peer selection to improve social welfare: upon peer list requests from peer i, trackers randomly select M peers from the set of concurrently online peers with capacity no
d
and relative fairness ratio, respectively, as cap ¼ upp , and d
p . As shown below, the effort based fairness index, cep ¼ up =O p
defined by relative fairness ratio cep , is much more correlated with system social welfare (i.e., tracker utility). Robustness is defined as the ratio between the utility gained from selfish peers and that obtained from fully
3 The simulation setup for P2P live video streaming can be found in Section 6.1. 4 Quality aware networks adopt capacity aware peer selection to study the robustness of Contracts. 5 Cooperative probability can also be interpreted as the fraction of cooperative peers, when peers are either fully cooperative or fully noncooperative.
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
smaller than peer i [13,26]. M is a system specific parameter. Fig. 1(a) and (b) suggest that peers, surrounded by more high capacity peers (i.e., low cooperative probability), experience at least the same streaming quality, yet lower outbound bandwidth contribution. The only exception is the region where the cooperative probability is very close to 0 that is never taken by rational high capacity peers due to the incurred low streaming quality. Thus, such insights lead to the following proposition. Proposition 1. In the typical working range, peers obtain higher utility when surrounded with more high capacity peers. That is,
U p / hð
X
Ok Þ;
ð6Þ
k2N p
where N p is the neighbor set of peer p and Ok is the upload capacity of peer k. Function hðÞ is concave, increasing and twice differentiable. Proposition 1 shows that capacity aware peer selection is not a Nash equilibrium. Recall that Nash equilibrium is a critical solution concept in game theory to characterize the stable state of a game, in which each player cannot unilaterally improve its utility. Here, high capacity peers can improve their utility by unilaterally reducing the probability of cooperation and not connecting with low capacity peers recommended by quality aware trackers. For example, selfish high capacity peers can take a low cooperative probability of 0.2, in which case they contribute only 83.2% of their total upload bandwidth. However, in a fully cooperative scenario, they are supposed to contribute 97.3% of their total upload capacity. These quantitative insights refute the conclusions made in previous studies on the efficiency of capacity aware peer selection in boosting system streaming quality [13] and in providing incentives for bandwidth contribution of high capacity peers [12]. Based on the above analysis, we devise a strategic clients in Algorithm 1. In our simulations, pc is initialized to 0.6 that is a minimum cooperative probability to achieve high streaming quality for low bandwidth peers, based on our empirical observations in the simulations. To keep high streaming quality for strategic clients, we use u ¼ 0:8 to lower down cooperative probability gradually, and g ¼ 1:5 to increase cooperative probability quickly in case of streaming quality decrease. Algorithm 1. A strategic client p 1:
5
Proposition 2. In capacity aware peer selection [13,12], bandwidth contribution of high capacity peers is low due to strategic peer selection. Furthermore, Fig. 1(a) suggests that low capacity peers can achieve a near optimal streaming quality only if the cooperative probability of high capacity peers is high enough (e.g., larger than 0.6). Consequently, we define cooperative behaviors of high capacity peers as follows. Definition 3. If high capacity peers accept low capacity peers with a probability no smaller than the threshold P as neighbors then they are cooperative; otherwise, they are noncooperative. Fig. 1(c) also shows that strategic peer selection deteriorates system fairness in terms of relative contribution. Fairness in absolute contribution here is not reversely correlated with overall system performance. Now, we study locality aware trackers. Our previous study [26] shows the efficiency of the following locality aware strategy to confine traffic within ASes: trackers forward a list of neighbors with the smallest AS hop count (e.g., peers within the same AS) to newly joining peers or peers further contacting trackers due to the lack of neighbors. With locality aware trackers, cooperation means accepting peers recommended by trackers, while the non-cooperation of high capacity peers is defined as in Definition 3. Fig. 1(d) shows that, even for locality aware trackers, non-cooperation tampers tracker utility (see Table 1). Remark on robustness: Table 2 shows the network robustness of both tracker types in our simulations. That is, tracker utility in selfish topologies is only around half of that with fully cooperative peers. In particular, quality aware networks simulate the robustness of Contracts that is subject to strategic manipulations. Clustering can explain low robustness values of existing peer selection protocols in P2P live streaming. That is, with no external incentive, high capacity peers only maintain a small number of links with low capacity peers that becomes the bandwidth bottleneck due to stringent temporal constraints. This is different from BitTorrent file sharing, in which such clustering is favorable for both low download time and sharing incentives [16,17]. 2.6. Hidden effects in P2P networks
c
Initialize cooperative probability p based on empirical observations. 2: while p is online do 3: if utility U p does not decrease for x seconds then 4: decrease cooperative probability: pc ¼ u pc ; u < 1; 5: else 6: increase cooperative probability: pc ¼ g pc ; g > 1; 7: end if 8: end while
Hidden effects [30,31] as implied in the parable of broken windows refer to unintended consequences, including unexpected benefits or more likely adverse effects, in social sciences and especially economics. We also observe such unintended consequences in P2P networks. One of hidden adverse effects is that high capacity peers with superior neighbor recommendations from trackers can crowd out low capacity peers due to selfish overlay construction. Specifically, viewer tolerance tol is defined as the maximum duration for peers to stay in the system when the streaming quality is lower than a threshold. That is, if a peer experiences a delivery ratio
6
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
(b)
1
Performance
0.9 0.8 0.7 0.6 0.5 0.4
High Capacity Peers Low Capacity Peers
0
0.2
0.4
0.6
0.8
1
Outbound Bandwidth Utilization Ratio
(a)
1
0.8
0.6
0.4
0.2 High Capacity Peers Low Capacity Peers
0
0
0.2
Cooperative Probability
(c)
(d)
1
0.6
0.8
0.7
0.6
1
700
500
400
300 Relative Contribution Absolute Contribution
0.5
0.8
600
Tracker Utility
0.9
Fairness
0.4
Cooperative Probability
0
0.2
0.4
0.6
0.8
Quality Aware Locality Aware
1
200
0
0.2
Cooperative Probability
0.4
0.6
0.8
1
Cooperative Probability
Fig. 1. Robustness evaluation by varying cooperative probability: (a) performance in quality aware networks; (b) bandwidth utilization ratio in quality aware networks; (c) fairness in quality aware networks; and (d) tracker utility in quality aware and locality aware trackers.
Table 1 List of symbols in the analytical model. Notation
Definition
p c N Up
aq ab qp
Typical peer p The content provider of the system The set of concurrently online peers Utility of peer p Relative importance of payoff due to service Relative importance of cost due to uploading Delivery ratio of peer p
up Op Oi U qp ðÞ
Upload rate of peer p Upload bandwidth of peer p Upload bandwidth of peers in bandwidth class i Payoff of peer p due to streaming service
U bp ðÞ
Cost of peer p incurred by uploading
kq
A constant to keep U qp ðÞ nonnegative
kb
A constant to keep U bp ðÞ nonnegative
Uc
Utility of the content provider Relative importance of payoff due to service Relative importance of cost due to inter-AS traffic Average system streaming quality System inter-AS traffic Cost of the content provider due to inter-AS traffic
as al q l U lc ðÞ h
c
A constant to keep U qs ðÞ nonnegative A constant to keep U ls ðÞ nonnegative
Table 2 Network robustness. Tracker types
Quality aware
Locality aware
Robustness
0.63
0.57
lower than this threshold for a duration longer than the viewer tolerance, this peer departs from the system. In this paper, we use delivery ratio threshold qm ¼ 0:9 because practical systems like GridMedia maintain a delivery ratio no smaller than 0.9 [32]. Viewer tolerance is approximated by the maximum startup delay. Startup delay is the time interval from the selection of one channel to its actual playback. In practical systems (e.g., PPLive), it can range from 10 s to 2 min in different channels [11]. Fig. 2 shows that strategic peer selection crowds out a significant fraction of peers under different viewer tolerances, in quality aware trackers. By default, the viewer tolerance is 2 min in the remainder of this paper. 3. Game theoretic analysis In this section, based on the above empirical observations, we mathematically formulate the game model of
7
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18 Table 3 The constituent game between trackers
1000
Population Size
800 Cðpc Þ Nð1 pc Þ
s and class i peers (1 6 i < n).
Cðqc Þ
Nð1 qc Þ
aðsÞ; aðiÞ bðsÞ; bðiÞ
cðsÞ; cðiÞ dðsÞ; dðiÞ
600
3.2. Modeling interactions among trackers and peers
400
Cooperative Overlay 2 mins Viewer Tolerance 10 secs Viewer Tolerance
200
0
0
200
400
600
800
1000
time (seconds) Fig. 2. Hidden effects: evolution of network size.
interactions among trackers and peers, followed by the modeling of interacting heterogeneous peers. Under the scenario of multiple bandwidth classes, we formally show that cooperation of high capacity peers is not a Nash equilibrium. 3.1. Strategy space We first take a look at strategies of interacting players (i.e., trackers and client peers). The task of trackers is to recommend a set of concurrently online peers to the requester. Trackers can be either cooperative by sending a mix of peers with diverse bandwidth capacities to promote an efficient overlay topology, or non-cooperative by only suggesting low capacity peers as a punishment to non-cooperation of peers. On behalf of the content provider, trackers can also command streaming servers to disconnect specific peers as noncooperation. The strategy space is thus S s ¼ fC; Ng. Similarly, client peers can take cooperative strategy C or non-cooperative strategy N within the strategy space S P ¼ fC; Ng. The cooperation definition of high capacity peers is presented in Definition 3. Here, because low capacity peers accept all connection requests from high capacity peers (in a N.E. as shown below in Section 3.3), we define the cooperative behaviors of low capacity peers as follows. Definition 4. Cooperative low capacity peers are those that accept connection requests from high capacity peers with probability 1; otherwise, they are noncooperative.6 Note that our strategy definition is based on the aggregate behaviors of trackers and heterogeneous peers (e.g., as measured by cooperative probability) because it is prohibitively difficult to track the behaviors of individual peers even in the absence of network dynamics [24,7]. 6 Although, in peer selection with quality aware trackers, high capacity peers do not send connection requests to low capacity peers, other peer selection strategies involve such requests. Thus, without loss of generality, we define the cooperativeness of low capacity peers.
We now model the interactions between trackers and class i peers. Table 3 shows the constituent game between trackers and class i peers. Trackers take strategy C with probability pc and class i peers take strategy C with probability qc . Strategy tuple hss ; si i represents the strategy ss 2 S s taken by trackers and the strategy si 2 S P taken by class i peers. Trackers benefit the most with payoff aðsÞ when both sides are cooperative, and obtain the lowest payoff dðsÞ when both players are non-cooperative. Also, cðsÞ > bðsÞ because the overlay connectivity is better when trackers are cooperative that achieves higher social welfare than the case trackers are non-cooperative. Thus, we have aðsÞ > cðsÞ > bðsÞ > dðsÞ. On the other hand, class i peers perform best with payoff cðiÞ when they are non-cooperative while trackers cooperate. They benefit the least with payoff dðiÞ when both sides are non-cooperative. aðiÞ > bðiÞ is obvious because class i peers can receive better peer recommendations from cooperative trackers. Then, we have cðiÞ > aðiÞ > bðiÞ > dðiÞ. Theorem 1. There is a unique pure N.E. hC; Ni and no mixed strategy N.E. exists for the constituent game between trackers and peers. Proof of Theorem 1 is in Appendix A. The key insight of this theorem is to formally show that peers possess no incentives to cooperate in a centralized setting. 3.3. Modeling interactions among heterogeneous peers We now study interactions among heterogeneous peers. Table 4 shows the constituent game between class i and class j peers with i < j. That is, class i peers are high capacity peers while class j peers are low capacity ones. e q c are, respectively, the probability of class j and p c and e class i peers taking strategy C. Strategy tuple hsl ; sh i represents the strategy sl ; sh 2 SP , taken respectively by low capacity peers and high capacity peers. Proposition 1 states that peers obtain higher peer utility when surrounded by more high capacity peers. Thus, low capacity peers (i.e., class j peers) performs the best with payoff e a ðjÞ when both sides are cooperative, and the worst e when both players are non-cooperative. with payoff dðjÞ
Table 4 The constituent game between class i and class j peers (1 6 i < j 6 n).
Cð e pc Þ Nð1 e pc Þ
Cð e qc Þ
Nð1 e qc Þ
e a ðjÞ; e a ðiÞ e bðjÞ; e bðiÞ
e c ðjÞ; e c ðiÞ e e dðjÞ; dðiÞ
8
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
e bðjÞ because low capacity peers enjoy more high c ðjÞ > e capacity neighbors when high capacity peers are noncooperative and low capacity peers are cooperative. Then, we have e bðjÞ > e dðjÞ. a ðjÞ > e c ðjÞ > e Now, we consider the payoff of high capacity peers (i.e., class i peers). High capacity peers perform the best with c ðiÞ when low capacity ones are cooperative and payoff e but high capacity peers themselves are not. They benefit dðiÞ when both are non-cooperative. the worst with payoff e e a ðiÞ > e bðiÞ because high capacity peers have more high capacity connections when both players are cooperative. Thus, e bðiÞ > e dðiÞ. a ðiÞ > e c ðiÞ > e Theorem 2. There is a unique pure N.E. hC; Ni and no mixed strategy N.E. exists for the constituent game between multiple class peers. Proof is similar to that of Theorem 1. The key insight of this theorem is to formally show that peers possess no incentives to cooperate in a distributed setting. 3.4. Discussion Theorems 1 and 2 show that trackers and low capacity peers always possess incentives to cooperate with high capacity peers, while high capacity peers are not engineered to do so. This resembles the Dictator game, a game in which one player dictates the strategic input, while the other can only follow passively. Such gaming formulation explains the low bandwidth contribution of high capacity peers in selfish overlay construction. Key question is: how to stimulate cooperation and motivate bandwidth contribution of high capacity peers? In the above game modeling, we study one-shot interaction among different players. However, this interaction can be iterative and last for a long time. That is, repeated games exist for strategic peer selection, though they do not apply to the resource sharing game [5]. Indeed, peers repeatedly perform peer selection, due to network dynamics in practical networks (e.g., PPLive). This provides opportunities for coercing leading to cooperation as discussed in the next section. In repeated games, both trackers and peers care about payoffs obtained in the future. Thus, non-cooperation of trackers and low capacity peers can serve as threats or punishments for non-cooperation of high capacity peers in the current move. That is, under punishments, trackers and low capacity peers sacrifice their short-term payoffs to encourage the cooperation of high capacity peers in the future. To maximize the discounted average payoff, high capacity peers can avoid punishments by cooperation. Due to such cooperation, both trackers and low capacity peers can also enjoy high utility. 4. Coercing non-cooperative peers In this section, repeated games for iterative peer selection demonstrate the feasibility of coercion leading to cooperation. Then, we propose a novel Striker strategy to coerce high capacity peers to cooperate. The crux is to
provide enough threat to non-cooperative behaviors of high capacity peers so as to prevent strategic deviation from cooperation. We first constrain that peers can only obtain neighbor lists via trackers. We then relax this constraint and demonstrate that our incentive scheme is also effective in purely distributed environments. 4.1. Repeated game modeling We now model the repeated aspects in the overlay construction game. We consider the iterative and strategic interactions among trackers and heterogeneous peers. Denote by U i ðtÞ the utility of class i peers for strategy si ðtÞ taken in time round t. We utilize the discounted average of payoffs obtained in different time periods to model and evaluate peer utilities. Thus, we can evaluate an arbitrary strategy sequence fsi ðtÞ; 0 6 t 6 Tg by
U i ¼ ð1 di Þ
T X
U i ðtÞ dti :
ð7Þ
t¼0
In realistic networks, T denotes how long they care about the future. The discount factor, denoted as di (0 6 di 6 1), models the shadow of the future (i.e., the importance of payoffs obtained from subsequent moves relative the previous move). If di ¼ 0, class i peers are absolutely impatient and do not care about the future in decision making; if di ¼ 1, class i peers are perfectly patient and do not differentiate payoffs obtained in the current move from that gained in the future. The normalization factor 1 di is to compare payoffs in the repeated game and the component game using the same units. In this paper, we adopt the infinitely repeated game (i.e., T ¼ þ1) because both trackers and user clients have no idea about exactly when the game stops. Before further discussions on incentive scheme design for coercion leading to cooperation, we need to first answer whether it is feasible to enforce an N.E. in which both players are cooperative with our infinite game modeling. This is important because according to the backward induction principle, hC; Ni is also N.E. in a finitely repeated game with the game termination time explicitly known to both trackers and peers. Fortunately, we can always enforce a strategy path yielding players payoffs larger than the minmax payoff in N.E. The minmax payoff is defined below [25]. Definition 5. The minmax payoff of player x is defined as
min maxU x sx ; sy ; sy 2Sy
sx 2Sx
ð8Þ
where x 2 fs; ig and fyg ¼ fs; ig n fxg. This proves the feasibility to enforce an N.E. hC; Ci that yields the payoff of aðiÞ, larger than the minmax payoff of class i peers that is bðiÞ. However, we cannot enforce class i peers a payoff less than bðiÞ in that high capacity peers can always achieve a payoff of at least bðiÞ by taking strategy C regardless of the interaction history. Pareto efficiency. It is desirable that our enforced N.E. is Pareto efficient that is studied via the feasible payoff profile. A feasible payoff profile is the set of attainable payoffs [25], i.e., the set of all weighted averages of payoffs in the
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
component game. According to the Folk theorem [25], any of these payoffs can be approximately achieved in the infinitely repeated game. We first study the game between trackers and class i peers as shown in Table 3. Thus, we obtain the feasible profile, contained in boundaries as shown in Fig. 3(a). The line segment ðC; AÞ is Pareto optimal. Thus, both pure N.E. of the component game and the enforced N.E. of the Striker strategy are Pareto efficient. We then study the game among heterogeneous peers as shown in Table 4. Thus, the feasible payoff profile of the repeated game is contained in boundaries as shown in Fig. 3(b). The line segment ðA; CÞ is Pareto optimal. Thus, both pure N.E. of the component game and the enforced N.E. of the Striker strategy are Pareto efficient.
Ips ¼
Z
9
Ti
pi ½cðiÞ dðiÞdt;
ð9Þ
0
First, we propose our Striker strategy, taken by trackers for coercing peers to cooperation. In particular, trackers apply limited punishments as threatening to class i peers: 8t P 0, trackers select.
that can be learned by high capacity peers in iterative interactions. The range of ½cðiÞ; dðiÞ is the utility gap between cooperation of trackers and the implementation of punishments. Now, we can relax the constraint that peers can only update neighbor lists via trackers. Indeed, peer clients are free to exchange neighbor lists with each other for neighborhood enhancement purposes. We can perform similar analysis as in Section 4.1 on the feasibility of coercion leading to cooperation, skipped here due to space limitations. We note that low capacity peers can also be noncooperative by disconnecting high capacity peers for their long term interests. This characteristic is utilized as a threatening strategy of low capacity peers. Similar to trackers, low capacity peers threaten to punish high capacity peers for coercing the latter to cooperation. In particular, class j peers employ the Striker strategy to apply limited punishments as threatening to class i peers: 8t P 0, class j peers select.
1. strategy C in time round t þ 1, if class i peers adopt strategy C in time round t; 2. strategy N with probability pi in time rounds from t þ 1 to t þ T i , if class i peers adopt strategy N in time round t.
1. strategy C in time round t þ 1, if class i peers adopt strategy C in time round t; p i in time rounds from t þ 1 2. strategy N with probability e e i , if class i peers adopt strategy N in time round t. to t þ T
The punishments of trackers are practical. A potential manipulation is that a high capacity peer discontinues the cooperation after receiving enough high capacity connections. In this way, punishments of trackers are not feasible. However, the loss of connections is the rule due to networks dynamics that requires repeated peer selection to maintain enough connections. Even in the absence of networks dynamics, trackers can also ask source servers to disconnect high capacity peers as punishments. In the Striker strategy, pi and T i are intrinsic and private parameters of trackers. Thus, the punishment intensity of trackers is measured by
The punishments of low capacity peers are also practical. As shown in Fig. 1, when the number of connections between low capacity and high capacity peers is small enough, high capacity peers also suffer from performance degradation. This is because low capacity peers can obtain a fraction of chunks faster than high capacity peers due to random peer selection of the source servers. Then, these chunks cannot quickly arrive at high capacity peers. Moreover, source servers and low capacity peers share the same interest to motivate the contribution of high capacity peers facing non-cooperation of high capacity peers. Thus, source servers can also disconnect high
4.2. Striker strategy
Fig. 3. Feasible payoff profile. (a) Feasible payoff profile of the game between trackers and class i client peers. (b) Feasible payoff profile of the game between class i and class j client peers.
10
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
capacity peers as punishments. Here, we can also see the robustness of random peer selection at source servers, compared with exclusive selection of high capacity peers, because otherwise high capacity peers occupy all source server connections and source servers have to actively disconnect high capacity peers as punishments. Similarly, the punishment intensity of low capacity peers is measured by
Ipj ¼
Z eT i 0
h i dðiÞ dt: pi e c ðiÞ e
ð10Þ
Trackers can take an initial strategy of either N or C when t ¼ 0. The best response of peers is strategy C if ss ¼ N, and N when ss ¼ C. Thus, to enforce cooperation from the inception of the game, trackers take an initial strategy of N in our analysis. Similarly, low capacity peers also take an initial strategy of N. 4.3. Effective threatening Responding to the threat, high capacity peers can continue the non-cooperation or switch to the choice of cooperation. This depends on the experienced discounted utility. Intuitively, when the punishment intensity is large enough, high capacity peers do not have incentives to deviate from cooperation. Definition 6. We define a threat to be effective if (a) noncooperative high capacity peers switch to cooperation after the threat, and (b) under the triggering condition, the threat-claimer would obtain no less utility than not carrying out the threat.
T þ1
>
where pi >
cðiÞ aðiÞ ; pi ½cðiÞ dðiÞ þ aðiÞ cðiÞ
cðiÞaðiÞ , cðiÞdðiÞ
ð11Þ
the Striker strategy taken by trackers yields
a unique and strict N.E. hC; Ci. Proof of Theorem 3 is in Appendix B. The key insight of this theorem is that peers need to be patient enough so that threatening taken by trackers is effective. If T i ¼ 1, it is the grim trigger strategy and the N.E. is hC; Ci if and only if
di >
cðiÞ aðiÞ : pi ½cðiÞ dðiÞ
If T i ¼ 1, it is the tit-for-tat strategy, that is, do whatever the class i peers do in the last time period. The tit-for-tat strategy can achieve an N.E. hC; Ci if and only if
di >
dTs i >
cðsÞ dðsÞ : aðsÞ dðsÞ
ð12Þ
Proof of Theorem 4 is in Appendix C. The key insight of this theorem is that trackers need to be patient enough to possess incentives to implement threatening. Now, we discuss Striker strategy taken by low capacity peers. Parallel to Theorem 3, we can obtain the following theorem. Theorem 5. If and only if
eT þ1 e di di i a ðiÞ c ðiÞ e h i > ; e 1 di e e a ðiÞ e p i c ðiÞ dðiÞ þ e c ðiÞ
ð13Þ
e e p i > cðiÞ aðiÞ, the Striker strategy taken by low capacity where e ecðiÞedðiÞ peers yields a unique and strict N.E. hC; Ci. Proof is similar to that of Theorem 3. The key insight of this theorem is that high capacity peers need to be patient enough so that threatening taken by trackers is effective. To this end, it is still an open question whether low capacity peers are willing to take the Striker strategy for coercion leading to cooperation. Theorem 6. Provided Theorem 5 holds, low capacity peers take the Striker strategy in N.E. if and only if
e eT dðjÞ c ðjÞ e dj i > : e a ðjÞ e dðjÞ
ð14Þ
Proof is similar to that of Theorem 4. The key insight of this theorem is that low capacity peers need to be patient enough to possess incentives to implement threatening.
Theorem 3. If and only if
di di i 1 di
Theorem 4. On the condition that Theorem 3 holds, trackers take the Striker strategy in N.E. if and only if
cðiÞ aðiÞ : pi ½cðiÞ dðiÞ þ aðiÞ cðiÞ
We can easily reach the conclusion that a higher punishment intensity needs a lower bound of the discount factor di . However, the key question is: do trackers adopt the Striker strategy to achieve coercion with enough threats?
The above theorems show that effective threatening is contingent on the patience of both peers and trackers in the repeated game, the satisfaction of which is discussed in Section 4.5 after a discussion of cheating behaviors. 4.4. Cheating behaviors One important issue in P2P networks is that peers might take advantage of decentralization to cheat when reporting cooperation. Note that cheating behaviors are only pertinent to the Striker strategy taken by trackers in which case trackers keep a record of peers’ cooperation behaviors. Recall that in the Striker strategy, under punishments high capacity peers are forced to connect with low capacity peers due to the non-cooperation of trackers. The outcome is that low capacity peers are surrounded with more high capacity neighbors than high capacity peers themselves. From Proposition 1, low capacity peers experience higher peer utility during periods of punishment. Consequently, high capacity peers can have incentives to pretend to be low capacity ones to avoid punishments. Furthermore, to enjoy the high utility during periods of punishments, low
11
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
capacity peers might falsely report that high capacity peers are non-cooperative when they in fact cooperate. Thus, when reporting their bandwidth capacities, high capacity peers can take the cheating strategy C or the honest strategy H within the strategy space S hP ¼ fC; Hg. Similarly, when reporting cooperation behaviors of high capacity peers, low capacity peers can take the cheating strategy C or the honest strategy H within the strategy space S lP ¼ fC; Hg. To tackle the cheating problem, one possible solution is to deploy application-level monitoring of traffic between low capacity and high capacity peers on routers that can be prohibitively complicated. Another solution is an authentication protocol for trackers to detect connections between low capacity peers and high capacity ones. Here, we focus on deriving conditions on which peers do not possess incentives to cheat. As shown in Table 5, we study class i and class j peers (1 6 i < j 6 n) that are respectively high capacity and low capacity peers. First, we analyze payoffs obtained by low capacity (i.e., class j) peers. When class i peers cheat, no peers act as high capacity peers and thus the strategy of low capacity ones makes no difference (i.e., 0 a0 ðjÞ ¼ b ðjÞ). When class i peers are honest about their 0 bandwidth, d ðjÞ > c0 ðjÞ. This is because our simulation results show that as a hidden cost high capacity peers, consistently suffering from performance degradation during punishments, can leave the system. However, high capacity peers are the key to the streaming efficiency of P2P networks. Thus, cheating behaviors of low capacity peers potentially lead to the collapse of the system. Next, we analyze payoffs obtained by high capacity (class i) peers. When class j peers cheat, c0 ðiÞ > a0 ðiÞ because when both are cheating, there exist no high contribution peers. However, as shown in Theorem 7, the relationship 0 between d ðiÞ and c0 ðiÞ depends on values of the discount factor di that further determines the N.E. of the cheating game.
4.5. Discount factors Theorems 3–7 give lower bounds of discount factors to stimulate cooperation in N.E. and achieve cheating proof. Beyond such bounds, the N.E. of the repeated game with the Striker strategy can degenerate to the N.E. of the component game in which peers are non-cooperative, and peers can possess incentives to cheat. Now, the key issue is: what are the values of discount factors in real P2P networks? Discount factors are inherently useful to evaluate the patience of viewers, and thus subjective and related with viewer tolerance tol. Viewer tolerance indicates that peers value nothing or little of payoffs obtained beyond such a period, when experienced delivery ratio is below qm . That is, tol Um ¼ ; p d
ð16Þ
where U m p is peer utility corresponding qm , and ¼ 0:05 in our calculation. Fig. 4 shows the impact of viewer tolerance tol and performance tolerance qm on discount factors. In practical networks (e.g., PPLive), qm ¼ 0:9 and tol ¼ 2 mins that give d ¼ 0:9796. Thus, lower bounds in Theorems 3–7 can be easily satisfied that is combined with the definition of effective threatening (cf. Definition 6) to obtain the following proposition. Proposition 3. In real-life P2P live video streaming networks, our Striker strategy is effective for coercing selfish peers to cooperation, and proof against cheating behaviors.
5. Algorithms to stimulate cooperation Theoretically, peers and trackers can adjust parameters such as their cooperative probability, threshold for cooperation detection, and punishment duration by maximizing their utility. However, the lack of close-form functional relationships between these parameters and the utility increases the problem complexity.
Theorem 7. On the condition that our Striker strategy is effective, when
T þ1
di i
>
aðjÞ ; pi ½cðiÞ dðiÞ þ aðiÞ cðiÞ
ð15Þ
the cheating game has a unique pure N.E. in which both high capacity and low capacity peers have no incentives to cheat. Proof is in D. The key insight of this theorem is that peers possess no incentives to cheat if they are patient enough.
Discount Factors
1
0.95
0.9
0.85
Performance Tolerance = 0.9 Performance Tolerance = 0.6 Performance Tolerance = 0.3
0.8 Table 5 The cheating game between class i and class j peers (1 6 i < j 6 n). Cðq0c Þ Cðp0c Þ Hð1 p0c Þ
a0 ðjÞ; a0 ðiÞ 0
0.75
Hð1 q0c Þ 0
b ðjÞ; b ðiÞ
0
20
40
60
80
100
120
Viewer Tolerance (seconds)
c0 ðjÞ; c0 ðiÞ 0
0
d ðjÞ; d ðiÞ
Fig. 4. Discount factors as a function of viewer tolerance under different performance tolerance levels.
12
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
Let us present several simple yet effective algorithms to implement the Striker strategy in P2P live video streaming networks. As discussed above, there are two general approaches to achieve coercion leading to cooperation: Centralized neighbor recommendation. Trackers change their strategies to recommend peers, depending on the cooperative probability of the requesting peer. Distributed gaming interactions. Peers adjust their peer selection and sharing strategies based on the other’s strategy, that works for purely distributed peer management. Considering the difficulty of maintaining cooperative probability of peers on trackers, we propose the following centralized tracker-side Striker algorithm for benchmark evaluation, and distributed peer-side Striker algorithm for practical implementation.
Algorithm 3. A low capacity peer p 1: Initialize cooperative probability U based on empirical observations. 2: upon receive connection request from a high capacity peer do 3: if utility U p < U then 4: disconnect high capacity connections; 5: else 6: accept the request; 7: end if 8: end while
6. Evaluation of proposed algorithms We conduct extensive simulations to evaluate our models and the Striker strategy. First, we describe our simulation setting for P2P live video streaming. Then, we present and discuss our simulation results.
5.1. Benchmark centralized tracker-side Striker algorithm 6.1. Simulation setting Algorithm 2. Centralized tracker-side Striker algorithm
1: Initialize threshold P based on empirical observations. 2: upon receive neighbor recommendation request from peer p do 3: if cooperative probability pc < P then // p is deemed as non-cooperative; 4: only recommend low capacity peers as punishments; 5: else// p is deemed as cooperative; 6: recommend neighbors following prescribed protocols; 7: end if
We conduct cycle-based event-driven packet-level simulations, and time is divided into rounds. In each round, a peer selects peers to connect with based on its own cooperative probability. Unless otherwise specified, we consider a P2P live streaming system with quality aware trackers, and use the following configuration in the simulator [33]. 1000 peers join the overlay following a Poisson process, and the expected peer lifetime is 15 min. Average peer degree is 20. The viewer tolerance is 2 min, with delivery ratio threshold of 0.9. This is a good approximation of an average channel-size and overlay dynamics in real-deployed P2P video streaming systems [34]. Table 6 Peer’s upload capacity distribution.
5.2. Practical distributed peer-side Striker algorithm The maintenance of critical parameters such as cooperative probability is prohibitively expensive in a fully distributed environment. Thus, we use the observed utility of low capacity peers to infer behaviors of high capacity peers. The basic idea is that low capacity peers consider high capacity peers as non-cooperative when their experienced utility is below a threshold U . The detailed algorithm is in Algorithm 3. Again, U is derived from empirical observations, and U ¼ 0:61 in our simulations.
Bandwidth (kbps) Share (%)
1000 15
384 39
128 46
0.1 Skewed Uniform
0.09
Fraction of Peers
Centralized algorithm assumes the existence of an authentication protocol for trackers to faithfully detect the cooperative probability of online peers. Algorithm 2 gives the detailed algorithm, where P ¼ 0:6 in our simulations. The main idea is to classify peers into noncooperative and cooperative based on their cooperative probabilities.
0.08 0.07 0.06 0.05 0.04 0.03 0.02 0.01 0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
AS Rank Fig. 5. Peer distributions among ASes.
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
Peers’ upload capacity follows the distribution in Table 6, with an average of 358.6 kbps. The video playback rate is 300 kbps. As shown in Fig. 5, peer distribution among diverse ASes follows a Mandelbrot-Zipf (MZipf) distribution with a ¼ 1:33 and q ¼ 10 [34,35].
1000
Population Size
800
600
400 Cooperative Overlay Selfish Overlay Centralized Striker Distributed Striker
200
0
0
200
400
600
800
time (seconds)
1000
13
6.2. Efficiency of proposed algorithms Fig. 6 shows the evolution of population size by varying behaviors of trackers and peers. We can easily see that our proposed distributed and centralized Striker algorithms perform well in preventing the crowding out of low capacity peers. To better understand the performance boost, we present a comprehensive comparison in Fig. 7. The performance gap can be explained by the differences in achieved cooperative probabilities in Fig. 7. In Fig. 7(a), we can also observe that selfish high capacity peers obtain higher utility when trackers and low capacity peers do not implement threatening. The increases in system population size and social welfare are obvious as shown in Fig. 7(b) and (c), after the deployment of Striker strategy. Also, our distributed Striker algorithm can achieve social welfare very close to the centralized implementation. Note that quality aware networks simulate Contracts and achieve very low social welfare due to selfish behaviors. Similarly, Fig. 8 shows the efficiency of our Striker strategy in locality aware networks. In practical networks (e.g., PPLive), experienced streaming quality of peers and cooperative probability are determined by two factors: (a) intrinsic peer behaviors,
Fig. 6. Hidden effects: evolution of population size.
Fig. 7. Steady-state comparisons of selfish overlay, distributed Striker algorithm, centralized Striker algorithm, and overlay with full cooperation in quality aware networks. (a) Cooperative probability. (b) Utility of low capacity and high capacity peers. (c) Population size. (d) Social welfare.
14
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
Fig. 8. Steady-state comparisons of selfish overlay, distributed Striker algorithm, centralized Striker algorithm, and overlay with full cooperation in locality aware networks. (a) Cooperative probability. (b) Utility of low capacity and high capacity peers. (c) Population size. (d) Social welfare.
and (b) network conditions. Thus, in adverse network conditions (e.g. high neighbor turnover rates), low capacity peers might falsely perceive cooperative neighbors as noncooperative because they do not know whether the performance degradation is due to network fluctuations or neighbor noncooperation. In the economics terminology, this phenomenon is called ‘‘false pricing war’’, and affects the overall social welfare [36]. The gap in social welfare between distributed and centralized Striker algorithms, as shown in Figs. 7(c) and 8(d), represents the expense incurred by false pricing war in distributed implementation of our Striker strategy. The performance degradation of the selfish overlay is due to the clustering of peers with similar capacity provision. In graph theory, clustering coefficient is a metric to evaluate the stability and randomness of self-organizing systems [37,26]. Denote by C g and C r the clustering coefficients of the established overlay topology and the random graph respectively. Then, C g =C r can be used to measure the degree of clustering effects among peers in P2P networks. Fig. 9(a) shows that peers are highly clustered in the selfish overlay due to strategic peer selection, compared with topologies established in the other three scenarios. This significantly hinders the efficient dissemination of chunks for P2P live streaming.
FlightPath [38] is designed to provide incentives with bilateral chunk exchanges. Fig. 9(b) compares performance for FlightPath without the consideration of hidden effects, FlightPath with hidden effects, and distributed Striker algorithm in average peer utility, and social welfare. FlightPath is implemented with default configuration as described by Li et al. [38]. For FlightPath with no hidden effects, peer utility is obviously lower than distributed Striker algorithm. This is because bilateral chunk exchanges are not efficient for P2P live streaming due to the existence of limited trading opportunities. The degradation of social welfare for FlightPath with hidden effects is incurred by the departure of peers suffering from low experienced streaming quality. In our simulations, the average population size for FlightPath with hidden effects is 758.7 in the steady state. 7. Related work Game theory has been widely used for incentive analysis. Buragohain et al. [2] performed the pioneering research of utilizing game theory to model and analyze interactions among rational and strategic peers as a non-cooperative game. However, the model and analysis was too general. Zhao et al. [4] provided a concrete mathematical framework by stochastically investigating incentive policies.
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
15
Fig. 9. Clustering effects and performance comparison. (a) Clustering effects. (b) Performance comparison with FlightPath without hidden effects, FlightPath with hidden effects, and distributed Striker algorithm.
Yeung and Kwok [39] designed a repeated packet exchange game to motivate reciprocal chunk sharing between two neighboring peers in P2P live streaming systems. Parallel to this line of thought, Lin et al. [5] took peer capacity into consideration and achieved cheating proof against unfaithfully bandwidth capacity reporting. A taxation-based incentive mechanism integrated with P2P layered streaming was used in [40]. Wu et al. [6] tackled the free-riding problem in P2P-VoD systems. All the above studies on incentives against free-riding were either rigorous but too theoretical, or based on bilateral chunk exchanges that were inefficient for P2P live streaming due to limited trading opportunities among neighbors. At the same time, extensive studies has been conducted on efficient peer selection. Bandwidth heterogeneity was widely considered to boost system performance. Small et al. [13] theoretically investigated the scaling law of P2P streaming systems and showed that the optimal overlay construction strategy was to place peers with higher capacities closer to the source. Yeung and Kwok [3] established a cooperative game to select an appropriate neighbor set by taking peer outgoing bandwidth into consideration. To alleviate the tension between ISPs and P2P content providers, locality aware protocols were proposed to confine traffic within ISPs or ASes. Bindal et al. [15] presented biased neighbor selection (BNS) to improve traffic locality, by selecting the majority of peers within the same ISP for overlay construction. Piatek et al. [12] employed capacity aware peer selection to embed incentives into peers. However, all the above designs assumed the cooperation of rational peers to follow prescribed peer selection protocols that was never wellgrounded. However, only few studies exist in the literature to investigate the behaviors of selfish topologies. The pioneering study in [28] theoretically demonstrated that an inefficient overlay topology would be established by selfish peers to minimize look-up latencies. Comparably, our study is significantly different, as we fully investigate
the practical impact of strategic peer selection for P2P live streaming, and proposed lightweight and effective coercion schemes. Chen et al. [41] investigated interactions among geographically neighboring peers to serve as agents to download chunks from peers outside their residential ISPs. Yet, their intuitive solution of coin tossing was too simplistic and not realistic in practical systems. With reference to the above-mentioned related work, our proposed models and game theoretical analysis are novel in that we consider the gaming interactions between autonomous peers and the content provider, and among peers with different bandwidth capacities. To the best of our knowledge, we are among the first to propose practical coercion schemes based on strategic peer selection and study hidden effects in P2P live streaming systems. 8. Concluding remarks In this paper, we provide practical incentives for P2P live streaming, by fully exploring strategic peer selection. A strategic client judiciously adjusts its neighbor set by varying the probability of cooperation. Extensive simulations reveal hidden effects of strategic peer selection. In particular, non-cooperation of high capacity peers crowds out low capacity peers. Tractable game models are formulated to analyze interactions among trackers and heterogeneous peers that formally demonstrate system performance degradation in Nash equilibrium. Fortunately, repeated game exists for overlay construction due to inevitable network dynamics in practical P2P systems. With such motivation, we present the Striker strategy to stimulate cooperation among peers for overlay construction. The key idea is to prevent peers from deviation of cooperation by applying punishment threats. Extensive simulation results demonstrate the efficiency of our proposed coercion strategy. We would like to point out two interesting avenues of further research. We believe that it would be extremely useful if we could study the evolutionary interactions
16
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
among peers with behavior diversity, based on the tenet of survival of the fittest. The interplay between the resource sharing game and the overlay construction game also constitutes an essential research direction.
U 1i ðN; pi Þ ¼ ð1 di Þ h
i
n¼0
Es ðC; qc Þ ¼ qc aðsÞ þ ð1 qc Þ cðsÞ;
¼ cðiÞ
ðA:1Þ
Es ðN; qc Þ ¼ qc bðsÞ þ ð1 qc Þ dðsÞ;
ðA:2Þ
Ei ðC; pc Þ ¼ pc aðiÞ þ ð1 pc Þ bðiÞ;
ðA:3Þ
Ei ðN; pc Þ ¼ pc cðiÞ þ ð1 pc Þ dðiÞ:
ðA:4Þ
Thus, we can respectively derive the utility of trackers and peers
U s ðpc ; qc Þ ¼ pc Es ðC; qc Þ þ ð1 pc Þ Es ðN; qc Þ; U i ðpc ; qc Þ ¼ qc Ei ðC; pc Þ þ ð1 qc Þ Ei ðN; pc Þ: Partial differentiation of U s ðpc ; qc Þ and U i ðpc ; qc Þ respectively with regard to pc and qc gives
@ U s ðpc ; qc Þ ¼ Es ðC; qc Þ Es ðN; qc Þ; @p @ U i ðpc ; qc Þ ¼ Ei ðC; pc Þ Ei ðN; pc Þ: @q
c
T þ1
1 di i
þ ½pi dðiÞ 1 di T i T þ1
1 di i
:
ðB:1Þ
We then consider the scenario that high capacity peers switch to cooperation. In time round t, class i peers do not accept low capacity peers, and then it can obtain utility cðiÞ in this time round but dðiÞ in the consequent T i time rounds with probability pi . After that, the payoff is aðiÞ. Thus, the discounted average utility is
h i T U 2i ðN; pi Þ ¼ ð1 di Þ pi cðiÞ þ di dðiÞ þ þ di i dðiÞ h i T þ ð1 di Þð1 pi Þ cðiÞ þ di cðiÞ þ þ di i cðiÞ h i T þ1 T þn þ ð1 di Þ lim di i aðiÞ þ þ di i aðiÞ n!1
¼ cðiÞ ð1 di Þ þ ½pi dðiÞ þ ð1 pi Þ cðiÞ di T T þ1 1 di i þ di i aðiÞ:
ðA:6Þ
because aðsÞ > bðsÞandcðsÞ > dðsÞ. Thus, the best strategy for trackers is C in N.E., that is, pc ¼ 1.
1 di
þ ð1 pi Þ cðiÞ di
ðA:5Þ
Different values of pc and qc generate different best strategies for both players. In this game, @p@ U s ðpc ; qc Þ > 0,
ðB:2Þ
The strategy C yields class i peers the payoff aðiÞ in each of periods from t to t þ T i , and thus the discounted average payoff from period t to period t þ T i is
U i ðCÞ ¼ ð1 di Þ lim aðiÞ þ di aðiÞ þ þ dni aðiÞ ¼ aðiÞ: n!1
¼ 0, that is,
ðB:3Þ
pc aðiÞ þ ð1 pc Þ bðiÞ ¼ pc cðiÞ þ ð1 pc Þ dðiÞ; we can derive
pc
T
h i T cðiÞ þ di cðiÞ þ þ di i cðiÞ
Proof. We study mixed strategies taken by both players by defining the following quantities:
@U i ðpc ;qc Þ @qc
n¼0
cðiÞ þ di dðiÞ þ þ di i dðiÞ X nðT þ1Þ þ ð1 di Þ d i ð1 pi Þ
Appendix A. Proof of Theorem 1
If
X nðT þ1Þ d i pi
As a result, for class i peers, strategy C strictly dominates strategy N, if and only if
U 1i ðN; pi Þ < U 2i ðN; pi Þ < U i ðCÞ;
bðiÞ dðiÞ ¼ < 1: bðiÞ þ cðiÞ aðiÞ dðiÞ
ðB:4Þ
from which, we obtain
This contradicts the best strategy of pc ¼ 1 taken by trackðpc ;qc Þ < 0. This proves ers. In the meantime, when pc ¼ 1, @Ui@q c
that the best strategy of class i peers is N in N.E. Consequently, there is no mixed strategy N.E. and the unique pure N.E. is hC; Ni. From this, we can obtain the noncooperative nature of peers in face of requesters with lower capacities. h
cðiÞ aðiÞ þ ½pi dðiÞ pi cðiÞ di T þ1
< ½pi dðiÞ pi cðiÞ þ cðiÞ aðiÞ di i :
ðB:5Þ
That is,
½cðiÞ aðiÞ ð1 di Þ < ½pi dðiÞ pi cðiÞ þ cðiÞ aðiÞ T þ1
ðdi i
di Þ:
From cðiÞ < aðiÞ < bðiÞ < dðiÞ and 0 < di < 1, we have Appendix B. Proof of Theorem 3 Proof. High capacity peers can continue the noncooperation or switch to cooperation after the punishments. We first consider the scenario that high capacity peers continue the noncooperation. In time round t, class i peers do not accept low capacity peers, and then it can obtain utility cðiÞ in this time round but dðiÞ in the consequent T i time rounds with probability pi . The above payoff pattern repeats. Thus, the discounted average utility is
½pi dðiÞ pi cðiÞ þ cðiÞ aðiÞ < 0: That is,
pi >
cðiÞ aðiÞ : cðiÞ dðiÞ
ðB:6Þ
Thus, T þ1
di di i 1 di
<
cðiÞ aðiÞ : pi ½cðiÞ dðiÞ þ aðiÞ cðiÞ
ðB:7Þ
17
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18 0
Appendix C. Proof of Theorem 4 Proof. Tracker can take the Striker strategy (strategy S) or not (strategy S). This yields a discounted average of
T þ1
cðiÞ þ pi di ½dðiÞ cðiÞ þ di i
n!1
where
T þ1
di i
U 1 ¼ ð1 ds Þ cðsÞ þ ds dðsÞ þ þ dTsi dðsÞ þ ð1 ds Þ lim dTsi þ1 aðsÞ þ þ dTs i þn aðsÞ ¼ ð1 ds Þ cðsÞ þ ds ð1 dTs i Þ dðsÞ þ dTs i þ1 aðsÞ: ðC:1Þ Trackers take the Strategy S, if and only if U s ðSÞ < U s ðSÞ, from which we can obtain
ðC:2Þ
Because aðsÞ > cðsÞ > bðsÞ > dðsÞ, we have
cðsÞ dðsÞ : aðsÞ dðsÞ
ðC:3Þ
Appendix D. Proof of Theorem 8 Proof. We study the cheating game as shown in Table 5. If 0 0 and only if b ðiÞ > d ðiÞ, low capacity peers are honest while high capacity peers cheat in the unique pure N.E. On the 0 0 other hand, if and only if d ðiÞ > b ðiÞ, both are honest in the unique N.E. 0
0
Now, we study the conditions on which d ðiÞ > b ðiÞ. When high capacity peers are honest for their bandwidth supply, we have their discounted average utility as follows.
h i 0 T d ðiÞ ¼ ð1 di Þ cðiÞ þ pi ð1 di Þ di dðiÞ þ þ di i dðiÞ h i T þ ð1 pi Þ ð1 di Þ di cðiÞ þ þ di i cðiÞ h i T þ1 T þn þ ð1 di Þ lim di i aðiÞ þ þ di i aðiÞ n!1
T
¼ ð1 di Þ cðiÞ þ pi di dðiÞ ð1 di i Þ þ ð1 pi Þ T
di cðiÞ ð1 di i Þ þ dT i þ1 aðiÞ;
ðD:3Þ
>
aðjÞ : pi ½cðiÞ dðiÞ þ aðiÞ cðiÞ
ðD:4Þ
References
n!1
dTs i >
w > aðjÞ;
where w ¼ pi ½cðiÞ dðiÞ þ aðiÞ cðiÞ. Considering cðiÞ þ pi di ½dðiÞ cðiÞ > pi di dðiÞ > 0, we obtain an approximate lower bound as follows.
U s ðSÞ ¼ pi U 1 þ ð1 pi Þ U s ðSÞ; U s ðSÞ ¼ ð1 ds Þ lim cðsÞ þ ds cðsÞ þ þ dns cðsÞ ;
cðsÞ dðsÞ < dTs i ðaðsÞ dðsÞÞ:
0
If and only if d ðiÞ > b ðiÞ, high capacity peers have no incentive to cheat. Substituting Eqs. (D.1) and (D.2) into the condition, we obtain
ðD:1Þ
where the first term is payoff in the first round of noncooperation, the second and third terms show payoff during periods of punishments, and the fourth term is payoff in rounds of cooperation after the punishments. When high capacity peers cheat about their bandwidth supply, we have their discounted average utility as follows.
0 b ðiÞ ¼ ð1 di Þ lim aðjÞ þ di aðjÞ þ þ dni aðjÞ ¼ aðjÞ; n!1
ðD:2Þ where they receive the same payoff as that obtained by cooperative low capacity peers in each round.
[1] Y.-K. Kwok, Peer-to-Peer Computing: Applications, Architecture, Protocols, and Challenges, Taylor and Francis Group, 2011. [2] C. Buragohain, D. Agrawal, S. Suri, A game theoretic framework for incentives in P2P systems, in: Proc. of IEEE P2P, 2003. [3] M.K.-H. Yeung, Y.-K. Kwok, On game theoretic peer selection for resilient peer-to-peer media streaming, IEEE Trans. Parall. Distr. Syst. 20 (10) (2009) 1512–1525. [4] B.Q. Zhao, J.C. Lui, D.-M. Chi, Analysis of adaptive incentive protocols for P2P networks, in: Proc. of IEEE INFOCOM, 2009. [5] W.S. Lin, H.V. Zhao, K.J.R. Liu, Incentive cooperation strategies for peer-to-peer live multimedia streaming social networks, IEEE Trans. Multimedia 11 (3) (2009) 396–412. [6] W. Wu, J.C. Lui, R.T. Ma, Incentivizing upload capacity in P2P-VoD systems: a game theoretic analysis, in: Proc. of ICST GameNets, 2011. [7] M. Feldman, C. Papadimitriou, J. Chuang, I. Stoica, Free-riding and whitewashing in peer-to-peer systems, IEEE J. Sel. Areas Commun. 24 (5) (2006) 1010–1019. [8] PPLive, 2013.
. [9] PPStream, 2013. . [10] UUSee, 2013. . [11] X. Hei, C. Liang, J. Liang, Y. Liu, K.W. Ross, A measurement study of a large-scale P2P IPTV system, IEEE Trans. Multimedia 9 (8) (2007) 1672–1687. [12] M. Piatek, A. Krishnamurthy, A. Venkataramani, R. Yang, D. Zhang, A. Jaffe, Contracts: practical contribution incentives for P2P live streaming, in: Proc. of NSDI, 2010. [13] T. Small, B. Liang, B. Li, Scaling laws and tradeoffs in peer-to-peer live multimedia streaming, in: Proc. of ACM Multimedia, 2006. [14] Y. Liu, L. Xiao, X. Liu, L.M. Ni, X. Zhang, Location awareness in unstructured peer-to-peer systems, IEEE Trans. Parall. Distr. Syst. 16 (2) (2005) 163–174. [15] R. Bindal, P. Cao, W. Chan, Improving traffic locality in bittorrent via biased neighbor selection, in: Proc. of IEEE ICDCS, 2006. [16] A. Legout, N. Liogkas, E. Kohler, L. Zhang, Clustering and sharing incentives in BitTorrent systems, in: Proc. of ACM SIGMETRICS, 2007. [17] R. Rahman, T. Vinkó, D. Hales, J. Pouwelse, H. Sips, Design space analysis for modeling incentives in distributed systems, in: Proc. of ACM SIGCOMM, 2011. [18] B. Li, S. Xie, Y. Qu, G.Y. Keung, C. Lin, J. Liu, X. Zhang, CoolStreaming/ DONet: a data-driven overlay network for peer-to-peer live media streaming, in: Proc. of IEEE INFOCOM, 2008. [19] C. Wu, B. Li, Z. Li, Dynamic bandwidth auctions in multioverlay P2P streaming with network coding, IEEE Trans. Parall. Distr. Syst. 19 (6) (2008) 806–820. [20] K.-W. Kwong, D.H.K. Tsang, Building heterogeneous peer-to-peer networks: protocol and analysis, IEEE/ACM Trans. Network. 16 (2) (2008) 281–292. [21] M. Jain, C. Dovrolis, End-to-end available bandwidth: measurement methodology, dynamics, and relation with TCP throughput, in: Proc. of ACM SIGCOMM, 2002. [22] J. Strauss, D. Katabi, F. Kaashoek, A measurement study of available bandwidth estimation tools, in: Proc. of IMC, 2003. [23] N. Hu, P. Steenkiste, Evaluation and characterization of available bandwidth probing techniques, IEEE J. Sel. Areas Commun. 21 (6) (2003) 879–894. [24] D. Ciullo, M.A. Garcia, A. Horvath, E. Leonardi, M. Mellia, D. Rossi, M. Telek, P. Veglia, Network awareness of P2P live streaming applications: a measurement study, IEEE Trans. Multimedia 12 (1) (2010) 54–63. [25] M.J. Osborne, An Introduction to Game Theory, Oxford University Press, 2004.
18
X. Jin, Y.-K. Kwok / Computer Networks 81 (2015) 1–18
[26] X. Jin, Y.-K. Kwok, Network aware P2P multimedia streaming: capacity or locality?, in: Proc. of IEEE P2P, 2011. [27] B. Fan, J.C.S. Lui, D.-M. Chiu, The design trade-offs of BitTorrent-like file sharing protocols, IEEE/ACM Trans. Network. 17 (2) (2009) 365– 376. [28] T. Moscibroda, S. Schmid, R. Wattenhofer, On the topologies formed by selfish peers, in: Proc. of ACM PODC, 2006. [29] E. Koutsoupias, C. Papadimitriou, Worst-case equilibria, in: Proceedings of the 16th Annual Symposium on Theoretical Aspects of Computer Science (STACS 99), 1999. [30] M. Skidmore, H. Toyaz, Do natural disasters promote long-run growth?, Econ Inq. 40 (4) (2002) 664–687. [31] F. Bastiat, What is seen and what is not seen, Selected Essays on Political Economy. [32] M. Zhang, Q. Zhang, L. Sun, S. Yang, Understanding the power of pullbased streaming protocol: can we do better, IEEE J. Sel. Areas Commun. 25 (9) (2007) 1678–1694. [33] M. Zhang, Peer-to-peer streaming simulator, 2013. . [34] C. Liang, Y. Guo, Y. Liu, Investigating the scheduling sensitivity of P2P video streaming: an experimental study, IEEE Trans. Multimedia 11 (3) (2009) 348–360. [35] H. Wang, J. Liu, K. Xu, On the locality of BitTorrent-based video file swarming, in: Proc. of USENIX IPTPS, 2009. [36] Z. Han, Z. Ji, K.J.R. Liu, A cartel maintenance framework to enforce cooperation in wireless networks with selfish users, IEEE Trans. Wireless Commun. 7 (5) (2008) 1889–1899. [37] D.J. Watts, S.H. Strogatz, Collective dynamics of ‘Small-World’ networks, Nature 393 (6684) (1998) 440–442. [38] H.C. Li, A. Clement, M. Marchetti, M. Kapritsos, L. Robison, FlightPath: obedience vs. choice in cooperative services, in: Proc. of USENIX OSDI, 2008. [39] M.K.H. Yeung, Y.-K. Kwok, Game-theoretic scalable peer-to-peer media streaming, in: Proc. of IEEE IPDPS, 2008. [40] H. Hu, Y. Guo, Y. Liu, Mesh-based peer-to-peer layered video streaming with taxation, in: Proc. of NOSSDAV, 2010. [41] Y. Chen, B. Wang, W.S. Lin, Y. Wu, K.J.R. Liu, Cooperative peer-to-peer streaming: an evolutionary game-theoretic approach, IEEE Trans. Circ. Syst. Video Technol. 20 (10) (2010) 1346–1357.
Xin Jin received his B.Eng. degree in communication engineering from University of Electronic Science and Technology of China, Chengdu, China, in 2008. He received his Ph.D. degree in Electrical and Electronic Engineering from the University of Hong Kong in 2013. From September 2013 to August 2014. He was a Postdoctoral Research Fellow in the Pennsylvania State University. He is now a Software Developer Engineer in Yahoo Inc., Sunnyvale, CA, United States. His main research interests are incentive provision and performance modeling of distributed systems including P2P networks and cloud computing systems.
Y.-K. Kwok (Ricky) received a B.Sc. degree in Computer Engineering from the University of Hong Kong in 1991, and the M.Phil. and Ph.D. degrees, both in Computer Science, from the Hong Kong University of Science and Technology (HKUST) in 1994 and 1997, respectively. Before returning to the University of Hong Kong as an Assistant Professor in August 1998, he was a Visiting Scholar for one year in the Parallel Processing Laboratory, the School of Electrical and Computer Engineering at Purdue University (West Lafayette, Indiana, USA), where he worked on a DARPA research project in the field of distributed heterogeneous computing. During his sabbatical leave year (from August 2004 to July 2005). He worked as a Visiting Associate Professor in the Internet and Grid Computing Laboratory, Department of Electrical Engineering–Systems at the University of Southern California (Los Angeles, California, USA), where he conducted research on several interesting Internet security problems such as DDoS defense and traceback, worm containment and signature generation, etc. From July 2007 to May 2009, he also worked as an Associate Professor in the Department of Electrical and Computer Engineering at the Colorado State University (Fort Collins, Colorado, USA), where he taught courses and conducted research in the areas of wireless sensor networks, high performance computer architecture, reconfigurable computing systems, and heterogeneous computing. His research focus has been on designing efficient communication protocols and robust resources management algorithms toward enabling large scale distributed mobile computing. In these research areas, he has authored one textbook, co-authored another two textbooks, and published more than 200 technical papers in various leading journals, research books, and refereed international conference proceedings. He is a Senior member of the Association for Computing Machinery (ACM). Ricky is a Fellow of the HKIE, the IEEE, and the IET. He is also currently serving as Associate Vice-President (Teaching and Learning), overseeing various e-learning initiatives at HKU. He is also a member of the IEEE Computer Society and the IEEE Communications Society. He is an Associate Editor for the IEEE Transactions on Parallel and Distributed Systems. From March 2006 to December 2011. He served on the Editorial Board of the Journal of Parallel and Distributed Computing as a Subject Area Editor in Peerto-Peer Computing. He received the Outstanding Young Researcher Award from the University of Hong Kong in 2004. In January 2010, one of his journal papers was ranked #4 among top ten all time most cited papers published in the IEEE Transactions on Parallel and Distributed Systems, based on Scopus and Google Scholar citation counts as of October 2009.