Re: [quicwg/base-drafts] Definition of "active connection ID" is misleading (or the name is) (#3200)

Kazuho Oku <> Thu, 07 November 2019 02:38 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id D3A4512011B for <>; Wed, 6 Nov 2019 18:38:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -6.596
X-Spam-Status: No, score=-6.596 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_28=1.404, 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 xTwzi798b8W8 for <>; Wed, 6 Nov 2019 18:38:56 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id BFCDC12008F for <>; Wed, 6 Nov 2019 18:38:56 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id CF9A36607DC for <>; Wed, 6 Nov 2019 18:38:55 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1573094335; bh=FvppjkXZ8HmLkEZD6OlDlTy1CD2cAWzBEK69uqVd7Nc=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=v6Fv99fM9FMk7x2HNZDKRhoLrkHKIyfDgWbolNUTFzLOWe+d0RBVWAsfs1HIeg3IV E8cMgbXe5uDhwUeOq41YJNb11MB53CU5t/SjN3mlwSf05ukb7O/gTV8pQJuVA7CloH AbQox17G5TuGUTlpDKfxniH76a3xXBtDLZPS8Hs0=
Date: Wed, 06 Nov 2019 18:38:55 -0800
From: Kazuho Oku <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/issues/3200/>
In-Reply-To: <quicwg/base-drafts/issues/>
References: <quicwg/base-drafts/issues/>
Subject: Re: [quicwg/base-drafts] Definition of "active connection ID" is misleading (or the name is) (#3200)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5dc383bfa789b_28fd3fd7ce2cd964436428"; 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
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: Thu, 07 Nov 2019 02:38:59 -0000

FWIW, the alternative approach (that could better match people's intuition) would be to retain the definition of "active connection IDs" as _connection IDs that are issued and not retired are considered active_, and change the normative texts.

Actually, I think that might be a better choice, due to the following two reasons:
* Current text requires you to issue new CIDs under two conditions; i.e., when receiving a packet carrying a previously unused CID, or when receiving RETIRE_CID. We can get rid of the former.
* Current design has a potential DoS vector that could lead to memory exhaustion on the CID issuer. This is because the number of CIDs that the current text recommends an endpoint to retain is active_connection_id_limit + number_of_CIDs_in_use. The number of CIDs in use is something that the consumer of CIDs controls. Changing the number of CIDs to be retained to just the value of active_connection_id_limit eliminates that attack vector.

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