Re: [tcpm] AD Review of draft-ietf-tcpm-hystartplusplus-09

tuexen@fh-muenster.de Wed, 07 September 2022 21:46 UTC

Return-Path: <tuexen@fh-muenster.de>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EE413C1522C2; Wed, 7 Sep 2022 14:46:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.501
X-Spam-Level:
X-Spam-Status: No, score=-1.501 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, KHOP_HELO_FCRDNS=0.398, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_PERMERROR=0.01] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id scAGzvy9qWrt; Wed, 7 Sep 2022 14:46:08 -0700 (PDT)
Received: from drew.franken.de (drew.ipv6.franken.de [IPv6:2001:638:a02:a001:20e:cff:fe4a:feaa]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6A539C1522BF; Wed, 7 Sep 2022 14:46:05 -0700 (PDT)
Received: from smtpclient.apple (unknown [IPv6:2a02:8109:1140:c3d:196b:3ddd:86ee:cfac]) (Authenticated sender: macmic) by mail-n.franken.de (Postfix) with ESMTPSA id 315EE7220B821; Wed, 7 Sep 2022 23:45:58 +0200 (CEST)
Content-Type: multipart/signed; boundary="Apple-Mail=_4C06F8A1-E859-4E95-9DB7-58F5D33F34A9"; protocol="application/pkcs7-signature"; micalg="sha-256"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\))
From: tuexen@fh-muenster.de
In-Reply-To: <CAM4esxQNfuMKq+pj0v2+mO8Mxq8nbpgmVDai-WgLvgCfXrtibQ@mail.gmail.com>
Date: Wed, 07 Sep 2022 23:45:57 +0200
Cc: draft-ietf-tcpm-hystartplusplus.all@ietf.org, "tcpm@ietf.org Extensions" <tcpm@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <741E2E66-0EC9-48E3-BF8E-4EFE000567D2@fh-muenster.de>
References: <CAM4esxTikRRRLOtmO4bezXvjjDiQ3cpRNqtT_2YaEUQrFUrECw@mail.gmail.com> <0E94A985-516C-4287-9789-50D3A682211B@fh-muenster.de> <CAM4esxS-3kZDLp-1n3JM3jOH=4ZLNaf0vsszMgqrJ7ss=jxcCg@mail.gmail.com> <D98D5BA8-B5B8-42F7-AF61-352235D8BC39@fh-muenster.de> <CAM4esxQNfuMKq+pj0v2+mO8Mxq8nbpgmVDai-WgLvgCfXrtibQ@mail.gmail.com>
To: Martin Duke <martin.h.duke@gmail.com>
X-Mailer: Apple Mail (2.3696.120.41.1.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/7cmAcSNDJB5gRyuPqICvjTpseHY>
Subject: Re: [tcpm] AD Review of draft-ietf-tcpm-hystartplusplus-09
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 07 Sep 2022 21:46:11 -0000

> On 7. Sep 2022, at 22:44, Martin Duke <martin.h.duke@gmail.com> wrote:
> 
> 
> 
> On Wed, Sep 7, 2022 at 1:15 PM <tuexen@fh-muenster.de> wrote:
> > On 7. Sep 2022, at 21:40, Martin Duke <martin.h.duke@gmail.com> wrote:
> > 
> > I would be happier with some sort of limit on L. Maybe: the positive integer L SHOULD be 2 and MUST be no more than 8(?) But whatever numbers the community is comfortable with are fine with me.
> Hi Martin,
> 
> the crucial point here is that we know that MS used L = 8. But we don't have any information,
> whether other values of L are worse or better, what the tradeoffs are and in particular
> what traffic patterns impact the choice of L. Wouldn't we need such an analysis / results
> from an experiment for selecting an upper limit L_MAX? I would assume that it might
> have an impact whether pacing is used or not.
> 
> Well the community has at least some data that L = 8 is safe on the internet. Maybe some other practitioners have data for 16 or 32 or whatever. It would be reasonable to set some sort of limit based on the limits of our empirical limit.
Sure. My point was just that the results provided my MS show that L_MAX <= 8 seems to
be safe in the scenario they looked at. But there is no statement that L_MAX > 8 is
bad...
> 
> It would be fine to say "one SHOULD NOT exceed L = foo if you're not pacing"
> 
>  
> > 
> > I'd also be happier with a cut-and-paste of those considerations from 3465, which should not be a lot of work.
> > 
> > The lower-effort approach is just to strike L from the document and let people do what they've doing, which is use Ls well in excess of 2. But I'd prefer we'd actually write it down because
> > (1) our standards are better if they reflect widespread behavior in the internet; and
> I agree with the above.
> > (2) it means we can finally make 3465 historic, as we have standards-track documents that cover virtually all of its material.
> > 
> > If the community really cannot converge on sensible limits for L, then I'd rather publish with no L than wait for a deadlock to resolve.
> In my view, the selection of L is not part of the core of the document.
> 
> This document standardizes a new slow start algorithm, which includes L as a parameter, for which there is no standard.
My point was that there is no L_MAX given here.
>  
> > 
> > But as a way forward, I'd suggest:
> > 1) the authors propose text that sets bounds on L (a SHOULD and a MUST) and cut-and-pastes the considerations.
> Aren't the consideration in RFC 3465 coming to the conclusion: L SHOULD be 1, MAY be 2, MUST NOT be larger than 2?
> How to use the same considerations to come to a different conclusion: L SHOULD be 2, MUST NOT be larger than L_MAX
> for L_MAX > 2?
> 
> Re: SHOULD 1 or 2, I don't have a strong opinion but I feel like the 3465 experiment shows that 2 is safe, and somewhat beneficial given the prevalence of ack thinning? If there is no consensus for this, I'm happy to go with 1.
> 
> L_MAX: My preference is to set a value that is widely deployed with good data that it is safe to do so
Let us see if people provide data which values are good and which values are bad...

