Re: [AVTCORE] Mirja Kühlewind's Discuss on draft-ietf-avtcore-rtp-circuit-breakers-15: (with DISCUSS and COMMENT)

Colin Perkins <csp@csperkins.org> Tue, 10 May 2016 21:10 UTC

Return-Path: <csp@csperkins.org>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 252E412D154; Tue, 10 May 2016 14:10:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NlA8OHKDOYQk; Tue, 10 May 2016 14:10:19 -0700 (PDT)
Received: from haggis.mythic-beasts.com (haggis.mythic-beasts.com [IPv6:2a00:1098:0:86:1000:0:2:1]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4C67212B020; Tue, 10 May 2016 14:10:19 -0700 (PDT)
Received: from [81.187.2.149] (port=48994 helo=[192.168.0.91]) by haggis.mythic-beasts.com with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.80) (envelope-from <csp@csperkins.org>) id 1b0Ev0-000515-ER; Tue, 10 May 2016 22:10:15 +0100
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
From: Colin Perkins <csp@csperkins.org>
In-Reply-To: <30E6734A-0595-404E-8823-F27603B6CFC1@kuehlewind.net>
Date: Tue, 10 May 2016 22:10:11 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <F3648EEF-5BBD-4F2F-BE9E-552D27EE3C2F@csperkins.org>
References: <20160503120321.7534.26562.idtracker@ietfa.amsl.com> <32C2F93E-9CB9-4645-9C42-320AA8B24ED5@csperkins.org> <2EC09917-2E05-407D-AA7F-38C73B179C4B@kuehlewind.net> <219AC00D-9E2E-4AF7-85F0-924EAE5F6164@kuehlewind.net> <BD5D6E34-3C35-4221-86A1-AB3150EBFFE1@csperkins.org> <8D786065-7DCD-43A2-BB69-5D7B1D44546B@kuehlewind.net> <953AB9F5-6220-4C9E-80B6-FE72BF80B648@csperkins.org> <762DC4EA-F5E8-49EB-BFEC-5DFA569B9444@kuehlewind.net> <12182E39-A26B-431F-9CCA-7E602EBFAB7E@csperkins.org> <30E6734A-0595-404E-8823-F27603B6CFC1@kuehlewind.net>
To: "Mirja Kuehlewind (IETF)" <ietf@kuehlewind.net>
X-Mailer: Apple Mail (2.3124)
X-BlackCat-Spam-Score: -28
X-Mythic-Debug: Threshold = On =
Archived-At: <http://mailarchive.ietf.org/arch/msg/avt/IWt21WEBU6eXoHDrLpFA0N-NdLo>
Cc: avtcore-chairs@ietf.org, Magnus Westerlund <magnus.westerlund@ericsson.com>, draft-ietf-avtcore-rtp-circuit-breakers@ietf.org, The IESG <iesg@ietf.org>, avt@ietf.org
Subject: Re: [AVTCORE] =?utf-8?q?Mirja_K=C3=BChlewind=27s_Discuss_on_draft-iet?= =?utf-8?q?f-avtcore-rtp-circuit-breakers-15=3A_=28with_DISCUSS_and_COMMEN?= =?utf-8?q?T=29?=
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Audio/Video Transport Core Maintenance <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/avt>, <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/avt/>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 May 2016 21:10:22 -0000

Mirja,

The ABE work motivates making that change for TCP. The RMCAT work on SCReAM and NADA might also do so for RTP flows, but draft-khademi-alternative-backoff-ecn doesn’t, and it’s not clear that TSVWG has considered the broader issues. Changing this would require an update to RFC 6679, in particular section 7.3.3 which imposes requirements on future changes to the ECN response for RTP flows, as well as RFC 3168.

It’s also not clear how such a change would affect the RTP circuit breaker draft. It says that ECN-CE marked packets “SHOULD BE treated as lost”. That seems like the right default, since this needs to work with proprietary congestion control that treats ECN-CE like loss, and since IETF hasn’t yet published any RTP congestion control algorithms that treat ECN-CE differently. I guess we could say “SHOULD BE treated as lost unless an alternative response is specified in some future Standards Track congestion control algorithm that updates this memo”, but that seems more something that should be specified in that future specification than here.

Colin




