Re: Increasing QUIC connection ID size

Marten Seemann <martenseemann@gmail.com> Sat, 13 January 2018 04:53 UTC

Return-Path: <martenseemann@gmail.com>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6691012D7EF for <quic@ietfa.amsl.com>; Fri, 12 Jan 2018 20:53:39 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 aTDa_u7iwQf7 for <quic@ietfa.amsl.com>; Fri, 12 Jan 2018 20:53:37 -0800 (PST)
Received: from mail-ua0-x22f.google.com (mail-ua0-x22f.google.com [IPv6:2607:f8b0:400c:c08::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6A91E12D7EC for <quic@ietf.org>; Fri, 12 Jan 2018 20:53:37 -0800 (PST)
Received: by mail-ua0-x22f.google.com with SMTP id g16so5417088ual.2 for <quic@ietf.org>; Fri, 12 Jan 2018 20:53:37 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ffHkQKtZSklVcT3LpMJ0iSuQcXlo1MSzYyjlNfzUNr8=; b=EqfhM5eXqwi9L9lccZbh4eU/7q0b7K3ztrgT54+P5+O00U44djVPqc58HRvaZTVCHC eMz6TZvyNxiP6ApOT/YyKg7cG/1HtSjlNeTpnUyXNH9ZGvAlJXUQCteLOAkYFm4OZ9rd y+cRX/1C/AJeLcnPtQNYHV+EzwATumKCS3pr41s9pITG9c++MD/jixAFKzO2pKlCwRnT 9kQ6SqpYS5Vwqrklf+O5/DU6NqqWqGGdTAKvijdfAyw2s4FUIwd0JT+3rf6LtQYFQ3/M by57zhk8TvsI10Ir/o0++Mr8rT5NaxqVM3a7yo30rAFdkfYeJCAUk2O/DqMOh6Nf8CR4 NYqA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ffHkQKtZSklVcT3LpMJ0iSuQcXlo1MSzYyjlNfzUNr8=; b=KStXmiK+ASNXuHXldXd5ojCrPALh2OaIU+lVT36vFoOJ3pM14MnQdaI+maZQuDKA1F SP/0ZvNFnWavDqFvN70oWw/kFsHvbZZju9xOMxzhZ5emVNpgaRx9Sxm02G9ky556NYre BWY5lMEySBDDilONLTklsW6MfEn5O5wcdTpVRUvc4N5K05DZghJVDTB0WpSevt14adXU IVX8c6o26AT2OfFEJkM01lS36xZ/ThkTO/RYwtgylQ+89gA+V2hKeI7Xl+oN6Z/hjm7O zeH9GNnORrYo9RryRTyqJJ3MCT/q8DCVEWZPR0M0oqLrQlEWWEVJtJWz5r6aibHmkzsy 95EA==
X-Gm-Message-State: AKwxyteZaQO0s3ev8AkiTtvSmA5922I4/YuUqLt9+QkA8ruCAsZU2Cv7 kGfIckvle85s0WwKgTBZxnO7DtA4BD2YpzrCeQE=
X-Google-Smtp-Source: ACJfBovxM1cZOFZY47GU6m7YF6nFXPhOEifYIKSAu8vMkFQ98REYhO2u9B6CZkx3UNWfiHEKdzntksXawMLgUAN/PC8=
X-Received: by 10.176.30.203 with SMTP id p11mr18171818uak.126.1515819216051; Fri, 12 Jan 2018 20:53:36 -0800 (PST)
MIME-Version: 1.0
References: <CAAZdMad=YnTyXG-q0ACpT=tyCSX1GgRLvb=8HT3Au=e9_XT5Ag@mail.gmail.com> <d2a6136f93654eb1a5c7970cfb41f7ad@usma1ex-dag1mb5.msg.corp.akamai.com> <CAN1APdf7MqhdQ-+VMOwsNgz_F+OZK-8CzndwWTQq4FPM52ro9Q@mail.gmail.com> <1142e1ee-ae7b-b0be-625a-4136c6085c08@huitema.net> <CAAZdMaf2RCHHzmuFbN_EV1ohqc=EutgQ0SO8innLLuyoy+YK=A@mail.gmail.com> <CAGD1bZZ=e0egn9M9JUmvbzAx+xF7csu1m4kNkrsSEqiLOt9oWA@mail.gmail.com> <38830ad8-b6d7-1539-56d2-ccf8be3483bf@huitema.net>
In-Reply-To: <38830ad8-b6d7-1539-56d2-ccf8be3483bf@huitema.net>
From: Marten Seemann <martenseemann@gmail.com>
Date: Sat, 13 Jan 2018 04:53:24 +0000
Message-ID: <CAOYVs2oRveLXNhBDdNZ2PL7VOuiC7K4mza1JkNCUjumwLCvzAw@mail.gmail.com>
Subject: Re: Increasing QUIC connection ID size
To: Christian Huitema <huitema@huitema.net>
Cc: IETF QUIC WG <quic@ietf.org>, Jana Iyengar <jri@google.com>, Victor Vasiliev <vasilvv@google.com>
Content-Type: multipart/alternative; boundary="089e08288ceceaa2ee0562a1292b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/9OKACxxb_BpVhTNdc649-gfcoV4>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 13 Jan 2018 04:53:39 -0000

I’m corcerned about the overhead. In the p2p use case, there’s no need for
encoding any routing information into the connection ID, and since every
node just handles a small number of connections, even 4 bytes would be more
than enough to distinguish between connections.
I can see the use case for 128 bit connection IDs, but in order to reduce
the overhead for other applications, we should either do some kind of
negotiation or a varlen encoding.

On Sat 13. Jan 2018 at 09:12, Christian Huitema <huitema@huitema.net> wrote:

> On 1/12/2018 3:06 PM, Jana Iyengar wrote:
> > I'm not entirely convinced of the overhead concern. In the common HTTP
> > case, we expect server->client to not carry CIDs, so this is a NOP in
> > the commonly bandwidth-limited case.
>
> Not just the transmission overhead. You are also increasing the memory
> footprint of the connection context, which stores at least 2 CNX-ID, and
> maybe more if we want to support migration.
>
> But I agree that this is not the end of the world.
>
> Also, following Victor's message, I was doing the maths on the size of
> the ID. 64 bits allows for 24 bits of server ID, 32 bits of client
> nonce, and 8 bits of zero -- for checking. 8 bits check will still let
> 0.4% of forged packets through, which is probably OK since the server
> acts as a backstop. 24 bits would work for 16M servers, which should be
> OK, but assumes that servers have a unique serial ID, which is not
> necessarily OK. Then 32 bits look like they allow 4G connections per
> server, but we start seeing collisions after 65K connections per server,
> which seems not good. So, yes, 64 bits probably will be very tight if we
> want the router to be stateless.
>
> > I do think that this makes CID generation at servers substantially
> > simpler -- you can simply add 1 to the current CID to generate a new
> > one, and encryption makes it unlinkable to the previous one. This is a
> > substantial benefit.
>
> Yes, you can do that without relying on a secure random generator, and
> thus without exposing more of the state of the crypto PRNG. Which is
> nice. Another advantage, if the router can reliably map connection-ID to
> servers, then we don't need to have the same reset secret for every server.
>
> Just one request. If we do make a change, please go for a fixed size.
>
> -- Christian Huitema
>
>
>
>
>
>