Re: [quicwg/base-drafts] MUST ACK each ack-eliciting packet once (#3092)

Nick Banks <> Tue, 22 October 2019 14:03 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 0A95B120086 for <>; Tue, 22 Oct 2019 07:03:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -7.999
X-Spam-Status: No, score=-7.999 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_32=0.001, 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 Ffn8XIQt2e1f for <>; Tue, 22 Oct 2019 07:03:55 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 8883E120013 for <>; Tue, 22 Oct 2019 07:03:55 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id B5CD52C123C for <>; Tue, 22 Oct 2019 07:03:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1571753034; bh=P7mwgn1FLUP5cUlZXmkgIPseEVYYOvjaQuWHjJyeTZw=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=hPoyGXqvWCwARbbWTK/ckFkaxk0cDq2f/jmIX0AV7IXvMoTVm8N3HItH0P66lQ2Ho bapR0ZoBR6k9F4AuYGqgI8FTLSnVkobEGuWEmv5rgBnkP8AKZxoBYcU6haF0LvGi+u +/cfnR1scGaUivq+7RG7lN6rf6x9pxdH/FT63kBE=
Date: Tue, 22 Oct 2019 07:03:54 -0700
From: Nick Banks <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/pull/3092/review/>
In-Reply-To: <quicwg/base-drafts/pull/>
References: <quicwg/base-drafts/pull/>
Subject: Re: [quicwg/base-drafts] MUST ACK each ack-eliciting packet once (#3092)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5daf0c4aa71ca_5633ffcfbecd96040051"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: nibanks
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, 22 Oct 2019 14:03:57 -0000

nibanks commented on this pull request.

Generally looks good, but I don't think we can have an absolute requirement that every ack-eliciting packet is acknowledged.

> +Every packet SHOULD be acknowledged at least once, and ack-eliciting packets
+MUST be acknowledged at least once within the maximum ack delay. An endpoint

I think I agree with @mikkelfj that MUST might not be the right word here. It's obviously unenforceable for one. But also, I think there are valid reasons where a packet won't be acknowledged. For one, we have a memory limit for the data structure we use to keep track of packets that need to be acknowledged. At a high enough rate, with enough (random?) packet loss you could have enough gaps to hit that limit. In that case, we start forgetting older packet numbers, and will never end up acknowledging them.

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