On the Efficiency and Fairness of Multiplayer HTTP-based
Adaptive Video Streaming

arXiv:1608.08469v1 [cs.MM] 29 Aug 2016

Xiaoqi Yin, Mihovil Bartulović, Vyas Sekar, Bruno Sinopoli1
Abstract— User-perceived quality-of-experience (QoE) is critical in internet video delivery systems. Extensive prior work has
studied the design of client-side bitrate adaptation algorithms
to maximize single-player QoE. However, multiplayer QoE
fairness becomes critical as the growth of video traffic makes
it more likely that multiple players share a bottleneck in the
network. Despite several recent proposals, there is still a series
of open questions. In this paper, we bring the problem space to
light from a control theory perspective by formalizing the multiplayer QoE fairness problem and addressing two key questions
in the broader problem space. First, we derive the sufficient
conditions of convergence to steady state QoE fairness under
TCP-based bandwidth sharing scheme. Based on the insight
from this analysis that in-network active bandwidth allocation
is needed, we propose a non-linear MPC-based, router-assisted
bandwidth allocation algorithm that regards each player as
closed-loop systems. We use trace-driven simulation to show
the improvement over existing approaches. We identify several
research directions enabled by the control theoretic modeling
and envision that control theory can play an important role on
guiding real system design in adaptive video streaming.

I. I NTRODUCTION
In the recent years video streaming became a huge (and
still growing) part of the daily internet traffic. In US, Netflix
and YouTube alone account for 50% of download traffic
during the peak hours (8pm - 11pm). User-perceived qualityof-experience (QoE) is critical in the Internet video delivery
system as it impacts user engagement and revenues of video
service providers [8].
Given that there is little in-network support of QoE in the
complex Internet video delivery system, client-side bitrate
adaptation algorithms become critical to ensure high userperceived QoE by adapting bitrate levels according to network conditions. A significant amount of research efforts has
been focused recently on understanding and designing better
bitrate adaptation algorithms [21], [20], [11], [14], [18].
While client-side bitrate adaptation is critical to ensure
high QoE for single player regarding available bandwidth as
given by a black box, as video traffic becomes predominant
on the internet, it is more and more likely that multiple video
players will share bottlenecks and compete for bandwidth
in the network [4], [10]. Such scenarios can be seen in
home network, commercial building network, and campus
networks, where multiple devices (e.g., HDTV, tablet, laptop,
cell phone, etc.) connect to Internet by a single Wifi router.
In these cases, in addition to single-player QoE, the multiplayer QoE fairness becomes a critical issue.
1 The
authors are with the Department of Electrical and
Computer Engineering, Carnegie Mellon University, Pittsburgh, PA,
US.
Email:
yinxiaoqi522@gmail.com,
mbartulo@andrew.cmu.edu,
vsekar@andrew.cmu.edu, brunos@ece.cmu.edu

While there have been several practical proposals to address multiplayer QoE fairness problem by designing better
player bitrate adaptation algorithms [12], [14] and networkassisted bandwidth allocation schemes [7], [15], [9], there are
still a lot of open questions in this space. For example, will
the interaction among different classes of bitrate adaptation
algorithms lead to instability? Is centralized, in-network or
server-side control necessary to ensure multiplayer QoE
fairness? How to design distributed control schemes with
information exchange to achieve QoE fairness? We envision
that this rich and broad problem space presents significant
opportunities for control theory to provide insights to a real
networking problem and to guide real system design.
As such, our goal in this paper is to bring the problem
space to light from a control theory perspective. As a first
step in this direction, we formalize the multiplayer QoE
fairness problem and address a subset of the key questions.
We start from building a formal mathematical model of the
multiplayer joint bandwidth allocation and bitrate adaptation
problem, extending the single-player bitrate adaptation model
from prior work [21], [20]. We first focus on the steady-state
problem, and convert the multiplayer fairness problem as the
stability analysis of an equilibrium of a non-linear dynamical
system. We derive sufficent conditions under which multiple
players with same/different bitrate adaptation policies can
converge to QoE fairness with TCP-based bandwidth sharing at the bottleneck, and found that TCP-based network
bandwidth sharing is not sufficient to ensure QoE fairness,
confirming the observation of a measurement study [10] from
a theory aspect. The result of the analysis calls for active,
in-network support for better bandwidth allocation.
Given the recent development of smart routers such as
Google OnHub router [2] and programmable OpenWrt [3],
we envision that a router-based bandwidth allocation scheme
is practical in the near future. While recent proposals of
router-assisted schemes are based on steady-state utility
maximization, we propose a non-linear MPC-based routerassisted bandwidth allocation algorithm that directly models
players as close-loop dynamical systems. We evaluate the
proposed strategy using trace-driven simulations and find that
the router-assisted control outperforms existing steady-state
solutions in both efficiency and fairness, by adaptively allocating more bandwidth to players which has high resolution
and insufficient buffer level.
In addition to answering concrete key questions, we hope
that this work provides insights into an exciting problem
space that has received little attention from the control

Video chunks 360p

Video Player
Predicted
Throughput
Bitrate
Controller

Bitrate
Buffer
Occupancy

QoE

Internet

720p

Throughput
Predictor

GET

HTTP

Internet

