Network Setup: We use the Helix server version
9.0.2 [2] as our streaming media server and use
Mplayer [5] as the streaming media client. All streaming
media requests are issued using the Real Time Streaming Protocol
(RTSP) to stream packets using UDP. We built a client proxy and a
server proxy to interpret the streaming media packets and associate
them with different priorities.
Using these proxies, we tunnel a media stream from RealServer to an
Mplayer client along an overlay path along which we replay sample
bursty loss traces collected along different overlay links. For the
purpose of illustration, we consider two such loss traces: (a) Mazu
(Boston)-Korea with an average loss rate of ; (b) Intel (San
Francisco) - Lulea (Sweden) with an average loss trace of
. Each
trace is
minutes long. To emulate the behavior without OverQoS,
we consider the OverQoS nodes to act as packet forwarders. If the
length of a media stream is shorter than the length of the trace, we
repeat the analysis for different portions of the trace.
Streaming Audio: To demonstrate the effect of smooth dropping on
streaming audio, we concatenated several
speech samples provided by International Telecommunication
Union (ITU-T) to produce two test samples of length sec and
sec respectively. Perceptual Evaluation of Speech
Quality(PESQ) [3] is one metric to evaluate the quality of
voice. We measured the PESQ score for the received stream in
comparison to the original stream. A PESQ score of
is considered
to be ideal implying that the received audio stream has not degraded
in quality.1
Table 2 compares the PESQ scores of streaming audio with
and without OverQoS for two benchmark speech samples. We observe that
smoothing the losses does help in increasing the quality of the audio
stream. Using OverQoS we are able to increase the PESQ score of the
output stream by roughly . To demonstrate that
is indeed a reasonable improvement in the audio quality, we
experimented with several artificial bursty loss patterns while
maintaining the same average loss-rate of the traces (i.e.,
and
) and measured the PESQ scores for each of them. For an average
loss rate of
, we found the PESQ scores to vary between
and
across a variety of bursty loss patterns. For these cases, we
again found that smooth dropping performs better than bursty
drops. Hence, we find that smoothing losses using OverQoS uniformly
outperforms different types of bursty network losses.
MPEG streaming: Peak Signal-to-Noise ratio (PSNR) is a standard
metric used to measure the quality of the video images in a
stream. Given an MPEG stream received at the client, we use the
``-yuv4mpeg'' utility in Mplayer to convert the stream into a stream
of images. For every image, we compute the PSNR value of the received
image in comparison to the video image in the original MPEG stream. We
quantify the quality of the received MPEG stream using a distribution
of PSNR values for the individual images. We consider a sample MPEG-1
stream which is seconds for this analysis.
Table 3 compares the and median values of the PSNR
values of the received MPEG stream with and without OverQoS across
both the loss samples. We make the following observations. First, in
the case when an entire I-frame was lost due to a burst, Mplayer
stopped playing the video stream since an entire GOP cannot be
reconstructed. This occurred in both the loss traces when a burst
coincided with the packets of an I-frame. However, OverQoS was able to
recover from the burst so that the stream could progress. Second,
OverQoS is able to improve both the
and the median PSNR values
of the stream by preferentially dropping B and P packets in a burst
when compared to the quality of the stream without OverQoS. We
illustrate the
PSNR value mainly to show that OverQoS not only
improves the quality of the stream in the average case but also the
minimum quality of a stream. To summarize, OverQoS can improve the
quality of a media stream without consuming any additional network
resources.