Re: [quicwg/base-drafts] Retransmitting an ACK frame warning (#3049)

Martin Thomson <> Wed, 23 October 2019 08:41 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 7B802120133 for <>; Wed, 23 Oct 2019 01:41:48 -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 xh4Gb6sgj4oz for <>; Wed, 23 Oct 2019 01:41:47 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 1CD971200B7 for <>; Wed, 23 Oct 2019 01:41:46 -0700 (PDT)
Date: Wed, 23 Oct 2019 01:41:46 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1571820106; bh=HMwMRaa7HRQDz8kAM6pvyyERmZpGNeombCXxl2IRO5g=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=Md/T3VHpvpd83s0mYdkswlIh3oAC2oIW7nZRpp//xjYQaEg0eJz/ZxeoKYL8N2FIF bFGE6gsVzxwmngKIJXxe9B7ZPK+xJPzIyz4Z2PMwuPYZr6oTExL+nuosBZwPPWCk6q Cg0kbbuVINeMlhwAD2/nBkp9NytrZFAACUL4kvCA=
From: Martin Thomson <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/pull/3049/review/>
In-Reply-To: <quicwg/base-drafts/pull/>
References: <quicwg/base-drafts/pull/>
Subject: Re: [quicwg/base-drafts] Retransmitting an ACK frame warning (#3049)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5db0124a3ab42_37193fc22d2cd95c22203"; 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: Wed, 23 Oct 2019 08:41:49 -0000

martinthomson commented on this pull request.

This is my preferred option, but I might reword it.

> @@ -3181,9 +3181,10 @@ containing that information is acknowledged.
   unless the endpoint has sent a RESET_STREAM for that stream.  Once an endpoint
   sends a RESET_STREAM frame, no further STREAM frames are needed.
-* The most recent set of acknowledgments are sent in ACK frames.  An ACK frame
-  SHOULD contain all unacknowledged acknowledgments, as described in
-  {{sending-ack-frames}}.
+* ACK frames are sent containing the most recent set of acknowledgements and
+  Ack Delay, as described in {{sending-ack-frames}}. Retransmitting an old ACK
+  frame with stale Ack Delay can cause the peer to generate an inflated RTT
+  sample.

Here's my alternative:

> ACK frames always contain an acknowledgement for the highest packet number that has been processed and an Ack Delay that is updated to the time that the packet is sent.  Note that delaying the transmission of packets containing ACK frames or sending copies of old ACK frames will cause problems for a peer, including inflated RTT estimates or unnecessary disabling of ECN.

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