Re: comments on QUIC Recovery -24.

Ian Swett <ianswett@google.com> Thu, 14 November 2019 15:30 UTC

Return-Path: <ianswett@google.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 12E0D120129 for <quic@ietfa.amsl.com>; Thu, 14 Nov 2019 07:30:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.5
X-Spam-Level:
X-Spam-Status: No, score=-17.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 i3n2WDqM2flZ for <quic@ietfa.amsl.com>; Thu, 14 Nov 2019 07:30:20 -0800 (PST)
Received: from mail-ua1-x932.google.com (mail-ua1-x932.google.com [IPv6:2607:f8b0:4864:20::932]) (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 D78BB120113 for <quic@ietf.org>; Thu, 14 Nov 2019 07:30:19 -0800 (PST)
Received: by mail-ua1-x932.google.com with SMTP id k11so1981950ual.10 for <quic@ietf.org>; Thu, 14 Nov 2019 07:30:19 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=zwMxXL710ITM5PZy83dO6ctt3eNhWOCT7WL9piWFhPk=; b=k3Wi7csgoDXhrLWKzquUpOp3Sy7carI4lXTyFmg7PR37g5CvaiMDHQNQrcHYg/WqMj 08tKsQQjwG3tiutSGO0I0MO0Fcwq5l01MMEODbZwqJXYavP3BFzmQdOjXsPzEuYV32rM ApJLIw8PNhC1RxTnQI853pLNBzSSXu/26JjANf8XPPzPZabla1TZ8ALkiOT/P4nKsv5o SsLmzC974TSF8Vj3T0DKNEddHfJf3NywqYMj7HclN4kCwtmQWtx6jlAueVjuG0r4mlH2 8BPFaEwc4Dj1TYr9ssGaf7y54SU+vjOT325QrQyvh1hAdV8f5CvGzYK30zzHA2mAM+P0 VaVw==
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=zwMxXL710ITM5PZy83dO6ctt3eNhWOCT7WL9piWFhPk=; b=FJJ3bu9zecH1dhukgA0DzlXcVSzKgn30s99xT3AIoHaikqXcFq+Jkb5+VZ93FWLvsb Nk9Iy/c/aRPK21usEeBUyOvw6OFqYKteajvPFuIG3BBGXoDCqtA0UQ/lcYm0IbCJLhKb PoArBTzK3g5rhwFdK+7ALMBAAR6RGJrPtkzO7SlVC9tYZIQYKYNjEQWsHeDmF4fmZ8kw 6tTmrHHcuMVHoUvqdKlLlT4FvLbYrkQUZC8w7ujkpodLUpu4o1OS0la0aU/E4ZBOi4Th k/jsoBsnXMhuvVa4Yua4IPM0+8v+4THD+5dDAyQr2M6MLwXZqa8azXH2N75dhLLP4DJ2 IIHg==
X-Gm-Message-State: APjAAAWMRvfaLEs4B3aO3vamlXV2Cj81aDXDHH6JlgL3GcvDPLdw0tMq 1EWjJ7Ovi23UCiBhkqX5B8ocK3mR2h1+1EG346vkM8bjPmc=
X-Google-Smtp-Source: APXvYqzfxvucxBkUMOucfnizAaVm8uffLqu7bdudm5h6iFUrOqEc/LTWhnrwhCSz0jAjYtoPPU9jHpqca8TvbHcZgaA=
X-Received: by 2002:a9f:27a4:: with SMTP id b33mr5998580uab.24.1573745418480; Thu, 14 Nov 2019 07:30:18 -0800 (PST)
MIME-Version: 1.0
References: <5DCD3819.5050300@erg.abdn.ac.uk>
In-Reply-To: <5DCD3819.5050300@erg.abdn.ac.uk>
From: Ian Swett <ianswett@google.com>
Date: Thu, 14 Nov 2019 10:30:07 -0500
Message-ID: <CAKcm_gMuRJheKb7k7nNHuDj2-yp5s9k4jq8v+Q4kG_=_seneaA@mail.gmail.com>
Subject: Re: comments on QUIC Recovery -24.
To: G Fairhurst <gorry@erg.abdn.ac.uk>
Cc: "quic@ietf.org" <quic@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000a3306a0597502870"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/kW8HnFHQy9ddmD5vX7YNgikDAtM>
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: Thu, 14 Nov 2019 15:30:22 -0000

Thanks for the review Gorry.  I'll try to fix the editorial issues in a PR
tonight and then file issues for the non-editorial comments or comments I'm
not sure how to resolve.

On Thu, Nov 14, 2019 at 6:19 AM G Fairhurst <gorry@erg.abdn.ac.uk> wrote:

> QUIC Recovery
>
> I have comments on QUIC Recovery -24. These sets of come join two parts,
> this is the first. I hope most of the comments below are easy to resolve:
>
> Section 3, Para 1 last sentence. This sentence is true from the sender
> perspective, but the monotonic increase is not necessarily true at the
> receiver.
>
> Section 3.1.2, Para 1
> /is declared is acknowledged/
> - maybe would be easier to read as /is declared as acknowledged/.
>
> Section 3.1.2, Para 1
> /QUIC will do it correctly once/
> - There is an inference that TCP does not, and I would argue with that,
> because TCP measures the TCP loss recovery, that is often a larger
> interval than it could have been had TCP been designed differently, but
> this document is not a thesis on TCP. I would like to suggest / QUIC
> will appropriately reduce once/ as a more neutral text.
>
> Section 3.1.6, Para 1
> /allowing a peer to maintain a more accurate/ is I think an unnecessary
> judgment on TCP again, it would be fairer to say/allowing a peer to
> maintain an accurate/
>
> The term /host delay/ appears several times, but there is no discussion
> of hosts, only endpoints. The term host delay seems odd, can we call it
> endpoint delay or perhaps even “ACK delay” which I think is closer to
> the field used for this later in the spec?
>
> Section 4.1, final sentence
> /Ensuring that RTT estimates retain sufficient history is an open
> research question/
> - This is fine for an IRTF experiment, but really rests very
> uncomfortably in a standards track specification. I suggest this alone
> is not sufficient. An alternate could be to set some bound here that at
> least mitigates this - which could otherwise result in odd pathologies.
>
> Somewhere there is this (it's in several places):
> /smoothed RTT = latest RTT/
> - This needs to cite an RFC.
> - I'm not a huge fan of just assigning a RTT (without taking account of
> the variance) as a starting timeout. We've in the past been caught so
> many times with things being slightly or vastly different when the next
> flow starts and simply assigning the value seems like it could be the
> wrong thing to do.
>
> Section 4 pseudo code uses both Ack_Delay and ack_delay, I don’t
> understand the difference.
>
> Section 5
> This uses /ack/ and /ACK/
> - is there a difference?
>
> Section 5.1.
> /was sent long enough in the past/
> - This isn’t clear, please improve the text here to explain what is
> intended.
>
> /sent later was delivered, while …. /
> - Text should be improved. I suggest /while/ is reworked to avoid the
> inference these occur in parallel.
>
> Section 5.1.1
> There is no minimum dupack threshold specified. Why not? I could be
> persuaded that the recommendation was for 3, and that more is possible,
> but when would less than 3 fit with current other recommendations in the
> RFC series ?
> - also mentioned in B.1
>
> Also 5.4 final sentence
> - section 6 (last para -1) reads like this is intended as one “probe”
> packet, XXX what does RACK do in this cased with respect to CC?
>
> Section 5.3, final sentence:
> /may never be/
> - seems like it would avoid all possible ambiguity in whether this is
> allowed by using /could/.
>
> /Sending two packets on a PTO expiration increases resilience…/
> - and arguably doubles the non-congestion-controlled load.
>
> Section 6.1
> /endpoints are permitted to experiment/
> - This is much more than intent of RFC8311. The intent was that the IETF
> can publish experimental specs for other behaviours. That’s not the
> same, and I think the wording needs to be modified a little to reflect
> the actual consensus of the RFC.
>
> Section 6.2
> /anytime/any time/
>
> Section 6.9
> - the new text on pacing seems to be heading in the correct direction,
> but I don’t really understand how the congestion window will be managed
> if pacing is used and the connection becomes application-limited. The
> basic TCP spec would respond aggressively reducing the window; cwv would
> loosen this; what does QUIC say when pacing *is* used.
>
> Section 7.3
> /as having being marked/ should I think be /as having being CE-marked or
> lost/
> - add loss.
>
> section A.1 para 2.
> - I suggest text is added that mentions the actual reordering could be
> larger and how QUIC handles this.
>
> Section A4 - could the initialisation be clearer? - e.g. showing initial
> values for RTT etc.
>
>