Re: [tcpm] Proceeding CUBIC draft - thoughts and late follow-up

Yoshifumi Nishida <nsd.ietf@gmail.com> Wed, 20 July 2022 07:34 UTC

Return-Path: <nsd.ietf@gmail.com>
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 A74A4C16ECAC; Wed, 20 Jul 2022 00:34:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.107
X-Spam-Level:
X-Spam-Status: No, score=-2.107 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 qKCsSP0KRsVY; Wed, 20 Jul 2022 00:34:05 -0700 (PDT)
Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [IPv6:2a00:1450:4864:20::32d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AD974C16ECA9; Wed, 20 Jul 2022 00:33:45 -0700 (PDT)
Received: by mail-wm1-x32d.google.com with SMTP id b6so9767644wmq.5; Wed, 20 Jul 2022 00:33:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=9Mpyu59XOeZhoVGKkjiXYuELyBvwrFS28gBEjEXVMLE=; b=leyBYyE0cMLytmAL79r4U0P1ASZ2zMkr6xvJa20kGu+JT7bgiVmzv2FXbOVtcNEX1H 0KFaEWgZHhaL8CC+7Lxqlbpbrcw0fUqIuRr0wL8QFwQI3fYLf5Glq7fi7EXCG7ZMl82k 9IAWeGhS4gn5pKnYJKBnpRsUyT/g8bH6kOenJT0gDD3RhFO7PSjCaSJv9DRtw8GiIisV zUgOTD0/2Uk8v85UCEGlsEw3XAyvkuTMP3dB7x4o0YqLcKtLSI51IOOwLgoSaQXNvBwu U3EOsHJGhjcP8TDsD4Wsf+TAqchAx5SylAFyseJj4kcJXjbCgjLtW3RyUtW8H+pcR3oX 1fXg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=9Mpyu59XOeZhoVGKkjiXYuELyBvwrFS28gBEjEXVMLE=; b=X61qMjHchtWN6eCJe2XIyg5OxTTT1nxCIUimRIAHa2E6vAOZhWEdNnj7cf9SF4bBx1 hbxYE+X9lrOANHtoB7WSDcjstMYlsv38BzB4AYSnakowyRYjeovB+8Iz2IqjiQ6hAKZn 2xFaICQIDk1KdCZTVAEcwn/ISRipG9mCbNCqjYwsL6aC6VtPSs9eUcwx5zCMsfrzJiOm /jSCnAEc+njWd/DrJfSMG9egkN7+QyipgbNiBMJ6ur4D2gRNP7PUWsr2pmHk9A0xG9Sq ZsrA27Saz460MfivZYkXrE3FQrUc+3h+stNp2zZsB9dDr7Ei8wy4Hyg3T5BMVCBD0DR2 muqg==
X-Gm-Message-State: AJIora+JXICDOkgrdoZVCKz1F3xLj47QHxgonSf0QQ3snddY8dxnEYNl QYcY7fRjhXRJuwAzJSdSP/XJkgFmmrC/+tgYa7M=
X-Google-Smtp-Source: AGRyM1ugTdWsWaS74Y4hFf1dZzMrWR9eYPVsg09+LHD1oXmvss2F1OuLDZDOos7mnR70JxXB+lYeJs8cuXd62x4kK0E=
X-Received: by 2002:a7b:c415:0:b0:3a3:1d20:a4d with SMTP id k21-20020a7bc415000000b003a31d200a4dmr2635418wmi.137.1658302423440; Wed, 20 Jul 2022 00:33:43 -0700 (PDT)
MIME-Version: 1.0
References: <alpine.DEB.2.21.2206301429210.7292@hp8x-60.cs.helsinki.fi> <AEE43039-8EA0-4FB9-A605-C5C845DF4355@apple.com> <alpine.DEB.2.21.2207041843260.7292@hp8x-60.cs.helsinki.fi> <CAAK044TTZKXphE2rW7aFc2TnBLmMK0U+J61ZKzZXYvOmX_TdSA@mail.gmail.com> <alpine.DEB.2.21.2207120355450.7292@hp8x-60.cs.helsinki.fi> <CAAK044TGu8WMn1ht0tqyKVK+sSg6POrLU3HU5VE8yd8ouMHb8w@mail.gmail.com> <alpine.DEB.2.21.2207200034550.7292@hp8x-60.cs.helsinki.fi>
In-Reply-To: <alpine.DEB.2.21.2207200034550.7292@hp8x-60.cs.helsinki.fi>
From: Yoshifumi Nishida <nsd.ietf@gmail.com>
Date: Wed, 20 Jul 2022 00:33:31 -0700
Message-ID: <CAAK044QEA2Xa=PP6YnXaPNKuM1f-JzBOmij0scZCkrBL0aKRmw@mail.gmail.com>
To: Markku Kojo <kojo@cs.helsinki.fi>
Cc: Vidhi Goel <vidhi_goel=40apple.com@dmarc.ietf.org>, Vidhi Goel <vidhi_goel@apple.com>, "tcpm@ietf.org Extensions" <tcpm@ietf.org>, tcpm-chairs <tcpm-chairs@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000e11f7a05e4379e20"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/BCpotWr6zu7AkQPMsJiUUF001m8>
Subject: Re: [tcpm] Proceeding CUBIC draft - thoughts and late follow-up
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, 20 Jul 2022 07:34:06 -0000

Hi Markku,

Sorry for not being very clear.
What I meant was even though Reno increases cwnd every RTT and Cubic
increases it every other RTT (which can indicate the presumption of the
model is not very accurate), I think it doesn't necessarily mean Reno has
higher packet loss rate than Cubic.
They might not be equal, but the gaps might not be that big. Well, I'm not
sure at this point.

So, while I agree this should not be required, I still believe we'll need
more analysis on this.
I think it'll be difficult to think about the best way to fix it until we
understand the details of the issue
--
Yoshi

On Tue, Jul 19, 2022 at 4:56 PM Markku Kojo <kojo@cs.helsinki.fi> wrote:

> Hi Yoshi,
>
> See below inline.
>
> On Thu, 14 Jul 2022, Yoshifumi Nishida wrote:
>
> > Hi Markku,
> >
> > Thanks for the comments. I think we're mostly on the same page for
> RFC9002.
> > I put some comments on the issue 1 part.
> >
> > On Mon, Jul 11, 2022 at 7:54 PM Markku Kojo <kojo@cs.helsinki.fi> wrote:
> >
> >       > BTW, my intention is not saying RFC9002 is overly aggressive. I
> just meant comparing with reno
> >       precisely might
> >       > not be a very good idea for modern networks.
> >
> >       Agreed, it is not overly aggressive.
> >
> >       I am not saying that CUBIC should be precisely as aggressive as
> Reno even
> >       though its design goal has been to be equally aggressive in the
> >       Reno-friendly region.
> >
> >       Instead, with the issue 1, for example, a CUBIC flow competing
> with a
> >       Reno flow will incorrectly and against its design goal opt out
> >       roughly every second cwnd decrease that the Reno flow executes.
> Doesn't
> >       that result in systematic and significant difference in peformance
> like
> >       the measuement results that I've pointed to also confirm?
> >
> > I think we'll need more analysis on this point.
> > Let's say a CUBIC connection has 50 packets cwnd and a Reno connection
> has 51 packets cwnd, the available
> > buffer is only 100 packets.
> > In this case, I'm not very sure which connection of packets will be
> dropped hence not sure about the
> > consequences.
>
> I am not quite sure what you are looking after here? It does not matter
> what are the cwnd sizes. They may differ. What matters is what happens on
> the RTT when the buffer capacity has been exhausted and a flow (or flows)
> injects an additional packet once cwnd has increased by one full MSS.
> For Reno this occurs every RTT but for CUBIC (creno = CUBIC in the
> Reno-friendly region) roughly every second RTT (for simplicity I use here
> Beta = 0.5 for CUBIC). When I say creno opts out (roughly) every second
> cwnd decrease that is true when the flows are synchronized. When they are
> not, things are a bit more complex and I didn't want to go there for
> simplicity and because for that we would need more analysis and
> measurements to learn the exact impact of the incorrect formula.
> In addition, we shold not consider only the case of two competing flows
> but any number with different proportion of Reno and creno.
> I used the simple two-flow case to illustrate why the model (and formula)
> are incorrect.
>
> Of course also two Reno flows may become desynchronized (and they do in
> real networks) and then their cwnds are not the same each CA cycle but at
> times only one of the flows gets a drop and continues with a smaller
> cwnd. However, this happens randomly to either of the flows and there is
> no systematic bias. And, when it happens the flow with the smaller cwnd
> (statistically) catches up with the larger cwnd in some number of CA
> cycles. creno that increases its cwnd by full MSS only every second RTT
> creates a systematic bias that results in unjustified performance gain
> because of systematically not being candidate for a pkt drop each time
> the buffer becomes full. I must also say that the problem is present in
> full as described in deterministic network environments but it does not
> become negligible when the network does not behave in such deterministic
> way due to varying pkt timings. Nonetheless, we have plenty of
> deterministic enough network environments today and the CC algos must work
> correctly also in these environments.
>
> > I still believe we cannot be sure until we see some deep analysis for
> this.
>
> The problem is true but the exact impact is unknown indeed.
>
> > This may take time, but I think it's necessary to get the conclusion on
> this point.
>
> Whatever the conclusion is, it must not ignore the problem.
>
> Thanks,
>
> /Markku
>
> > --
> > Yoshi
> >
> >