Re: Consensus call for Late-Stage documents, pre-IETF 108 edition

Martin Thomson <mt@lowentropy.net> Thu, 23 July 2020 00:36 UTC

Return-Path: <mt@lowentropy.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 020B83A0A86 for <quic@ietfa.amsl.com>; Wed, 22 Jul 2020 17:36:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.12
X-Spam-Level:
X-Spam-Status: No, score=-2.12 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_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, 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=lowentropy.net header.b=BgW9Gckz; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=i8d5f3V/
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 4tb6H6splHMK for <quic@ietfa.amsl.com>; Wed, 22 Jul 2020 17:36:44 -0700 (PDT)
Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5D5CA3A0A87 for <quic@ietf.org>; Wed, 22 Jul 2020 17:36:44 -0700 (PDT)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id DBDDC5C00C5 for <quic@ietf.org>; Wed, 22 Jul 2020 20:36:42 -0400 (EDT)
Received: from imap2 ([10.202.2.52]) by compute2.internal (MEProxy); Wed, 22 Jul 2020 20:36:42 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lowentropy.net; h=mime-version:message-id:in-reply-to:references:date:from:to :subject:content-type; s=fm2; bh=4Xui95SE4X4arUwQWVJRkW13vQzjjaZ uIRhopEaBH+k=; b=BgW9GckzW2xo3mbzEPHWvuK5MWzRxZLtQaNL4BnloN43ND3 JaNH83giRv3OD932qKC4Z8fQGZDXxT4lFx64iBn2pfBFdenQZqif17orRIF19ZnP mqaQndbm9CFFGNxGNIWrQ6jEBts4QA5v4Z+BVquZ9FbCgp5pseTb9pANhxSFqbFE XGkAda3NDloP2/kd/uheGZKcVbvU2Nd9bMP150RlzIEintNY8Gw6PB8hC/AOQ9zk GtW8dw9oPC+4xJZUUnRjQS7/zFiIwBF9+RnUvdv4GcYLoutL78B/NnRqCw7T4V2F 3L6OyNOi1SmhP3ay4QJkYGeoY8nVXP4hu3TT4mw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=4Xui95 SE4X4arUwQWVJRkW13vQzjjaZuIRhopEaBH+k=; b=i8d5f3V/aGLtH8bJF3ywa5 bs4hXY0l2bwOX9vuYUt7leR17RYa7hcZvffuqGTlcmW30u7jilrInlMHxkWZ/iQt mSD7lsVtsCz6nn7g+5GYisJUo1qoBwjWfrKh6iMQRjFzftfBi1LEfKgZcSo9KLCY OdAVh8tzHcsB7v2yg1nV1xL1zjE4wJ8xjN0bQ807pov0QLOjgaxUTKuSpNttQDNU 0RCE+ZyhZRaccgwWXcVyoFgW3IX2QZJT2qPfLuk5MuQI+KFUANW3ZXpYS2sOgbYc WZsRP6uy7flXImILfGy4R+gly9bGZrVfdg+wkDDNPvhD1UA/UOnmbjkQg5eSf+mQ ==
X-ME-Sender: <xms:mtsYX59tRTwNPJxIHQEMafmUO5jyoNbR3hUsu9HA-TxLAlU1m08ARw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduiedrhedtgdefkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkjghffffhvffutgesthdtre dtreertdenucfhrhhomhepfdforghrthhinhcuvfhhohhmshhonhdfuceomhhtsehlohif vghnthhrohhphidrnhgvtheqnecuggftrfgrthhtvghrnhepkeetueeikedtkeelfeekve fhkeffvedvvefgkefgleeugfdvjeejgeffieegtdejnecuvehluhhsthgvrhfuihiivgep tdenucfrrghrrghmpehmrghilhhfrhhomhepmhhtsehlohifvghnthhrohhphidrnhgvth
X-ME-Proxy: <xmx:mtsYX9uilkKPQUQVqx3lw436qN1WaHster4MJfs9dm7KIpTLQkynBg> <xmx:mtsYX3BxuLMGZ0ZtDF2Ox6huVSUgL2guksj477nQczpJR4dE97pX-w> <xmx:mtsYX9dYljNtebXxfaeoBTVN6qmZhCBKEgF_4DUsvaQIwm3_z1Pg6A> <xmx:mtsYXwtaFHnXCR9eeoZnUs-py091OpqkopNP_eRrh_VZ24KbaAc-oA>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 685DDE00A8; Wed, 22 Jul 2020 20:36:42 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.3.0-92-g11c785d-fm-20200721.004-g11c785d5
Mime-Version: 1.0
Message-Id: <74ef5430-8e3f-4b6b-b81f-b25443e975b4@www.fastmail.com>
In-Reply-To: <7b5c104c-36b6-3fe1-4e5b-0e42cc9e2b36@huitema.net>
References: <CALGR9obkGENj_Brk5D29Z6HB-yq9TbPLjUXSNbotAZJ0LRHgSg@mail.gmail.com> <CABcZeBMQNX_qbXT_qCmyWuXdLeL2=ar0u9yKB=c8M7=WNB4oVQ@mail.gmail.com> <1909E24B-73CC-4129-9B64-F0A3BE2D74D7@eggert.org> <CA+9kkMCRfhNayN5jM5g3Ckwst4GGxR++be5p7ea1jYkE3MbzqA@mail.gmail.com> <CABcZeBOcZd9=Th4T=rm0i+EGnG1i8bjembf20ungVYaDSpjusQ@mail.gmail.com> <7b5c104c-36b6-3fe1-4e5b-0e42cc9e2b36@huitema.net>
Date: Thu, 23 Jul 2020 10:36:23 +1000
From: Martin Thomson <mt@lowentropy.net>
To: quic@ietf.org
Subject: Re: Consensus call for Late-Stage documents, pre-IETF 108 edition
Content-Type: text/plain
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/wlgxbfQZ-5naB5gXPUaPr-JQ1AI>
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, 23 Jul 2020 00:36:46 -0000

