15
Peer-to-Peer Netw. Appl. DOI 10.1007/s12083-014-0260-8 Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services Jiayi Liu · Shakeel Ahmad · Eliya Buyukkaya · Raouf Hamzaoui · Gwendal Simon Received: 22 March 2013 / Accepted: 28 February 2014 © Springer Science+Business Media New York 2014 Abstract Multioverlay peer-to-peer live video streaming systems face the problem of finding a suitable peer upload bandwidth allocation among concurrent overlays. So far, no efficient solution has been proposed for the important case where the overall system is underprovisioned, that is, when peers do not have enough upload bandwidth to ensure video distribution at full quality. We design various objec- tive functions for this upload bandwidth allocation problem and show how optimal solutions can be computed using a bipartite flow network. Simulation results show that our solutions improve on existing algorithms in terms of video quality. Keywords Peer-to-peer live streaming · Multioverlay · Resource allocation J. Liu () · G. Simon TELECOM Bretagne, Rennes, France e-mail: [email protected] G. Simon e-mail: [email protected] S. Ahmad · R. Hamzaoui De Montfort University, Leicester, UK S. Ahmad e-mail: [email protected] R. Hamzaoui e-mail: [email protected] E. Buyukkaya ENSSAT, University of Rennes 1, Rennes, France e-mail: [email protected] 1 Introduction Online video platforms that enable users to broadcast their own live videos are experiencing growing popularity. On justin.tv, for example, one new live video starts every sec- ond, and users watch more than 300 million videos every month. A desirable feature for such platforms is to allow users to watch several videos simultaneously. Applications include: (i) multi-channel TV [19], (ii) multi-camera streaming, where a user can watch the same event from different view- points [19], and (iii) MMOG player cooperation, where team mates share live video of their game [1, 2]. Since a user-generated live video is typically watched by only a few people, a Content Delivery Network (CDN) is not cost-effective for such platforms. Alternatively, one can use a multioverlay peer-to-peer (P2P) system [18, 19] consisting of multiple P2P live video streaming networks. Each P2P overlay contains one source and peers that have subscribed to its live stream (channel). Thus, some users are sources, which emit user-generated live videos, while the others are peers, which receive one or several videos and participate in the delivery of these videos. However, a peer that subscribes to several overlays must share its uplink bandwidth among them. For example, in Fig. 1, where the system contains three overlays, peer p 1 participates in over- lay s 1 and s 2 while peer p 2 participates in all three overlays. As a result, they must determine how to allocate their uplink bandwidth among these overlays. This threatens the avail- ability of resources as it is now widely accepted that the resource bottleneck of P2P systems is the upload bandwidth of peers [10]. To address this problem, we focus on the provision- ing of overlays in multioverlay P2P live streaming sys- tems. We define the provisioning of an overlay as the

Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

  • Upload
    gwendal

  • View
    215

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.DOI 10.1007/s12083-014-0260-8

Resource allocation in underprovisioned multioverlaypeer-to-peer live video sharing services

Jiayi Liu · Shakeel Ahmad · Eliya Buyukkaya ·Raouf Hamzaoui · Gwendal Simon

Received: 22 March 2013 / Accepted: 28 February 2014© Springer Science+Business Media New York 2014

Abstract Multioverlay peer-to-peer live video streamingsystems face the problem of finding a suitable peer uploadbandwidth allocation among concurrent overlays. So far,no efficient solution has been proposed for the importantcase where the overall system is underprovisioned, that is,when peers do not have enough upload bandwidth to ensurevideo distribution at full quality. We design various objec-tive functions for this upload bandwidth allocation problemand show how optimal solutions can be computed usinga bipartite flow network. Simulation results show that oursolutions improve on existing algorithms in terms of videoquality.

Keywords Peer-to-peer live streaming · Multioverlay ·Resource allocation

J. Liu (�) · G. SimonTELECOM Bretagne, Rennes, Francee-mail: [email protected]

G. Simone-mail: [email protected]

S. Ahmad · R. HamzaouiDe Montfort University, Leicester, UK

S. Ahmade-mail: [email protected]

R. Hamzaouie-mail: [email protected]

E. BuyukkayaENSSAT, University of Rennes 1, Rennes, Francee-mail: [email protected]

1 Introduction

Online video platforms that enable users to broadcast theirown live videos are experiencing growing popularity. Onjustin.tv, for example, one new live video starts every sec-ond, and users watch more than 300 million videos everymonth.

A desirable feature for such platforms is to allow users towatch several videos simultaneously. Applications include:(i) multi-channel TV [19], (ii) multi-camera streaming,where a user can watch the same event from different view-points [19], and (iii) MMOG player cooperation, whereteam mates share live video of their game [1, 2].

Since a user-generated live video is typically watchedby only a few people, a Content Delivery Network (CDN)is not cost-effective for such platforms. Alternatively, onecan use a multioverlay peer-to-peer (P2P) system [18, 19]consisting of multiple P2P live video streaming networks.Each P2P overlay contains one source and peers that havesubscribed to its live stream (channel). Thus, some usersare sources, which emit user-generated live videos, whilethe others are peers, which receive one or several videosand participate in the delivery of these videos. However, apeer that subscribes to several overlays must share its uplinkbandwidth among them. For example, in Fig. 1, where thesystem contains three overlays, peer p1 participates in over-lay s1 and s2 while peer p2 participates in all three overlays.As a result, they must determine how to allocate their uplinkbandwidth among these overlays. This threatens the avail-ability of resources as it is now widely accepted that theresource bottleneck of P2P systems is the upload bandwidthof peers [10].

To address this problem, we focus on the provision-ing of overlays in multioverlay P2P live streaming sys-tems. We define the provisioning of an overlay as the

Page 2: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

Management Servers1 s2 s3

p1

p2

p4

p3

Overlay 1

Overlay 2

Overlay 3

Fig. 1 Three sources in a multioverlay live video system

difference between the overlay demand (the amount ofbandwidth required to serve all peers in this overlay) andthe overlay capacity (the amount of bandwidth reserved).In streaming applications, the provisioning of an over-lay has a direct impact on the video quality perceivedby the peers. As resource deficit can lead to packet loss,peers in underprovisioned P2P networks experience videoquality degradation [12]. Consequently, in the multiover-lay context, resources can be wasted if they are allocatedto overprovisioned overlays, although they could be allo-cated to underprovisioned ones. For example, in Fig. 2,peer p2 reserves two resource units for the overprovisionedoverlay s3 although it could reserve them for the under-provisioned overlay s2. This problem is especially criticalwhen the system is underprovisioned, that is, when theaggregate upload bandwidth of all peers cannot meet thedemand to deliver all the videos. Our simulations showthat for realistic parameter settings, the system is oftenunderprovisioned.

Our first goal is to minimize the waste of resources. Weshow that an optimal solution can be found in time that ispolynomial in the number of users. Thus, it becomes possi-ble to compute an optimal bandwidth allocation for a largesystem.

Upon achieving the first goal, we focus on the under-provisioned case. We identify four policies for sharingthe resource deficit among overlays: minimize the numberof underprovisioned channels, prioritize popular channels,prioritize fee-paying users, and prioritize videos that areglobally more frequently watched as preferred videos. Wepresent a generic solution that finds allocations that min-imize the waste of resources and correspond to the bestallocations with respect to the policy of the service provider.