Buffer
Client-Side Players
E.g., Netflix, YouTube

Internet Service Providers
E.g., Comcast, Verizon

CDN Servers
E.g., Akamai

End User

Fig. 2: The internet video delivery ecosystem
Fig. 1: Abstract adaptive video player model
community and how control theory can potentially make a
significant impact on guiding real system design.
Summary of Contributions: The main contribution of this
paper is summarized as follows:
• We bring the multiplayer QoE fairness problem to light
from a control theory perspective and provide a formal
model to reason about existing approaches;
• We provide theoretical analysis of the convergence of
TCP-based bandwidth sharing schemes to QoE fairness;
• We propose a nonlinear MPC-based router-assisted
bandwidth allocation algorithm that outperform existing
approaches.
The rest of the paper is organized as follows: We begin
by sketching the problem space of multiplayer QoE fairness
in Section II. We describe system model and formulate
QoE fairness optimization problem in Section III. In Section
IV we provide analysis of TCP-based bandwidth sharing
policies. We propose router-based bandwidth allocation in
Section V and evaluate the algorithm in Section VI. Finally,
we conclude the paper with future work in Section VII.
II. BACKGROUND AND R ELATED W ORK
In this section, we provide a high-level overview of HTTPbased adaptive video streaming and the multiplayer QoE
fairness problem. We then sketch the classes of possible
solutions and landscape of prior work, and identify the key
questions that call for the use of control theoretic principles.
HTTP-based adaptive video streaming: Today a lot of
video streaming technologies use HTTP-based adaptive
video streaming (Apple’s HLS, Adobe’s HDS, etc.). All
these video streaming protocols are standardized under the
Dynamic Adaptive Streaming over HTTP or DASH. When
using DASH each video is divided into multiple smaller
segments or ”chunks”. Each chunk corresponds to a few
seconds of play time and it is encoded at multiple discrete
bitrates. This is necessary so that the adaptive video player
can switch to a different bitrate if necessary after the chunk
was downloaded.
Figure 1 shows an abstract model of an adaptive video
player. Video chunks are downloaded via HTTP to a local
video buffer, and then played out to users. A bitrate controller is responsible to choose the bitrate for each video

chunk based on predicted available bandwidth and the state
of the buffer, to maximize the user’s QoE. A significant
amount of work has been focused on the design of the bitrate
controller, including rate-based algorithms [12], [14], bufferbased algorithms [11], [17], and hybrid algorithms [19],
[20]. In particular, recent work [20] provides a controltheoretic framework to understand existing approaches and
proposes MPC-based bitrate controller for single-player QoE
optimization.
Multiplayer QoE fairness: While single-player bitrate adaptation algorithms have been well studied, they consider available bandwidth as a given stochastic variable and maximize
QoE for a single player without considering the impact
to other players. However, When multiple players share a
bottleneck in the network, the efficiency and fairness of QoE
across multiple adaptive video players become critical.
Note that multiplayer QoE fairness includes both fairness
in steady state and transient state. For example, when a
HDTV and a tablet share a bandwidth bottleneck in a
home network, HDTV should ideally get more bandwidth in
steady-state than the tablet as it needs higher-quality video to
match the higher resolution. On the other hand, for example,
a player with empty buffer is expected to obtain more
bandwidth than another with full buffer sharing the same
bottleneck, as it needs to quickly accumulate buffer so as to
converge quickly to optimal bitrate and avoid rebuffering.
Internet video delivery ecosystem: Different from singleplayer problem, the multiplayer QoE fairness can be affected
by a broader range of factors. As such, we zoom out from
the adaptive player model in Figure 1 and look at how the
internet video delivery ecosystem impacts the multiplayer
QoE fairness.
As shown in Figure 2, the Internet video delivery ecosystem consists of a variety of entities that has different control
capabilities to optimize different objectives. Video source
providers, such as Netflix and YouTube, own the client
players and can design client-side bitrate control to optimize
the user-perceived QoE; Content delivery networks (CDN),
such as Akamai and Level3, place videos in CDN servers at
the edge of the internet and assign players to best servers
in a video session; Internet service providers (ISP), such
as Comcast and Verizon, control the bandwidth available to
CDN servers and client players according to agreement with
users; Video quality optimizers, such as Conviva, employ a

global view to provide centralized control of bitrate and CDN
server selection for client players.
Classes of potential solutions: Given the diverse control
capabilities in the internet video delivery system, there are
several classes of solutions to achieve multiplayer QoE
fairness: player-side, in-network, and server-side solutions.
Player-side solutions, such as FESTIVE [12] and
PANDA [14], entail designing better bitrate adaptation algorithms for multiplayer QoE fairness. While only requiring
player algorithm change and thus easy to deploy, playerside solutions do not alter bandwidth allocation in the
network and can suffer from suboptimal bandwidth allocation
schemes such as the unideal TCP effect [10] and interaction
with uncooperative players and cross traffic [4].
In-network solutions, on the other hand, employ active
bandwidth allocation in the network to achieve multiplayer
QoE fairness. While bottleneck can occur anywhere in the
network making such schemes difficult to deploy, there are
several recent proposals in particular on router-based bandwidth allocation algorithms to optimize steady-state QoE
fairness where router is the single bottleneck shared among
players [7], [15], [9].
Alternatively, server-side solutions regard the server as a
single point of control and allocate bandwidth to players [5].
However, the actual bandwidth bottleneck can occur in the
network instead of server and the computation cost is high
when the number of players is too large.
Key research questions: The broad problem space for
multiplayer QoE fairness has posed a series of key research
questions including:
1) What is the optimal approach and fundamental limitations of each class of solutions?
2) What is the fundamental tradeoff between different
classes of solutions?
3) How to design the information exchange scheme to
enable coordination of different entities in the video
delivery ecosystems to achieve QoE fairness?
As a first step to tackle the broader problem, in this paper we
want to develop a principled framework and answer a subset
of key questions so as to shed light on the broader problem
space and provide useful insights for future work. In the next
section, we start to develop a formal mathematical model of
multiplayer QoE fairness problem.
III. M ODELING
In this section, we develop a mathematical model for
multiplayer HTTP-based adaptive video streaming. Figure
3 provides an overview of the model.
Video streaming model: We consider a discrete time model
with time horizon K = {1, · · · , K} with a sampling period
∆T . Let us consider a set of N video players P sharing a
single bottleneck link with bandwidth W [k] at time k. Let
wi [k] ∈ R+ be the available bandwidth to the player i at the
time k, we have:
X
wi [k] ≤ W [k], ∀k ∈ K
(1)
i∈P

Bottleneck link

Bandwidth:
Bandwidth Allocation
w = h(r)

Router
Bandwidth:

…
Player 1

Player 2

Bitrate Adaptation
r = f(w, b)

Player N

Bitrate:

Fig. 3: Modeling multiplayer joint bandwidth allocation
and bitrate adaptation problem
We assume this link is the only bottleneck along the Internet
path from the video players to the servers.
Each video player streams video from some video server
on the Internet via HTTP. The video is encoded in a set of
bitrate levels R. When downloading video, player i ∈ P is
able to choose the bitrate ri [k] ∈ R of the video at each
time step k. In constant bitrate encoding, ri × t bits of data
need to be downloaded to get the video with t seconds of
play time.
Each player has a buffer to store downloaded yet unplayed
video. Let bi [k] ∈ [0, B i ] be the buffer level at the beginning
of time step k, namely, the amount of play time of the video
in the buffer. The buffer accumulates as new video is being
downloaded, and drains as video is played out to users. The
buffer dynamics of the player i is formulated as follows:
bi [k + 1] = bi [k] − ∆T +

wi [k]∆T
ri [k]

(2)

QoE objective: The objective of the adaptive video players is
to maximize the quality-of-experience (QoE) of users, which
is modeled as a linear combination of the following factors:
1) average video quality, 2) average quality change, 3) total
rebuffer time and 4) startup delay. For simplicity, in this
paper we enforce that there are no rebuffering events, and
we only consider the case where all the players have started
playback. As such, the QoE utility function Ui : R × R+ ×
R+ → R of player i is the formulated as the average QoE
of video downloaded over the entire time horizon:
PK wi [k] P
k=1 ri [k] Ui [k]
Ui =
(3)
PK wi [k]
k=1 ri [k]

where

UiP [k]

is the QoE of the video downloaded in time k:

UiP [k] = qi (ri [k]) − µi |qi (ri [k]) − qi (ri [k − 1])|

(4)

Note that qi : R → R is the function that maps bitrate to
the video quality perceived by users. We assume qi (·) to be
positive, increasing and concave to model the diminishing
return property. µi is the parameter that defines the trade-off
between high average quality and less quality changes. The
larger µi is, the more reluctant the user i is to change the
video quality.
QoE fairness: Going from single player to multiplayer video
streaming, a natural objective function would be the sum of

