On the interactions between layered quality adaptation and congestion control for streaming
Available from
Nick Feamster's profile on Mendeley.
Page 1
On the interactions between layered quality adaptation and congestion control for streaming
On the Interactions Between Layered Quality Adaptation
and Congestion Control for Streaming Video
Nick Feamster, Deepak Bansal, and Hari Balakrishnan
MIT Laboratory for Computer Science
feamster, bansal, hari @lcs.mit.edu
http://nms.lcs.mit.edu/projects/videocm/
Abstract
This paper uses analysis and experiments to study the impact of var-
ious congestion control algorithms and receiver buffering strategies
on the performance of streaming media delivery. While traditional
congestion avoidance schemes such as TCP’s additive-increase/-
multiplicativedecrease (AIMD) achieve high utilization, they also
cause large oscillations in transmission rates that degrade the smooth-
ness and perceptual quality of the video stream. We focus on un-
derstanding the interactions of a family of congestion control al-
gorithms that generalize AIMD, with buffer-based quality adapta-
tion algorithms for hierarchically-encoded and simulcast video. Our
work builds on and extends the results of Rejaie et al. [19]; we nd
that the combination of a non-AIMD algorithm that has smaller os-
cillations than AIMD and a suitable receiver buffer allocation and
management strategy provides a good combination of low playout
delay and TCP-friendly congestion control. The paper describes
these mechanisms and the results of experiments conducted using
a prototype video server for MPEG-4 video, showing that our ap-
proach can improve the interactivity and adaptivity of Internet video.
1 Introduction
Streaming video and audio are an increasingly important component
of the Internet. Unlike traditional broadcast media like television or
cable, Internet conditions change with time, often rapidly. As many
others do, we believe that a framework for streaming media over the
Internet that is adaptive to varying network conditions is preferable
to one that is not. This is important because it is widely believed
that the stability of the modern Internet is in large part due to the
cooperative behavior of the end hosts implementing the window in-
crease/decrease algorithms described in [1, 11].
Unlike bulk le transfers, however, streaming video seeks to
achieve smooth playback quality, rather than simply transmit at
the highest attainable bandwidth. This therefore calls for suit-
able mechanisms to smooth the playback rate, which would oth-
erwise end up oscillating when a stream is sent over a traditional
additive-increase/multiplicative-decrease (AIMD) algorithm as in
TCP [9, 18]. The process of probing for bandwidth and reacting
to observed congestion induces oscillations in the achievable trans-
mission rate, and is an integral part of the nature of many end-to-end
congestion management algorithms.
In addition to performing congestion control that interacts well
with other o ws on the Internet, a streaming media server should
adapt the quality of its transmission based on the available band-
width. That is, a video server should scale the quality of transmis-
sion depending on prevailing network conditions. This mechanism
is known as quality adaptation and can be performed in a number of
ways. One option, called simulcast, encodes the bitstream at various
target bitrates and switches between the previously encoded layers
as the available bandwidth changes. An alternative quality adapta-
tion scheme uses hierarchical encoding [12, 13, 25], where the video
stream is encoded at a base layer and one or more enhancement lay-
ers, which can be combined to render the stream at higher quality.
As the available bandwidth varies, the number of enhancement lay-
ers is adjusted by the server.
Rate oscillations degrade the quality of received video because
they require more buffering to sustain a smooth playout and often re-
sult in variable quality, which is visually unappealing to the receiver.
Overcoming the oscillatory nature of AIMD congestion control to
smoothen bitstream can be done in two ways:
Alternatives to AIMD congestion control [5, 9, 20].
Use a combination of quality adaptation and receiver buffer-
ing [18].
The video server can transmit data according to a congestion
control algorithm that results in oscillations of a smaller magnitude
than AIMD, such as equation-based congestion control [9], TEAR
(TCP Emulation at Receivers) [20], or binomial congestion con-
trol [5].
Alternatively, quality adaptation and buffering at the receiver
can be used to smooth short-term oscillations caused by AIMD, as
described by Rejaie et al [17]. Receiver buffering not only reduces
jitter, but if enough data are buffered, also enables the receiver to
sustain momentary drops in the sending rate by playing out of its
buffer at a higher rate than the server is currently sending. This
buffer accumulates when the sender is transmitting faster than the
receiver is playing out, by not aggressively adding layers whenever
any spare bandwidth becomes available. Rejaie et al. observe that
receiver buffering in conjunction with quality adaptation can reduce
the effect of oscillations that result from AIMD.
This paper builds on and extends the results of Rejaie et al. in
three key directions:
1. We propose mechanisms for smoother playout of layers with
a class of non-AIMD congestion control algorithms.
2. We present rules for quality adaptation for simulcast, hierar-
chical encoding, and an optimistic immediate adaptation algo-
rithm.
3. We provide a mechanism for performing quality adaptation in
combination with non-AIMD congestion control algorithms.
To our knowledge, this is the rst exploration of receiver buffer-
ing for quality adaptation with non-AIMD congestion control and
non-hierarchical layering using simulcast. In particular, alternate
and Congestion Control for Streaming Video
Nick Feamster, Deepak Bansal, and Hari Balakrishnan
MIT Laboratory for Computer Science
feamster, bansal, hari @lcs.mit.edu
http://nms.lcs.mit.edu/projects/videocm/
Abstract
This paper uses analysis and experiments to study the impact of var-
ious congestion control algorithms and receiver buffering strategies
on the performance of streaming media delivery. While traditional
congestion avoidance schemes such as TCP’s additive-increase/-
multiplicativedecrease (AIMD) achieve high utilization, they also
cause large oscillations in transmission rates that degrade the smooth-
ness and perceptual quality of the video stream. We focus on un-
derstanding the interactions of a family of congestion control al-
gorithms that generalize AIMD, with buffer-based quality adapta-
tion algorithms for hierarchically-encoded and simulcast video. Our
work builds on and extends the results of Rejaie et al. [19]; we nd
that the combination of a non-AIMD algorithm that has smaller os-
cillations than AIMD and a suitable receiver buffer allocation and
management strategy provides a good combination of low playout
delay and TCP-friendly congestion control. The paper describes
these mechanisms and the results of experiments conducted using
a prototype video server for MPEG-4 video, showing that our ap-
proach can improve the interactivity and adaptivity of Internet video.
1 Introduction
Streaming video and audio are an increasingly important component
of the Internet. Unlike traditional broadcast media like television or
cable, Internet conditions change with time, often rapidly. As many
others do, we believe that a framework for streaming media over the
Internet that is adaptive to varying network conditions is preferable
to one that is not. This is important because it is widely believed
that the stability of the modern Internet is in large part due to the
cooperative behavior of the end hosts implementing the window in-
crease/decrease algorithms described in [1, 11].
Unlike bulk le transfers, however, streaming video seeks to
achieve smooth playback quality, rather than simply transmit at
the highest attainable bandwidth. This therefore calls for suit-
able mechanisms to smooth the playback rate, which would oth-
erwise end up oscillating when a stream is sent over a traditional
additive-increase/multiplicative-decrease (AIMD) algorithm as in
TCP [9, 18]. The process of probing for bandwidth and reacting
to observed congestion induces oscillations in the achievable trans-
mission rate, and is an integral part of the nature of many end-to-end
congestion management algorithms.
In addition to performing congestion control that interacts well
with other o ws on the Internet, a streaming media server should
adapt the quality of its transmission based on the available band-
width. That is, a video server should scale the quality of transmis-
sion depending on prevailing network conditions. This mechanism
is known as quality adaptation and can be performed in a number of
ways. One option, called simulcast, encodes the bitstream at various
target bitrates and switches between the previously encoded layers
as the available bandwidth changes. An alternative quality adapta-
tion scheme uses hierarchical encoding [12, 13, 25], where the video
stream is encoded at a base layer and one or more enhancement lay-
ers, which can be combined to render the stream at higher quality.
As the available bandwidth varies, the number of enhancement lay-
ers is adjusted by the server.
Rate oscillations degrade the quality of received video because
they require more buffering to sustain a smooth playout and often re-
sult in variable quality, which is visually unappealing to the receiver.
Overcoming the oscillatory nature of AIMD congestion control to
smoothen bitstream can be done in two ways:
Alternatives to AIMD congestion control [5, 9, 20].
Use a combination of quality adaptation and receiver buffer-
ing [18].
The video server can transmit data according to a congestion
control algorithm that results in oscillations of a smaller magnitude
than AIMD, such as equation-based congestion control [9], TEAR
(TCP Emulation at Receivers) [20], or binomial congestion con-
trol [5].
Alternatively, quality adaptation and buffering at the receiver
can be used to smooth short-term oscillations caused by AIMD, as
described by Rejaie et al [17]. Receiver buffering not only reduces
jitter, but if enough data are buffered, also enables the receiver to
sustain momentary drops in the sending rate by playing out of its
buffer at a higher rate than the server is currently sending. This
buffer accumulates when the sender is transmitting faster than the
receiver is playing out, by not aggressively adding layers whenever
any spare bandwidth becomes available. Rejaie et al. observe that
receiver buffering in conjunction with quality adaptation can reduce
the effect of oscillations that result from AIMD.
This paper builds on and extends the results of Rejaie et al. in
three key directions:
1. We propose mechanisms for smoother playout of layers with
a class of non-AIMD congestion control algorithms.
2. We present rules for quality adaptation for simulcast, hierar-
chical encoding, and an optimistic immediate adaptation algo-
rithm.
3. We provide a mechanism for performing quality adaptation in
combination with non-AIMD congestion control algorithms.
To our knowledge, this is the rst exploration of receiver buffer-
ing for quality adaptation with non-AIMD congestion control and
non-hierarchical layering using simulcast. In particular, alternate
Page 2
congestion control schemes such as binomial congestion control can
reduce oscillations in the layers, and when used in conjunction with
receiver buffering, yield further bene t in terms of interactivity.
Using binomial congestion control in conjunction with buffered
quality adaptation for hierarchical encoding results in less required
buffering to sustain a loss at any given layer than does AIMD. This
smaller amount of required buffering results in a higher level of in-
teractivity, due to the reduced delay before playout can happen. Fur-
thermore, the use of binomial congestion control with quality adap-
tation results in a faster convergence to transmission of the correct
number of layers, thus providing higher perceptual quality at the re-
ceiver.
Based on our new quality adaptation rules, we have conducted
experiments over a network that emulates the conditions a stream-
ing video server might face on the Internet. Our experiments are
conducted using a prototype MPEG-4 server we have designed and
implemented, using RTP for delivery, RTCP for feedback, and the
Congestion Manager [3, 4] for congestion control. We investigate
the effects of various quality adaptation mechanisms and conges-
tion control algorithms. We nd that binomial congestion control
can provide bene ts over AIMD, regardless of the quality adaptation
mechanism used by reducing the amount of oscillation in the video
server’s sending rate. In addition, we nd that binomial conges-
tion control can provide signi cant bene ts when used with buffered
quality adaptation of hierarchically encoded video by reducing the
amount of required buffering at the receiver in order to play out at
any given layer.
The rest of the paper is organized as follows: in Section 2, we
survey related work; in Section 3, we discuss the algorithms used
and present the quality adaptation rules for binomial controls; in
Section 4, we present our system architecture, implementation, and
the results of our experiments.
2 Related Work
In recent years, much attention has focused on developing conges-
tion control algorithms for streaming media applications. Early pro-
posals for multimedia congestion control [10, 16, 18, 23, 23, 24]
were essentially variants of TCP without the in-order, reliable de-
livery of data, semantics associated with TCP. More recently, pro-
posals like TFRC [9], TEAR [20], and binomial controls [5] have
focused on reducing large oscillations associated with TCP’s con-
gestion control. In TFRC, the sender explicitly adjusts its sending
rate as a function of the measured rate of loss events based on the
TCP-friendly equation developed in [15]. In the TEAR protocol, the
receiver emulates the congestion window evolution of a TCP sender.
The receiver maintains an exponentially weighted moving average
of the congestion window, and divides this by the estimated round
trip time to obtain a TCP-friendly sending rate. Binomial controls
proposed in [5] generalize TCP’s increase/decrease rules to derive a
family of TCP-friendly congestion control algorithms with a vary-
ing degree of oscillation. We discuss binomial congestion controls
in more detail in Section 3.
Rejaie et al. propose a quality adaptation scheme using re-
ceiver buffering for AIMD-controlled transmission and playback of
hierarchically-encoded video [17, 19]. Long-term coarse-grained
adaptation is performed by adding and dropping layers of the video
stream, while using AIMD to react to congestion. Receiver buffer-
ing alleviates the short-term variations in the sending rate caused by
the oscillatory nature of AIMD. A new layer will be added only if,
at any point, the total amount of buffering at the receiver is suf -
cient to survive an immediate backoff and continue playing all of
the existing layers plus the new layer, and the instantaneous avail-
dw/dt = α / (wK RTT) for SQRT
t
w(t)
AIMD
SQRT
0
Figure 1. Window evolution vs time for SQRT and AIMD conges-
tion controls.
is the window value at time t.
able bandwidth is greater than the consumption rate of the existing
layers, plus the new layer. When the total amount of buffering falls
below the amount required for a drop from a particular rate, then
the highest layer is dropped. Additionally, buffer space is allocated
between layers so as to place a greater importance on lower layers,
thereby protecting these layers upon a reduction in the transmission
rate. The conditions for the addition and deletion of layers and inter-
layer buffer allocation for AIMD and hierarchical encoding are de-
scribed in [19].
3 Algorithms
This section describes the algorithms for congestion control and
quality adaptation used in our work.
3.1 Binomial congestion controls
Binomial congestion controls generalize TCP’s increase/decrease
rules using the following equations:
I:
ff
flfi ffi!
D:
"
fl#
$ &%(' *)
fi
,+
'
+.- (1)
/
and 0 are the parameters of binomial controls and is the in-
stantaneous window value, which governs the transmission rate. For
/21
4350 1 - , we get AIMD used by TCP; for /61
%
-73
0 1 - , we
get MIMD (multiplicative increase/multiplicative decrease used by
slow start in TCP [11]); for
/21
%
-8390 1 , we get MIAD; and for
/:1
;390 1 we get AIAD, thereby covering the class of all linear
algorithms.
In previous work [5], we showed that a binomial congestion con-
trol satisfying the
/
390" rule , i.e. / <0 1 - , is TCP-friendly. Further,
one member of this family, SQRT ( /=1 0 1 4> ? ) appears attractive
for streaming media delivery due to its smaller magnitude of oscilla-
tions. In SQRT, the reduction in transmission rate is proportional to
@
, whereas in AIMD the reduction is proportional to . However,
the potential bene ts of such an algorithm and its impact on quality
adaptation algorithms have not been studied, nor has its interaction
with layered media delivery. Figure 1 shows the nonlinear evolution
of the congestion window for the SQRT control algorithm.
reduce oscillations in the layers, and when used in conjunction with
receiver buffering, yield further bene t in terms of interactivity.
Using binomial congestion control in conjunction with buffered
quality adaptation for hierarchical encoding results in less required
buffering to sustain a loss at any given layer than does AIMD. This
smaller amount of required buffering results in a higher level of in-
teractivity, due to the reduced delay before playout can happen. Fur-
thermore, the use of binomial congestion control with quality adap-
tation results in a faster convergence to transmission of the correct
number of layers, thus providing higher perceptual quality at the re-
ceiver.
Based on our new quality adaptation rules, we have conducted
experiments over a network that emulates the conditions a stream-
ing video server might face on the Internet. Our experiments are
conducted using a prototype MPEG-4 server we have designed and
implemented, using RTP for delivery, RTCP for feedback, and the
Congestion Manager [3, 4] for congestion control. We investigate
the effects of various quality adaptation mechanisms and conges-
tion control algorithms. We nd that binomial congestion control
can provide bene ts over AIMD, regardless of the quality adaptation
mechanism used by reducing the amount of oscillation in the video
server’s sending rate. In addition, we nd that binomial conges-
tion control can provide signi cant bene ts when used with buffered
quality adaptation of hierarchically encoded video by reducing the
amount of required buffering at the receiver in order to play out at
any given layer.
The rest of the paper is organized as follows: in Section 2, we
survey related work; in Section 3, we discuss the algorithms used
and present the quality adaptation rules for binomial controls; in
Section 4, we present our system architecture, implementation, and
the results of our experiments.
2 Related Work
In recent years, much attention has focused on developing conges-
tion control algorithms for streaming media applications. Early pro-
posals for multimedia congestion control [10, 16, 18, 23, 23, 24]
were essentially variants of TCP without the in-order, reliable de-
livery of data, semantics associated with TCP. More recently, pro-
posals like TFRC [9], TEAR [20], and binomial controls [5] have
focused on reducing large oscillations associated with TCP’s con-
gestion control. In TFRC, the sender explicitly adjusts its sending
rate as a function of the measured rate of loss events based on the
TCP-friendly equation developed in [15]. In the TEAR protocol, the
receiver emulates the congestion window evolution of a TCP sender.
The receiver maintains an exponentially weighted moving average
of the congestion window, and divides this by the estimated round
trip time to obtain a TCP-friendly sending rate. Binomial controls
proposed in [5] generalize TCP’s increase/decrease rules to derive a
family of TCP-friendly congestion control algorithms with a vary-
ing degree of oscillation. We discuss binomial congestion controls
in more detail in Section 3.
Rejaie et al. propose a quality adaptation scheme using re-
ceiver buffering for AIMD-controlled transmission and playback of
hierarchically-encoded video [17, 19]. Long-term coarse-grained
adaptation is performed by adding and dropping layers of the video
stream, while using AIMD to react to congestion. Receiver buffer-
ing alleviates the short-term variations in the sending rate caused by
the oscillatory nature of AIMD. A new layer will be added only if,
at any point, the total amount of buffering at the receiver is suf -
cient to survive an immediate backoff and continue playing all of
the existing layers plus the new layer, and the instantaneous avail-
dw/dt = α / (wK RTT) for SQRT
t
w(t)
AIMD
SQRT
0
Figure 1. Window evolution vs time for SQRT and AIMD conges-
tion controls.
is the window value at time t.
able bandwidth is greater than the consumption rate of the existing
layers, plus the new layer. When the total amount of buffering falls
below the amount required for a drop from a particular rate, then
the highest layer is dropped. Additionally, buffer space is allocated
between layers so as to place a greater importance on lower layers,
thereby protecting these layers upon a reduction in the transmission
rate. The conditions for the addition and deletion of layers and inter-
layer buffer allocation for AIMD and hierarchical encoding are de-
scribed in [19].
3 Algorithms
This section describes the algorithms for congestion control and
quality adaptation used in our work.
3.1 Binomial congestion controls
Binomial congestion controls generalize TCP’s increase/decrease
rules using the following equations:
I:
ff
flfi ffi!
D:
"
fl#
$ &%(' *)
fi
,+
'
+.- (1)
/
and 0 are the parameters of binomial controls and is the in-
stantaneous window value, which governs the transmission rate. For
/21
4350 1 - , we get AIMD used by TCP; for /61
%
-73
0 1 - , we
get MIMD (multiplicative increase/multiplicative decrease used by
slow start in TCP [11]); for
/21
%
-8390 1 , we get MIAD; and for
/:1
;390 1 we get AIAD, thereby covering the class of all linear
algorithms.
In previous work [5], we showed that a binomial congestion con-
trol satisfying the
/
390" rule , i.e. / <0 1 - , is TCP-friendly. Further,
one member of this family, SQRT ( /=1 0 1 4> ? ) appears attractive
for streaming media delivery due to its smaller magnitude of oscilla-
tions. In SQRT, the reduction in transmission rate is proportional to
@
, whereas in AIMD the reduction is proportional to . However,
the potential bene ts of such an algorithm and its impact on quality
adaptation algorithms have not been studied, nor has its interaction
with layered media delivery. Figure 1 shows the nonlinear evolution
of the congestion window for the SQRT control algorithm.
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime
Start using Mendeley in seconds!
Readership Statistics
2 Readers on Mendeley
by Discipline
by Academic Status
50% Associate Professor
50% Assistant Professor
by Country
50% Japan
50% United States



