Re: [tcpm] About CUBIC and buffer draining

Michael Welzl <michawe@ifi.uio.no> Thu, 30 March 2017 09:59 UTC

Return-Path: <michawe@ifi.uio.no>
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 F33F112945A for <tcpm@ietfa.amsl.com>; Thu, 30 Mar 2017 02:59:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.202
X-Spam-Level:
X-Spam-Status: No, score=-4.202 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] 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 jWYLJ0Rs5XGZ for <tcpm@ietfa.amsl.com>; Thu, 30 Mar 2017 02:59:36 -0700 (PDT)
Received: from mail-out01.uio.no (mail-out01.uio.no [IPv6:2001:700:100:10::50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 28924129521 for <tcpm@ietf.org>; Thu, 30 Mar 2017 02:59:36 -0700 (PDT)
Received: from mail-mx03.uio.no ([129.240.10.15]) by mail-out01.uio.no with esmtp (Exim 4.82_1-5b7a7c0-XX) (envelope-from <michawe@ifi.uio.no>) id 1ctWre-0002sY-Ht for tcpm@ietf.org; Thu, 30 Mar 2017 11:59:34 +0200
Received: from swissotel07.s.subnet.rcn.com ([216.80.61.6] helo=[172.20.3.190]) by mail-mx03.uio.no with esmtpsa (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) user michawe (Exim 4.82_1-5b7a7c0-XX) (envelope-from <michawe@ifi.uio.no>) id 1ctWrd-0005Zl-Oz for tcpm@ietf.org; Thu, 30 Mar 2017 11:59:34 +0200
From: Michael Welzl <michawe@ifi.uio.no>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Mime-Version: 1.0 (Mac OS X Mail 10.2 \(3259\))
Date: Thu, 30 Mar 2017 04:59:35 -0500
References: <206AB840-99C4-46FD-A36D-27927E3A6C42@ifi.uio.no>
To: tcpm@ietf.org
In-Reply-To: <206AB840-99C4-46FD-A36D-27927E3A6C42@ifi.uio.no>
Message-Id: <A1C9F5DC-3FC9-47CF-A231-E4939B6A2C3C@ifi.uio.no>
X-Mailer: Apple Mail (2.3259)
X-UiO-SPF-Received: Received-SPF: neutral (mail-mx03.uio.no: 216.80.61.6 is neither permitted nor denied by domain of ifi.uio.no) client-ip=216.80.61.6; envelope-from=michawe@ifi.uio.no; helo=[172.20.3.190];
X-UiO-Ratelimit-Test: rcpts/h 3 msgs/h 3 sum rcpts/h 4 sum msgs/h 4 total rcpts 53368 max rcpts/h 54 ratelimit 0
X-UiO-Spam-info: not spam, SpamAssassin (score=-5.0, required=5.0, autolearn=disabled, AWL=0.046, UIO_MAIL_IS_INTERNAL=-5, uiobl=NO, uiouri=NO)
X-UiO-Scanned: A27092948309F98AB20E40BA829F1F46DE447985
X-UiO-SPAM-Test: remote_host: 216.80.61.6 spam_score: -49 maxlevel 80 minaction 2 bait 0 mail/h: 2 total 97 max/h 12 blacklist 0 greylist 0 ratelimit 0
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/9J-OX7rfP8gJei6fQIC14SXKmbE>
Subject: Re: [tcpm] About CUBIC and buffer draining
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.22
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: Thu, 30 Mar 2017 09:59:39 -0000

Sigh, copy + paste error fix, sorry - in line:

> On Mar 29, 2017, at 4:33 PM, Michael Welzl <michawe@ifi.uio.no> wrote:
> 
> Hi,
> 
> In Praveen’s very interesting presentation on TCP in Windows, today:
> https://www.ietf.org/proceedings/98/slides/slides-98-tcpm-tcp-improvements-in-windows-01.pdf
> he stated that “CUBIC builds up large buffer in absence of AQM”  (slide 4).
> 
> In the absence of an AQM algorithm, even a single Reno flow alone will not let a queue drain when it’s (for several practical reasons, slightly more than) a BDP in length. To allow a BDP worth of queuing to drain, the sender needs a backoff factor of 0.5 or less. CUBIC’s backoff (multiplication) factor is 0.7, so it can even produce a standing queue when the queue is smaller than a BDP.
> 
> For reasonably configured networks, and with background load fluctuations, that’s maybe not such a huge problem (after all, the Internet still works  ;-)  ).
> However, CUBIC’s backoff factor choice is “blind” - CUBIC has no idea of the length of the queue.
> 
> That’s what we’re trying to fix with ABE (draft-khademi-tcpm-alternativebackoff-ecn):

That should be: draft-ietf-tcpm-alternativebackoff-ecn-00

Cheers,
Michael

> because ECN is a hint that the queue was probably small, we can use a larger backoff factor (i.e. reduce by less).  => if the whole Internet would support ECN, and ABE was implemented as a way to back off, I would wonder: should CUBIC use 0.5 when it reacts to loss?
> 
> These are researchy futuristic musings. Getting back down to earth, I think it may be good to add a sentence to the CUBIC draft, where the backoff factor of 0.7 is introduced (last paragraph of section 3). There, the text now only says:
> 
> ***
>   CUBIC sets the multiplicative window decrease factor to 0.7 while
>   Standard TCP uses 0.5.  While this improves the scalability of the
>   protocol, a side effect of this decision is slower convergence
>   especially under low statistical multiplexing environments.
> ***
> 
> … but I think the fact that it is more likely to produce a standing queue is a bigger issue, and worth mentioning here.
> 
> Cheers,
> Michael
> 
> _______________________________________________
> tcpm mailing list
> tcpm@ietf.org
> https://www.ietf.org/mailman/listinfo/tcpm