• 沒有找到結果。

Joint bandwidth allocation, data scheduling and incentives for scalable video streaming over peer-to-peer networks

N/A
N/A
Protected

Academic year: 2022

Share "Joint bandwidth allocation, data scheduling and incentives for scalable video streaming over peer-to-peer networks"

Copied!
21
0
0

加載中.... (立即查看全文)

全文

(1)

DOI 10.1007/s11042-013-1621-7

Joint bandwidth allocation, data scheduling and incentives for scalable video streaming over peer-to-peer networks

Junni Zou· Lin Chen

Published online: 31 July 2013

© Springer Science+Business Media New York 2013

Abstract The overall performance of a peer-to-peer (P2P) scalable streaming system largely depends on the strategies employed in bandwidth allocation, data scheduling and incentives. In this paper, we develop a credit-based content-aware bandwidth auction model for scalable streaming in P2P networks. It formulates multi-overlay multi-layer bandwidth request and allocation problems as auction games. Each peer in the games acts as both auctioneer and player. Being a auctioneer, it maximizes the total revenue (credits) by selling upload bandwidth; Being a player, it uses the credits earned in bandwidth sales to sequentially bid for layer bandwidth so as to maximize the received video quality. Also, a content-aware bidding strategy is proposed, under which the required bandwidth quantity from a peer is determined by the informative video chunks and the marginal net utility that peer could provide, as well as the available credits and the maximum layer bit rate. The convergence of the proposed auction algorithm is mathematically proved. Finally, the performance of the proposed scheme is verified by simulation results.

Keywords Peer-to-peer scalable streaming· Bandwidth allocation · Auction theory· Scheduling · Incentives