Is the intent to avoid talking about what knowledge an endpoint might use to decide to transfer state?

On Thu, Jul 23, 2020, at 05:43, Christian Huitema wrote:
> Sounds good to me too.
> 
> -- Christian Huitema
> 
> On 7/22/2020 9:44 AM, Eric Rescorla wrote:
> > Ted's proposal would be acceptable to me.
> > 
> > -Ekr
> > 
> > 
> > On Wed, Jul 22, 2020 at 7:48 AM Ted Hardie <ted.ietf@gmail.com> wrote:
> >> If ekr's objections is that this is a hint, rather than more explicit, we can incorporate Lars' point by a minor adjustment of the text:
> >> 
> >> OLD: 
> >> 
> >> On confirming a peer's ownership of its new address, an endpoint MUST
> >> immediately reset the congestion controller and round-trip time estimator for
> >> the new path to initial values (see Sections A.3 and B.3 in {{QUIC-RECOVERY}})
> >> unless it has knowledge that a previous send rate or round-trip time estimate is
> >> valid for the new path. For instance, an endpoint might infer that a change in
> >> only the client's port number is indicative of a NAT rebinding, meaning that the
> >> new path is likely to have similar bandwidth and round-trip time.
> >> 
> >> 
> >> NEW:
> >> 
> >> On confirming a peer's ownership of its new address, an endpoint SHOULD
> >> reset the congestion controller and round-trip time estimator for the new path to 
> >> initial values (see Sections A.3 and B.3 in {{QUIC-RECOVERY}}) unless the 
> >> change is only to the client's port number.  Because port-only changes
> >> are commonly the result of NAT rebinding or other middlebox activity, 
> >> the client MAY retain its estimation of the path bandwidth and round-trip time
> >> in those cases..  A conservative implementation may also revert to initial values
> >> in this case.
> >> 
> >> That shifts it from hint territory to explicit resolution.
> >> 
> >> regards,
> >> 
> >> Ted
> >> 
> >> 
> >> On Wed, Jul 22, 2020 at 12:36 AM Lars Eggert <lars@eggert.org> wrote:
> >>> Hi,
> >>> 
> >>> On 2020-7-22, at 6:11, Eric Rescorla <ekr@rtfm.com> wrote:
> >>> > As I said, I don't have a strong opinion about the outcome, but we shouldn't just hint to people that they should ignore the port.
> >>> 
> >>> existing protocols basically just broke when a port or IP address changed (e.g., a NAT rebinding happened). So how to respond to this is something that we don't have existing IETF practice for AFAIK.
> >>> 
> >>> The conservative approach would be to mandate a CC reset on any change to the four-tuple, since it indicates a possible path change.
> >>> 
> >>> For clients in consumer access networks behind CPE NATs, that conservative approach is probably too conservative, since the CC-relevant properties of the path are unlikely to have changed if just the source port changed.
> >>> 
> >>> On the other hand, with client side CGNs and server-side BALBs (big-ass load balancers...) a port change now maybe is more indicative of a path change.. But it's not clear that this path change is more likely to affect the CC-relevant path characteristics.
> >>> 
> >>> One final thing I'll point out is that all IETF transports have been happily ignoring at least one path change indication since forever - there is no mandated reaction to any change in the received IP TTL, and I'm also unaware of any implementation reacting to IP TTL changes (which would indicate a change in path length, something that probably would lead to CC-relevant changes in path characteristics.)
> >>> 
> >>> That, together with the observation that CC will react to a path change anyway after an RTT due to loss/marks, leads me to believe we're probably OK to not reset CC on a port change. It might mean that we're sending for about an RTT at a rate that is too high in some rare (?) cases, but in the vast majority of cases, we'd avoid needless performance degradations..
> >>> 
> >>> YMMV.
> >>> 
> >>> Lars