Our third contribution is a distributed algorithm that allo-cates the bandwidth based on proportional fairness. Wesolve this optimization problem with the dual decomposi-tion method.

Finally, we present simulations where we compare ourstrategies to the main previous approach [18, 19]. Whenthe system is overprovisioned, our strategies make surethat all peers receive high-quality videos. When the systemis underprovisioned, they guarantee that a large propor-tion of peers enjoy high-quality videos, according to theaforementioned policies.

This work significantly extends our conferencepaper [11]. We propose three additional bandwidth allo-cation strategies, including one based on fairness, givemore details about the implementation, and provide moreexperimental results.

The remainder of this paper is organized as follows.Section 2 summarizes related work. Section 3 definesthe notations used throughout the paper. Section 4 showsthat the resource allocation with minimum resource wasteis equal to the maximum flow in a bipartite flow net-work model. Section 5 proposes several bandwidth alloca-tion strategies defined through cost functions in the flownetwork. Section 6 introduces the fair bandwidth allo-cation strategy and solves it using the dual decomposi-tion method. Section 7 gives implementation details. Sec-tion 8 contains simulation results. Conclusions are given inSection 9.

Fig. 2 Example of asub-optimal bandwidthallocation (arrows showbandwidth allocation)

s1 capacity: 6

overlay demand: 18overlay capacity: 18

provisioning: 0

s2 capacity: 6

overlay demand: 12overlaycapacity: 10

provisioning: -2

s3 capacity: 6

overlay demand: 18overlay capacity: 20

provisioning: 2

p1

capacity: 9

p2

capacity: 5

p3

capacity: 8

p4

capacity: 8

6 24

3 1 28

4

Page 3: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

2 Related work

The problem of underprovisioned overlays has not receivedenough attention. Usually, one tries to provision the over-lays so that they are no longer facing underprovision-ing. For example, the lack of bandwidth can be tack-led by provisioning some additional servers [16, 21].This approach is compatible with our system. Our firstgoal of minimizing the underprovisioning of the systemalso achieves minimum server upload bandwidth con-sumption. Another approach is to authorize peers to con-tribute to overlays they have not subscribed to [22]. How-ever, this approach works only if the system is over-provisioned. Moreover, in the context of video sharingin social network applications, privacy concerns make itunacceptable.

To address the resource allocation problem in multiover-lay systems, two main approaches have been proposed. Thefirst one [10, 20] tries to solve the inter-overlay bandwidthcompetition problem and the intra-overlay video stream-ing problem simultaneously. The second one solves the twoproblems independently. We believe that the latter approachis more advantageous.

– First, the system can be designed with more flexibil-ity since any existing P2P streaming protocol couldbe used for intra-overlay streaming. Some works havedesigned promising solutions for the P2P delivery ofvideo in underprovisioned overlays [12]. The imple-mentation of such P2P systems would be appropriatefor underprovisioned systems.

– Second, separating the two problems can enhance thesystem robustness in a dynamic environment. In all atonce solutions, system dynamics such as peer churn andbandwidth re-allocation lead to the reconstruction ofthe overlays. P2P streaming protocols that are adaptiveto such dynamics have been proposed in the literature(e.g., mesh-based P2P streaming protocols). Integratingsuch protocols can avoid costly overlay reconstructions.

– Last, solving the two problems simultaneously is morecomplex than solving them independently. In particu-lar, the problem formulation for such a double-objectiveproblem is challenging.

Based on the above discussion, we follow the secondapproach [18, 19] and solve the inter-overlay bandwidthallocation problem independently of the intra-overlay videostreaming problem. We first solve the inter-overlay band-width allocation problem and then use a state-of-the-art P2Pvideo streaming protocol for video streaming.

The second approach has some limitations. It relies ona protocol, namely DAC, which allocates upload band-width based on each overlay streaming demand. How-ever, this approach is oblivious to overlay provisioning. As

our simulations show, DAC leads to biased results wheremost resources are allocated to the high-demand overlays,although the excess resources could be allocated to under-provisioned ones. As a result, the overlays with low demandmay suffer from bandwidth deficit even when the system isoverprovisioned. Moreover, DAC was evaluated in a small-scale simulation with four channels and simple multioverlaystructures (chain, star and mesh). In contrast, we conducteda large scale simulation (over 200 channels), and the mul-tioverlay structure is formed from a realistic simulationmodel. As our simulation shows, our proposed strategiesoutperform DAC in all cases (Section 8).

3 System model

Table 1 gives the notations used throughout the paper.

Sources The set of sources is denoted by S. A source s isassociated with an overlay Gs , which contains the set Ps

of all peers that have subscribed to this overlay. To avoidconfusion, s �∈ Ps .

Peer-to-peer streaming Our system is independent of intra-overlay structures. Therefore, any state of the art P2P livevideo streaming system can be used.

Peer uplink management The set of all peers is denoted byP . We denote by G(p) the set of sources from which peerp receives a video. The upload capacity of p is denoted byBp while the upload capacity that p has reserved to servevideo chunks in the overlay Gs is denoted by bsp. Clearly,∑

s∈G(p) bsp ≤ Bp. A source s ∈ S can also be a casual

peer of another overlay. We assume that s reserves all of itsbandwidth to its overlay Gs .

Overlay capacity and demand The capacity of an overlayGs is denoted by Cs . It is equal to

∑p∈Ps

bsp +Bs , which isthe aggregated upload bandwidth allocated from peers to Gs

Table 1 Notations

P, S Set of peers, set of sources

Gs, Ps Overlay of source s, set of peers in Gs

Bp Upload capacity of a peer p

bsp Upload capacity reserved by p for Gs

G(p) Set of sources to which peer p subscribed

ds Video bit rate of the video emitted by s

os Average overhead of P2P streaming

protocol in overlay Gs

Ds,Cs Demand of Gs , capacity of Gs

�s,�rs Provisioning of Gs , relative provisioning of Gs

Page 4: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

added to the capacity of the source. The demand of an over-lay corresponds to the smallest overlay capacity requiredto satisfy all peers in Ps . In a real system, the overheadresulting from the control traffic of P2P streaming protocolscannot be neglected. Therefore, the demand Ds of an over-lay Gs contains two parts. The first part is the bandwidthrequired to stream the video to all peers, while the otherpart is the bandwidth used by the streaming protocol. As aresult, Ds = |Ps | · (ds + os), where ds denotes the bit rateof the video emitted by s and os is the average overhead inthe overlay Gs .

Overlay provisioning The provisioning �s of a given over-lay Gs is the difference between its capacity Cs and itsdemand Ds , i.e., �s = Cs − Ds . An overlay is said to beunderprovisioned when �s is negative. The smaller the pro-visioning, the worse the video quality experienced by thepeers. On the other hand, the overlay is overprovisionedwhen �s is positive. We define overlay underprovision-ing as |�s | if the overlay is underprovisioned and zero,otherwise.

Overlay relative provisioning The relative provisioning �rs

of a given overlay Gs is defined as the overlay provisioningdivided by the number of peers in the overlay, that is, �r

s =�s|Ps | .

System provisioning A system is said to be underprovi-sioned if

∑p Bp <

∑s Ds . Otherwise, it is said to be

overprovisioned.

4 Minimizing underprovisioning: bipartite flow network

