Re: [quicwg/base-drafts] Fixing max_ack_delay (#3938)

Kazuho Oku <> Wed, 22 July 2020 13:24 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id EB3E13A07E7 for <>; Wed, 22 Jul 2020 06:24:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.696
X-Spam-Status: No, score=-1.696 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, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id nz9MatkoJqCP for <>; Wed, 22 Jul 2020 06:24:26 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 769423A0919 for <>; Wed, 22 Jul 2020 06:24:21 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id CDA6D52002B for <>; Wed, 22 Jul 2020 06:24:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1595424260; bh=n9V6KdCAApIm00gf8bBiTYgpw+cCTl9i/U4wzwpk0n8=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=YZqCmMK1GMfpBAuzflvRycYDgH+MRREg2Ga/dlcr/Te66yYOa5+aDjt4sE+KtQet0 +UwCdd9QdOmCexGT1yprdX4mzXcL8WifnbPtITQUXDqYNOm9uASHxesiZwieIpcHAu ClogP0BXcm5gy1GzXnT0Oh8pCtQX8zZ8dtXmtHrI=
Date: Wed, 22 Jul 2020 06:24:20 -0700
From: Kazuho Oku <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/pull/3938/review/>
In-Reply-To: <quicwg/base-drafts/pull/>
References: <quicwg/base-drafts/pull/>
Subject: Re: [quicwg/base-drafts] Fixing max_ack_delay (#3938)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5f183e04bd94e_1e433f92ceecd95c104587"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: kazuho
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
Archived-At: <>
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 22 Jul 2020 13:24:29 -0000

@kazuho commented on this pull request.

> @@ -1129,6 +1129,10 @@ follows:
    smoothed_rtt = kInitialRtt
    rttvar = kInitialRtt / 2
    min_rtt = 0
+   // max_ack_delay is initialized to 0 and
+   // updated when transport parameters are exchanged.
+   // If a peer does not specify max_ack_delay,
+   // it is set to 25ms.

I'd argue that the spec is clear about the intent, and the current state of this PR is going to introduce a contradiction from what the spec says.

Quoting from [section 4.1](, "congestion control and round-trip time (RTT) measurement are unified across packet number spaces." As can be seen, persistent congestion by definition is a path-wide event. Not an event specific to the PN space in which a loss has been newly observed.

Based on that, my understanding is that consistently applying max_ack_delay exchanged by the Transport Parameter is the intent of [the formula found in in section 7.8](, and that the definition that currently exists in the WG draft is correct.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub: