Re: [quicwg/base-drafts] Retransmit server initial upon second Initial (#3080)

Martin Thomson <> Tue, 25 February 2020 23:25 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 1B1443A081B for <>; Tue, 25 Feb 2020 15:25:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -8.1
X-Spam-Status: No, score=-8.1 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_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 t3YuqFfC4TyH for <>; Tue, 25 Feb 2020 15:25:46 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 431573A081A for <>; Tue, 25 Feb 2020 15:25:46 -0800 (PST)
Date: Tue, 25 Feb 2020 15:25:45 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1582673145; bh=TmWaGW5B73eQSvrHRM1ceFBquy2JgQ1D2p8DV5rzcnM=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=RcNWkCf2WsKf1ST9569HLl6Q+WDT3uSyRzjSwMurXp5Cf8RPnNes4fRuFIPhxvCK6 aAI+xu6aCGYph+g4nEP7+fBsZ7JkJBFsg9yczH9FJBfW/1oX2sUXzdcp37b0Lc/Ul7 pNsbJ32SV3O2FGBM4sIatNQ0go8q28vrnuv6A8qM=
From: Martin Thomson <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/pull/3080/review/>
In-Reply-To: <quicwg/base-drafts/pull/>
References: <quicwg/base-drafts/pull/>
Subject: Re: [quicwg/base-drafts] Retransmit server initial upon second Initial (#3080)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5e55acf985566_6a583f7f2eecd9606136a"; 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, 25 Feb 2020 23:25:48 -0000

martinthomson commented on this pull request.

I like the first paragraph.  I'd lose the second.

> @@ -519,6 +519,24 @@ bytes.
 Initial packets and Handshake packets may never be acknowledged, but they are
 removed from bytes in flight when the Initial and Handshake keys are discarded.
+### Speeding Up Handshake Completion
+When a server receives an Initial packet containing duplicate CRYPTO data,
+it can assume the client did not receive all of the server's CRYPTO data sent
+in Initial packets, or the client's estimated RTT is too small. When a
+client receives Handshake or 1-RTT packets prior to obtaining Handshake keys,
+it may assume some or all of the server's Initial packets were lost.
+To speed up handshake completion under these conditions, an endpoint MAY send
+a packet containing unacknowledged CRYPTO data earlier than the PTO expiry,
+subject to address validation limits. (see Section 8.1 of {{QUIC-TRANSPORT}})

subject to address validation limits; see Section 8.1 of {{QUIC-TRANSPORT}}.

> +Peers can also use coalesced packets to ensure that each datagram elicits at least
+one acknowledgement.  For example, clients can coalesce an Initial packet
+containing PING and PADDING frames with a 0-RTT data packet and a server can
+coalesce an Initial packet containing a PING frame with one or more packets in
+its first flight.

I'm not sure about this paragraph.  It is implying something about packet composition into datagrams that is inconsistent with our general approach.

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