utilities (QoE) of all
P users, also known as social welfare
or efficiency, i.e.,
i∈P Ui . However, in the context of
multiplayer video streaming, QoE fairness among players
becomes a critical issue as each player usually serves a
different user yet they share the same bottleneck resource.
As such, we consider the QoE fairness F (U1 , · · · , UN ) as
the objective, where F : Πi∈P Ui → R is a general fairness
measure [13]. Specifically, we consider a class of fairness
measures known as α-fairness [16], where:
(P
Ui1−α
α ≥ 0, α 6= 1
i∈P
1−α
(5)
Fα (U) = P
log
U
α
=1
i
i∈P
Note that α-fairness is a general fairness measure that
satisfies axiom 1,2,3,5 from [13]. If α = 1, α-fairness
becomes proportional fairness; if α → ∞, it becomes maxmin fairness.
Multiplayer QoE maximization problem: Now we are
ready to formulate the multiplayer QoE maximization problem where optimal bitrates (r[k], k ∈ K) and bandwidth
(w[k], k ∈ K) of players are decided to maximize some QoE
fairness measure F (U), given the capacity of the bottleneck
link, (W [k], k ∈ K):
max

F (U1 , · · · , UN )

(6)

r[k], w[k] given W [k], k ∈ K
X
s.t.
wi [k] = W [k], ∀k ∈ K

over

(7)
(8)

i∈P

wi [k]∆T
,
ri [k]
∀i ∈ P, k = 1, · · · , K

bi [k + 1] = bi [k] − ∆T +

B i ≤ bi [k] ≤ B i ,

∀i ∈ P, k ∈ K

wi [k] ≥ 0, ri [k] ∈ R

∀i ∈ P, k ∈ K

(9)

(10)
(11)

Ideally, a centralized controller can decide both the bitrate
r and the bandwidth w for all players to achieve QoE fairness, given the complete information of the system. However,
the current practice can be interpreted as a distributed way to
solve the problem by primal decomposition with no explicit
message passing between players and router: Each player
i decides the bitrate of itself according to some bitrate
adaptation policy ri [k + 1] = f (wi [k], bi [k + 1]), while
the bottleneck link (conceptually) decides how to allocate
available bandwidth according to some bandwidth allocation
policy w[k] = h(r[k], b[k]). The design of optimal distributed solution is to find optimal (h, f ) pairs, i.e., (h∗ , f ∗ ).
Next, we discuss respectively the design of h and f .
Bandwidth allocation policies: Given that the players in
P
P shares a bottleneck link with total bandwidth W [k], i.e.,
i∈P wi [k] = W [k]. A bandwidth allocation policy h :
Rn → Rn is a function that maps bitrates r[k] to bandwidth
allocation vector w[k]. Let hi : Rn → R be the function that
maps r[k] to wi [k].
w[k] = h(r[k])

(12)

Under ideal TCP, all players get the equal share of the total
bandwidth, i.e., w1 [k] = · · · = wN [k] = W [k]/N ,. However,
in practice, TCP is not ideal in the sense that players with
larger bitrate gets larger share of the bandwidth due to the
discrete effects [10]. We have the following assumptions
of the bandwidth allocation function under unideal TCP
according to measurement data in [10]:
Assumption 1: Under non-ideal TCP, the bandwidth allocation policy h(·) has the following properties:
1) If ri = rj , hi (r) = hj (r);
2) If ri > rj , hi (r) > hj (r);
> 0, ∂h∂ri (r)
< 0, i 6= j;
3) ∂h∂ri (r)
i
j
4) limri →∞ hi (r) < W , limri →0 hi (r) > 0;
5) h(·) is symmetric over r (does not depend on order of
players).
Lemma 1: The function h(·) has 1 + kn fixed points,
where k ∈ N.
Bitrate adaptation policies: Bitrate adaptation policy of
player i, fi (·), maps available bandwidth wi [k] and buffer
level bi [k] to bitrate to choose ri [k] so as to maximize the
QoE of the player. Bitrate adaptation policies have been
widely studied by both in academia and in industry, and
each video streaming service has its own adaptation policy.
To make decisions on what bitrate to choose, there are two
classes of algorithms: rate-based (RB) or buffer-based (BB)
controllers.
In a rate-based policy RB(fi ), ri [k] = fi (wi [k − 1]),
where fi : R+ → R is an increasing function. We consider a
special case LRB(α) where fi is an affine function ri [k] =
αwi [k − 1].
In a buffer-based policy BB(fi ), ri [k] = fi (bi [k]), where
fi : R+ → R is an increasing function. We also consider
the special case LBB(α, β) of an affine f function ri [k] =
αbi [k] + β.
Note that both RB and BB policies can be regarded as
heuristic algorithm to maximize QoE which may lead to suboptimal solution. However, it is still of great interest to study
these policies as they are currently widely deployed in the
real-world players, such as Netflix or YouTube.
IV. A NALYSIS OF FAIRNESS IN S TEADY S TATE
QoE fairness in the steady state: Note that an interesting
special case of the multiplayer problem is when the system
is in steady state, where the video quality and bandwidth of
all players stay unchanged. Formally, we have the following
definition:
Definition 1: Given fixed total available bandwidth W ,
the multiplayer video streaming system is in steady state
(r0 , w0 ) if for each player i ∈ P:
1) Bitrate and bandwidth stay unchanged, i.e., ri [k] = r0i ,
wi [k] = w0i , ∀k ∈ K;
2) Buffer level is non-decreasing, i.e., bi [k + 1] ≥ bi [k],
∀k ∈ K.
Removing the inter-temporal constraints and inter-temporal
component in the objective function, we get the multiplayer

QoE fairness problem in steady state where optimal solution
is denoted as (r∗0 , w0∗ ):
max

f (q1 (r1 ), · · · , qN (rN ))

over r, w given W
X
s.t.
wi = W,

(13)
(14)
(15)

i∈P

ri ≤ wi ,

∀i ∈ P

wi ≥ 0, ri ∈ R,

(16)
∀i ∈ P

(17)

Note that this problem is convex given that R = [R, R], and
in the case that all players share the same qi = q, the optimal
solution is (r∗0 , w0∗ ) : r0i = w0i = W/N .
Fairness of homogeneous RB players: We first consider the
simplest case where all players are using the same rate-based
algorithms.
Theorem 1: If all players adopt RB(f ) bitrate adaptation
policies, the following statements are true:

