Re: [quicwg/base-drafts] Attempt to define slow start/congestion avoidance (#4005)
mirjak <notifications@github.com> Wed, 19 August 2020 09:42 UTC
Return-Path: <noreply@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 770493A11C1 for <quic-issues@ietfa.amsl.com>; Wed, 19 Aug 2020 02:42:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.697
X-Spam-Level:
X-Spam-Status: No, score=-1.697 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_IMAGE_ONLY_28=1.404, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.com
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 WTU-6rUmWUVt for <quic-issues@ietfa.amsl.com>; Wed, 19 Aug 2020 02:42:42 -0700 (PDT)
Received: from out-18.smtp.github.com (out-18.smtp.github.com [192.30.252.201]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AC7023A16A8 for <quic-issues@ietf.org>; Wed, 19 Aug 2020 02:42:29 -0700 (PDT)
Received: from github-lowworker-0eea13f.ash1-iad.github.net (github-lowworker-0eea13f.ash1-iad.github.net [10.56.109.26]) by smtp.github.com (Postfix) with ESMTP id D8FAA340E8F for <quic-issues@ietf.org>; Wed, 19 Aug 2020 02:42:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1597830148; bh=vqPtzrRTyZHUpihMt8oHuQk1ZL5SMeqd9UwPlWNfnOM=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=LR2DxVxyXb9QomWJOg/JTv743gl5l9XRm+Ct7qN8EkH/SxXRnNdbsk3APIYpwheFd KixYXRf1q1OuRkJ50kKkO7n2HR/xlU1tDDV2ZgwZDWotJGCsYfhN4CxPrSOIkpibcs fRUON+BtWBc37BuFZPVloZj/NaAR54kAAaN+tK0A=
Date: Wed, 19 Aug 2020 02:42:28 -0700
From: mirjak <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+AFTOJKZXWQW7AL6JNVCOW5V5JDKQJEVBNHHCRBYB7A@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/pull/4005/review/470294174@github.com>
In-Reply-To: <quicwg/base-drafts/pull/4005@github.com>
References: <quicwg/base-drafts/pull/4005@github.com>
Subject: Re: [quicwg/base-drafts] Attempt to define slow start/congestion avoidance (#4005)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5f3cf404c9fab_6498196410032a"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: mirjak
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/nL1LoAMRTr2Qm-fb-5JKklD-M8Y>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 19 Aug 2020 09:42:43 -0000
@mirjak commented on this pull request. > -Additive Increase Multiplicative Decrease (AIMD) approach that increases -the congestion window by one maximum packet size per congestion window -acknowledged. When a loss or ECN-CE marking is detected, NewReno halves -the congestion window, sets the slow start threshold to the new -congestion window, and then enters the recovery period. +The congestion controller is in congestion avoidance any time the congestion +window is at or above the slow start threshold. + +Congestion avoidance uses an Additive Increase Multiplicative Decrease (AIMD) +approach that increases the congestion window by one maximum packet size per +congestion window acknowledged. + +When first entering congestion avoidance, when a packet is declared lost, or +when the ECN-CE count is detected, the congestion controller halves the +congestion window, reduces the slow start threshold to the resulting size, and +enters the recovery period. I think the MUST requirement is that the cwnd is set to ssthresh when LEAVING recovery. In order to decrement the cwnd gradually we could say that only one new packet for two ACKed ones should be send which then would be mostly inline with TCP or we can leave the detailed scheme to the implementation and just put some warnings to not overload the link in recovery. Alternatively you could also e.g. halve the cwnd and then pace out packets over one RTT (which is assume is what implementation do right now?) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/quicwg/base-drafts/pull/4005#discussion_r472901102
- [quicwg/base-drafts] Attempt to define slow start… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… mirjak
- Re: [quicwg/base-drafts] Attempt to define slow s… ianswett
- Re: [quicwg/base-drafts] Attempt to define slow s… Mike Bishop
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… ianswett
- Re: [quicwg/base-drafts] Attempt to define slow s… mirjak
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… ianswett
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… mirjak
- Re: [quicwg/base-drafts] Attempt to define slow s… ianswett
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Kazu Yamamoto
- Re: [quicwg/base-drafts] Attempt to define slow s… Jana Iyengar
- Re: [quicwg/base-drafts] Attempt to define slow s… Jana Iyengar
- Re: [quicwg/base-drafts] Attempt to define slow s… Jana Iyengar
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Jana Iyengar
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Martin Thomson
- Re: [quicwg/base-drafts] Attempt to define slow s… Jana Iyengar