On Sat, May 9, 2015 at 10:20 AM, Bob Briscoe <bob.bris...@bt.com> wrote:
> Dave,
>
> As promised, here's my thoughts on what PIE (and CoDel) should do when ECN
> is enabled.
>
>
> There's also new info in here that I think is important: CoDel uses an RTT
> estimate in two different places. One has to be the max expected RTT, the
> other should be the (harmonic) mean of expected RTTs.

I like the harmonic idea a lot, it ties in with some of my packet pair
thinking on wifi aggregation.

> The former might be 100ms, but the latter is more likely to be 15-20ms,
> given most traffic in the developed world these days comes from CDNs. This
> could make significant difference to performance.
>
>
> Bob
>
> Date: Tue, 14 Apr 2015 19:59:47 +0100
> To: "Fred Baker (fred)" <f...@cisco.com>
> From: Bob Briscoe <bob.bris...@bt.com>
> Subject: ECN AQM parameters (was: AQM Recommendation: last minute change?)
> Cc: Gorry Fairhurst <go...@erg.abdn.ac.uk>, Richard Scheffenegger
> <r...@netapp.com>, "Eddy Wesley M. [VZ]" <wesley.m.e...@nasa.gov>,
> "aqm-...@ietf.org" <aqm-...@ietf.org>
>
> Fred,
>
> At 22:27 13/04/2015, Fred Baker (fred) wrote:
>
>
> I think w have a pregnant statement in this case. What parameters do you
> have in mind?
>
>
> The point was simply to ensure that implementers provide sufficient
> flexibility so that /any or all/ of the AQM parameters for ECN traffic could
> be separate instances from those for drop. But they would still apply to the
> same queue, much like the different RED curves for different traffic classes
> in the WRED algo.
>
>
> With RED, the parameters available to change are min-threshold,
> max-threshold, the limit mark/drop rate, and (IIRC) the minimum
> inter-mark/drop interval.
>
>
> ...and, importantly, the EMWA constant, which is the main parameter I would
> change for ECN (for ECN set ewma-const = 0, assuming the Cisco definition of
> ewma-const as
>    EWMA weight = 2^{ema-const}
> So for ECN, EWMA weight = 2^0 = 1).
>
> See also {Note 1} about inter-mark/drop interval.
>
> With PIE, the equation is
>      p = p + alpha*(est_del-target_del) + beta*(est_del-est_del_old).
> meaning that we can meaningfully tune alpha, beta, and target_del, and there
> is an additional 'max_burst' parameter.
>
>
> Yes.
> Strictly, the min data in the queue before PIE measures the rate
> ('dq_threshold') is a parameter as well.
>
> With Codel, if I understand section 4, the only parameters are the "a
> round-trip time metric" (100 ms by default) and the Setpoint, which they set
> to 5 ms based on it being 5-10% of the RTT.
>
> If it's not the target delay, which is essentially what Codel's setpoint is,
> I'm not sure what parameter you want to change.
>
>
> There are actually two more hidden parameters in CoDel's control law, which
> is written in the pseudocode as :
>    t + interval / sqrt(count)
> but ought to have been written as:
>    t + rtt_ave / (count)^b
>
> These parameters have been hard-coded as
>    rtt_ave = interval
> and
>    b=1/2.
>
> 'rtt_ave' in the control law is better set to a likely /average/ RTT,
> whereas the interval used to determine whether to enter dropping mode is
> better set to a likely /maximum/ RTT.
>
> To implement an ECN variant of CoDel I would set
>    interval = 0 (or very close to zero)
> and I would leave 'rtt_ave' (in the control law) as an average RTT,
> decoupled from 'interval'.
>
> However, the CoDel control law was designed assuming it will remove packets
> from the queue, so I'm not convinced that any naive approach for
> implementing ECN will work. I suspect a CoDel-ECN doesn't just need
> different parameters, it needs a different algo.
>
> I have no interest in solving this problem, because I wouldn't start from
> CoDel in the first place - I would never design an AQM that switches between
> discrete modes, and CoDel's control law assumes that the e2e congestion
> control is NewReno which contravenes our AQM recommendations anyway.
>
>
> In saying 'in this case you might want to mess with the parameters', I'm not
> sure what parameters are under discussion, and in any event we're talking
> about the document that says 'we should have an algorithm', not the
> discussion of any of them in particular.
>
> To my mind, this begs for a new draft on your part.
>
>
> Certainly. We're still doing the research and evaluation tho (see
> www.ietf.org/proceedings/92/slides/slides-92-iccrg-5.pdf - I don't remember
> whether you were in the room for that). But, yes, we will write it up.
>
> So far it's not based on RED, PIE or CoDel, but a new drop-based AQM that is
> most similar to RED but with only 2 parameters (not 4). This is because we
> needed the drop probability to be the square of the marking probability. So
> it made the implementation really simple to use a square curve through the
> origin for drop. It doesn't need min_thresh, because the square curve
> near-enough runs along the axis when it is close to the origin. For the
> square curve we used a probability trick - we merely had to compare the
> queue delay with the max of two random numbers. RED (especially gentle RED)
> can be thought of as a piecewise linear approximation of a square curve.
>
> We're evaluating this as a drop AQM in its own right. The neat thing about a
> square curve (or any convex curve) is that the increase in delay wrt load
> reduces as load increases.
>
> I've worked out how to do a similar squaring trick with PIE, but it's not a
> straightforward forklift of the same idea, so it needs to be tested.
>
> It would be really hard/impossible to fork-lift the idea into CoDel, because
> it switches modes. As above, I have no interest in building on CoDel anyway.
>
> Cheers
>
>
> Bob
>
> {Note 1}: The whole min inter-mark/drop interval aspect of RED is just a
> waste of cycles. Any attempt to alter the distribution of inter-mark/drop
> spacing in an aggregate just collapses into a geometric distribution again
> for each flow. For proof see "Are RED Markings Uniformly Distributed?" in my
> PhD dissertation < http://www.bobbriscoe.net/pubs.html#refb-dis>.
>
>
>
>> On Apr 13, 2015, at 11:23 PM, Bob Briscoe <bob.bris...@bt.com> wrote:
>>
>> Gorry, Fred, Richard, Wes,
>>
>> [Off list, because I don't want to distract people's attention if you
>> don't want to make this change]
>>
>> While replying to David Lang just now, I checked with the AQM
>> recommendation says, and the para below raised a concern:
>>
>> <
>> https://tools.ietf.org/html/draft-ietf-aqm-recommendation-04#section-4.2.1 >
>> "  An AQM algorithm that supports ECN needs to define the threshold and
>>   algorithm for ECN-marking.  This threshold MAY differ from that used
>>   for dropping packets that are not marked as ECN-capable, and SHOULD
>>   be configurable.
>> "
>> The work Koen has done since this was written has satisfied me that the
>> threshold has to be the same (to prevent starvation), but other parameters
>> can be different, and ought to be. So in the second sentence I think we
>> should say:
>>
>> CURRENT:    "This threshold MAY differ from that used for dropping..."
>> PROPOSED:   "The parameters MAY differ from those used for dropping..."
>>
>> Parameters widens it to burst size, slope, etc.
>>
>> If it is too late for any changes, fair enough.
>> If this minor change can still be accommodated, then pls do whatever
>> process is necessary to make the change.
>>
>> Cheers
>>
>>
>> Bob
>>
>>
>> ________________________________________________________________
>> Bob Briscoe,                                                  BT
>
> ________________________________________________________________
> Bob Briscoe,                                                  BT
>
> ________________________________________________________________
> Bob Briscoe,                                                  BT



-- 
Dave Täht
Open Networking needs **Open Source Hardware**

https://plus.google.com/u/0/+EricRaymond/posts/JqxCe2pFr67

_______________________________________________
aqm mailing list
aqm@ietf.org
https://www.ietf.org/mailman/listinfo/aqm

Reply via email to