w
1) (r0 , w0 ) : ri0 = f w
n , wi0 = n is an equilibrium;
2) If h ◦ f is a contractive mapping, (r0 , w0 ) is globally
asymptotically stable;
3) If h ◦ f is a expansive mapping, (r0 , w0 ) is unstable;
Fairness of homogeneous BB players: We consider the
case where all players adopt the same buffer-based bitrate
adaptation policies and have the same QoE functions.
Lemma 2: If all players adopts buffer-based bitrate adaptation policy, (r0 , w0 ) is an equilibrium if and only if:
1) r0 = w0 ;
2) h(r0 ) = r0 .
Theorem 2: If all players adopts LBB(α, β) bitrate adaptation policy, the following statements are true:
1) (r0 , w0 ) : ri0 = wi0 = w
n is an equilibrium;
i (r0 )
<
0,
∀i
6= j, then the equilibrium is
2) If − n1 < ∂h∂r
j
locally asymptotically stable;
i (r0 )
3) If ∂h∂r
< − n1 , ∀i 6= j, then the equilibrium is
j
unstable;
Note that comparing results in homogeneous RB and
BB players, we found that the convergence of RB players
depends on both bandwidth allocation and bitrate adaptation
policies, while convergence of BB players only depends on
bandwidth allocation functions. The key reason is that, the
bitrate decisions of BB players reflects the state of the player,
i.e., buffer level, while the bitrate decisions of RB players
does not depend on the internal states.
Implications on system design: From the analysis we
know that, in homogeneous player case, the convergence
of BB players only depends on the characteristics of the
bandwidth allocation function h(·), while for RB players,
the convergence depends on the composite of bandwidth
allocation function h(·) and player adaptation algorithms
f (·). This has the following key implications that informs
the system design:
First, the analysis confirms that the router-side bandwidth
allocation function is critical to the convergence of both RB

and BB players. Given that the player adaptation algorithms
are designed by potentially different providers and may
not be considering multiplayer effect, it could in turn be
beneficial to redesign the bandwidth allocation function to
ensure convergence with a larger range of player adaptation
algorithms.
Second, the analysis provides a theoretical guide for the
design of RB player adaptation algorithms which helps us
better understand why existing design works. Given that
the convergence depends on both bandwidth allocation and
player adaptation, if TCP-based implicit bandwidth allocation is hard to change, we can design better player adaptation
algorithms so that h ◦ f is contractive. One example of this
principle is the design of FESTIVE [12], where f (·) function
is concave to make sure h ◦ f is contractive.
V. NMPC- BASED ROUTER -A SSISTED BANDWIDTH
A LLOCATION FOR Q O E FAIRNESS
Despite a fully distributed scheme, the analysis from the
previous section has posed the fundamental limitation of
TCP-based bandwidth allocation scheme: First, not all h(·)
lead to convergence to QoE fairness in steady state even
if players have the same QoE function U (·) and use the
same class of bitrate adaptation policies f (·). Second, it
cannot take into account different QoE goals and will not
converge to fairness when players employ different classes
of bitrate adaptation policies. As such, in order to achieve
multiplayer QoE fairness, we want to design better player
bitrate adaptation policies fi (·) and bandwidth allocation
policy h(·).
However, it is difficult to deploy/modify bitrate adaptation
policies of all video players as they belongs to different and
competing video streaming services, e.g., Netflix, YouTube,
Amazon Video, etc. Also, controlling the bandwidth from the
player side is difficult as the player runs on top of HTTP and
cannot change the underlying TCP protocol. Instead, routers
are in a good position to collect information of each player
and video stream, and can technically control the bandwidth
allocation. As smart routers are becoming more and more
pervasive in the home entertainment industry (e.g. Google
OnHub router), we envision that router-assisted bandwidth
allocation scheme is more practical. Overall, we develop a
hybrid router-assisted control for fairness: we keep the player
adaptation policies fi (·) unchanged, and design bandwidth
allocation policy h(·) to achieve QoE fairness.
As routers have access to all video streams going through,
we assume it can get or learn the following information from
each player i ∈ P: 1) current states of the player including
bitrate ri , buffer level bi , 2) bitrate adaptation policy fi (·),
3) QoE function Ui (·).
Given these information, the router-side bandwidth allocation function h(·) is obtained implicitly by solving the
following bandwidth allocation problem in a moving horizon

manner, regarding each player as a closed-loop system.
max

F (U1 , · · · , UN )

over

w[k] given W [k], k ∈ K

s.t. (8) − (11)
ri [k] = fi (wi [k − 1], bi [k]),

∀i ∈ P, k ∈ K

Note that as the dynamics of players are non-linear, the
resulting controller is a non-linear MPC-based controller.
VI. E VALUATION
A. Setup
Evaluation framework: We employ a custom Matlab-based
simulation framework. The duration of each time step is
2s and the simulation framework works in a synchronized
manner: At the beginning of each 2s interval, the states of
the player and the network is updated according to player
dynamics and previously recorded traces. The bitrate and
bandwidth decisions are then made simultaneously. There
is no event in between each 2s interval. Note that this
is slightly different from the single-player simulation in
previous section as the player decisions are not synchronized,
i.e., the player can change the bitrate at chunk boundaries,
which may not necessarily be every 2s. We acknowledge
this limitation and will test in real asynchronized settings in
future work.
Resource allocation schemes: We compare the following
algorithms:
1) Baseline: In baseline scheme, the bandwidth controller
knows the q(·) function of all players, and the bandwidth is allocated by solving steady-state bandwidth
allocation problem at the beginning of each time step.
Given allocated bandwidth, each player then adopts RB
or BB adaptation strategies to choose its bitrate. This
scheme has been seen in recent work [7], [15], [9].
2) Router: In router-assisted scheme, the bandwidth controller knows the QoE functions, states (buffer level,
bitrate), and bitrate adaptation strategies of all players.
The router-assisted bandwidth controller works in a
moving horizon way: At the beginning of each time
steps, the controller predict the bandwidth in a fixed
horizon to the future, and solve the router-assisted
bandwidth allocation problem in the horizon to decide
bandwidth allocation. We assume the bandwidth is
given in the MPC horizon.
3) Centralized: The centralized scheme entails calculating
the optimal bandwidth allocation and the bitrate decisions simultaneously by solving the joint optimization
problem. We assume the controller knows the entire
future bandwidth. While less practical, the centralized
controller provides us with an upper bound of the
performance.
Metrics: We evaluate the algorithms using the following
performance metrics:

