WGLC review of draft-ietf-quic-ack-frequency-07

Martin Duke <martin.h.duke@gmail.com> Mon, 13 November 2023 21:01 UTC

Return-Path: <martin.h.duke@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 BCD1FC151538; Mon, 13 Nov 2023 13:01:23 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.107
X-Spam-Level:
X-Spam-Status: No, score=-2.107 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, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] 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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id g5ebEH2RujjQ; Mon, 13 Nov 2023 13:01:23 -0800 (PST)
Received: from mail-vk1-xa33.google.com (mail-vk1-xa33.google.com [IPv6:2607:f8b0:4864:20::a33]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 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 3B6D5C1516F3; Mon, 13 Nov 2023 13:01:23 -0800 (PST)
Received: by mail-vk1-xa33.google.com with SMTP id 71dfb90a1353d-4ac023c8f82so2201356e0c.1; Mon, 13 Nov 2023 13:01:23 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1699909281; x=1700514081; darn=ietf.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=dzGskViHjK4ZyxiAsXyCByDD6Sp5RSOLJJ8NqbpJvZY=; b=Qf2wqulr+1a4vml7ohRCk3TSRthldmxdO328VWhcTC3yrYDLKV2KS8ReJccT1fq4R8 SXG40IBpTqmDOaCLQOg0mCPcSMBX52Fz4RXE5+k7QxoixSJzkV/GpAVAgoKh/UcE4/Z3 jQzLGbefByOVY2GSS1CnEio63ncnDrxtgfIgUDgKTfucYIz1nckzBwo8lwu7wCHN+6IO NvM1H5Oiu9gJqKaIDQxr6zsGArpFmBVpQHYksL3HhWfBtO90xxJeT1ZPqnR/X7SbWA/V ngAw7TLmRl2iySaewphvPReksBDn829zQ5UqGOsVZYlLcNVn7SzFl859qj02ezqCYk85 kAqg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699909281; x=1700514081; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=dzGskViHjK4ZyxiAsXyCByDD6Sp5RSOLJJ8NqbpJvZY=; b=OeMurQMRC6Pn/7mB6ASmiq95ISCjxxxFFvVvmn15JSpr0YbReQIzQgOlXxvSBcUdZw FN4pzjJoCrMzuH6ubOVORR9uXRU7SelMda9XEtLtgfqbwI5JAnxkmuyAF4E7WNr5r+8T 8MRCysZLRcLkK1Pa7ATekjp7cLD0XtTCNH/YkcyhTkx6Mb8tUlU9uj/AKgKpf7N7QyOo fyOSFJCeFzuogytLR+gZn1gMp3jMW+T3KhQlq5pIE+TiIj4tgynvcHbc+0Ipo5yzjO2O VudJEf7cNuCVUqg8om3Mqo/U5l3/ho9bsYsr8wDS3EbULN4p+4Lae4NwCaUQ3oU6Fh3X 1zqA==
X-Gm-Message-State: AOJu0YwIfUpXVC65fexLmhfGQ2Fu1h6fcFZz23S5mRuY7MT74u+1a1D8 Cvbc7zkK7oh272TwR6u9wC5dFCboAITMXQnDa77jHGUMf+s=
X-Google-Smtp-Source: AGHT+IGYtyTldQi2WwzyBZGJJLNixz8jLbKpdC6k1Xur9AtMZj8KYxTqS3NxX6rV359LmkisYINvctfXQqyzfYbl5Ik=
X-Received: by 2002:a05:6122:10d6:b0:48f:8533:3cda with SMTP id l22-20020a05612210d600b0048f85333cdamr6962255vko.11.1699909281296; Mon, 13 Nov 2023 13:01:21 -0800 (PST)
MIME-Version: 1.0
From: Martin Duke <martin.h.duke@gmail.com>
Date: Mon, 13 Nov 2023 13:01:08 -0800
Message-ID: <CAM4esxR1W9fxf9xKm9+c30VcejKjgpr_t31r6CnSj1U0BDQU=Q@mail.gmail.com>
Subject: WGLC review of draft-ietf-quic-ack-frequency-07
To: draft-ietf-quic-ack-frequency@ietf.org, IETF QUIC WG <quic@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000dcb574060a0ef88b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/EKQ3qYkmxdFMuhGeTv2OWW43Jg8>
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: Mon, 13 Nov 2023 21:01:23 -0000

(No hats) IMO this is ready, but I have some minor comments.

(3) "Receiving a min_ack_delay transport parameter indicates that the peer
might send ACK_FREQUENCY frames in the future. Until an ACK_FREQUENCY frame
is received, receiving this transport parameter does not cause the endpoint
to change its acknowledgement behavior."

This doesn't seem consistent with earlier statements in the document.
Specifically, min_ack_delay is meant to indicate the ability to *receive*
ACK_FREQUENCY. Indeed, the previous paragraph states that it is perfectly
legal for an endpoint to not send this TP and send ACK_FREQUENCY, provided
that the peer sent the TP.

Granted, it would be weird for the endpoint to not send the TP if it is
also going to send ACK_FREQUENCY frames, which maybe is what you mean? But
IMO this paragraph just confuses things.

(4) "Receipt of an invalid value MUST be treated as a connection error of
type TRANSPORT_PARAMETER_ERROR"

Is this really a TRANSPORT_PARAMETER_ERROR if it's caused by a frame that
violates the limits in the peer's parameter? I think it's more of a
PROTOCOL_ERROR, or better yet, a newly minted error code.

(3) and (5). What are the requirements to coordinate use of IMMEDIATE_ACK
frames? The transport parameter specifically only addresses ACK_FREQUENCY.
I would imagine that the TP also advertises the willingness to receive
IMMEDIATE_ACK?

(6.2) "Unreported Missing:
Packets with packet numbers between the Largest Unacked and Largest
Reported that have not yet been received"

Please specify that this is inclusive. In the first example, when packet 10
arrives, Largest Reported is exactly 7, and there is an ack because 7 is
missing.

(7) There is an outdated reference to "ignore order". This should be
"reordering threshold = 0". Indeed, the statement

"When Ignore Order is enabled and loss causes the peer to not receive
enough packets to trigger an immediate acknowledgement, the receiver will
wait 'max_ack_delay', increasing the chances of a premature PTO. Therefore,
if Ignore Order is enabled, the PTO MUST be larger than the peer's
'max_ack_delay'."

seems outdated. Instead, the sender can only ignore max_ack_delay if the
number of packets in flight >= ack_eliciting_threshold +
reordering_threshold if reordering_threshold > 0. In effect
reordering_threshold = 0 is a special value that actually indicates
infinity.

Martin