In order to solve the bandwidth allocation problem, webuild an abstract structure, which is a bipartite flow networkN = (V, E). This bipartite flow network model is the basisof our proposals. For example, Fig. 3 shows the bipartitegraph related to the scenario of Fig. 1. The set V contains a

l

p1 p2 p3 p4

s1 s2 s3

q

9 5 8 8

12 6 12

∞∞ ∞

∞∞

∞∞

Fig. 3 Example of the bipartite flow network model. Numbers in thearrows are capacities

virtual fountain l, a virtual sink q , the set P of all peers in thesystem, and the set S of all sources. Thus V = P ∪S∪{l, q}.

The set of directed edges E gives the source-peer rela-tionship. It includes three subsets. The first one, E1 ={(l → p) : p ∈ P }, contains edges from the fountain toeach peer p with a maximum capacity of Bp. The secondone, E2 = {(p → s) : p ∈ P, s ∈ G(p)}, contains edgesfrom p to s if p subscribes to s with infinite maximumcapacity. The third set, E3 = {(s → q) : s ∈ S}, containsedges from each source s to the sink with a maximum capac-ity equal to Ds − Bs , the overlay demand minus the sourcecapacity.

The flows on edges E2 represent bandwidth allocationsfrom peers to sources. The capacity of E1 indicates the limita peer can reserve, whereas the capacity of E3 shows thedemand of an overlay.

Our first goal is to minimize the total underprovision-ing. The resource allocation should ensure that no resourceis allocated to overprovisioned overlays when it could havebeen allocated to underprovisioned ones. Let S+ (respec-tively S−) be the set of sources (overlays) with a positive(respectively negative) provisioning. We look for an uplinksharing among the overlays such that the total underprovi-sioning is minimum. Hence, our first goal is to minimize∑

s∈S− |�s |.

Proposition 1 The total underprovisioning∑

s∈S− |�s | isminimum if and only if the maximum flow is achieved in theflow network.

Proof We denote by fs,q the flow on the arc (s → q).The cut-set between V \ {q} and {q} bounds a flow |f | =∑

s∈S fs,q . For each source s, |�s | = Ds −Bs − fs,q . For asource s in S+, Ds − Bs − fs,q is equal to zero because theflow fs,q cannot be greater than Ds − Bs . Thus,

s∈S−|�s | =

s∈S

(Ds − Bs − fs,q

) = A−∑

s∈Sfs,q

where A is a constant. Then, minimizing∑

s∈S− |�s | isequivalent to maximizing

∑s∈S fs,q . Moreover, (i) edges

from l to P provide the system with all capacities C =∑

p Bp, (ii) edges from P to S follow the rule of thebandwidth allocation. Hence, the overall underprovision-ing

∑s∈S− |�s | is minimized if and only if the flow is

maximized.

The max-flow problem has been extensively studiedin the literature. The Goldberg-Tarjan preflow-push algo-rithm [9] is one of the most famous algorithms for thisproblem. Using this algorithm in a bipartite graph is further

Page 5: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

discussed in [3]. A number of works also designed dis-tributed algorithms [7]. These previous works offer opportu-nities to develop distributed methods that minimize the totalunderprovisioning.

5 Cost function driven bandwidth allocation strategies

When the system is underprovisioned, there is more thanone resource allocation that minimize the total underprovi-sioning. In this section, we design various cost functions inthe flow network to derive the distribution of upload band-width among underprovisioned sources as a minimum-costmaximum flow in the network.

5.1 Minimum-cost maximum-flow problem

In the minimum-cost maximum-flow problem, each edge e

is associated with a cost cost (e). The cost of sending a flowis then cost (e) · fe. The problem is to find among all maxi-mum flows one with minimum sum of costs

∑e cost (e)·fe.

The minimum-cost maximum-flow problem can be con-verted into a minimum-cost circulation problem, and thelatter one can be solved in polynomial time [8].

We propose to define cost functions for edges in E3. Asthe minimum-cost maximum-flow problem aims at mini-mizing the sum of flow costs, the edges associated with alower cost will be prioritized in the bandwidth allocation.This approach is generic in the sense that various band-width allocation strategies can be derived by using differentcost functions. We present in the following four differentbandwidth allocation strategies.

5.2 Strategy I: prioritize overlay diversity

The first strategy satisfies the maximum number of over-lays. An overlay is said to be satisfied if its normalized rel-ative provisioning is close to zero. Thus, we define our firststrategy as one that minimizes the total relative underpro-visioning

∑s∈S− |�r

s |. Overlays with a smaller populationshould be prioritized because they have less demand and areeasily satisfied. Let us define the cost function as