The work has been partially supported by the NSFC grants (No. 61271211), and the Research Program from Shanghai Science and Technology Commission (No. 11510707000,

No. 11QA1402600.

J. Zou ( )

Department of Electrical and Computer Engineering, University of California, San Diego, CA 92093, USA e-mail: zoujunni@gmail.com

J. Zou

Key Laboratory of Special Fiber Optics and Optical Access Networks, Shanghai University, Shanghai 200072, China

L. Chen

Department of Communication and Information Engineering, Shanghai University, Shanghai 200072, China

(2)

1 Introduction

Peer-to-peer (P2P) communications are getting increasingly popular for video streaming over the Internet [9,13,36]. Unlike traditional client-server networking, P2P networks allow peers to play as servers and clients at the same time. Due to peer dynamics (peers may join or leave the network at any time), both the server supplies (the upload bandwidth) and the client demands (the download data rate) always randomly fluctuate. Single-layer source coding, however, can neither match the time- varying overlay capacity, nor meet different peer requirements. The adaptation to bandwidth availability now emerges a challenging issue in P2P streaming. Layered source coding, such as JVT/MPEG scalable video coding (SVC) [25,30], provides a convenient way to perform source-based rate adaptation to the changing network conditions. The incorporation of SVC into P2P streaming exhibits a promising approach for scalable video delivery to a large number of heterogeneous receivers [7,18,24].

A SVC streaming generally consist of a base layer which alone provides an acceptable basic quality, and multiple enhancement layers with a flexible multi- dimension layer structure to progressively refine the video quality. Thus, receivers can adapt to their capability by subscribing to different number of layer streams.

Some prototype streaming systems, such as CoolStreaming [36], P2Cast [9] and CodedStream [8], have been proposed to implement live P2P streaming. They are targeting on single-layer streams, and do not particularly consider quality-scalable video streaming in P2P settings. For efficient P2P scalable streaming, there exist several critical issues to be addressed.

• In P2P scalable streaming, each layer stream is supposed to disseminate through an individual overlay, which was constructed by streaming servers and peers participating in that video layer. The entire system, therefore, forms a multi- overlay coexisted network, where the total network capacity is shared by all peers within multiple overlays. How to resolve bandwidth conflicts of multiple overlays (video layers) so as to maximize the benefits of both supplying peers and requesting peers remains an open issue. Moreover, in the context of SVC, a higher layer can be decoded only if all its lower layers are successfully received.

For a high usage of bandwidth, the progressive inter-layer correlation should be considered in layers bandwidth allocation.

• Most existing bandwidth allocation strategies [11, 31, 38] aim at request- ing/achieving upload bandwidth as much as possible from the supplying peer for maximizing the throughput of the requesting peer. They do not specify what will be transmitted in each bandwidth unit, i.e., receiver side scheduling [18] is not taken into account, which often brings two problems. The first is that the assigned bandwidth might far more than the required quantity for accommodating the total informative (absent) video chunks that supplier can offer. The second is, the requesting peer might ask for bandwidth for a particular chunk simultaneously from multiple suppliers, and receive multiple copies of the bandwidth for the same chunk.

• The overall performance of a P2P streaming system largely depends on the strategies used in bandwidth allocation, data scheduling and incentives. By now there have been some works that studied one or two of these three issues, but no

(3)

one considered three issues simultaneously, which is especially challenging for efficient P2P streaming.

Motivated by the above problems, in this paper, we seek to solve bandwidth conflicts of multiple overlays, and find out an optimal bandwidth allocation mech- anism for efficient P2P scalable streaming. We use auction games to model multi- overlay multi-layer bandwidth request and allocation processes, in which each peer acts as both auctioneer and player. Being a auctioneer, it organizes an auction to sell the upload bandwidth to all the competing players for maximizing the total revenue (credits); Being a player, it may join multiple auctions held by different auctioneers, uses the credits earned in bandwidth sales to bid for the download bandwidth so as to maximize the received video quality. The bandwidth bidding and allocation process alternately continue between players and auctioneers, which finally reach a Equilibrium. Under the prioritized context of source, the content priority of SVC is imposed on the underlying sequential bandwidth auction in order to improve the overall video quality at all peers. Also, receiver side scheduling is combined with bandwidth request to avoid resource wastage. Finally, the convergence of the proposed auction algorithm is mathematically proved.

The major contributions of this paper include:

(1) A credit-based content-aware bandwidth auction model is developed specifically for P2P scalable streaming. It provides an optimal distributed bandwidth allocation solution by a joint design of bandwidth competition, data scheduling and incentives. To our best knowledge, this paper is the first work that combines scheduling and incentives into auction-based bandwidth allocation for P2P scalable streaming.

(2) A content-aware bidding strategy is proposed, under which the required band- width quantity from a particular peer is determined by the informative chunks and the marginal net utility that peer could provide, as well as the available credits and the maximum layer bit rate.

(3) The outcome of the proposed auction game is investigated, and the existence of a state of Equilibrium is theoretically proved.

(4) We show the performance improvement of our scheme by extensive simulations using standard video sequence on large random P2P networks.

The remainder of this paper is organized as follows. We discuss related work in Section2. In Section 3, we describe the scalable streaming overlay architecture and rate-distortion based utility function. In Section4, we first model the bandwidth auction game, and then discuss the allocation and bidding strategies to be deployed in the auction game. Further, the convergence performance of the proposed game is analyzed. Simulation results are presented and discussed in Section 5. Finally, Section6concludes the paper.

2 Related work

The studies on P2P streaming optimization in the literature can be largely classified into three categories: (1) bandwidth allocation; (2) chunk scheduling; (3) incentive mechanism.

(4)

The objective of bandwidth allocation is to construct high performance overlay and allocate upload bandwidth for throughput maximization [4,11,12,38]. Zhao et al. in [38] organized the peers into layered meshes and seek optimal link rates in each mesh to improve the throughput of a multicast session. He et al. in [11]

proposed a hybrid-forwarding P2P VoD architecture, and solved its throughput max- imization problem by a fully distributed algorithm. The authors in [12] maximized the aggregate video experience of all peers by solving an utility maximization problem, in which layer subscription, chunk scheduling and mesh topology adaptation are considered. The authors in [4] investigated optimal overlay resource allocation in the sense of maximizing the aggregated utility function of all receivers, and formulated it as a constrained nonlinear optimization problem.

Besides mathematic programming solutions, the auction algorithm [1], resembling the interaction of the supplying and requesting peers, has been used in P2P network resource allocation [3,5,6,15,31]. Chu et al. in [3] formulated the minimum cost media flow routing problem as an auction, where each peer participates streaming meshes by bidding for and selling media flows encoded with network coding. For optimal allocation of upload bandwidth at each peer, Guo and Kwok in [6] proposed an auction algorithm in which the requesting peer use its own bandwidth resources as payments to the supplying peer for the required upload bandwidth. The most closely related work is Wu’s approach in [31]. Wu et al. modeled the multi-overlay bandwidth allocation processes as a decentralized collection of dynamic auction games, in which the supplying peer assigns its upload bandwidth based on the bids from the requesting peers. However, video layer priority, receiver side scheduling and incentive mechanism all have not been considered in Wu’s model.

For efficient chunk scheduling, so far many valuable mechanisms have been proposed [18,27,33,34,39,41]. For example, Xiao et al. in [34] divided the chunks of layered P2P streaming into three stages according to their playback time, and designed corresponding scheduling strategies for each stage. Combining Rarest First and Greedy chunk-scheduling, Zhou et al. in [41] proposed a mixed strategy to propagate the chunks to as many peers as possible so as to maximize playback continuity. In [18], a P2P live streaming system called LayerP2P is proposed, in which a supplier maintain different request queues for the peers, and serve them according to their request order. For maximizing the aggregate gain of the packets, measured by their “importance”, Su in [27] formulated peer selection and packet scheduling process as an integer programming problem. These works concentrated on chunk scheduling policies, ignoring how to obtain the required bandwidth to support chunk delivery when the capacity of the supplier is insufficient to meet all the demands.

To mitigate the free-riding problem [19] in P2P networks, two classes of incentive mechanisms have been studied in the literature: service differentiation and monetary payment [22]. Under the service differentiation mechanism, each peer is rated ac- cording to its past upload or download behavior, then the supplying peer determines its upload decisions based on the ratings of the requesting peers. Its applications can be found in [10,14,16,35,37]. There mainly have two problems for service differentiation. One is that some malicious peers are likely to get more profit from the network by providing false ratings for other peers [28]. The other is that its impact on the peers with low usage of the network is relatively weak [22].

With monetary payment incentive, as can be seen in [23,32,40], the peers are charged for their download and compensated for their upload. The payment can be made by either virtual currency or real currency. In this study, we employ a

(5)

credit-based incentive scheme to encourage cooperation. It is a kind of monetary payment incentive, in which the peers earn the credits by sharing their contents for the payments of their download service. It should be noted that our work does not focus on specific incentive schemes, but on a joint design of bandwidth allocation, chunk scheduling with incentives in P2P streaming.

3 System modeling

3.1 Network model and notations

Consider a P2P streaming system consists of M coexisting streaming overlays. The topology of the m-th overlay can be modeled as a directed graph Gm= (Vm, Em), where Vm is the set of overlay nodes and Em is the set of weighted links between overlay nodes. Let Cui represent the upload capacity of peer i, and V=

mVm be the set of all network nodes. Suppose that the SVC stream is encoded into M video layers at the source node, with layer 1 representing the base layer and layer 2∼ M representing the progressive enhancement layers. Assume that each video layer m is separately distributed through an overlay m with a maximum transmission rate of Rm. Thus, each peer can access a particular video layer by joining the corresponding overlay.

Figure1shows a simple P2P network, where six peersv1∼ v6 participate in the SVC streaming distribution. Suppose that the video is encoded into two layers, with the base layer delivered through overlay 1, and the enhancement layer delivered through overlay 2. It is observed that v3 and v5 subscribe to the base layer, v4

subscribe to the enhancement layer, while v2 subscribe to both layers. Also, each peer has different neighbors in each overlay. For example,v2has two neighbors (i.e, v1andv4) in overlay 1, and only one neighborv1in overlay 2.

3.2 Buffering window structure

Each layer is segmented into chunks. For simplicity, assume the chunks at each layer m are of the same bit rate rmand equal importance. Each chunk is identified by a layer ID and a chunk ID. The peer maintains a 2-D buffering window to record what

Fig. 1 A P2P topology with two overlays

V1

V2

V4

V3

V6

V5 overlay 1 overlay 2

(6)

Fig. 2 Buffering window

structure Layer ID

M M-1

3 2 1

playback time

buffering window Chunk ID 1 1

1 1 1 1 1 1

1 1 1 1 1 1

1 1 1 1 1 1

1 1 1

1 1

1 1 1

1 1 1 1 1 1

layers and chunks it currently has. As shown in Fig.2, the buffering window starts at the chunks which are ready to be played, and ends with the maximum chunk it caches.

The buffering window moves forward with the playback time of the chunks. The peer categorizes the chunks into informative chunks and non-informative chunks.

The former refer to the chunks that it lacks of, the latter are the chunks it has.

When a peer newly joins the network, it contacts a centralized directory server for a list of the supplying peers, selects some to establish the neighbor relationship, and starts requesting the informative chunks from them. Periodically, the peer exchanges buffering information with its neighbors to announce the chunk availability.

3.3 Rate-distortion model

From the perspective of application-layer QoS, rate-distortion related model [26]

could be picked as the optimized targeted utility for video applications De(Re) = θ

Re− B0 + D0. (1)

where De is the distortion of the encoded video sequence, measured by the mean squared error, and Re is the encoded rate. The variablesθ, B0 and D0 are the parameters of the R-D model, which can be fitted to empirical data from trial encodings using nonlinear regression techniques.

To characterize the video streaming performance of each layer m, we introduce a utility function Um(·). It is defined as the absolute value of the distortion decrement when a new layer m is received at arbitrary rate rm(0< rm≤ Rm).

Um(rm)=

⎧⎪

⎪⎨

⎪⎪

De(0) − De(rm) , if layer m is layer 1 ; De

m−1

l=1 Rl



− De

m−1

l=1 Rl+ rm



, if layer 1 to m − 1 are fully received ;

0, otherwise .

(2) Note that for layered streaming, in order to decode layer m, layer 1 through m− 1 must be present as well.

(7)

Using Taylor expansion, we have De

m−1

l=1

Rl

−De

m−1

l=1

Rl+rm

θ

m−1

l=1 Rl−B0

2 · rmθ

m−1

l=1 Rl−B0

3 · (rm)2. (3)

4 Dynamic bandwidth auction

4.1 Auction model

We model the whole bandwidth request and assignment process as a series of bandwidth auctions, where each peer has two roles. First, as a supplying peer, it organizes an auction to sell its upload bandwidth. Second, as a downstream peer, i.e. a player, it joins the auction held by the supplying peer and bids for bandwidth.

At the beginning of a bidding round, player j submits a bid to supplying peer i in the form of bmij = (pmij, rmij), telling the desired bandwidth rmij from peer i for layer m, and the unit price pmij it is willing to pay. This price is called a bid price. Upon receiving the bids of all the competing players, peer i adopts a particular bandwidth allocation strategy to assign its upload bandwidth resource, and informs player j of the bandwidth xmij to be assigned to it. In accordance with the received bandwidth, the player calculates the bid price for the next bidding round. Finally, when the bid prices of all the competing players converge, a real bandwidth transaction occurs, and the auction ends. At this time, the bid price becomes a transaction price.

Figure3illustrates the bandwidth auction occurring among three peersv1,v2and v3shown in Fig.1, wherev2andv3compete for the upload bandwidth ofv1. Assume v1 has an upload capacity of Cu1. It is observed that v2 andv3 are bidding for the bandwidth of two and one video layers, respectively. After receiving three bids (i.e., b11,2, b21,2 and b11,3), v1 sends back its assignment, allowingv2 and v3 to share the capacity Cu1at the rates of x11,2, x21,2and x11,3.

4.2 Credit-based incentive mechanism

To avoid selfishness or free-rider, we introduce a credit-based incentive mechanism.

It is on the common sense of service charges, i.e., the peer using the bandwidth should be charged and the peer providing the bandwidth should be rewarded. Credit represents a kind of virtual currency that can only be used in P2P networks for

Fig. 3 Bandwidth auction model

(8)

payment. If the peer requests a video layer from the neighbor, it has to pay for it in credits. For example, when player j receives its bandwidth assignment xmij from peer i, it pays an amount pmij · xmij of credits to peer i. Correspondingly, the credits of peer i is increased with equivalent amount. In this way, the peer is motivated to share the bandwidth to earn credits.

4.3 Allocation strategy

As a supplying peer, it is natural that peer i maximizes its total revenue by selling the upload bandwidth at the highest price, i.e., max 

m



jpmijxmij. Along with the upload capacity and data rate constraints, the optimal allocation problem for peer i can be formulated as: P1:

max

m∈M

j:(i, j)∈Em

pmijxmij

s.t.

1)