Best regards
Michael
>  
> 
> Best regards
> Michael (as an individual)
> > 2) We do a consensus call on that in TCPM
> > 
> > if we have less than rough consensus, we can consider next steps.
> > 
> > 
> > On Sat, Sep 3, 2022 at 2:50 AM <tuexen@fh-muenster.de> wrote:
> > > On 3. Sep 2022, at 00:52, Martin Duke <martin.h.duke@gmail.com> wrote:
> > > 
> > > Thank you for this concise and very readable document.
> > > 
> > > My only major concern is the old subject of RFC3465 (ABC) being Informative, but a downref if we make it Normative. In my opinion, the document as written is not implementable without 3465 and it should be a normative reference.
> > > 
> > > If I am correct about the status quo, the only part of 3465 that is not in 5681 (and therefore still Experimental) is the use of L > 1 in slow start.
> > > 
> > > There are three approaches to handling this problem.
> > > 
> > > 1. Eliminate L from the spec, and use the RFC5681 slow start formula. What's bad about this is that IIUC we have no data with L=1. But we could say in Section 5 that the tests also used RFC 3465 with L=8 and the market decide what to do with that.
> > > 
> > > 2. Send to the RFC Editor with a normative reference; the doc will be "done", but will not publish until ABC goes to PS (which is not imminent, to say the least).
> > > 
> > > 3. What I think you've actually done here is standardized RFC3465 behavior only when combined with CSS (i.e. a partial promotion of ABC). I think this is the best course of action, but if we're going to do that, we should go all the way:
> > > 
> > > (a) Add a definition of L and a discussion of how to set it -- basically Sec 2.3 of RFC3465 but presumably with no L=2 limit. If we're going to publish a standard with a higher cap on L we really ought to have that discussion.
> > > 
> > > (b) It can "update" or "obsolete" 3465 depending on whether or not the WG cares to keep the experimental status of ABC-without-CSS.
> > > 
> > > The community apparently has consensus that L > 1, even L >  2, *in this context* is safe, so I don't see it as reckless to make this change.
> > > 
> > > I'm happy to have a dialogue about this.
> > Hi Martin,
> > 
> > I think the intention was (3), at least it was my intention.
> > 
> > What about only doing (a) by:
> > 
> > i) Remove
> >    The following pseudocode integrates Appropriate Byte Counting as
> >    described in [RFC3465].  In particular, see [RFC3465] for the
> >    definition of the variable L.
> > ii) After the first usage of L:
> >     Update the cwnd:
> >       cwnd = cwnd + min (N, L * SMSS)
> >     Add:
> >     The positive integer L SHOULD be 1 and MAY be larger than 1.
> >     See [RFC3465] for details of choosing L.
> > 
> > That way we are  consistent with RFC 5681 and allow for higher values.
> > The text in Section 5 gives a clear hint that L > 1 has been used.
> > At least we used the above text in RFC 9260.
> > We could also use
> > See [RFC3465] for a discussion related to the choice of the value of L.
> > or just leave out the reference to RFC3465 at all. I guess people are
> > setting L differently anyway.
> > 
> > What do you think?
> > 
> > Best regards
> > Michael
> > > 
> > > NITS:
> > > (3) s/definition/definitions
> > > 
> > > (4.1) "The Inter Packet Arrival algorithm does not perform well." If there's a useful citation here (or for the results discussed in Section 5) that would be nice to include.
> > > 
> > > (4.1) s/it's concluded that/the algorithm concludes
> > > 
> > > Thanks again!
> > > Martin
> > 
>