> On 10 May 2016, at 18:25, Mirja Kuehlewind (IETF) <ietf@kuehlewind.net> wrote:
> 
> Actually no. It’s an update to RFC3168 which is also about ECN in general over IP. I just remembered that the the change of the following sentence is missing in the draft (but it’s in the slides) - section 5 in RFC3168:
> 
> "Upon the receipt by an ECN-Capable transport of a single CE packet,
>   the congestion control algorithms followed at the end-systems MUST be
>   essentially the same as the congestion control response to a *single*
>   dropped packet.“
> 
> That’s what we want to change.
> 
> Mirja
> 
> 
>> Am 10.05.2016 um 13:04 schrieb Colin Perkins <csp@csperkins.org>rg>:
>> 
>> But that’s TCP specific, and we’re talking about non-TCP flows using ECN. 
>> 
>> Colin
>> 
>> 
>> 
>>> On 10 May 2016, at 18:00, Mirja Kuehlewind (IETF) <ietf@kuehlewind.net> wrote:
>>> 
>>> Sorry for the confusion. Yes currently draft-khademi-alternativebackoff-ecn. And I’m talking only about the second part - section 3. This will go into a separate doc. I also expect that the proposed text will change a lot than what’s currently in there as there was already quite a bit discuss in tsvwg last time.
>>> 
>>> Mirja
>>> 
>>> 
>>>> Am 10.05.2016 um 12:54 schrieb Colin Perkins <csp@csperkins.org>rg>:
>>>> 
>>>> Do you mean draft-khademi-alternativebackoff-ecn?
>>>> 
>>>> The ABE work makes a lot of sense for TCP, but it’s tied to the way TCP congestion control interacts with small buffers, and I don’t recall any evaluation for other congestion control algorithms. Did I miss something? That draft doesn’t reference RFC 6679, or any of the RMCAT algorithms.
>>>> 
>>>> Colin
>>>> 
>>>> 
>>>> 
>>>>> On 10 May 2016, at 17:14, Mirja Kuehlewind (IETF) <ietf@kuehlewind.net> wrote:
>>>>> 
>>>>> Currently, it's the second part of 
>>>>> 
>>>>> https://datatracker.ietf.org/doc/draft-welzl-irtf-iccrg-tcp-in-udp/
>>>>> 
>>>>> However, this was discussed at the last tsvwg meeting:
>>>>> 
>>>>> https://www.ietf.org/proceedings/95/slides/slides-95-tsvwg-13.pdf
>>>>> 
>>>>> Maybe also check the minutes. There was no clear decision for this but I believe the plan is to submit a separate draft for the updating part and then discuss adoption. There was definitely interest in this work!
>>>>> 
>>>>> Mirja
>>>>> 
>>>>> 
>>>>>> Am 10.05.2016 um 11:21 schrieb Colin Perkins <csp@csperkins.org>rg>:
>>>>>> 
>>>>>> Hi Mirja,
>>>>>> 
>>>>>> Which draft? 
>>>>>> 
>>>>>> Colin
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>> On 4 May 2016, at 12:42, Mirja Kuehlewind (IETF) <ietf@kuehlewind.net> wrote:
>>>>>>> 
>>>>>>> Sorry, one clarification: updating 3168 is work in tsvwg (not tcpm).
>>>>>>> 
>>>>>>> 
>>>>>>>> Am 04.05.2016 um 12:52 schrieb Mirja Kuehlewind (IETF) <ietf@kuehlewind.net>et>:
>>>>>>>> 
>>>>>>>> Hi Colin,
>>>>>>>> 
>>>>>>>> see below. 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> Am 04.05.2016 um 12:32 schrieb Colin Perkins <csp@csperkins.org>rg>:
>>>>>>>>> 
>>>>>>>>> Hi,
>>>>>>>>> 
>>>>>>>>>> On 3 May 2016, at 13:03, Mirja Kuehlewind <ietf@kuehlewind.net> wrote:
>>>>>>>>>> 
>>>>>>>>>> Mirja Kühlewind has entered the following ballot position for
>>>>>>>>>> draft-ietf-avtcore-rtp-circuit-breakers-15: Discuss
>>>>>>>>>> 
>>>>>>>>>> When responding, please keep the subject line intact and reply to all
>>>>>>>>>> email addresses included in the To and CC lines. (Feel free to cut this
>>>>>>>>>> introductory paragraph, however.)
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
>>>>>>>>>> for more information about IESG DISCUSS and COMMENT positions.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> The document, along with other ballot positions, can be found here:
>>>>>>>>>> https://datatracker.ietf.org/doc/draft-ietf-avtcore-rtp-circuit-breakers/
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>> DISCUSS:
>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>> 
>>>>>>>>>> This is about one point in section 7 (ECN) that I think is wrong but I
>>>>>>>>>> would like to get some feedback from the authors:
>>>>>>>>>> "then ECN-CE marked packets SHOULD
>>>>>>>>>> be treated as if they were lost when calculating if the congestion-
>>>>>>>>>> based RTP circuit breaker"
>>>>>>>>>> (also section 5: "The count of ECN-CE marked packets
>>>>>>>>>> contained in those ECN feedback reports is counted towards the number
>>>>>>>>>> of lost packets reported")
>>>>>>>>>> 
>>>>>>>>>> We are currently discussion mechanisms where the AQM in the congested
>>>>>>>>>> network node sends  much more CE markings than one would see loss (when
>>>>>>>>>> using TCP) for the same level of congestion. When treating ECN-CE similar
>>>>>>>>>> to loss, such a different behavior could trigger the circuit breaker
>>>>>>>>>> unnecessarily. Potentially ECN-CE might not need to be considered here at
>>>>>>>>>> all, because as long as there are (only) ECN-CE marks (and no loss) all
>>>>>>>>>> data is transmitted correctly to the receiver and therefore there is no
>>>>>>>>>> need to trigger a circuit breaker.
>>>>>>>>> 
>>>>>>>>> This is echoing the language in RFCs 3168 and 6679. My understanding is that both require CE marks to be treated the same as lost packets for congestion control, and the circuit breaker is essentially a form of congestion control.
>>>>>>>> 
>>>>>>>> There is currently a draft under discussion in tcpm to update rfc6138 and remove this statement.  So this statement should definitely not be picked up in this draft.
>>>>>>>> 
>>>>>>>> Further I disagree that a circuit breaker is a form of congestion control. It’s a last resort but there seem to be not much of a control loop involved here, making two very different thing with different requirements.
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> Further also in section 7: "ECN-CE marked packets SHOULD be treated as if
>>>>>>>>>> they were lost for the
>>>>>>>>>> purposes of congestion control"
>>>>>>>>>> 
>>>>>>>>>> This document should not impose any SHOULDs for congestion control as
>>>>>>>>>> this doc is only about circuit breaker sand therefore the sentence above
>>>>>>>>>> should be removed.
>>>>>>>>> 
>>>>>>>>> Not sure I agree. The circuit breaker needs to treat lost and CE-marked packets the same as a congestion control algorithm, and the ECN specifications say that the response to CE marks needs to be the same as the response to loss. 
>>>>>>>> 
>>>>>>>> I disagree, given the explanation above that ECN-CE marking indicate that all traffic have been transmitted correctly. It’s only an input for a control mechanism/loop and should not be used as input for a circuit breaker, at least not the same way as loss it used.
>>>>>>>> 
>>>>>>>> You could calculate the loss and ecn ratio separately and e.g. lower the k value if there is also a high level of CE marks. However, only CE marks without loss should not trigger a circuit breaker. This is also what ietf-tsvwg-circuit-breaker says:
>>>>>>>> "If Explicit
>>>>>>>> Congestion Notification (ECN) is enabled [RFC3168], an egress
>>>>>>>> meter MAY also count the number of ECN congestion marks/event per
>>>>>>>> measurement interval, but even if ECN is used, loss MUST still be
>>>>>>>> measured, since this better reflects the impact of persistent
>>>>>>>> congestion.“
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>> COMMENT:
>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>> 
>>>>>>>>>> Few more minor comments:
>>>>>>>>>> 
>>>>>>>>>> 1) reference [I-D.ietf-tsvwg-circuit-breaker] should be normative
>>>>>>>>> 
>>>>>>>>> This was discussed in relation to Ben’s AD review. I think you can implement the RTP circuit breaker without reading the TSV draft, so informative seems correct. However, I don’t much care either way.
>>>>>>>> 
>>>>>>>> I will double-check this; was not aware of any previous discussions here. I still think it should be normative...
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> 2) How is the loss rate in 4.3 calculated if some (but no all) RR are
>>>>>>>>>> lost?
>>>>>>>>> 
>>>>>>>>> There’s no obvious way for the receiver of the RRs to know that some were lost, so the calculation will proceed as if the reporting interval was longer. 
>>>>>>>> 
>>>>>>>> Hm… what’s about using the (difference of )total number of losses instead?
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> 3) I don't think that most of the text on congestion control in section 2
>>>>>>>>>> (as well as the abstract) is necessary for this doc (but it also don't
>>>>>>>>>> really hurt)
>>>>>>>>> 
>>>>>>>>> I agree it’s not necessary, but I tend to think motivation text is helpful in specifications.
>>>>>>>> 
>>>>>>>> Don’t have strong feeling about this. However as explain above, I don’t agree that circuit breaks are a kind of congestion control and there it would be much cleaner from my point of view to have those two things clearly separated.
>>>>>>>> 
>>>>>>>> Mirja
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Cheers,
>>>>>>>>> Colin
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> -- 
>>>>>>>>> Colin Perkins
>>>>>>>>> https://csperkins.org/