cost1(e) ={

1, if e ∈ E1 ∪ E2

1 − 1|Ps | , if e ∈ E3

Then Proposition 2 shows that our first strategy is givenby the minimum-cost maximum flow corresponding tocost1(e).

Proposition 2 The minimum-cost maximum flow corre-sponding to cost1(e) minimizes the total relative underpro-visioning

∑s∈S− |�r

s |.

Proof

e

cost1(e) · fe =∑

e∈E1

fe +∑

e∈E2

fe +∑

e∈E3

(1 − 1

|Ps | ) · fe

= 2|fmax| +∑

e∈E3

fe −∑

s∈S

Ds − Bs − |�s ||Ps |

= 3|fmax| −∑

s∈S

Ds − Bs

|Ps | +∑

s∈S−

|�s ||Ps |

= A+∑

s∈S−|�r

s |

where A is a constant. Thus, minimizing∑

e cost1(e) · fe isequivalent to minimizing

∑s∈S− |�r

s |.

5.3 Strategy II: prioritize overlay popularity

Another reasonable strategy is to prioritize the most popu-lar overlays since they are required by a large number ofpeers. Then, the number of unsatisfied overlays should bemaximized in order to better serve the most popular ones.The second strategy is defined as one that maximizes thetotal relative underprovisioning

∑s∈S− |�r

s |. Let us definethe cost function as:

cost2(e) ={

1, if e ∈ E1 ∪ E21

|Ps | , if e ∈ E3

Then our second strategy is given by the minimum-costmaximum flow corresponding to cost2(e).

Proposition 3 The minimum-cost maximum flow corre-sponding to cost2(e) maximizes

∑s∈S− |�r

s |.

Proof The proof of Proposition 3 is similar to that ofProposition 2.

5.4 Strategy III: prioritize fee-paying sources

Many service operators have adopted a tiered businessmodel that prioritizes fee-paying users. With this model,sources can be split into two classes: a premium class of fee-paying sources and a second class of non-paying sources. Astrategy that prioritizes the premium class can be obtainedwith the following simple cost function.

cost3(e) =⎧⎨

1, if e ∈ E1 ∪ E2

1, {e = (s → t) , s ∈ Premium Class}2, {e = (s → t) , s ∈ Second Class}

5.5 Strategy IV: prioritize user preference

When watching multiple videos, users pay more atten-tion to their preferred videos. For example, in Multi-

Page 6: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

channel TV, the channel with the largest window is thefocus of users. We define a strategy that prioritizes theoverlays that are more frequently watched as preferredvideos.

We first define a binary variable rsp , which is equalto one if p prefers the video emitted from s, and zero,otherwise. Then, the normalized frequency of a videos watched as the preferred video can be measured as

fs =∑

p∈Ps rsp

|Ps | , and overlays with greater fs should beassociated with higher provisioning. Thus we define thisstrategy as maximizing

∑s∈S+ fs · 0 + ∑

s∈S− fs · �s .Consequently, the objective of prioritizing user-preferredoverlays can be equivalently written as minimizing∑

s∈S− fs · |�s |.The following cost function can be defined with respect

to this objective.

cost4(e) ={

1, if e ∈ E1 ∪ E2

1 − fs, if e ∈ E3

Proposition 4 The minimum-cost maximum flow corre-sponding to cost4(e) minimizes

∑s∈S− fs · |�s |.

Proof The proof of Proposition 4 is similar to that ofProposition 2.

5.6 Practical optimization

Previous strategies have a common drawback: they aimat ensuring zero provisioning in the prioritized overlays,although a negative relative provisioning �r

s with a smallabsolute value would have a low impact on the overall qual-ity of experience. To address this problem, we introduce atunable video quality parameter k and say that an underpro-visioned overlay has tolerable video degradation if |�r

s | issmaller than k.

The demand Ds of an overlay can be interpreted as theamount of upload bandwidth required by s to be provi-sioned as �s = 0. If the system is very underprovisioned,rather than requiring perfect video quality in each overlay,we allow a tolerable video degradation. This can be done bytuning the parameter k. As a consequence, the actual Ds isequal to |Ps | · (ds + os − k).

6 Fair bandwidth allocation strategy

The strategies discussed in Section 5 prioritize some over-lays. However, this can result in significant resource deficitsin the unprioritized overlays. Hence, we propose a fairupload bandwidth allocation strategy and solve it by thedual decomposition method [4, 19].

6.1 Problem formulation

In the flow network model, the upload bandwidth allocatedfrom peer p to source s is a flow along the path (l → p →s → q). Thus, the problem of fair bandwidth allocation canbe formulated as maximizing the flow utility with respect toedge capacity:

max∑

s,p∈Ps

D′s · log(bsp) bsp ≥ 0 (1)

subject to∑

s∈G(p)

bsp ≤ Bp ∀p (2)

p∈Ps

bsp ≤ D′s ∀s (3)

where D′s = Ds − Bs . The utility function D′

s · log(bsp)expresses the following connotations: (i) the objective inEq. 1 is defined as a strictly concave function to makethe problem computationally solvable through convex opti-mization; (ii) it reflects the proportional fairness suchthat bandwidth is allocated according to overlay demand.Constraint 2 and 3 guarantee that flows will not vio-late the edges’ capacity. We first build the Lagrangianof Eq.1 as

L(λ,μ) =∑

s,p∈Ps

(U(bsp)−λpbsp−μsbsp)+∑

p

λpBp+∑

s

μsD′s

(4)

where λp ≥ 0 and μs ≥ 0 are the dual variables to be min-imized in the dual problem and λ and μ denote the vectorsof λp and μs , respectively. The master dual problem 5 is

min φ(λ,μ) =∑

s,p∈Ps

φs,p(λp, μs)+ λT B + μT D′ (5)

for the dual variables λ 0 and μ 0 where B and D′denote the vectors of Bp and D′

s and

φs,p(λp, μs) = sup

b

(U(bsp)−λpbsp−μsbsp) ∀s, p ∈ Ps

is the dual function obtained as the optimal value of theLagrangian solved in Eq. 6

max U(bsp)− λpbsp − μsbsp ∀s, p ∈ Ps (6)

The subgradient method can be used to find the optimalvalue of the dual variables. Let b̂sp(λ

p, μs) be an opti-mal solution of problem 6 with given λp and μs . The

Page 7: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

Algorithm 1 Source s at round t > 0

1: Wait for b̂sp(t − 1) from p ∈ Ps

2: Update μs(t) with μs(t − 1) and b̂sp(t − 1) accordingto (8)

3: p ∈ Ps

4: Send μs(t) to p

5: end for

subgradient of (λ,μ) is given by s(λ,μ) = −b̂(λ,μ).Thus, the problem in Eq. 5 can be solved by the followingiteration:

λp(t+1)=⎡

⎣λp(t)−α(Bp−∑

s∈G(p)

b̂sp(λp(t), μs(t)))

+∀p

(7)

μs(t + 1)=⎡

⎣μs(t)−α(D′s−

p∈Ps

b̂sp(λp(t), μs(t)))

+

∀s

(8)

where t is the iteration index, α is a small enough positivestep size, and [·]+ is the nonnegative orthant projection.

6.2 Distributed algorithm

The edge price λp and μs can be locally updated by eachpeer p and source s. A distributed algorithm can solve theglobal optimization problem in Eq. 1 locally by messagepassing between sources and peers coupled by constraints 2and 3. The algorithm consists of two phases: an initializationphase (t = 0) and a running phase (t > 0). The subgra-dient method starts from any value and converges to theoptimal one, thus the initial value (λ(0),μ(0)) is randomlygenerated. Each source randomly chooses a positive μs(0)and broadcasts it to its peers. Each peer randomly choosesa positive λp(0), calculates b̂sp(0), and sends b̂sp(0) to thecorresponding sources. Then, the algorithm goes into aniterative phase until it converges. Each iteration is detailedin Algorithms 1 and 2.

7 Implementation and practical details

We provide implementation details to show the practicalrelevance of our theoretical framework.

Algorithm 2 Peer p at round t > 0

1: Update λp(t) with λp(t − 1) and b̂sp(t − 1) accordingto (7)

2: Wait for μs(t) from s ∈ G(p)

3: s ∈ G(p)

4: Solve problem (6) with λp(t) and μs(t) and obtainb̂sp(t)

5: Send b̂sp(t) to s

6: end for

7.1 Overall architecture and peer dynamics

The main functions are implemented in a global servercalled P2PServer. Every peer estimates its upload capacityand sends a report to P2PServer. Bandwidth estimation canbe done using one of the many tools proposed in the liter-ature [14]. Using this information, P2PServer computes thebandwidth allocation and sends the result to peers. Ideally,the computation of the allocation should closely follow peerchurn and bandwidth variations. Since this is infeasible inpractice, the system time is partitioned into sessions [18,19], and the computation is done once in a session. Onlypeers and sources that exist in the system at the starting pointof the session are considered. During the session, new arriv-ing peers allocate their upload bandwidth according to somepredefined strategy (e.g., equal allocation to the subscribedoverlays). The capacity of the system to handle the dynamicbehavior of peers depends only on the session length. InSection 8, we evaluate the received video quality for differ-ent session lengths and peer churn rates. Our results suggestthat a delay of one minute between two re-computations isa reasonable choice.

7.2 Peer-server communication overhead

Although the traffic generated by the peer-server commu-nication is a concern, it has to be seen in light of the hugeamount of data needed for the live video streams. For exam-ple, if the average number of videos watched by a peer isthree, two bytes are used to specify the upload bandwidthreserved to an overlay, and bandwidth allocation is recom-puted every minute, then P2PServer needs to transmit 0.8bps per peer. If we consider in addition the 54 bytes forthe TCP/IP/Ethernet packet overhead, then 0.8 Mbps serverupload bandwidth would be needed for 100,000 users. Sim-ilarly, if the report sent by a peer to P2PServer includes fourbytes to specify the estimated upload bandwidth and fourbytes for the peer ID, then only 0.826 Mbps server down-load bandwidth would be needed for 100,000 users. Thisshows that, from a network standpoint, the system can beimplemented without much fear for scalability.

Page 8: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

7.3 Algorithm computation time

To study, the scalability with respect to time complex-ity, we measured the exact computation time of the pre-flow maximum flow algorithm and a scaling approximationminimum-cost flow algorithm [8]. The measurement wasdone on a typical server (2 × 4 cores Intel(R) Xeon(R)2.67 GHz CPUs). The number of peers was increased from1,000 to 100,000. For each instance, the number of sourceswas set to 10 % of the population. The number of channelswatched by a peer was randomly chosen between 1 and 5.Table 2 shows results corresponding to the average of 5 runs.

Our measurements demonstrate that a practical imple-mentation of the minimum-cost maximum-flow algorithmcan compute the resource allocation for very large instances(100,000 peers and 10,000 sources) in reasonable time.They also confirm that recomputing the allocation everyminute is a reasonable compromise. The low peer to servercommunication overhead and the fast resource allocationalgorithm show the feasibility of managing a centralizedserver to recompute periodically the optimal resource allo-cation in a dynamic environment.

8 Simulation results

To evaluate the proposed bandwidth allocation algorithms,we built a two-level simulator platform. The first level sim-ulates an MMOG video sharing system in which usersform friendships and stream live videos of their game totheir friends. Although we simulated an MMOG video shar-ing service, we believe that the results are applicable toany social network-based video sharing service becauseour simulation model is based on rules that reflect humannature (Pareto rule). In order to conduct realistic simula-tions, the peer-source watching relationship (which userspublish videos and who are the receivers of these videos)is established based on a model drawn from real measure-ments (Section 8.1). These relationships are used by thebandwidth allocation algorithms to allocate bandwidth tousers.

Taking the allocated bandwidth as input, the secondlevel simulates the chunk diffusion of each overlay withP2PTVSim [13]. P2PTVSim is a peer-to-peer TV simu-lator which simulates a flow of video chunks from one

Table 2 Computation time for the minimum-cost maximum-flowalgorithm

nb. peers 1,000 5,000 10,000 50,000 100,000

Time (in s) 0.005 0.086 0.311 7.455 31.887

source to a set of peers. Peers are interconnected in a mesh-based overlay where each peer randomly chooses a num-ber of peers as neighbors. Peers use the latest-best chunkscheduling strategy, i.e., peers push the latest useful chunkto their neighbors according to their upload bandwidth.For simplicity, chunk losses are only caused by the lackof bandwidth. Underprovisioned overlays endure longerchunk delays and more chunk losses compared to well-provisioned ones. Finally, from the results of P2PTVSim,we also evaluated the video quality at each receiving peer bymeasuring the average luminance peak signal-to-noise-ratio(PSNR).

We conducted two sets of simulations: a static scenariosimulation and a dynamic scenario simulation. In the staticscenario, we calculate the optimal bandwidth allocation ofdifferent algorithms for a set of peer-source configurations.This can be seen as calculating the optimal bandwidth allo-cation of a snapshot of a dynamic system. The systemprovisioning was changed from an overprovisioned stateto an underprovisioned state by increasing the video bitrate. The aim of the static scenario simulation is to revealthe behavior of the algorithms and compare them withrespect to the video quality experienced by the peers. Inthe dynamic scenario, we introduced peer churn. We alsomodified P2PTVSim to support peer churn. The systemperiodically recomputes the optimal bandwidth allocationevery �t time with respect to the configuration at thatmoment. We defined three sub-scenarios: a join-only sce-nario, a leave-only scenario and a fully-dynamic scenario.Then, we evaluated the performance of the dynamic sys-tem under different peer churn rates and recomputationintervals �t .

The following algorithms were evaluated:

– DAC [18]: It fairly allocates upload bandwidth basedon overlays’ demands, but it is blind to the provisioningof overlays.

– Diversity-based (Db): It corresponds to the strategy thatprioritizes unpopular overlays (Section 5.2).

– Popularity-based (Pb): It corresponds to the strategythat prioritizes popular overlays (Section 5.3).

– Improved diversity-based (IDb) and Improvedpopularity-based (IPb): Versions of Db and Pbobtained by introducing the video quality parameter kas 50 kbps for underprovisioned systems (Section 5.6).

– Payment-based (Pa): It prioritizes premium sources(Section 5.4).

– Preference-based (Pr): It prioritizes more frequentlypreferred overlays (Section 5.5). Each peer randomlychooses a video as its preferred one.

– Fairness-based (Fb): It allocates the upload bandwidthbased on overlays’ demands while being aware of theprovisioning of overlays (Section 6).

Page 9: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

– Naive (Nai): It equally allocates the upload bandwidthto the overlays it belongs to.

8.1 Simulation setting

Peer upload bandwidth followed a log-normal distributionwith parameters μ = log(380) and σ = 0.8, rangingfrom 256 kbps to 5 Mbps (Fig. 4d). For the static sce-nario, the video bit rate varied from 240 kbps to 330 kbpsin steps of 30 kbps. The overall system changed froman overprovisioned state into an underprovisioned one.For the dynamic scenario, the video bit rate was set to330 kbps. The overhead was set to 50 kbps in bothcases.

We then define a realistic peer-source watching rela-tionship. First, in the context of MMOG user-generatedvideo sharing, the in-game player social network is thebasic framework to support user interaction. From 100trace files collected from the Facebook network [17], weselected “Smith College” as the in-game social network,which involves 2,970 peers and has similar characteristicsas stated in [15]. Then, the peer-source watching relation-ship is formed in two phases: (i) some players publishvideos, (ii) the friends of each source decide whether towatch the video.

We modeled the publication of video according to thePareto 80–20 rule—80 % of videos are published by 20 %of the most active player. We chose the player social degreeas the major criterion of player activity. A user decides to

publish a video based on a probability equal to e− iτN , where

i denotes its rank in terms of social degree in decreasingorder, N denotes the total number of users, and τ is a param-eter. As shown in Fig. 4a, the Pareto rule is followed whenτ takes on values between 0.1 and 0.15. With τ = 0.1,on average, 214 videos were published with five differentrandom seeds.

We modeled the peer watching decision in a way that theresulting video popularity follows Zipf’s law. Sources areranked by their social degree in decreasing order where si is

the ith source and nsi denotes the number of its friends. Weassociated to each source si an attractiveness index αi equalto the probability with which its friends decide to watch itsvideo. The attractiveness index αi was calculated such thatthe channel population follows Zipf’s law:

nsins1

· αi ∼ i−b .

Figure 4b shows the number of videos and correspondingpopularity generated by τ = 0.1 and b = 0.85. Due to thelimitation of human attention, we set the maximum numberof videos a peer can simultaneously watch to five. Figure 4cshows the distribution of the number of watched videos.

We used a 600-frame video by concatenating 300 framesof the Foreman sequence and 300 frames of the Mother andDaughter sequences. Both sequences are in CIF format andhave a frame rate of 30 frames per second. The video wascompressed with the H.264/AVC encoder at bit rates rang-ing from 240 to 330 kbps using the H.264 high profile. Weused the Group of Pictures (GOP) structure IBBPBBPBBP(10 frames per GOP). Each chunk corresponds to one GOP,so each GOP is played back independently of the otherchunks. At the receiver side, we used the standard framecopy error concealment technique to deal with lost frames.With this technique, the last frame of the last decoded GOPis used to represent all frames of a missing chunk.

8.2 Static scenario simulation

8.2.1 Provisioning results

Our simulation results show median values from five runs.In Fig. 5, the resource deficit corresponds to the totalunderprovisioning

∑s∈S− |�s |. The maximum-flow based

approaches (Db, Pb, Pa and Pr) minimize the total under-provisioning. For video bit rate 240 kbps, the system is over-provisioned, and Db, Pb, Pa, Pr, IDb and IPb have zerototal underprovisioning, which means that every overlay iswell provisioned.

We observe that both IDb and IPb can have a slightlylarger underprovisioning than Db and Pb. Indeed, thereduced overlay demand can perturb the computation of a

Peers ordered by social degree rank

0 600 3,0000

0.8

1

Rat

io o

f sou

rces

τ = 0.05τ = 0.1τ = 0.15τ = 0.2τ = 0.3

(a) Pareto rule approxima-tion

Source rank

(b) Video popularity

Number of channels

(c) Number of watchedvideos

most popular 330 peers

median 7 peers

0

100

200

300

Pop

ulat

ion

size

0 50 100 150 2000

0.2

0.4

Rat

io o

f pee

rs

0 2 4 6

Bandwidth (kbps)

median=516 kbps

mean=672 kbps

0 2,000 4,0000

0.2

0.4

0.6

0.8

1

CD

F

(d) Peer upload band-width

Fig. 4 Simulation settings

Page 10: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

0

100

200

video bitrate (kbps)

reso

urce

defi

cit (

Mbp

s)

Db Pb IDb IPb PaPr Fb DAC Nai

240 270 300 330

Fig. 5 Total amount of missing upload capacity

maximum flow in the flow network. Moreover, constant kwas set to 50 kbps although the video bit-rate varies, whichexplains why the difference between curves is not constant.

Fb has a larger total underprovisioning than the maxi-mum-flow based approaches because constraints 2 and 3cannot guarantee the maximum flow. Then, peers equallyallocate the unallocated bandwidth to all subscribedoverlays.

DAC allocates upload bandwidth to high demandingoverlays. Consequently, the most demanding overlays arehighly overprovisioned while the remaining ones are moreunderprovisioned. When the system goes into a more under-provisioned state, the difference between DAC, Fb, and themaximum-flow based approaches decreases because eventhe needs of high demanding overlays cannot be fulfilled.

We expect that in a very underprovisioned system, allalgorithms (except Nai) will converge toward the sameunderprovisioning. We did not study this case because theperformance of the system would be so poor that it isunlikely that peers will stay active.

0

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(a) Diversity-based

0

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(b) Popularity-based

0

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(c) Impr. Diversity-based

0

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(d) Impr. Popularity-based

0

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(e) Payment-based

0

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(f) Fairness-based

0

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(g) DAC

0 50 100 150 200 0 50 100 150 200 0 50 100 150 200

0 50 100 150 200 0 50 100 150 200 0 50 100 150 200

0 50 100 150 200 0 50 100 150 2000

20

40

60

Channels ordered by social degree rank

Chu

nk lo

sses

(%

)

(h) Naive

Fig. 6 Average chunk losses in overlays. Overlays are ordered by popularity. The video bit rate is 330 kbps

Page 11: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

0

5

10

15

20

video bitrate (kbps)

chun

k lo

sses

(%

)preferred videos

non-preferred videos

240 270 300 330

Fig. 7 Average chunk losses of preferred and non-preferred videosper peer for Preference-based

8.2.2 P2PTVSim results

We first show how the bandwidth is allocated among over-lays by giving the percentage of lost chunks per peer inoverlays ordered according to popularity for video bit rate330 kbps (Fig. 6). A low chunk loss means that an overlayis well provisioned.

With Db, channels ranked 10 to 30 have high video qual-ity, while the ten most popular overlays have high chunklosses. On the contrary, Pb produces high video quality forthe first ten most popular overlays. Some channels rankedafter 50 have high chunk losses for Db. These are the over-lays with few viewers, thus they cannot receive enoughresources collectively.

We now compare IDb to Db and IPb to Pb. With IDb,peers in the most popular channels lose fewer chunks, andmore channels experience high-quality videos. Similarly,with IPb, the first 40 overlays experience relatively fewchunk losses.

For the evaluation of Pa, the premium class channelswere chosen to be the overlays ranked from 40 to 80.These overlays have far fewer missing chunks than the otheroverlays.

When we compare Fb to DAC, we observe that Fbhas fewer chunk losses than DAC. This is because moreresources from the overprovisioned high demand overlays

0

5

10

15

video bitrate (kbps)

chun

k lo

sses

(%

)

Db Pb IDb IPbFb DAC Nai

240 270 300 330

Fig. 8 Total chunk losses

are allocated to the underprovisioned ones. The DAC algo-rithm allocates most of the upload bandwidth to the firstoverlays due to their large demands, making these overlaysenjoy no chunk loss while leaving the remaining overlayswith high chunk losses.

The results obtained with Nai may seem better than thosewith the other strategies. The chunk losses of Nai are almostuniform. In fact, this strategy is the worst one since, as wewill see in Section 8.2.3, all overlays are unsatisfied.

We do not show such a figure for Pr because the wellprovisioned overlays are the most preferred ones, whichhighly depend on user choice. Instead, we show in Fig. 7 theaverage chunk losses of preferred videos and non-preferredvideos for every peer. When the system is overprovi-sioned, peers receive the same video quality for both typesof videos. As the resource deficits increase, this strategyensures that, globally, peers receive higher quality for theirpreferred videos.

Figure 8 shows the total chunk losses in the system. Wedo not present results for Pa and Pr because their per-formance highly depends on some uncertain user choices.When the system is overprovisioned, DAC has higher chunklosses because the low demanding overlays can be under-provisioned. When the system is in an underprovisionedstate, the improved max-flow approaches (IDb and IPb) andFb have the lowest total chunk losses.

8.2.3 PSNR results

We now provide objective video quality results by measur-ing the average luminance PSNR at each receiving peer. Toillustrate the distribution of the PSNR, we show the com-plementary cumulative distribution function (ccdf) of peers(Fig. 9). We distinguish three sets of allocations: (1) themaximum-flow allocations (Db and Pb), (2) their improvedcounterparts (IDb and IPb), and (3) Fb, DAC and Nai.We do not present results for Pa and Pr for the reasonsmentioned earlier in Section 8.2.2.

When the video bit rate is 240 kbps (Fig. 9a), the systemis overprovisioned. The maximum-flow based approachesensure that almost all peers enjoy high video quality becauseevery overlay is well provisioned. The DAC algorithm allo-cates resources to the most demanding overlays, makingsome peers experience poor video quality although the sys-tem is overprovisioned. Fb has slightly worse results thanthe maximum-flow based approaches because the maximumflow cannot be ensured. However, compared to DAC, Fbbalances resources from the overprovisioned overlays intoless demanding underprovisioned ones, making fewer peershave poor video quality.

As the video bit rate increases, the system changes into anunderprovisioned state. We discuss in detail the results forvideo bit rate 330 kbps (Fig. 9d). A significant proportion

Page 12: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

Fig. 9 PSNR results

0

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

DbPbIDbIPbFbDACNai

(a) Video bitrate 240 kbps

0

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

DbPbIDbIPbFbDACNai

(b) Video bitrate 270 kbps

0

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

DbPbIDbIPbFbDACNai

(c) Video bitrate 300 kbps

20 25 30 35 38 20 25 30 35 38

20 25 30 35 38 20 25 30 35 380

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

DbPbIDbIPbFbDACNai

(d) Video bitrate 330 kbps

of peers experience high video quality: 70 % (respectively

80 %) of peers for the maximum-flow allocations (respec-

tively the improved ones). For DAC and Nai, this percentage

is 40 % and 60 %, respectively. For the maximum-flow allo-

cations, 5 % of peers have poor video quality (less than

20 dB) due to their extreme bandwidth allocation strategy.

The curve of Fb reflects the “fair” strategy: for almost all

peers, the PSNR is between 30 dB and 37 dB. This strategy

makes sure that no overlay is extremely well provisioned or

bad provisioned.

8.3 Dynamic scenario simulation

We also conducted a set of dynamic simulations. The source

emits videos during its whole playing session. The system

periodically recomputes the bandwidth allocation every �t

minutes.Peer churn is modeled with the following parameters.

– ratio of peers initially in the system: γini .

– peer playing session length distribution: We followedthe measurements in [6] and modeled the playing ses-sion length by a Weibull distribution with scale = 11.7,shape = 0.456, and minimum session length 30 s.

– peer inter-arrival time distribution: Peers inter-arrivalscan be modeled by a Poisson process within a shortperiod of time (one hour) [5]. We generated short-timesimulations (100 min) and modeled peer arrivals as aPoisson process with arrival rate λ.

We tested three scenarios:

1,000

2,000

3,000

Time (min)

Pee

r N

umbe

r

(a) Join-only scenario

1,000

2,000

3,000

Time (min)

Pee

r N

umbe

r

(b) Leave-only scenario

50 100 50 100 50 1001,000

2,000

3,000

Time (min)

Pee

r N

umbe

r

(c) Fully-dynamic scenario withλ = 0.15

Fig. 10 Number of peers in the system

Page 13: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

IDb IPb Fb DAC

0

150

350

Time (min)

reso

urce

defi

cit (

Mbp

s)

(a) Join-only scenario

0

150

350

Time (min)

reso

urce

defi

cit (

Mbp

s)

(b) Leave-only scenario

50 100 50 100 50 1000

150

350

Time (min)

reso

urce

defi

cit (

Mbp

s)

(c) Fully-dynamic scenario withλ = 0.15

Fig. 11 Upload bandwidth deficit in the system

– a join-only scenario with γini = 0.8 and λ = 0.15. Theuser playing session length is set to the simulation time,thus, peers only join and do not leave the system.

– a leave-only scenario in which peers spend their lifetimein the system and then leave. Consequently, we set γinito 1, and λ to 0.

– a fully-dynamic scenario with γini = 0.8 in which peersjoin and leave. We extensively studied this scenariousing two re-computation time periods (�t = 2 minand �t = 5 min) and two peer churn rates (λ = 0.15and λ = 0.05).

In Fig. 10, we show how the number of peers evolvesin the three scenarios. In join-only, the number of peerssteadily increases to the total number of peers. The changeof the peer leaving rate for leave-only is due to the Weibull

playing session distribution. For fully-dynamic, after 20min, the number of peers is stable.

8.3.1 System provisioning

Figure 11 shows the system provisioning for the threescenarios. The system provisioning is consistent with thenumber of peers (Fig. 10). In the join-only scenario, asthe peer number increases, the upload bandwidth deficitincreases from about 150 Mbps to around 300 Mbps. In theleave-only scenario, the system becomes less underprovi-sioned from around 300 Mbps to less than 50 Mbps. In thefully dynamic scenario (Fig. 11c), after the sharp decrease atthe beginning, the upload bandwidth deficit remains around50 Mbps. The curves of different algorithms are consistentwith those obtained in the static simulation (Fig. 5).

0

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

IDbIPbFbDAC

(a) Join-only Δt = 2

0

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

IDbIPbFbDAC

(b) Leave-only Δt = 2

0

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

IDbIPbFbDAC

(c) Fully-dynamic Δt = 2 , λ = 0.15

0

0.2

0.4

0.6

0.8

1

PSNR (dB)

CC

DF

of p

eers

IDbIPbFbDAC

(d) Fully-dynamic Δt = 5 , λ = 0.15

20 25 30 35 38 20 25 30 35 38 20 25 30 35 38

20 25 30 35 38 20 25 30 35 380

0.2

0.4

0.6

0.8

1

PSNR(dB)

CC

DF

of p

eers

IDbIPbFbDAC

(e) Fully-dynamic Δt = 2 , λ = 0.05

Fig. 12 PSNR results

Page 14: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

8.3.2 PSNR results

Figure 12 shows the PSNR results. The results are similarto the static ones. They demonstrate that recomputing thebandwidth allocation on a periodic basis works well. Theresults in Fig.12a are worse than those in the other figuresbecause the total under-provisioning is greater in the join-only scenario. In all scenarios, the improved maximum-flowstrategies have the best performance; they allow more peersto watch the video at more than 35 dB.

Impact of the re-computation time period �t Figure 12dshows the PSNR results for �t = 5 min. Compared to theresults obtained with �t = 2 min (Fig. 12c), the percent-age of peers with a PSNR higher than 35 dB decreases onlyslightly (2.5 % for IDb and IPb, 0.5 % for Fb and 0.1 % forDAC). This indicates that re-computing the allocation aftera few minutes does not affect the quality of the allocationssignificantly.

Impact of the peer arrival rate λ Figure 12e shows theresults for a higher peer arrival rate (λ = 0.05). Comparedto the results with lower arrival rate (λ = 0.15) and thesame re-computation time period �t (Fig. 12c), the per-centage of peers with a PSNR higher than 35 dB decreases(about 11.1 % for IDb and IPb, 12.8 % for Fb and 8.7 %for DAC). With a higher peer arrival rate, more peers jointhe system. This results in greater bandwidth deficit, whichleads to performance degradation. However, even for theextreme case considered in our experiment, the results werestill acceptable.

9 Conclusion

The problem of bandwidth allocation in underprovisionedmultioverlay P2P systems has not received enough atten-tion. This paper makes several contributions to this openresearch topic. We designed several bandwidth allocationstrategies that are optimal in terms of minimizing resourcedeficit. One major innovation of our work was to show thatthese strategies can be built as solutions of minimum-costmaximum-flow problems. We also proposed a fair band-width allocation strategy that is aware of the provisioningof each overlay and provided a distributed algorithm tocompute it. We evaluated our algorithms through extensivesimulations. We showed in particular that the introduc-tion of a small tolerable video degradation for the mostprovisioned overlays and the provisioning-aware fairnessbased strategy can have a positive impact on the wholesystem. Finally, we showed that a periodic recomputationof an optimal bandwidth allocation can cope with systemdynamics.

Acknowledgments The research leading to these results hasreceived funding from the European Commission’s Seventh Frame-work Programme (FP7, 2007–2013) under grant agreement no. ICT-248175 (“Community Network Game” project).

References

1. Ahmad S, Bouras C, Buyukkaya E, Hamzaoui R, Papazois A,Shani A, Simon G, Zhou F (2012) Peer-to-peer live streamingfor massively multiplayer online games. In: Proc. of IEEE P2P.Tarragona. Spain

2. Ahmad S, Bouras C, Hamzaoui R, Liu J, Papazois A, PerelmanE, Simon G, Tsichritzis G (2011) Community tools for massivelymultiplayer online games. Int J Adv Netw Serv 4(3–4):313–323

3. Ahuja RK, Orlin JB, Stein C, Tarjan RE (1994) Improved algo-rithms for bipartite network flow. SIAM J Comput 23(5):906–933

4. Boyd S, Vandenberghe L (2004) Convex optimization. CambridgeUniversity Press, New York

5. Chen K, Huang P, Lei C (2006) Game traffic analysis: an mmorpgperspective. Comput Netw 50(16):3002–3023

6. Feng W, Brandt D, Saha D (2007) A long-term study of a popularmmorpg. In: Proc. of ACM Netgames. Melbourne, Australia

7. Ghosh S, Gupta A, Pemmaraju SV (1995) A self-stabilizing algo-rithm for the maximum flow problem. Distrib Comput 10:8–14

8. Goldberg AV (1997) An efficient implementation of a scalingminimum-cost flow algorithm. J Algoritm 22:1–29

9. Goldberg AV, Tarjan RE (1988) A new approach to the maximumflow problem. J ACM 35:921–940

10. Liang C, Zhao M, Liu Y (2011) Optimal bandwidth shar-ing in multiswarm multiparty p2p video-conferencing systems.IEEE/ACM Trans Netw 19(6):1704–1716

11. Liu J, Ahmad S, Buyukkaya E, Hamzaoui R, Simon G (2012)Resource allocation in underprovisioned multioverlay live videosharing services. In: Proc. of ACM CoNEXT workshop on capac-ity sharing. Nice, France

12. Liu Z, Shen Y, Ross K, Panwar SS, Wang Y (2009) Layerp2p:using layered video chunks in p2p live streaming. IEEE TransMultimedia 11(7):1340–1352

13. P2PTVSim. http://www.napa-wine.eu/cgi-bin/twiki/view/Public/P2PTVSim. Accessed April 2011

14. Prasad R, Dovrolis C, Murray M, Claffy K (2003) Bandwidth esti-mation: metrics, measurement techniques, and tools. IEEE Netw17(6):27–35

15. Shen S, Iosup A (2011) The xfire online meta-gaming network:observation and high-level analysis. In: Proc. of IEEE MMVE.Qinhuangdao, Hebei, China

16. Sweha R, Ishakian V, Bestavros A (2012) Angelcast: cloud-basedpeer-assisted live streaming using optimized multi-tree construc-tion. In: Proc. of ACM MMSys. Chapel Hill, North Carolina

17. Traud AL, Mucha PJ, Porter MA (2011) Social structure offacebook networks. CoRR, abs/1102.2166

18. Wang M, Xu L, Ramamurthy B (2009) A flexible divide-and-conquer protocol for multi-view peer-to-peer live streaming. In:Proc. of IEEE P2P. Seattle, Washington

19. Wang M, Xu L, Ramamurthy B (2011) Improving multi-viewpeer-to-peer live streaming systems with the divide-and-conquerstrategy. Comput Netw 55(18):4069–4085

20. Wu C, Li B, Li Z (2008) Dynamic bandwidth auctions in multi-overlay p2p streaming with network coding. IEEE Trans ParallelDistrib Syst 19(6):806–820

21. Wu C, Li B, Zhao S (2008) Multi-channel live p2p streaming:refocusing on servers. In: Proc. of IEEE INFOCOM. Phoenix, AZ,USA

Page 15: Resource allocation in underprovisioned multioverlay peer-to-peer live video sharing services

Peer-to-Peer Netw. Appl.

22. Wu D, Liang C, Liu Y, Ross K (2010) Redesigning multi-channelp2p live video systems with view-upload decoupling. ComputNetw 54(12):2007–2018

Jiayi Liu is currently a PhDstudent at Telecom-Bretagne,Rennes, France. She is work-ing, under the supervision ofProf. Gwendal Simon. Sheobtained a Master of Sciencein Computer Science fromRennes1 University in 2009.She obtained a Bachelors ofScience in Electronic Engi-neering from Xidian Univer-sity in Xi’an China, in 2007.Her research interests includepeer-to-peer streaming sys-tems, live video streaming inContent Distribution Network.

Shakeel Ahmad receivedthe Dr.-Ing degree from theUniversity of Konstanz, Ger-many in 2008. He received theMSc. degree in Informationand Communications Systemsfrom Technical University ofHamburg Germany in 2008and the BSc. degree withhonors in Electronics andCommunications Engineeringfrom UET Lahore, Pakistanin 2000. He is currently aSenior Research Fellow inthe Faculty of Technologyat De Montfort University.

Shakeel Ahmad has extensive software experience in networking,communication, and information technology. He received the Out-standing Academic Performance Scholarship 2003 from TUHH andwon the Best student paper award from IBM at the 16th internationalPacket Video Workshop, Lausanne, Switzerland in November 2007.His research interests include video streaming, peer-to-peer net-works, ad-hoc networks and error control techniques for multimediatransmission.

Eliya Buyukkaya receiveda B.S. degree in ComputerEngineering from MiddleEast Technical University in2003, and M.S. and Ph.D.degrees in Computer Sciencefrom Paris VI University in2006 and 2011, respectively.She worked as a postdoc-toral research fellow in theCS department at TelecomBretagne on the CommunityNetwork Game project (CNG)for two years. Since Septem-ber 2012, she is researcherand teacher in the department

of Computer Science at ENSSAT, University Rennes 1. Her researchinterests are graph databases, distributed systems, bio P2P systems,social networks and virtual environments.

Raouf Hamzaoui received theMSc degree in mathematicsfrom the University of Mon-treal, Canada, in 1993, theDr.rer.nat. degree from theUniversity of Freiburg, Ger-many, in 1997 and the Habili-tation degree in computer sci-ence from the University ofKonstanz, Germany, in 2004.He was an assistant professorwith the Department of Com-puter Science of the Universityof Leipzig, Germany, and withthe Department of Computerand Information Science of theUniversity of Konstanz. SinceSeptember 2006, he has been aprofessor in media technology

at De Montfort University. Raouf Hamzaoui is an IEEE senior mem-ber. He is a member of the Editorial Boards of the IEEE Transactionson Circuits and Systems for Video Technology, ISRN Communica-tions and Networking, and Journal of Multimedia. He has publishedmore than 70 research papers in books, journals, and conferences. Hisresearch interests include image and video compression, communica-tion systems, error control coding, and algorithms.

Gwendal Simon received hisMaster Degree in ComputerScience in 2000 from Univ.Rennes and his PhD degree inComputer Science in Decem-ber 2004 after three years atboth Orange Labs and INRIA.During his PhD, he has con-ceived and developed a dis-tributed shared virtual world,which has received a world-wide attention, including inno-vation prize, and has turnedout to be a start-up. From 2004to 2006 he was a researcherat Orange Labs, where he

worked on spontaneous networks and social media innovations. Since2006, he has been Associate Professor at Telecom Bretagne, a grad-uate engineering school within the Institut Telecom. He has been avisiting researcher at University of Waterloo from September 2011 toSeptember 2012. His research interests include large-scale distributednetworks, multimedia applications, optimization problems and videodelivery systems.