Re: [quicwg/base-drafts] Include handshake anti-deadlock logic in pseudocode (#2281)

Benjamin Saunders <> Tue, 01 January 2019 23:12 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id A98E4128CF3 for <>; Tue, 1 Jan 2019 15:12:03 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -8.065
X-Spam-Status: No, score=-8.065 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.065, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, 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 7xkNUQgOYn4v for <>; Tue, 1 Jan 2019 15:12:02 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id E856E12008A for <>; Tue, 1 Jan 2019 15:12:01 -0800 (PST)
Date: Tue, 01 Jan 2019 15:12:00 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1546384320; bh=Z831RbpnyElhsRXxo9YpMJekIGbrbflCxrMJUFVmBsY=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=qLxNQsRYgBaDJYHDCkZOkxcpR+tiA68dWl9LdCU/dBcphD47isoRyuqc3IlzOzqQa wf2zggsFiuG5MEYTRufOuUPVhfE612ErlO5ZU0yPmSwoC8tonEpui32NUn1f3OLWOb geh9QiJJikDvyto7vh8aZ9oswuLg59rGaUzaR2vk=
From: Benjamin Saunders <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/pull/2281/>
In-Reply-To: <quicwg/base-drafts/pull/>
References: <quicwg/base-drafts/pull/>
Subject: Re: [quicwg/base-drafts] Include handshake anti-deadlock logic in pseudocode (#2281)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5c2bf3c0bf73c_2723feb424d45b43278a"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: Ralith
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, 01 Jan 2019 23:12:04 -0000

> BTW, this wasn't directly a comment on this PR, but on the cited text as well as the code.

Right, but I think the currently-required behavior is justified. Consider this case:
1. Client sends Initial w/ CRYPTO
2. Server sends Initial w/ CRYPTO, ACK, followed by Handshake flight; Handshake flight is lost in full
3. Client establishes Handshake keys; sends Initial w/ ACK
4. Server Handshake packets continue to be lost until the 3x budget is spent.

Because the client's crypto packets have all been ACKed, and it has received no further ack-eliciting packets, it has nothing to send.

If the client's second Initial was also lost, meaning the budget is only about 3600 bytes, this can happen almost immediately; a single Quinn server Handshake flight is larger than that.

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