1) α-fairness: We adopt α-fairness measure as it is widely
used in prior work [13]. Specifically, we focus on two
special case of α-fairness: 1) α = 0 corresponding to
social welfare, sum of QoE, or efficiency; 2) α = 1
corresponding to proportional fairness. As α-fairness
can be decomposed into a component corresponding
to efficiency and another component corresponding
to fairness measures that does not depend on fairness [13], we also use social welfare and normalized
Jain’s index as detailed metrics.
2) Social
Pwelfare: Defined as sum of QoE of all players,
i.e., i∈P Ui .
3) Normalized Jain’s index: Defined as the Jain’s index P
of normalized QoE, namely, Jain’s index of
U/( i∈P Ui ). Jain’s index is widely used in prior
work to depict QoE
P fairness ofPplayers [12], it is
defined as J(x) = ( xi )2 /(n · x2i ).
Throughput traces: We use the throughput trace from
FCC MBA 2014 project [1]. The dataset has more than 1
million sessions of throughput measurement, each containing
6 measurement of 5-sec average throughput. For experiment
purposes, we concatenate the measurements from the same
client IP and server IP, and use the concatenated traces in
the experiment. To avoid trivial cases where the available
bandwidth is too high or too low, we only use traces whose
average throughput is 0 to 3Mbps. Also, we multiply the
throughput by the number of players in the experiment to
eliminate the scaling effect in multiplayer experiments.
Player parameters: The time horizon is discretized by ∆t =
2s. For simplicity, we assume players can choose bitrate in
a continuous range [200kbps, 3000kbps]. We set buffer size
to be 30s. For QoE functions, we set µ = 1 for all players.
For default settings, players has the following video quality
function q(r) = rp , we set p = 0.6 by default, making
q(·) function concave. Note that this can be non-concave in
general, e.g., we could also use the sigmoid-like functions
as suggested in [6], however, this will make the objective
non-convex. We let RB players adopt r[k] = 0.8 × w[k − 1],
while BB players adopt r[k] = 100 × b[k] by default.
B. End-to-End Results
In this section, we focus on the end-to-end comparison of
the algorithms.
Efficiency-vs-fairness tradeoff: We first evaluate the algorithms in terms of normalized social welfare (sum of
QoE) and normalized fairness measure (Jain’s index). We
change α in α-fairness in order to get different points on
the curve. Figure 4 shows the pareto front of the algorithms.
There are three observations: First, router-assisted control
outperforms baseline controller by 5-7% in terms of social
welfare given the same normalized Jain’s index. For example,
if we let normalized Jain’s index to be 0.8, router assisted
controller achieves 56% of optimal, while baseline controller
only achieves 50% of optimal. Second, centralized controller
significantly outperforms both router-assisted and baseline
controller with 15+% advantage. This is because centralized

0.75
0.7

0.6

0.5
0.4
0.3
0.2

0.55

2000
1500
1000
500

0.1
0

P1, Baseline
P2, Baseline
P1, Router
P2, Router

2500
Average Bandwidth (kbps)

Offline
Router
Baseline

Average Normalized QoE

Normalized Social Welfare

0.65

3000

P1, Baseline
P2, Baseline
P1, Router
P2, Router

0.6

0.7

0

(0.6,0.5)
(0.6,0.6)
(0.6,0.7)
Video Quality Coefficient p (quality = bitratep)

(0.6,0.5)
(0.6,0.6)
(0.6,0.7)
Video Quality Coefficient p (quality = bitratep)

(a)

0.5

(b)

Fig. 5: Impact of QoE functions
0.8
0.85
Normalized Jain’s Index

0.9

0.95

