Re: [quicwg/base-drafts] max_ack_delay should be in us, not ms (#3363)

Martin Thomson <> Tue, 21 January 2020 08:48 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 0EE6C120043 for <>; Tue, 21 Jan 2020 00:48:04 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -6.596
X-Spam-Status: No, score=-6.596 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, HTML_IMAGE_ONLY_28=1.404, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-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 AFQ1eqQLIkx9 for <>; Tue, 21 Jan 2020 00:47:57 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 35F77120025 for <>; Tue, 21 Jan 2020 00:47:57 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id D0F916E0C4F for <>; Tue, 21 Jan 2020 00:47:55 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1579596475; bh=FpYGIibVISm4dD6gTr2OAtMl60AYBMl6d46uoRfIw2g=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=MZ1SncBAYvu2nw1DX0yoBJcRKTrxfEx01HWVh6CBOvvM2rj1nuCpgdzRixv3voCKr na96QinnJI/OkzyhSvSls4zfZqBqWNX0y5FfqJ59LCFPi81xeoKLNTsOpn3+9VGG3t PNEUddavzVvjCcaqGRHdGyQukjCJ/AHG1UMzlAG0=
Date: Tue, 21 Jan 2020 00:47:55 -0800
From: Martin Thomson <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/issues/3363/>
In-Reply-To: <quicwg/base-drafts/issues/>
References: <quicwg/base-drafts/issues/>
Subject: Re: [quicwg/base-drafts] max_ack_delay should be in us, not ms (#3363)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5e26babbc062c_40753fb9a10cd95c654e3"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: martinthomson
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: Tue, 21 Jan 2020 08:48:04 -0000

Yeah, that was the idea, but on the presumption that values below 1ms wouldn't have a huge effect on performance.  But this is now part of the PTO calculation.

Right now, we could have had up to 63ms in one byte.  With the proposed change, you get 4 bytes if you want to signal 25ms.  But that is once per connection, and hardly the end of the world.  Reduce the value below 16ms to save two bytes.

It's a bit weird that it is possible to advertise a very small value without first measuring RTT to the peer, but I guess that this is what narrow deployment contexts are all about.  The question is to what extent we think that this becomes too specialized for general purpose use.  We are, after all, designing for the big "I" Internet and advertising max_ack_delay of 10us is hardly suited to trans-continental use.

An alternative would be to to define an extension with the smaller, more granular value.  That might say: if sRTT < X, then I will reduce max_ack_delay to Y.  Or variations on that theme.

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