m∈M

j:(i, j)∈Em

xmij ≤ Cui, ∀i ∈ V (4)

2) 0≤ xmij ≤ rmij, ∀ j : (i, j) ∈ Em, ∀m ∈ M

The main idea behind this maximization problem is to assign the bandwidth to the player which currently bids the highest price. Thus, upon receiving the bids bmij = (pmij, rmij) from all the competing players, peer i picks out the player who declares the highest bid price, e.g., peer j, and assigns a quantity xmij = min(Cui, rmij) of the bandwidth to it. And then it switches to the next player with the sub-highest bid price. This process continues until the upload bandwidth is used up, or the demands of all the competing players are fully satisfied.

Fig. 4 Sequential bandwidth request structure

(9)

4.4 Bidding process modeling

Due to the cumulative decoding nature of the layered streaming, bandwidth request for video layers should be conducted in a sequential order. It implies that the peer is entitled to request a higher layer only if all the lower layers are available. Motivated by this basic idea, we propose a sequential bandwidth request structure shown in Fig.4. It is divided into at most M sequential stages, starting from 1. Stage m is used to fulfill downloading layer m. It is further partitioned into two sub-stages, with the first one for requesting the bandwidth, and the second one for downloading the layer chunks. Once the contents of layer m are fully received, peer j transits from stage m to stage m+ 1. It is notable that, to get sufficient bandwidth for layer m, the player is allowed to join multiple auctions hosted by different neighbors in parallel.

When bidding for layer m, the objective of a requesting peer j is to maximize its utility at that layer with minimum cost.

P2: max gUm

i:(i, j)∈Em

rmij

⎠ −

i:(i, j)∈Em

pmijrmij

s.t.

1) rmij ≤ nmij · rm, ∀i : (i, j) ∈ Em ;

2)

i:(i, j)∈Em

rmij ≤ Rm;

3)

i:(i, j)∈Em

pmijrmij ≤ fj.

(5)

where g is a constant providing conversion of units, nmij represents the number of layer m’s informative chunks that peer i can provide for peer j, and fj is the available credits of peer j.

The objective function in problem P2 consist of two terms. The first term repre- sents the total quality variation between layers. The second term denotes the payoff for the requested service. Constraint 1) gives the upper bound of the bandwidth requested from peer i. Constraint 2) says that the total bandwidth requested for layer m is limited by both the maximum layer rate. Constraint 3) ensures that peer j has enough credits for the requested bandwidth.

4.5 Content-aware bidding strategy

To solve problem P2, how to determine the bid and the required content towards each supplying peer is critical. Since the player might place different bid prices to different supplying peers, the intuition is to ask for the bandwidth from the peers at which it bids with the lowest prices. Generally, our bidding strategy includes two phases: bid initialization and bid adjustment.

1) Bid initialization

If peer j joins overlay m for the first time, it makes a bid initialization. For saving the credits, it sets pmij(0) to a very small value (e.g. pmij(0) = 1) for all the desired

(10)

supplying peers. Then it calculates the required initial bandwidth rmij(0) from each peer by a popular progressive filling algorithm [2]. For a maximum utility with minimum cost, peer j first selects peer i who incurs the maximum marginal net utility [21]. That is

i= arg max

i:(i, j)∈Em



Um(rijm) − pmij · rmij



∂rmij

. (6)

For peer i, peer j increases the required bandwidth rmij(0) from 0 to rmij(0) at which peer i no long brings the maximum marginal net utility. Furthermore, for a high bandwidth utilization, on one hand, the amount of the requested bandwidth is better to be an integral multiple of one chunk’s bit rate rm. On the other hand, the total bandwidth requested from a peer would be upper bounded by the number of informative chunks that peer can offer. Therefore, the initial bandwidth requested from peer i is finally determined by

rmij(0) = min

nmij · rm,

rmij(0)/rm

· rm

. (7)

After finding out the initial bid bmij(0)(pmij(0),rmij(0)) to peer i, peer j labels the chunks requested from peer i as non-informative, deducts the credits to be paid to peer i, and switches to the next neighbor with the current maximum marginal net utility. This process is continued by peer j until any of the following events occurs:

• The available credits is used up;

• The sum of the requested bandwidth reaches the maximum layer rate;

• The last supplying peer has been requested.

2) Bid adjustment

When supplying peer i collects all the bids destined to it, it calculates the band- width allocated to the players by the allocation strategy discussed in Section4.3, and sends back the assignment results. According to the received results, player j judges whether to adjust its bid towards each supplier in the next bidding round. Specifically, if the requirement is satisfied, i.e., the assigned bandwidth is equal to the desired one, peer j keeps the bid price unchanged in the upcoming bidding round. Otherwise, it increases pmij(t) with a small quantity  = β · |rmij − xmij|, β ∈ (0, 1]. Based on the new bid prices, player j updates the required bandwidth from all the neighbors by the filling algorithm, and correspondingly deducts the required credits.

If the bid prices to some neighbors have been changed, not only the number of the informative chunks, but the contents of the chunks requested from the same neighbor might be different from those in the last round. For example, assume peer i has chunk 1, 2, 3, peer k has chunk 1, 2, 3, 4 in layer m, and we have pmij(t) < pmkj(t) in the t-th bidding round for player j. Thus, player j asks for chunk 1∼ 3 from peer i, and chunk 4 from peer k. Assume pmij(t + 1) > pmkj(t + 1), then in (t + 1)-th round, player

j requests chunks 1∼ 4 from peer k, and requests nothing from peer i.

The bidding and allocation process are iterated between each supplying peer and its competing players, until all the bid prices converge or the number of bidding rounds reaches a predefined threshold. It is worth mentioning that, for player j, the stop of the bidding process implies the end of bidding for layer m. If it achieves the sufficient chunks for layer m, and still has superfluous credits, it can further join the