Fig. 4: Social welfare vs fairness tradeoff
controller has more flexibility on deciding the bitrate for
each player, while router-assisted controller does not have
direct control over players’ bitrates and can only steer the
bitrate by controlling the bandwidth (for RB players) and
implicitly buffer level (for BB players). Third, we observe a
natural tradeoff between social welfare and fairness. According to Lan et al. [13], α-fairness can be factored into two
component: efficiency (social welfare) and fairness measure
that satisfies the five axioms and does not depend on scale.
When α = 0, both centralized and router-assisted controller
optimizes social welfare without considering the fairness
of players. As such, the social welfare at the left most
point of the curve is at the maximum. However, as α is
increased, more and more weight is put on the fairness of
QoE, leading to increased fairness but less total QoE. Note
that this resonates with the observation in prior work [12]
on the tradeoff between sum of bitrates and their fairness,
but our proposed algorithms are able to systematically adjust
this tradeoff by selecting an appropriate α.
C. Sensitivity Analysis
Next, we conduct sensitivity analysis on a class of key
parameters so as to understand the robustness and the reason
why router-assisted controller outperforms existing methods.
Impact of QoE functions: We first look at how the algorithms performs under different QoE functions in Figure 5a.
We use two BB players with the same parameters except for
video quality functions, i.e., q(·) function. We let q(r) = rp
and vary the coefficient p. The larger p is, the user-perceived
quality is more sensitive w.r.t. bitrate; The smaller p is, the
less sensitive the user is to bitrate. As shown in Figure 5b,
both baseline and router assisted controller allocate more
bandwidth to the player with larger p and thus requiring
higher bitrate, as both controllers takes into account the
q(·) function in their optimization. However, router-assisted
algorithm outperforms baseline controllers as it considers
player buffer dynamics and lead to faster convergence to
optimal bitrates. In addition, the advantage of router-assisted
algorithm over baseline controller is increasing as the video
quality coefficients p for different players become more
diverse. Note that this confirms our observation that more

0.6

2500

P1, Baseline
P2, Baseline
P1, Router
P2, Router

Average Bandwidth (kbps)

0.75

0.7

Average Normalized QoE

0.45
0.7

0.5
0.4
0.3
0.2
0.1
0

(2,2)

(2,10)
Initial Buffer Levels (s)

(a)

(2,18)

2000

P1, Baseline
P2, Baseline
P1, Router
P2, Router

1500

1000

500

0

(2,2)

(2,10)
Initial Buffer Levels (s)

(2,18)

(b)

Fig. 6: Impact of initial conditions
bandwidth should be allocated to high-resolution devices in
order to achieve QoE fairness.
Impact of initial conditions: We further investigate how the
players’ initial buffer levels impact the performance. Figure
6a shows the players’ normalized QoE vs different initial
conditions, while Figure 6b shows the bandwidth allocated
to players in baseline and router-assisted schemes. There are
three key observations: First, the router-assisted algorithm
consistently outperforms baseline solution, increasing the
normalized QoE for each player. Second, the router-assisted
algorithm has more advantage over baseline solution when
the initial buffer levels for the players become more diverse.
For instance, while router-assisted and baseline achieves similar performance when both players have 2s buffer initially,
both players’ QoE are significantly improved when initial
buffer levels are 2s and 18s respectively. Third, an interesting
observation from Figure 6b is that, while baseline solution
does not consider states and dynamics of the players and
therefore allocate the same bandwidth to both players even
one player has much more buffer and need less bandwidth,
router assisted algorithm allocate less bandwidth to players
with full buffer and more bandwidth to player with empty
buffer as it needs to quickly accumulate buffer so as to stream
at high bitrate. As such, router-assisted algorithm achieves
better performance as it takes into account the states and
dynamics of the players, which is critical to players’ QoE.
Impact of bandwidth variability: Finally, we investigate
how bandwidth variability impacts the performance. To
showcase that the proposed router-assisted algorithm is more
robust to bandwidth variability than the baseline solution, a
zero mean Gaussian white noise is added to every bandwidth trace. The variability in bandwidth is increased as we
increase the standard deviation of the additive white noise.
Figure 7 shows the mean fairness vs the standard deviation of

122

R EFERENCES

121

Mean fairness

120

Basic
Router

119
118
117
116
115
114
0

100

200
300
400
Bandwidth variability (kbps)

500

600

Fig. 7: Impact of bandwidth variability
the additive white noise. Mean fairness is calculated by averaging the results obtained after simulating both algorithms
using 100 noisy bandwidth traces. Furthermore, Figure 7
confirms that the router-assisted algorithm is more robust
to bandwidth variability as its average fairness stays almost
intact while the baseline solution shows a decreasing trend
in average fairness as we increase the bandwidth variability.
This behavior is expected as the router-assisted algorithm
uses an adaptive approach to allocate the bottleneck resources
leading to better result in highly variable environment.
D. Summary of Results
Our main findings are summarized as follows:
1) Given fixed normalized Jain’s index, router-assisted
algorithm outperforms baseline solution by 5-7% in
terms of social welfare (sum of QoE), while centralized
bandwidth allocation + bitrate control achieves 70%
of optimal, achieving 15+% advantage comparing to
other solutions.
2) Our sensitivity analysis shows that router-assisted algorithm has more advantage over baseline solution when
the QoE functions and initial conditions of players are
more diverse. Moreover, router-assisted algorithm can
allocate more bandwidth to players with less buffer
while baseline solution fails to take into account the
states of the players.
VII. C ONCLUSION
Instead of regarding available bandwidth as given by a
black box, we further consider the multiplayer interaction in
adaptive video streaming, namely, the joint bandwidth allocation and bitrate adaptation problem in a star network. We
build a mathematical model and conduct theoretical analysis
on the convergence of RB/BB players under non ideal TCP
assumptions. Given that convergence is not guaranteed in
general, we develop a router-assisted control which allocate
bandwidth to players taking into account their bitrate adaptation strategies and states. Using trace-drive simulations, we
show that our proposed router-assisted control outperforms
existing QoE-aware bandwidth allocation algorithms as it can
adaptively allocate bandwidth to players with high resolution
and in more urgent need to accumulate buffer.

