Re: NEW_CONNECTION_ID sequence numbers
Ted Hardie <ted.ietf@gmail.com> Wed, 05 January 2022 14:37 UTC
Return-Path: <ted.ietf@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 7E4A03A0A7E for <quic@ietfa.amsl.com>; Wed, 5 Jan 2022 06:37:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level:
X-Spam-Status: No, score=-1.997 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, 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 (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 5sMwcaiGdzhI for <quic@ietfa.amsl.com>; Wed, 5 Jan 2022 06:37:07 -0800 (PST)
Received: from mail-io1-xd2c.google.com (mail-io1-xd2c.google.com [IPv6:2607:f8b0:4864:20::d2c]) (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 921C93A0A79 for <quic@ietf.org>; Wed, 5 Jan 2022 06:37:07 -0800 (PST)
Received: by mail-io1-xd2c.google.com with SMTP id y18so40315867iob.8 for <quic@ietf.org>; Wed, 05 Jan 2022 06:37:07 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YzcZy/fe7lUkb8SE8vNahA0fukjipTd4yfUoT0slUlI=; b=BVnIgYP+aU/brYZqkcW2hKt83PNJGYSUkDh6O11H0Py1hczsPRsBCYnUn0m1sqoKaC 7tkl1EkhK60+JTl2DS3K2tbciPV7mq1pQAhfFHTvVLSVotG2HvOSuvStvvDGjgQn87EO CAYN1OofZOgA/4ecjrjTilBA+1k5eby0b4J+3xbXElH8N/3MjSzRB8e65hsRpnVoKamP PRTaRL3tdCkeDLC4suorI9gG4jNYzwvqeLhm9hKlbRZrc6SQS1fV19VPHc6BcHU89E2s e9NAERPNit9CG6cATf1Ay4w+MrRCD/cll+seGIGi2+FrKqpCbGFva9GlBFLk1PmX7Z9K +26Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YzcZy/fe7lUkb8SE8vNahA0fukjipTd4yfUoT0slUlI=; b=TUZoUQSxVbNhjc2Kl1odqQFD+fj39irv+aJQDJYDcMMwvYn4AtMWIBjn9B2bG3+Wmk WzTj9eeCMwKpFDvavMXHkjnhsPlS5UroOAQGHxCO6XDLfEnwZ+unksbm1L9KKG8OyXTf TTglqCNJUhXnAkokDoA2icFcHmQWBopen+cdyVEfAxCtWE/Wtco/lADFH8jJiXzPPFOF c/O4L1uTQFwLt/TWvdFikVTg/8ut8AiVwlQzBtD4uZJUugD0+rrrvrU3hIMmey6Teugj i24YDI9j3V1YEKdegjmd5ZvGITE4YEjMjuPC8hnn6y3trOM6scivHXsEyANUTzLyrZId zOVw==
X-Gm-Message-State: AOAM533EwXmvXhhoQtbaTkNZkoI0yGlHj7/kc6f/M33sEkbfHR3QdItd z1ZAyv1Qtfzflw3UiAesKgpQT0ef5GBGP9Q1xDk=
X-Google-Smtp-Source: ABdhPJy4WDdhgTJNUD3/Qe8oT57FIDVbTp+QSoxmv6T9auVeP9wnaq/as8K/rwnGNDZ7trf47EWEFWwcpV3TQ7oWlJ4=
X-Received: by 2002:a05:6638:2055:: with SMTP id t21mr25904504jaj.298.1641393425976; Wed, 05 Jan 2022 06:37:05 -0800 (PST)
MIME-Version: 1.0
References: <27e024ed-a78f-416e-869d-82930c7388a3@beta.fastmail.com> <CANatvzyq_sftiTeEEWi3JpYm1+bQS3TsC+wiUxksTpAP0h9gmQ@mail.gmail.com> <A5417EA8-BF3F-4CAE-B2B8-01E5715154E7@ericsson.com> <CAKcm_gNXiRUgj4t=xoC_J13rcd5YfsuvtSzVPGz3hpYHc7fmLg@mail.gmail.com>
In-Reply-To: <CAKcm_gNXiRUgj4t=xoC_J13rcd5YfsuvtSzVPGz3hpYHc7fmLg@mail.gmail.com>
From: Ted Hardie <ted.ietf@gmail.com>
Date: Wed, 05 Jan 2022 14:36:40 +0000
Message-ID: <CA+9kkMB310zU37BV7asV8oTF8EXby3WWz=ZDnQCXNPoA2aY1Rw@mail.gmail.com>
Subject: Re: NEW_CONNECTION_ID sequence numbers
To: Ian Swett <ianswett=40google.com@dmarc.ietf.org>
Cc: Mirja Kuehlewind <mirja.kuehlewind=40ericsson.com@dmarc.ietf.org>, IETF QUIC WG <quic@ietf.org>, Martin Thomson <mt@lowentropy.net>, Kazuho Oku <kazuhooku@gmail.com>
Content-Type: multipart/alternative; boundary="000000000000178f1205d4d6b0d8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/rjE8zIdFNoaPSkXM8vjY7Bf0LaM>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.29
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: Wed, 05 Jan 2022 14:37:13 -0000
I agree that a short clarification would be helpful. I did not implement this, but I would have used logic that resulted in a situation similar to Martin's, as it is non-intuitive to me that a connection ID of "1" has a special meaning in an initial connection and a different one if sent in a NEW_CONNECTION_ID. Kazuho's text makes clear why my intuition is wrong, but it is pretty subtle to expect an implementer to catch. regards, Ted Hardie On Wed, Jan 5, 2022 at 2:22 PM Ian Swett <ianswett= 40google.com@dmarc.ietf.org> wrote: > I think a short clarification would be helpful, since I can see this being > misread by others, but I have no opinion of whether it's an errata or not. > > On Wed, Jan 5, 2022 at 8:37 AM Mirja Kuehlewind <mirja.kuehlewind= > 40ericsson.com@dmarc.ietf.org> wrote: > >> If we want to keep a record we could also create an errata and ask the AD >> to set it into “held for document update” state… >> >> >> >> >> >> *From: *QUIC <quic-bounces@ietf.org> on behalf of Kazuho Oku < >> kazuhooku@gmail.com> >> *Date: *Wednesday, 5. January 2022 at 07:21 >> *To: *Martin Thomson <mt@lowentropy.net> >> *Cc: *IETF QUIC WG <quic@ietf.org> >> *Subject: *Re: NEW_CONNECTION_ID sequence numbers >> >> >> >> Martin, thank you for bringing the issue to the list. >> >> >> >> 2022年1月5日(水) 14:57 Martin Thomson <mt@lowentropy.net>: >> >> Hey, >> >> I discovered a problem in my implementation of NEW_CONNECTION_ID that >> quicly didn't like. I was always skipping sequence number 1, even when >> there was no preferred address, which caused quicly to think that I was >> exceeding the limits it set. >> >> Kazuho, Jana, and I all agree that my code was wrong, but I found it >> pretty hard to clearly identify how this was specified in the spec. Here's >> what it says: >> >> > The sequence number of the initial connection ID is 0. If the >> preferred_address transport parameter is sent, the sequence number of the >> supplied connection ID is 1. >> > >> > Additional connection IDs are communicated to the peer using >> NEW_CONNECTION_ID frames (Section 19.15). The sequence number on each newly >> issued connection ID MUST increase by 1. >> >> -- >> https://quicwg.org/base-drafts/rfc9000.html#name-issuing-connection-ids >> <https://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-2a7ac3727495dfff&q=1&e=2924cc42-2683-482a-9fc8-11e09e03a8df&u=https%3A%2F%2Fquicwg.org%2Fbase-drafts%2Frfc9000.html%23name-issuing-connection-ids> >> >> Is it abundantly clear that I'm wrong based on this? Did I miss a >> clearer piece of text elsewhere? Or, should we be looking to open an >> erratum? >> >> >> >> I think that the cited text is the only place that discusses this, and >> regarding the text we have now, it seems to me that it clearly *implies* >> that if preferred_address TP is omitted, then the CID(seqnum=1) should be >> carried by a NEW_CONNECTION_ID frame. >> >> >> >> If we were to skip CID(seqnum=1) when preferred_address TP is omitted, >> then we would have not used a clause like "if the preferred_address >> transport parameter is sent." Instead, we would have omitted the if clause >> or said like "regardless of preferred_address transport parameter being >> sent." >> >> >> >> Therefore, my personal view is that an erratum is *not* required. >> However, I agree generally that implications are a source of confusion. If >> we are to revise the spec, this is one place that we can do better. >> >> >> >> Anyways. Even if we are to conclude that an erratum is unnecessary, it is >> always good to keep a record of how potentially confusing text should be >> read (or be improved in the next revision). To that respect, I appreciate >> your bringing this issue to the list regardless of how we would conclude. >> >> >> >> >> Cheers, >> Martin >> >> >> >> -- >> >> Kazuho Oku >> >
- NEW_CONNECTION_ID sequence numbers Martin Thomson
- Re: NEW_CONNECTION_ID sequence numbers Kazuho Oku
- Re: NEW_CONNECTION_ID sequence numbers Mirja Kuehlewind
- Re: NEW_CONNECTION_ID sequence numbers Ian Swett
- Re: NEW_CONNECTION_ID sequence numbers Ted Hardie
- Re: NEW_CONNECTION_ID sequence numbers Eric Kinnear
- Re: NEW_CONNECTION_ID sequence numbers Christian Huitema
- Re: NEW_CONNECTION_ID sequence numbers Martin Thomson
- Re: NEW_CONNECTION_ID sequence numbers Eric Kinnear
- Re: NEW_CONNECTION_ID sequence numbers Lucas Pardue
- Re: NEW_CONNECTION_ID sequence numbers Kazuho Oku
- Re: NEW_CONNECTION_ID sequence numbers Christian Huitema
- Re: NEW_CONNECTION_ID sequence numbers Martin Thomson
- Re: NEW_CONNECTION_ID sequence numbers Zaheduzzaman Sarker
- Re: NEW_CONNECTION_ID sequence numbers Mirja Kuehlewind
- Re: NEW_CONNECTION_ID sequence numbers Lars Eggert
- Re: NEW_CONNECTION_ID sequence numbers Zaheduzzaman Sarker