Subject: Re: [aqm] [tsvwg] how much of a problem is buffer bloat today?

From: Greg White <[email-masked]>
Date: Thu, 21 Mar 2013 16:59:03 +0000

....cross posting to aqm.

On 3/21/13 10:06 AM, "Graham Beneke" <[email-masked]> wrote:

>On 13/03/2013 19:32, Mikael Abrahamsson wrote:
>> On Wed, 13 Mar 2013, Greg White wrote:
>> 
>>> Some may consider 100ms a big number.
>
>I've heard the 100ms figure thrown about quite a bit. In the VoIP world
>its considered to be the pain threshold for a reasonable call experience
>and for "general Internet" (aka http browsing) it doesn't normally
>impact the user experience notably.

Web browsing *is* sensitive to RTT (though maybe less so than VoIP or
gaming).  Page load time increases linearly with RTT (at approximately
10x-20x).  So adding 100ms of *unnecessary* buffering latency adds ~1-2
seconds of *unnecessary* delay to page loads.

---

From: Jim Gettys <[email-masked]>
Date: Thu, 21 Mar 2013 13:20:20 -0400

> seconds of *unnecessary* delay to page loads.

This is one very visible result; but far from the most important, as we
work on trying to make applications like WebRTC viable.

One way I think about latency is that it sets the "diameter" in which
particular applications are viable, as well as causing performance problems
in general.  These are set by human factors and the speed of our neurology.

Variance of latency is just about as bad as the latency itself; you have to
add that to jitter buffers and it increases the latency the system can be
used at.

And you have to think of latency in terms of a budget: it takes of order
75ms to get across the United States by a good unloaded Internet connection
(the same as it did in the 1990's; Einstein + the index of refraction of
glass  makes this hard to change).  So you really have much, much, less
than 100ms you can afford to burn in the edge of the network even by this
metric.

For example, human perception to make interactive "rubber
banding" imperceptible is in the 20-30ms range.  As the latency budget
includes screen refresh time, this one is doable, but you have to work
hard, as we did with the X Window System in the 1980's.  I find it
personally very sad that while X11 used to be usable between continents,
it's not typically usable today (though mistakes we made in the X11
protocol made this worse than it should have been).

If you want to play music with a friend, professional musicians might
tolerate up to 100ms total; but duffers can't tolerate even half of that
latency well.  So if you want to play music in Boston with a friend in NYC,
you've lost 20ms before you spend time in any queuing.

Gamers (and day traders) care about latency down to the single millisecond
range as it changes the *probability* of bad outcomes.

So unpredictable 100ms latency not only hurt web performance in easily
measurable ways as Greg and I have shown, but, more insidiously,  kill a
large set of applications, or reduces the geographic network "diameter"
over which they are practical.

Courtesy of the speed of light, therefore, any unnecessary latency *and*
jitter hurts what the Internet can be used for.
                                                  - Jim