[1] FCC
dataset.
https://www.fcc.gov/
measuring-broadband-america. Accessed: 2014-12-01.
[2] Google OnHub router. https://on.google.com/hub/.
[3] Programmable OpenWrt. https://wiki.openwrt.org/doc/
uci/network.
[4] S. Akhshabi, L. Anantakrishnan, A. C. Begen, and C. Dovrolis. What
happens when http adaptive streaming players compete for bandwidth?
In Proceedings of the 22Nd International Workshop on Network and
Operating System Support for Digital Audio and Video, NOSSDAV
’12, pages 9–14, New York, NY, USA, 2012. ACM.
[5] S. Akhshabi, L. Anantakrishnan, C. Dovrolis, and A. C. Begen. Serverbased traffic shaping for stabilizing oscillating adaptive streaming
players. In Proceeding of the 23rd ACM Workshop on Network and
Operating Systems Support for Digital Audio and Video, pages 19–24.
ACM, 2013.
[6] M. Chiang. Nonconvex Optimization for Communication Networks,
pages 137–196. Springer US, Boston, MA, 2009.
[7] G. Cofano, L. De Cicco, T. Zinner, A. Nguyen-Ngoc, P. Tran-Gia,
and S. Mascolo. Design and experimental evaluation of networkassisted strategies for http adaptive streaming. In Proceedings of the
7th International Conference on Multimedia Systems, MMSys ’16,
pages 3:1–3:12, New York, NY, USA, 2016. ACM.
[8] F. Dobrian, V. Sekar, A. Awan, I. Stoica, D. Joseph, A. Ganjam,
J. Zhan, and H. Zhang. Understanding the impact of video quality
on user engagement. In ACM SIGCOMM Computer Communication
Review, volume 41, pages 362–373. ACM, 2011.
[9] P. Georgopoulos, Y. Elkhatib, M. Broadbent, M. Mu, and N. Race.
Towards network-wide qoe fairness using openflow-assisted adaptive
video streaming. In Proceedings of the 2013 ACM SIGCOMM
Workshop on Future Human-centric Multimedia Networking, FhMN
’13, pages 15–20, New York, NY, USA, 2013. ACM.
[10] T.-Y. Huang, N. Handigol, B. Heller, N. McKeown, and R. Johari.
Confused, timid, and unstable: picking a video streaming rate is hard.
In Proceedings of the 2012 ACM conference on Internet measurement
conference, pages 225–238. ACM, 2012.
[11] T.-Y. Huang, R. Johari, N. McKeown, M. Trunnell, and M. Watson.
A buffer-based approach to rate adaptation: Evidence from a large
video streaming service. ACM SIGCOMM Computer Communication
Review, 44(4):187–198, 2015.
[12] J. Jiang, V. Sekar, and H. Zhang. Improving fairness, efficiency,
and stability in http-based adaptive video streaming with festive.
In Proceedings of the 8th international conference on Emerging
networking experiments and technologies, pages 97–108. ACM, 2012.
[13] T. Lan, D. Kao, M. Chiang, and A. Sabharwal. An axiomatic theory
of fairness in network resource allocation. In INFOCOM, 2010
Proceedings IEEE, pages 1–9, March 2010.
[14] Z. Li, X. Zhu, J. Gahm, R. Pan, H. Hu, A. Begen, and D. Oran.
Probe and Adapt: Rate Adaptation for HTTP Video Streaming at Scale.
Selected Areas in Communications, IEEE Journal on, 32(4):719–733,
2014.
[15] A. Mansy, M. Fayed, and M. Ammar. Network-layer fairness for adaptive video streams. In IFIP Networking Conference (IFIP Networking),
2015, pages 1–9, May 2015.
[16] J. Mo and J. Walrand. Fair end-to-end window-based congestion
control. IEEE/ACM Transactions on Networking (ToN), 8(5):556–567,
2000.
[17] K. Spiteri, R. Urgaonkar, and R. K. Sitaraman. Bola: Near-optimal
bitrate adaptation for online videos. arXiv preprint arXiv:1601.06748,
2016.
[18] Y. Sun, X. Yin, J. Jiang, V. Sekar, F. Lin, N. Wang, T. Liu, and
B. Sinopoli. Cs2p: Improving video bitrate selection and adaptation
with data-driven throughput prediction. In Proc. of ACM SIGCOMM,
2016.
[19] G. Tian and Y. Liu. Towards agile and smooth video adaptation
in dynamic http streaming. In Proceedings of the 8th international
conference on Emerging networking experiments and technologies,
pages 109–120. ACM, 2012.
[20] X. Yin, A. Jindal, V. Sekar, and B. Sinopoli. A control-theoretic
approach for dynamic adaptive video streaming over http. Proc. of
ACM SIGCOMM, 2015.
[21] X. Yin, V. Sekar, and B. Sinopoli. Toward a principled framework to
design dynamic adaptive streaming algorithms over http. In Proc. of
ACM HotNets, 2014.

