Re: [tcpm] last_max in CUBIC
Nicolas Kuhn <nicolas.kuhn@telecom-bretagne.eu> Fri, 24 April 2015 08:08 UTC
Return-Path: <nicolas.kuhn@telecom-bretagne.eu>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 771E21B35A3 for <tcpm@ietfa.amsl.com>; Fri, 24 Apr 2015 01:08:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.55
X-Spam-Level:
X-Spam-Status: No, score=-1.55 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_FR=0.35, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=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 W3fUPnatXSEz for <tcpm@ietfa.amsl.com>; Fri, 24 Apr 2015 01:08:00 -0700 (PDT)
Received: from zproxy210.enst-bretagne.fr (zproxy210.enst-bretagne.fr [192.108.117.8]) by ietfa.amsl.com (Postfix) with ESMTP id 03DC61B359E for <tcpm@ietf.org>; Fri, 24 Apr 2015 01:07:26 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by zproxy210.enst-bretagne.fr (Postfix) with ESMTP id 070BE23226B; Fri, 24 Apr 2015 10:07:25 +0200 (CEST)
Received: from zproxy210.enst-bretagne.fr ([127.0.0.1]) by localhost (zproxy210.enst-bretagne.fr [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id pCB5_ftPEpsf; Fri, 24 Apr 2015 10:07:24 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1]) by zproxy210.enst-bretagne.fr (Postfix) with ESMTP id 024B123226D; Fri, 24 Apr 2015 10:07:24 +0200 (CEST)
X-Virus-Scanned: amavisd-new at zproxy210.enst-bretagne.fr
Received: from zproxy210.enst-bretagne.fr ([127.0.0.1]) by localhost (zproxy210.enst-bretagne.fr [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id v1kiPTzonCcN; Fri, 24 Apr 2015 10:07:23 +0200 (CEST)
Received: from [10.101.5.253] (sjombord-3.ictservices.se [188.121.67.51]) by zproxy210.enst-bretagne.fr (Postfix) with ESMTPSA id 2AEF723226B; Fri, 24 Apr 2015 10:07:23 +0200 (CEST)
Content-Type: multipart/alternative; boundary="Apple-Mail=_2C765C06-A515-4210-BA23-9D42BE0F06CD"
Mime-Version: 1.0 (Mac OS X Mail 8.0 \(1990.1\))
From: Nicolas Kuhn <nicolas.kuhn@telecom-bretagne.eu>
In-Reply-To: <CADVnQy=UNxuGVfDPm3zNHj1F_3p4FMTvWxN37G_sgtKzquBf=w@mail.gmail.com>
Date: Fri, 24 Apr 2015 10:07:21 +0200
Message-Id: <F111EA2F-EB4E-4CC6-9E90-995A2C918CDB@telecom-bretagne.eu>
References: <EA2D4071-0A9F-4951-B38B-D8FE23B6A86F@telecom-bretagne.eu> <CADVnQy=UNxuGVfDPm3zNHj1F_3p4FMTvWxN37G_sgtKzquBf=w@mail.gmail.com>
To: Neal Cardwell <ncardwell@google.com>
X-Mailer: Apple Mail (2.1990.1)
Archived-At: <http://mailarchive.ietf.org/arch/msg/tcpm/7npiOHc9TeHfMzpqh4NvaOZI_gg>
Cc: "tcpm@ietf.org" <tcpm@ietf.org>
Subject: Re: [tcpm] last_max in CUBIC
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Fri, 24 Apr 2015 08:08:02 -0000
> On 23 Apr 2015, at 21:58, Neal Cardwell <ncardwell@google.com> wrote: > > On Thu, Apr 23, 2015 at 12:22 PM, Nicolas Kuhn > <nicolas.kuhn@telecom-bretagne.eu <mailto:nicolas.kuhn@telecom-bretagne.eu>> wrote: >> Hi all, >> >> We were currently working on CUBIC and LEDBAT in NS-2, using Michael Welzl’s >> updated TCP Linux for NS-2 >> [http://www.ietf.org/mail-archive/web/iccrg/current/msg01160.html]. >> We see some strange behaviour in CUBIC’s window reduction, which we wanted >> to share with you here. >> >> — Topology — >> >> The topology is a simple dumbbell topology with a bottleneck of 10Mbps and >> an RTT of 100ms. The queue size of the router is set >> to 42 packets (with DropTail). There are two non-application limited bulk >> flows that randomly start within the first second of the simulation. >> Flow#1 is CUBIC (using ns-2.35/tcp/src/tcp_cubic.c version); >> Flow#2 is LEDBAT with a target delay of 5 ms or 25ms. >> >> — Problem illustration — >> >> In cwnd_case_1_default.pdf and cwnd_case_2_default.pdf, we plot the >> congestion window evaluation and the >> “new last_max_cwnd”, that is the W_last_max in the CUBIC draft >> [https://datatracker.ietf.org/doc/draft-zimmermann-tcpm-cubic]. >> >> >> >> We recall here how CUBIC deals with fast convergence: >> >> if (W_max < W_last_max){ >> W_last_max = W_max; >> W_max = W_max*(2-beta)/2; >> } else { >> W_last_max = W_max >> } >> >> In the case with LEDBAT25, at 15s, W_last_max “should” have been reduced, > > Can you explain why you feel that in the case with LEDBAT25, at 15s, > W_last_max should have been reduced? > > AFAICT, in the LEDBAT25 case with the existing CUBIC code > (cwnd_case_2_default.pdf) the CUBIC behavior is reasonable. From 15s > to 50s CUBIC finds that it is able to get cwnd up all the way to the > max value from the previous epoch before another loss happens. That > suggests that there are no other competing flows, and the situation is > stable, so it is reasonable to try to make cwnd quickly plateau at the > same level in the next epoch, rather than some lower level. > > Can you summarize why this seems problematic? > It may be a simulation artefact (would not happen much in real life), and I do not believe that it would be somehow problematic; CUBIC is very aggressive anyway - reducing its aggressiveness in such corner cases is not “needed”. I just wanted to point out that this “strange” behaviour can be assessed by changing if (W_max < W_last_max){ by if (W_max <= W_last_max){ and that it might have a slight impact on the fairness of CUBIC with latecomer flows. Nicolas > neal
- [tcpm] last_max in CUBIC Nicolas Kuhn
- Re: [tcpm] last_max in CUBIC Neal Cardwell
- Re: [tcpm] last_max in CUBIC Nicolas Kuhn