(11)

Table 1 Allocation and bidding process As a supplying peer i:

Input: Collects bid bmij = (pmij, rmij) from each player j, ∀ j : (i, j) ∈ Em, ∀m ∈ M}.

(a) Bandwidth Allocation:

Repeat:

Chooses player j who submits the highest bid price pmij among all the players.

Allocates the bandwidth xmij = min (Cui, rmij) to player j.

Until:

Cui = 0 or xmij= rmij for all the players.

Output: The assigned bandwidth xmij to all the players.

As a requesting peer j:

Input: Receives the allocated bandwidth xmij from each selected supplying peer i,∀i : (i, j) ∈ Em, m= 1, 2, .., M.

(a) Bidding price initialization

Initialize pmij(0) to a small value, ∀i : (i, j) ∈ Em,∀m ∈ M.

(b) Bidding price adjustment

For each peer i, if rijm> xmij, then pmij= pmij+ ; else pmij= pmij. (c) Requested bandwidth calculation

Repeat:

Finds out supplying peer i who incurs the maximum marginal net utility.

Sets rmij(t) = min nmij· rm,

rmij(t)/rm

· rm

.

Labels the chunks requested from peer i as non-informative.

Deducts the credits to be paid to peer i.

Switches to the next neighbor with the current maximum marginal net utility.

Until:

1. The available credits is used up

2. The sum of the requested bandwidth equals the maximum layer rate;

3. The last supplying peer has been requested.

Output: The new bid bmij = (pmij, rijm) to each supplying peer.

auctions for layer m+ 1. If it has surplus credits, but does not get all the chunks of layer m from those selected neighbors, it can contact the directory server for other supplying peers.

The whole allocation and bidding strategy are summarized in Table1.

4.6 Game theoretical analysis

In this section, we analyze the convergence of the proposed auction algorithm. First, we give our assumption and some definitions.

Assumption 1 The total upload bandwidth in a P2P network is sufficient to support all the peers to stream at the maximum bit rates in all the video layers.

Definition 1 (Demand surplus). When the bandwidth demand for any supplying peer i exceeds its available upload bandwidth, peer i is in a state of demand surplus.

Definition 1 (Supply surplus). When the bandwidth demand for any supplying peer i does not exceed its available upload bandwidth, peer i is in a state of supply surplus.

(12)

Definition 1 (Equilibrium). Equilibrium is a state in which all the supplying peers are in a state of supply surplus, i.e.

m∈M

j:(i, j)∈Emrmij ≤ Cui, ∀i ∈ V.

Lemma 1 The proposed auction algorithm converges to equilibrium under Assumption 1.

Proof We show that any supplying peer comes to supply surplus and the proposed bidding and allocation procedure ends after finite bidding rounds. For any supplying peer i at any bidding round t, if the total requested bandwidth does not exceed its current available upload bandwidth, peer i is in supply surplus, then the auction ends with all the competing players being satisfied. Otherwise, peer i is in demand surplus.

It implies that there is at least one player j whose requirement has not been fully satisfied. According to our bidding strategy, player j would increase its bidding price from bidding round t+ 1. The increase of the bidding price, on one hand, reduces the marginal net utility obtained from peer i, thus leading to the decrease of peer j’s bandwidth requirement at peer i. On the other hand, when peer j’s bid price is raised to exceed another requesting peer k, peer j would be served before peer k. Thus, the demand of peer k might not be fully achieved. It causes peer k’s increasing bid price and decreasing bandwidth request in the following rounds. It can be easily found that, with the continuous reduction of the total demands, peer i would definitely come to supply surplus after finite bidding rounds. In a word, when a supplier is in demand surplus, the proposed auction algorithm drives its downstream neighbors to reduce bandwidth requirements at this supplier and to ask for more bandwidth from other

suppliers. 

Actually, when the total upload bandwidth in a P2P network is insufficient to support all the peers to stream at the maximum bit rates in all the video layers, the proposed auction algorithm might or might not converge to equilibrium, depending on the quantities of the credits the requesting peers have. If there exist some peers who have a huge amount of the credits accumulated by their past contributions, i.e., they can afford the required bandwidth at any price, they would continuously increase their prices and thus bid infinitely when their bandwidth requirements can not be satisfied. In this case, the proposed auction game might not converge due to the unbounded growing bidding prices. On the contrary, if all the peers have very limited credits, their bidding processes would end within finite bidding rounds when they use up the available credits, which finally lead to the convergence of the proposed game.

5 Performance evaluation

