Re: Benjamin Kaduk's Discuss on draft-ietf-quic-datagram-08: (with DISCUSS and COMMENT)

Benjamin Kaduk <kaduk@mit.edu> Fri, 28 January 2022 23:09 UTC

Return-Path: <kaduk@mit.edu>
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 6D3143A1746; Fri, 28 Jan 2022 15:09:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.499
X-Spam-Level:
X-Spam-Status: No, score=-1.499 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, KHOP_HELO_FCRDNS=0.399, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
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 Yh7vmI9S3Ky8; Fri, 28 Jan 2022 15:09:31 -0800 (PST)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 852073A1734; Fri, 28 Jan 2022 15:09:31 -0800 (PST)
Received: from mit.edu ([24.16.140.251]) (authenticated bits=56) (User authenticated as kaduk@ATHENA.MIT.EDU) by outgoing.mit.edu (8.14.7/8.12.4) with ESMTP id 20SN9JqE017587 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 28 Jan 2022 18:09:25 -0500
Date: Fri, 28 Jan 2022 15:09:18 -0800
From: Benjamin Kaduk <kaduk@mit.edu>
To: David Schinazi <dschinazi.ietf@gmail.com>
Cc: The IESG <iesg@ietf.org>, draft-ietf-quic-datagram@ietf.org, WG Chairs <quic-chairs@ietf.org>, QUIC <quic@ietf.org>, Lucas Pardue <lucaspardue.24.7@gmail.com>
Subject: Re: Benjamin Kaduk's Discuss on draft-ietf-quic-datagram-08: (with DISCUSS and COMMENT)
Message-ID: <20220128230918.GD11486@mit.edu>
References: <164340861623.26528.929610315910641983@ietfa.amsl.com> <CAPDSy+7PM7Op3ajuO6Q8izU3-L8=R2LNMNu4OOj4D58KmE4mrQ@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <CAPDSy+7PM7Op3ajuO6Q8izU3-L8=R2LNMNu4OOj4D58KmE4mrQ@mail.gmail.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/Os7JwN02lh3gyEp6EbwXAs-V03A>
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: Fri, 28 Jan 2022 23:09:36 -0000

On Fri, Jan 28, 2022 at 02:55:57PM -0800, David Schinazi wrote:
> Thank you for your review Ben. Responses inline.
> 
> David
> 
> On Fri, Jan 28, 2022 at 2:23 PM Benjamin Kaduk via Datatracker <
> noreply@ietf.org> wrote:
> 
> > ----------------------------------------------------------------------
> > DISCUSS:
> > ----------------------------------------------------------------------
> >
> > Section 5 refers to a "max_packet_size" transport parameter but I do not
> > see that parameter defined in the registry or RFC 9000.
> > It seems that a transport parameter of that name was present in earlier
> > versions of draft-ietf-quic-transport, but got renamed to
> > max_udp_payload_size in the -28, so hopefully this is just a trivial
> > rename.
> >
> 
> You're absolutely right, we missed the rename and will fix this by
> landing your PR #76.

Excellent, I'm glad this was the easy option, and as you note in the
follow-up, it's fixed in the editor's copy already, so I'll go clear now.

> ----------------------------------------------------------------------
> > COMMENT:
> > ----------------------------------------------------------------------
> >
> > I put some editorial suggestions (including the presumed resolution of the
> > DISCUSS) on github at https://github.com/quicwg/datagram/pull/76 .
> >
> 
> Thanks, let's discuss those on the PR.
> 
> Section 2
> >
> >    *  QUIC uses a more nuanced loss recovery mechanism than the DTLS
> >       handshake, which has a basic packet loss retransmission timer.
> >
> > This is true of DTLS 1.2 and prior versions, which technically is right
> > now the current version of DTLS.  However, it's not quite true of DTLS
> > 1.3, which includes an explicit ACK message to supplement the
> > retransmission timer.  DTLS 1.3 stands a pretty decent chance of being
> > published as an RFC prior to this document (per ekr, it should have the
> > last technical changes from the WG finalized this weekend and then go into
> > the "real" AUTH48 state), so I think we ought to speak to the mechanisms
> > of DTLS 1.3 here.
> >
> 
> How about we just remove "which has a basic packet loss retransmission
> timer"?
> I think it's safe to say that QUIC congestion control is more nuanced than
> that of
> any version of DTLS, including DTLS 1.3.

That seems reasonable.  I agree that QUIC CC is clearly more nuanced than
DTLS of any version.  And the value of going into any level of detail about
what DTLS actually does provide seems pretty minimal.

> Section 3
> >
> >    For most uses of DATAGRAM frames, it is RECOMMENDED to send a value
> >    of 65535 in the max_datagram_frame_size transport parameter to
> >    indicate that this endpoint will accept any DATAGRAM frame that fits
> >    inside a QUIC packet.
> >
> > It's interesting to compare this to the RFC 9000 max_udp_payload_size
> > default of 65527, the maximum permitted UDP payload.  Indeed, the QUIC
> > 1-RTT packet header does not even contain a length field that would limit
> > the frame size.  So I'm not entirely sure what motivates the 65535 value
> > specifically.  (I do see the subsequent discussion about how there are
> > other factors, including max_packet_size/max_udp_payload_size, that can
> > further limit what is usable.)
> >
> 
> We picked that value because it means "don't limit the length" and doesn't
> involve thinking about header sizes or doing math.

Okay.  I can't fault that, even if it seems that since we're bounded by
max_udp_payload_size we could just as easily reuse the 65527 value.

Thanks for the quic(k) turnaround!

-Ben