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

Gorry Fairhurst <gorry@erg.abdn.ac.uk> Thu, 23 July 2020 08:31 UTC

Return-Path: <gorry@erg.abdn.ac.uk>
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 466283A0A52 for <quic@ietfa.amsl.com>; Thu, 23 Jul 2020 01:31:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham 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 WEvqyKPBotRT for <quic@ietfa.amsl.com>; Thu, 23 Jul 2020 01:31:45 -0700 (PDT)
Received: from pegasus.erg.abdn.ac.uk (pegasus.erg.abdn.ac.uk [IPv6:2001:630:42:150::2]) by ietfa.amsl.com (Postfix) with ESMTP id 76CA03A0A50 for <quic@ietf.org>; Thu, 23 Jul 2020 01:31:45 -0700 (PDT)
Received: from GF-MacBook-Pro.lan (fgrpf.plus.com [212.159.18.54]) by pegasus.erg.abdn.ac.uk (Postfix) with ESMTPSA id 404791B0023F for <quic@ietf.org>; Thu, 23 Jul 2020 09:31:43 +0100 (BST)
Subject: Re: Consensus call for Late-Stage documents, pre-IETF 108 edition
To: quic@ietf.org
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> <74ef5430-8e3f-4b6b-b81f-b25443e975b4@www.fastmail.com> <32c098c3-24e4-1d7c-fdf5-33761adacfa8@erg.abdn.ac.uk> <FA3E4F14-570C-4A28-A2C8-EA2B3937E614@eggert.org> <0ee0a444-3910-3e71-54aa-581431495648@erg.abdn.ac.uk> <3644F334-F148-4FF5-AE86-015C073871AC@eggert.org>
From: Gorry Fairhurst <gorry@erg.abdn.ac.uk>
Message-ID: <01cf1f47-d9e5-c0dc-ef1d-0c641b4cd025@erg.abdn.ac.uk>
Date: Thu, 23 Jul 2020 09:31:42 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:68.0) Gecko/20100101 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <3644F334-F148-4FF5-AE86-015C073871AC@eggert.org>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/lAdy2apJPpmjTplDRRF9Or8znJ0>
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 08:31:47 -0000

On 23/07/2020 08:42, Lars Eggert wrote:
> Hi,
>
> On 2020-7-23, at 10:34, Gorry Fairhurst <gorry@erg.abdn.ac.uk> wrote:
>> These methods often hash based on port, IP, and maybe other fields to select a queue - There are a finite set of queues, a rehash results in the traffic moving queue ... to chooses a different path or queue within the device. This mapping is statistical, this matters more if the multiplexing is low and a port change results in unbalance across quques/paths.
> I agree this is mostly a concern for low-mux'ing cases when a single rehash can create significant imbalance. How common are such deployments,
Sounds like interesting research for PANRG: How could we obtain that 
data for the general Internet? Specifically do you know of measurement 
campaigns that looked at this across different types of network path?
> and how much of a problem is such a temporary imbalance (the CC will adjust quickly).

Maybe, or is it true?  The reaction and impact depends on how QUIC's 
congestion controller deals with path changes (significant changes in 
capacity) esp when accompanined by RTT changes.

I could  suggest a test case where flows are divided in the network 
between two paths - one shorter RTT, one longer RTT and more 
constrained. A change in path results in traffic using wrong path 
assumptions. QUIC's Loss Recovery and Congestion reaction are timer 
based, and this timing information is wrong after a change, and the CC 
decision is also wrong. TCP wouldn't have done that.

> Esp. compared to forcing slow-start after every NAT rebind.
>
> Lars

If you say you wish to avoid slow-start after NAPT rebind, then I think 
this is a significant change to CC behviour relative to other IETF 
transport protocols, and is not similar to what Reno-TCP would do.

If you only reset QUIC's RTT estimator, that could be sufficent, 
especially if the port change didn't result in changes in capacity. It 
does however stand the risk that CC overshoots the capacity and the flow 
might suffer more. Reseting both until you confirm the new transport 
path seems safer in a PS, and is what the Recovery Draft currently says.

However, once the RTT is reset following this port change, a new path 
RTT is then established by the QUIC CC, I'd expect that the CC can then 
make informed decisions about what to do using the observed RTT. That 
could be slkow start. It would also seem reasonable that an endpoint 
that knows this RTT is the same as previous could then use this as a 
reasonable sign to become more aggressive than slow-start, perhaps 
restoring the CC state. To me, that sounds a lot like the case where a 
congestion-controller "thinks" it has evidence where there might be more 
capacity, but the endpoint isn't sure (as in Section 7.10, albeit in 
that case for other reasons... but there still needs some safety when 
there is significant path change). This sounds like a way the IETF could 
examine, and if we figure out the details, I expect this might work well 
for QUIC?

Gorry