In this section, we present simulation results to evaluate the performance of the proposed bandwidth auction strategies. In our simulations, the underly- ing physical topology is generated by using transit-stub model of GT-ITM (http://www.cc.gatech.edu/projects/gtitm/), where the transit-domains act as the routers, and the nodes in stub-domains participate in the layered streaming. Core links (including intra-transit and transit-stub connections) have high bandwidth and thus bottleneck only occurs on the access links. There are nine types of stub nodes

(13)

Table 2 Peer upload bandwidth distribution

Total upload capacity (kbps) 256 320 384 448 512 640 768 1024 > 1500

Distribution (%) 10 14 9 12 3 2 6 38 6

Contributed upload bandwidth (kbps) 150 250 300 350 400 500 600 800 1000

(peers) whose upload capacities are assigned according to the distribution of Table2 [17]. For a realistic scenario, assume that each type of peers only contribute portions of their upload bandwidth to applications of P2P streaming. The number of peers varies from 100 to 1,000. When not specifically stated, the number is set to 200. The out-degree of the server (the number of outgoing links the server can provide at the same time) and the peer are set to 10 and 5, respectively. To construct a randomly connected mesh-based overlay [20], each peer contacts a centralized directory server for a list of the supplying peers, and randomly selects some to establish the neighbor relationship and then maintain a neighbor list. When a peer intends to leave, it sends a message to all its neighbors, notifying the cancelation of it from their neighbor lists.

A packet-level event-driven P2P simulator is developed in C++, with the traces connected from a real-world P2P live streaming system (http://www.pplive.com/) [17]. Each peer is equipped with a standard Internet protocol stack, where the sig- naling messages (e.g. chunk availability announcement, bidding message, assignment message) are transmitted over TCP, while video chunks are distributed over UDP.

We adopt Joint Scalable Video Model 11 [29] reference codec of H.264/AVC extension standard, with a standard test video sequence “Bus” with a frame rate of 30 fps, CIF (352× 288) resolution, and a GOP-length of 32 frames. The stream is encoded into three layers, with a bit rate of 256 kbps on the base layer, and 128 kbps on each enhancement layer by using FGS coding.

5.1 Convergence performance

First, we investigate the convergence performance of the proposed auction algo- rithm. In terms of Table2, the average available upload bandwidth of the network is

Fig. 5 Convergence performance in dynamic network

(14)

Fig. 6 Convergence performance in static networks with different sizes

541 kbps, which exceeds the total video rate 512 kbps of three layers, thus the total upload bandwidth is sufficient to support all the peers. Figure5shows the evolution of the achieved average bandwidth of 200 peers in three video layers. Each time when the convergence of the game has lasted for 15 bidding rounds, 10 peers newly join the network, and 10 peers randomly selected depart the network. We see that our auction algorithm converges rapidly in each video layer. The fall and rise in the curves denotes that there have peers joining or departure at those moments, with which the state of equilibrium is broken, but our algorithm converges again after several bidding rounds.

Figure 6 denotes the convergence speed of our algorithm in static networks with different network sizes and number of video layers to be delivered. The Y- axis represents a sum of the largest number of rounds required for obtaining the requested bandwidth in each layer among all the requesting peers. It is observed that the convergence speed decreases with both network scales and video layer numbers, since when we enlarge the network size or plunge more video layers into the network, the number of players in each auction as well as the number of auctions would increase, which to some extent slows down the convergence speed of the games. However, it is found that our algorithm reaches equilibrium after 70 rounds of bidding even streaming three video layers in a large network with 1,000 peers.

5.2 Impact of incentives

Figure 7 shows the impact of the credits on the average received video quality measured with peak signal noise ratio (PSNR), where the peers are divided into six groups in accordance with the range of their available credits. It is observed that the received video quality at the peers with more credits is obviously better than those with less credits, regardless of the number of video layers delivered in the network.

The reason is that the more credits the peer has, the more bandwidth it buys, the higher video quality it receives.

We now randomly select two peers whose contributed upload bandwidth are respectively 400 kbps and 1000 kbps, and compare the received video quality

(15)

Fig. 7 Average received quality of peers with different credits

when they voluntarily serve other peers (i.e. cooperative peers) with that they do not contribute any service to the P2P community (i.e. free-riders). Figure 8 plots the evolution of the received video rates of these four cases. It is seen that two cooperative peers each receives a high video rate by selling the upload bandwidth.

specifically, for the peer with high upload bandwidth (i.e. 1000 kbps), it receives the full video rate all the time. However, two free-riders no longer get any bandwidth after using up their available credits.

5.3 Bandwidth utilization

Figure9compares the average utilization of the assigned bandwidth for all the peers, where the proposed content-aware bidding strategy is employed or not. It is observed that, by using the content-aware bidding strategy, the bandwidth utilization keeps 1 all the time, while it is smaller than 1 when receiver side scheduling is not considered.

Fig. 8 Average received rate of cooperative peers vs.

free-riders

(16)

Fig. 9 Average bandwidth utilization

The reason is that, with our strategy, the requested bandwidth is constrained by the number of informative chunks the supplier can offer, thus all the assigned bandwidth are utilized for delivering the required chunks. In contrast, if receiver side scheduling is not considered, i.e., the peer asks for the upload bandwidth as much as possible, leading to bandwidth supply larger than actual bandwidth demand. Figure10shows the average received video rates of these two cases. For the case when our strategy is not employed, the peers waste some credits on the bandwidth that are really useless for them, with less credits for the bandwidth of higher layers, thus receiving a lower video rate.

5.4 Adaptation to layer priority

To demonstrate the adaptation of our scheme to the layer priority, we make a comparison of our auction model with Wu’s model [31] and LayerP2P [18]. Figure11

Fig. 10 Average received video rate

(17)

Fig. 11 Received chunk ratio

shows the average received chunk ratio of two types of peers over all three layers as well as at each layer. The contributed upload bandwidth of two types of peers are 400 kbps and 1000 kbps. It is found that the average received chunk ratio of our model is the highest in these three schemes. Since with our model, the peers never waste the credits on useless bandwidth. Also, our model adopts a sequential bidding strategy (from lower layers to high layers), so the peers receive more chunks at lower layers than at higher layers. In contrast, with Wu’s model, all the video layers are

Fig. 12 Cumulative distribution of received video rate

(18)

treated equally, so the peers join the bandwidth auctions for all the video layers in parallel. Therefore, the number of the received chunks at each layer in Wu’s model are very close. For LayerP2P, it provides more protection to lower layers, but does not strictly adopt sequential bidding order, thus its received chunk ratios are between our model and Wu’s model.

Figure 12 depicts the cumulative distribution functions (CDF) of the received video rates for two types of peers under the above three auction models, where the contributed upload bandwidth are 150 kbps and 800 kbps, respectively. We observe that the received video rate increases with the contributed upload bandwidth under these three models. But the peers with low video rates in Wu’s model and LayerP2P are clearly more than those in our model, because the assigned bandwidth for higher layers in Wu’s model and LayerP2P are useless when the bandwidth for lower layers are not fully received.

6 Conclusion

This paper studies optimal performance of bandwidth allocation for scalable stream- ing in P2P networks. We model the entire distribution network for multiple video layer streams as multiple overlays, with each delivering a video layer stream. Based on the auction theory, we formulate the bandwidth conflicts within these coexisting overlays as a set of auction games and then design effective allocation and bidding strategy for high bandwidth utilization, in which receiver side scheduling and in- centives are jointly considered. Our optimization scheme aims at efficient upload bandwidth allocation for maximizing the benefits of both supplying and requesting peers, which has finally been verified by extensive simulation results.

The proposed auction algorithm achieves optimal and fair bandwidth allocation under the condition that all the requesting peers truthfully report the required bandwidths. In practice, some dishonest peers might overclaim what they need to improve their utilities. Therefore, how to avoid cheating behavior and guarantee fair resource allocation remain important problems to be addressed. Also, for the simplicity, we assume that the video chunks in each layer are of the same importance.

In fact, chunks should have different scheduling priorities according to the playback time. For example, the requesting peer should first ask for the chunks that are very close to the playback time. We propose to relax this assumption and categorize chunks in accordance to their different contributions to video quality and playback time.

Moreover, with the rapid development of wireless communication techniques, we believe that scalable video streaming over various wireless P2P networks would be very important in the future. For resource allocation over wireless P2P networks, not only bandwidth but power resources should be considered, since the supplying peer consumes power when sending chunks to the requesting peer. In this case, the proposed auction game becomes a multi-commodity auction problem, in which the supplying peer sells two kinds of commodities, i.e. bandwidth and power, and the requesting peer submits two bids for maximizing the utility. Therefore, we hope to study resource optimization in wireless networks by jointly designing bandwidth and power allocation in the next step.

(19)

References

1. Bertsekas D (1979) A distributed algorithm for the assignment problem. Technical report, Lab for Information and Decision Systems, Mass. Inst. of Technology

2. Buragohain C, Agrawal D, Suri S (2003) A game theoretic framework for incentives in P2P systems. In: The 3rd int. conf. on peer to peer computing

3. Chu X, Zhao K, Li Z, Mahanti A (2009) Auction-based on-demand P2P min-cost media stream- ing with network coding. IEEE Trans Parallel Distrib Syst 20(12):1816–1829

4. Cui Y, Xue Y, Nahrstedt K (2006) Optimal resource allocation in overlay multicast. IEEE Trans Parallel Distrib Syst 17(8):808–823

5. Feng Y, Li B, Li B (2010) Peer-assisted VoD prefetching in double auction markets. In: Network protocols (ICNP), pp 275–284

6. Guo D, Kwok YK (2011) A new auction based approach to efficient P2P live streaming. In:

International conference on parallel and distributed systems

7. Guo H, Lo K, Qian Y, Li J (2009) Peer-to-peer live video distribution under heterogeneous bandwidth constraints. IEEE Trans Parallel Distrib Syst 20(2):233–244

8. Guo J, Zhu Y, Li BC (2004) CodedStream: live media streaming with overlay coded multicast.

In: Proc. of SPIE/ACM conf. Multimedia Computing and Networking (MMCN’04). New York, USA

9. Guo Y, Suh K, Kurose J, Towsley D (2003) P2Cast: peer-to-peer patching solutions for VoD service. In: Proc. of international conference on world wide web. Hungary

10. Habib A, Chuang J (2004) Incentive mechanism for peer-to-peer media streaming. In: Interna- tional Workshop on Quality of Service (IWQoS’04)

11. He Y, Lee I, Guan L (2009) Distributed throughput maximization in P2P VoD applications.

IEEE Trans Multimed 11(3):509–522

12. Hu H, Guo Y, Liu Y (2011) Peer-to-peer streaming of layered video: efficiency, fairness and incentive. IEEE Trans Circuits Syst Video Technol 21(8):1013–1026

13. Huang Y, Fu TZJ, Chiu DM, Lui JCS, Hung C (2008) Challenges, design and analysis of a large- scale P2P VoD system. In: Proc. of ACM SIGCOMM

14. Iosifidis G, Koutsopoulos I (2008) Reputation-assisted utility maximization algorithms for peer- to-peer networks. In: Proc. IEEE IWQoS

15. Jaeok P, Schaar M (2010) A game theoretic analysis of incentives in content production and sharing over peer-to-peer networks. Signal Process 4(4):704–717

16. Liang C, Fu Z, Liu Y, Wu C (2010) Incentivized peer-assisted streaming for on-demand services.

IEEE Trans Parallel Distrib Syst 21(9):1354–1367

17. Liu Z, Shen Y, Ross K, Panwar J, Wang Y (2008) Substream trading: towards an open P2P live streaming system. In: IEEE Conference on Network Protocols (ICNP’08), pp 94C103

18. Liu Z, Shen Y, Ross KW, Panwar SS, Wang Y (2009) LayerP2P: using layered video chunks in P2P live streaming. IEEE Trans Multimed 11(7):1340–1352

19. Ma RTB, Lee SCM, Lui JCS, Yau DKY (2006) Incentive and service differentiation in P2P networks: a game theoretic approach. IEEE/ACM Trans Networking 14(5):978–991

20. Magharei N, Rejaie R (2006) Understanding mesh-based peer-to-peer streaming. In: Proc. 16th NOSSDAV’06

21. Mas-Colell A, Whinston MD, Green JR (1995) Microeconomic theory. Oxford University Press, New York

22. Park J, Schaar M (2010) Pricing and incentives in peer-to-peer networks. In: Proc. of IEEE INFOCOM, pp 1–9

23. Qiu D, Srikant R (2004) Modeling and performance analysis of bitTorrent-like peer-to-peer networks. Distributed Information Systems 34(4):367–378

24. Ramzan N, Quacchio E, Zgaljic T, Asioli S, Celetto L, Izquierdo E, Rovati F (2011) Peer-to-peer streaming of scalable video in future internet applications. Commun Mag 49(3):128–135 25. Schwarz H, Marpe D, Wiegand T (2007) Overview of the scalable video coding extension of the

H.264/AVC standard. IEEE Trans Circuits Syst Video Technol 17(9):1103–1120

26. Stuhlmuller K, Farber N, Link M, Griod B (2000) Analysis of video transmission over lossy channels. IEEE J Sel Areas Commun 18(6):1012–1032

27. Su X (2010) Optimal incentive-based scheduling of layered video packets in P2P steaming.

Comput Sci 6216:384–391

28. Tang Y, Wang H, Dou W (2004) Trust based incentive in P2P network. In: IEEE international conference on e-commerce technology for dynamic e-business

(20)

29. Tourapis AM, Suhring K, Sullivan G (2005) Revised H.264/MPEG-4 AVC reference software manual. Joint Video Team, Doc. JVT-Q042

30. Wenger S, Wang Y, Schierl T (2007) Transport and signaling of SVC in IP networks. IEEE Trans Circuits Syst Video Technol 17(9):1164–1173

31. Wu C, Li B, Li Z (2008) Dynamic bandwidth auctions in multioverlay P2P streaming with network coding. IEEE Trans Parallel Distrib Syst 19(6):806–820

32. Wu C, Li Z, Qiu X, Lau FCM (2012) Auction-based P2P VoD streaming: incentives and optimal scheduling. ACM Trans Multimed Comput Commun Appl 8(14):1–22

33. Xiao X, Shi Y, Gao Y, Zhang Q (2009) LayerP2P: a new data scheduling approach for layered streaming in heterogeneous networks. In: Proc. of IEEE INFOCOM, pp 603–611

34. Xiao X, Shi Y, Zhang Q, Shen J, Gao Y (2010) Toward systematical data scheduling for lay- ered streaming in peer-to-peer networks: can we go farther? IEEE Trans Parallel Distrib Syst 21(5):685–697

35. Xiao X, Zhang Q, Shi Y, Gao Y (2012) How much to share: a repeated game model for peer- to-peer streaming under service differentiation incentives. IEEE Trans Parallel Distrib Syst 23(2):288–295

36. Zhang X, Liu J, Li B, Yum TP (2005) CoolStreaming/DONet: a data-driven overlay network for P2P live media streaming. In: Proc. of IEEE INFOCOM’05. Miami, USA

37. Zhao B, Liu J, Chiu DM (2012) A mathematical framework for analyzing adaptive incentive protocols in P2P networks. IEEE/ACM Trans Networking 20(2):367–380

38. Zhao J, Yang F, Zhang Q, Zhang Z, Zhang F (2006) LION: layered overlay multicast with network coding. IEEE Trans Multimed 8(5):1021–1032

39. Zhao Q, Lui J, Chiu DM (2009) Exploring the optimal chunk selection policy for data-driven P2P streaming systems. In: IEEE international conference on peer-to-peer computing, pp 271–280 40. Zhong L, Wang X, Kihl M (2011) Topological model and analysis of the P2P bitTorrent protocol.

In: Intelligent Control and Automation (WCICA), pp 753–758

41. Zhou Y, Chiu DM, Lui JCS (2011) A simple model for chunk-scheduling strategies in P2P streaming. IEEE/ACM Trans Networking 19(1):42–54

Junni Zou received the M.S. degree and the Ph.D. degree in communication and information system from Shanghai University in 2004 and 2006, respectively. Since then, she has been with the School of Communication and Information Engineering, Shanghai University, Shanghai, where she is Associate Professor. She has been a visiting Professor in University of California, San Diego since 2011. Her research interests include distributed resource allocation, multimedia communication and network information theory. She has published over 40 international journal/conference papers.

(21)

Lin Chen received the M.S. degree in Communication Engineering from Shanghai University, Shanghai, China in 2013. Her main research interests include scalable video streaming, resource allocation and P2P networks.

數據

Figure 1 shows a simple P2P network, where six peers v 1 ∼ v 6 participate in the SVC streaming distribution
Fig. 2 Buffering window structure Layer ID M M-1 3 2 1 playback time
Fig. 3 Bandwidth auction model
Fig. 4 Sequential bandwidth request structure
+6

參考文獻

相關文件

z The caller sent signaling information over TCP to an online Skype node which forwarded it to callee over TCP. z The online node also routed voice packets from caller to callee

The underlying idea was to use the power of sampling, in a fashion similar to the way it is used in empirical samples from large universes of data, in order to approximate the

The writer is convinced that Seng-chao’s concept of the Saint should be interpreted as an activity which is, in a sense, similar to the basic nature of NG Yu-kwan’s concept of Pure

 Promote project learning, mathematical modeling, and problem-based learning to strengthen the ability to integrate and apply knowledge and skills, and make. calculated

Now, nearly all of the current flows through wire S since it has a much lower resistance than the light bulb. The light bulb does not glow because the current flowing through it

Following the supply by the school of a copy of personal data in compliance with a data access request, the requestor is entitled to ask for correction of the personal data

Ongoing Projects in Image/Video Analytics with Deep Convolutional Neural Networks. § Goal – Devise effective and efficient learning methods for scalable visual analytic

The remaining positions contain //the rest of the original array elements //the rest of the original array elements.