[R-C] LEDBAT - introductions?
Michael Welzl
michawe at ifi.uio.no
Fri Apr 6 09:47:59 CEST 2012
On Apr 6, 2012, at 1:45 AM, Matt Mathis wrote:
> There is one especially useful design point to extract here.....
>
> I believe that by default ledbat has a 50mS set point. That is, it
> regulates its rate/window size by sensing if the one way queue time
> seems to be above or below 50mS.
>
> Would this be acceptable for RTCweb, or would it be necessary to
> choose some other set point?
Good question; I guess you don't want to have a set point at all and
back off as soon as delay increases? - but that may be hard when
trying to get some bandwidth in competition with standard TCP;
actually, how much bandwidth you would get with any such fixed point
(yes, including the value 0 !) would depend on the queue length at the
bottleneck, which is not under your control. e.g., if the queue >=
BDP, it becomes an unavoidable trade-off between acceptable delay and
achievable bandwidth. Then, maybe the right thing would really be to
make that a knob for the user?
Of course, if you assume that your traffic is somehow isolated, as you
wrote in previously posted text, you don't need to worry about that;
and your assumption, as you also wrote in a recent email, is basically
that users would then stop running any other traffic. That would
however mean that we might end up developing a very-low-delay system
that simply cannot work when anything else is going on. As a user, I'd
rather have a knob for that (and I'm not into user interfaces with
bells and whistles, mind you :-) but that can be one simple, yet
important knob).
>
> (BTW, Ledbat makes no claims about fairness, etc., just that it can
> consume most of an otherwise under-filled network.)
In my post answering Harald's query, I mentioned this link, where
there's a number of papers analyzing LEDBAT:
http://perso.telecom-paristech.fr/~drossi/index.php?n=Software.LEDBAT
in particular, this one identifies the "latecomer unfairness" problem
exhibited by LEDBAT:
http://perso.telecom-paristech.fr/~drossi/paper/rossi10globecom-a.pdf
I'm not sure if this has then been fixed in the standard, but in my
review of draft-alvestrand-rtcweb-congestion:
http://www.alvestrand.no/pipermail/rtp-congestion/2012-March/000176.html
I mentioned that I'd be concerned about problems like that. To quote
the first paragraph of that review:
***
Today, this has been called a "strawman proposal". I agree with this
way of looking at it. There are some quite interesting ideas there;
however, a lot seems to appear "out of the blue", leaving the reader
puzzled about the rationale behind some design choices. I wonder if
these design choices are based on some academic papers out there -
could citations help? Anyway, instead of trying to discuss the
algorithm "in the air", it would be better to first work with some
data: how does the mechanism really work in a real-life system? How
does it interact with TCP? How sensitive is this mechanism to the
typical issues raised for delay-based controls (the latecomer
unfairness problem, behavior with very small queues, ..)? How likely
is it for the derived rate of the mechanism to fall below the TFRC-
function limit, under what conditions will this happen?
***
=> my point is not that LEDBAT solves all these problems - I don't
know if it does, anyway it would have to be tuned for RTCWEB because
it is designed to be *less aggressive* than standard TCP. My point was
that we should consider such existing mechanisms as a basis for delay-
sensitive schemes rather than conjuring up a totally new and entirely
different scheme out of the blue. Note that I only mentioned LEDBAT
because that one is undergoing IETF standardization and should
therefore have some acceptance here ... this is by no means the only
delay-sensitive congestion control, the literature is full of them
(Vegas, FAST, CTCP, TCP Illinois and (a variant of) H-TCP, to name but
a few).
One thing that makes the RTCWEB use different is the non-greedy use
that you have described in your text - but really I don't think that
this requires building a whole new mechanism, it may just need a
departure from the conservative approach that was taken with TCP under
these circumstances. So this is a "let's not be so conservative here"
design decision, which could probably be applied as a way of adapting
an existing controller.
Cheers,
Michael
More information about the Rtp-congestion
mailing list