Re: Comments on QLOG drafts
Hugo Landau <hlandau@devever.net> Fri, 19 January 2024 13:56 UTC
Return-Path: <hlandau@devever.net>
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 935EAC151522 for <quic@ietfa.amsl.com>; Fri, 19 Jan 2024 05:56:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 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, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=devever.net
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SUjgjSm_INcf for <quic@ietfa.amsl.com>; Fri, 19 Jan 2024 05:56:36 -0800 (PST)
Received: from ariel.devever.net (ariel.devever.net [134.209.45.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 58951C14F5FC for <quic@ietf.org>; Fri, 19 Jan 2024 05:56:35 -0800 (PST)
Received: from camelot.lhh.devever.net (localhost [127.0.0.1]) by ariel.devever.net (Postfix) with SMTP id 43E5FE27F7; Fri, 19 Jan 2024 13:29:07 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=devever.net; s=ariel; t=1705670947; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=q5pMsTXRBxR1lPzc4na3EVSHPuk+0st8mJcNfhTLByw=; b=pXMjor1+qr+tSV5xwHbjqGR/Ke07VzLgP0wIfZ4NMi5+nGwmFbnIT59tEjIeD/AbG8BJqB qGbT3zxUDUewtbKuyZF8PIQJRsWy2gcfzKBDuSQGTJ3F2nWOvVbhNEuAo7kwbA0vHfBY7R V1Ta9zB+WtEcVBM7Zjx1444iwxZmXej5bY0IscLFj9vEWCNsujgAK+ZSizXkiKrFMLYWou /rFbZR3DekgCcG7kjIa6PC4TII0xTqBg0Bd+EwiffTjTyGbIWLbbk4UoYMgxHuXBTTFPkT Nctkl+Fo8j8SO1IlK3hHr6svpRkJe5vIpnEIMbJz7EcB/Kp3WFpoh9ZTJONP2A==
Authentication-Results: ORIGINATING; none
Date: Fri, 19 Jan 2024 13:56:34 +0000
From: Hugo Landau <hlandau@devever.net>
To: Robin Marx <marx.robin@gmail.com>
Cc: quic@ietf.org
Subject: Re: Comments on QLOG drafts
Message-ID: <Zap_ktYYkRrc_QI0@camelot.lhh.devever.net>
References: <ZalprxQ7TESSfBN2@camelot.lhh.devever.net> <CAOoMnrjUgmZ85XdnYFcfeD62X7ksS346nkAz6a87pAezwwqkDg@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <CAOoMnrjUgmZ85XdnYFcfeD62X7ksS346nkAz6a87pAezwwqkDg@mail.gmail.com>
X-Spamd-Bar: /
X-Spamd-Result: default: False [-0.31 / 9999.00]; BAYES_HAM(-3.00)[100.00%]; SCC_BODY_URI_ONLY(2.80)[T_SCC_BODY_TEXT_LINE,__HAS_ANY_URI]; MIME_GOOD(-0.10)[text/plain]; NO_RECEIVED(-0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_ENVRCPT(0.00)[gmail.com]; TAGGED_RCPT(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DKIM_SIGNED(0.00)[devever.net:s=ariel]; __BODY_URI_ONLY(0.00)[__BODY_TEXT_LINE,__HAS_ANY_URI]; MIME_TRACE(0.00)[0:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; __THREADED(0.00)[]; TO_DN_SOME(0.00)[]; __NOT_SPOOFED(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; RCVD_COUNT_ZERO(0.00)[0]; FREEMAIL_TO(0.00)[gmail.com]; FROM_EQ_ENVFROM(0.00)[]; T_SCC_BODY_TEXT_LINE(0.00)[__SCC_BODY_TEXT_LINE_FULL, __SCC_SUBJECT_HAS_NON_SPACE]
X-Rspamd-Action: no action
X-Rspamd-Server: ariel
X-Rspamd-Queue-Id: 43E5FE27F7
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/O2lTXP-J2el-gbkTvz8I_NI2mtY>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.39
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, 19 Jan 2024 13:56:41 -0000
> Hello Hugo, > > Thank you for this very thorough review of the QLOG documents! > > Some of your remarks were clear (editorial) errors and I have changed them > in a single commit here: > https://github.com/quicwg/qlog/commit/21a3de1ec3dbcef1c636d91d841fa597f683c8f9 > > Others also indicate valid problems, but will require additional discussion > and/or work before being addressed in a PR. > I have opened individual issues for them in the github repo at: > https://github.com/quicwg/qlog/issues. Hopefully you're willing to continue > the discussion there. Thanks. Yeah, I'll definitely keep an eye on these. > Finally, for a few remarks, I'll offer my comments here, since I personally > don't think they should be addressed (but might warrant further discussion > in the wg through this mailing list): > > 1. For connectivity:spin_bit_updated's category: while I agree this is > somewhat QUIC specific, the same could be set for the connection_id_changed > event. This feels more like bikeshedding, so unless others have strong > opinions, I'd keep it at connectivity. Yep, this was extremely minor. Let's avoid bikeshedding and keep it as is. > 2. For quic:datagrams_sent and logging other ToS fields: I think ECN is > special here since it has a clear (potential) impact on transport-level > congestion control. I don't agree that other IP-level fields should be > logged here, and rather should get an IP-specific qlog event somewhere down > the line. Seems fair. > Similarly, IIUC QUIC implementations should ALWAYS request the "don't > fragment treatment" from an OS? If not, then I also agree this should not > be part of the datagrams_* events but rather part of a more general > "configuration" field (which we removed a while back due to no concrete use > cases ;)) Yeah, implementations are supposed to always se it. RFC 9000: In IPv4 [IPv4], the Don't Fragment (DF) bit MUST be set if possible, to prevent fragmentation on the path. There is a subtle out here where an implementation can avoid setting it if there's no way for it to do so. e.g. if an OS just doesn't provide the required API. So my feeling was it might be helpful if an implementation can note if it is setting this. But it is an extremely minor thing. > 3. For recovery:congestion_state_updated and uppercase-ness of the ECN > trigger value: ecn is consistently lowercase as field _name_ (as are all > field names in qlog), but we have other instances where ECN-related > _values_ are uppercase (and this is also a _value_, so I'd keep it at ECN) No objections, just thought I'd point it out. > 4. For recovery:loss_timer_updated and clarifying the "timer_type": we > currently have a comment pointing to RFC 9002 there; I would assume this is > enough? So I thought I understood the meaning of this field but I just followed the reference to RFC 9002 A.9 and actually got more confused. I think the reference should be A.8 not A.9, since that is the section which references updating the timer. My feeling is that while A.9 does briefly talk about "mode" in a single line of text the concept is not really developed properly in favour of the psuedocode which doesn't really talk about "mode". My interpretation of the "timer_type" field as things stand is that "ack" is supposed to refer to the case where SetLossDetectionTimer() executes the "// Time threshold loss detection." branch and "pto" where the "GetPtoTimeAndSpace" branch is executed, but I do feel this needs clarifying. The name "ack" here feels off also since it is really about the time threshold. Would definitely be nice to see some clarification here. > 5. For AckFrame and not being able to log the receipt of ECN data without > also logging the ECN values: I personally don't think this is sensitive > enough data to need a way to log this without revealing the values. > Additionally, one can arguably infer this through > recovery:ecn_state_updated that they "should be there" (if not scrubbed by > the network). That's one perspective - that the major reason why one wouldn't want to log the ECN values is the sensitivity of data. I raised this because I don't necessarily think that that's the only reason to avoid logging something - just my gut feeling. I agree this is a very minor issue though and am not too concerned either way. > Thank you again for your time on this. > It's very good to get input from a "new implementer" on the docs now that > they've progressed so much from the initial points where most people > implemented the format. No problem. If anyone is curious, this is my implementation, though note that it doesn't implement the current draft as QVIS doesn't support it yet: https://github.com/openssl/openssl/pull/22037
- Comments on QLOG drafts Hugo Landau
- Re: Comments on QLOG drafts Robin Marx
- Re: Comments on QLOG drafts Hugo Landau
- Re: Comments on QLOG drafts Lucas Pardue