[quicwg/base-drafts] Allow endpoints to generate traffic keys asynchronously (#3874)

Kazuho Oku <notifications@github.com> Wed, 08 July 2020 08:38 UTC

Return-Path: <noreply@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6E5243A0CA5 for <quic-issues@ietfa.amsl.com>; Wed, 8 Jul 2020 01:38:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.1
X-Spam-Level:
X-Spam-Status: No, score=-3.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_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7PtJ6-ZZ-jb0 for <quic-issues@ietfa.amsl.com>; Wed, 8 Jul 2020 01:38:57 -0700 (PDT)
Received: from out-24.smtp.github.com (out-24.smtp.github.com [192.30.252.207]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F2F683A0CA4 for <quic-issues@ietf.org>; Wed, 8 Jul 2020 01:38:56 -0700 (PDT)
Received: from github-lowworker-0f78100.ash1-iad.github.net (github-lowworker-0f78100.ash1-iad.github.net [10.56.25.48]) by smtp.github.com (Postfix) with ESMTP id BFB886A050D for <quic-issues@ietf.org>; Wed, 8 Jul 2020 01:38:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1594197535; bh=qaXK0n4smNMNVWLqfe7M7CuJFn56lUUQBeoq0yaopfk=; h=Date:From:Reply-To:To:Cc:Subject:List-ID:List-Archive:List-Post: List-Unsubscribe:From; b=LJGBf/Y3XYZXqoxxC5CeD6f7uVP4jEkCH63obQO9c9FlK4sCsLVMFFRnIHlOI6j4F 8UPoN2vxubFhGx/jV+AX4E81IgViRZh/qPmNShoQPxyFEsBaMpu8xWmcMJkZf8TUy2 u9GjfzOzhl180t4xQBEEcMlAUvTt1FTUJWM7fsPg=
Date: Wed, 08 Jul 2020 01:38:55 -0700
From: Kazuho Oku <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+AFTOJK3PCPTKGSEFE3BOMN55CFTR7EVBNHHCN3MY3A@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/pull/3874@github.com>
Subject: [quicwg/base-drafts] Allow endpoints to generate traffic keys asynchronously (#3874)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5f05861fafbe8_6c8d3f88380cd9605011a4"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: kazuho
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/U0HQf1zY-H66YgjTqGWep0FIIjg>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 08 Jul 2020 08:38:59 -0000

As pointed out in #3821, the drafts assume that the traffic keys are generated synchronously. But that&#39;s not what we see in the wild. In fact, clients often need to spend time while verifying the certificate, and some if not most of the clients do receive and send QUIC packets while they do so.

This PR acknowledges the existence of such implementation, recommending them to buffer the undecryptable packets while they calculate the next key, to prevent loss events that would kill the slow start. It also allows endpoints to postpone arming the PTO timer when it knows that the peer is going to send a handshake message.

Closes #3821.
You can view, comment on, or merge this pull request online at:

  https://github.com/quicwg/base-drafts/pull/3874

-- Commit Summary --

  * allow endpoints to generate traffic keys asynchronously, write down the expectations in relation

-- File Changes --

    M draft-ietf-quic-recovery.md (22)
    M draft-ietf-quic-tls.md (8)

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/3874.patch
https://github.com/quicwg/base-drafts/pull/3874.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/3874