Re: [tsvwg] question regarding L4S claims

Pete Heist <pete@heistp.net> Fri, 05 June 2020 11:33 UTC

Return-Path: <pete@heistp.net>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2A4453A14D8 for <tsvwg@ietfa.amsl.com>; Fri, 5 Jun 2020 04:33:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 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, SPF_HELO_NONE=0.001, 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=heistp.net
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 aJARwQv_QvZZ for <tsvwg@ietfa.amsl.com>; Fri, 5 Jun 2020 04:33:18 -0700 (PDT)
Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [IPv6:2a00:1450:4864:20::429]) (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 86F6B3A14BC for <tsvwg@ietf.org>; Fri, 5 Jun 2020 04:33:17 -0700 (PDT)
Received: by mail-wr1-x429.google.com with SMTP id l10so9373716wrr.10 for <tsvwg@ietf.org>; Fri, 05 Jun 2020 04:33:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heistp.net; s=google; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=jbC84+slSODOwIfC9G0S7O5qng4oU9un1ngwwwMiDzU=; b=UPawMSDJHEQojNx6YPaYrmyDGiK43lVc56KyrknMRcK5QqMWRyLT6aFAKW+WGD1fpl fGZbDXWHxlDgPs4kGWV7sz0kSWqbcATavDSH3dc+YKA0kKMW296L3/3mHfu8lipq1x/n 5H378nNGBnLrFbnchraSAUV/TMRpEVFgeCCTABckpf82fhZ2L3kx08w4Wrh5AbjPTUaq U8YS1k3B9PNtfcPZ/8QiEfGOpjryKq02QChJLW16W8CQof08LFdwYriq7SqIG0ioY9OZ Os3qIpCPeCz8pF738KR9T3M/YrR8JVw5kose66Uy/owl5n8WaG4kdh3kVZwSaiNPGTed eySA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=jbC84+slSODOwIfC9G0S7O5qng4oU9un1ngwwwMiDzU=; b=RMTLSFaQHbdUdpHNWgH90PAKexKWHcF1shj8mMms3uhMlQgTFjZ6EKWWxv0kr1jztf E6DvTJPzRMdOSGSw+psVueqIY3gwK5Sn/xOtVLLBFMSfa7rJsPpieiSJ1hZ7Wao7gkEa alijPaXtB1bxkuwZ/PBZrb/J4a9xH3aUIjnrvceD4AljCPSNzBHQGF0VRTCog/ReM063 5nlem2aYpGpeP9bLzyLx+HDq9o4hQnaCpRJLw1llYTELj8pa0ZSdktmATzvvs8P4q71k dArmGjj36HeM2jMobvaHwUz7sGwfMz15z2aJ58SULna3riGXUcGZnthYyGcJwG2/hDUj oSkA==
X-Gm-Message-State: AOAM533Ux426qDdzGAvIGnz9xrbjRQ3rpIPAdUKfMMNMmJRD7W/z9J4n X+bcoIbKcfiIRZ9HP2pB9aKUWA==
X-Google-Smtp-Source: ABdhPJyMuxBrlWWDD+0poPbiJMmQ6c2phbSO/w7t9wVKcNiDcVSDXd/VNRCSwkuSVfpEIyDvzGZkXg==
X-Received: by 2002:adf:e68a:: with SMTP id r10mr9044241wrm.384.1591356795832; Fri, 05 Jun 2020 04:33:15 -0700 (PDT)
Received: from yoda.luk.heistp.net (h-1169.lbcfree.net. [185.193.85.130]) by smtp.gmail.com with ESMTPSA id c5sm12804757wrb.72.2020.06.05.04.33.14 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 05 Jun 2020 04:33:15 -0700 (PDT)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.5\))
From: Pete Heist <pete@heistp.net>
In-Reply-To: <E2A2330D-DAC3-4189-A5EE-D33F7CE49B90@gmail.com>
Date: Fri, 05 Jun 2020 13:33:14 +0200
Cc: Sebastian Moeller <moeller0@gmx.de>, TSVWG <tsvwg@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <995BC572-4A36-4D1B-9CF8-510DB0108C86@heistp.net>
References: <E3F3E880-0A67-4C6A-8F23-DD7E129E96CD@gmx.de> <E2A2330D-DAC3-4189-A5EE-D33F7CE49B90@gmail.com>
To: Jonathan Morton <chromatix99@gmail.com>
X-Mailer: Apple Mail (2.3445.9.5)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/grZswGrHjdCLd1sngYkViJAUn6I>
Subject: Re: [tsvwg] question regarding L4S claims
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 05 Jun 2020 11:33:27 -0000

> On Jun 4, 2020, at 1:32 PM, Jonathan Morton <chromatix99@gmail.com> wrote:
> 
>> On 4 Jun, 2020, at 12:27 pm, Sebastian Moeller <moeller0@gmx.de> wrote:
>> 
>> 3) 99.9th %ile queuing delay: the assumption here seems to be that only the single AQM hop actually controls all variable RTT jitter. And that 99.9 is a relevant number here, which obviously is debatable.
> 
> I've been wanting to bring up something related to this point for a while, but other matters have previously taken precedence.  My question is: when and under what circumstances does the observed 99.9th-percentile delay occur?

I’m interested in knowing the answer to this as well.

> In the case of fq_codel, tested with a conventional TCP stream, it will obviously be at the termination of slow-start, when the exponential growth (doubling cwnd per RTT) cannot be stopped instantaneously, but continues for one more RTT after the first congestion signal is given (which for CUBIC may be a delay signal interpreted by HyStart).  So the peak queue depth at slow-start termination will tend to be at least the baseline path RTT, and will then quickly settle down to congestion-avoidance mode in which the peak delay is only slightly greater than the Codel target (ie. 5ms).  And I remind readers that fq_codel protects other flows from experiencing the peak delay of one flow's startup.
> 
> The situation with L4S is less obvious, noting that the data presented is very old, and comes from DCTCP rather than any recent version of TCP Prague.  I consider it likely that DCTCP's slow-start is terminated prematurely by L4S' very aggressive AQM interacting with the natural burstiness of an unpaced slow-start, so the early phase is characterised primarily by linear rather than exponential growth.  We might therefore reasonably guess (in the absence of a corresponding time-series plot which could confirm or deny this hypothesis) that the 99.9th-percentile delay quoted for DCTCP corresponds to the congestion-avoidance phase rather than slow-start.

According to the presentation, there are 300 "web-like flows” per second with ECN, and 300 w/o ECN, using an exponential arrival process, with file sizes having a Pareto distribution from 9.1K to 1M, on a 120Mbit link with 10ms path RTT. I also expect at those high arrival rates that flows drop out of slow start early, but this would need to be reproduced to verify it. FCT would be interesting to see here for the web-like flows, as well as how performance changes with a few different realistic levels of burstiness and jitter.

> If true, the quoted 4.5ms figure would represent only a couple of milliseconds' improvement over the congestion-avoidance latency performance of fq_codel with CUBIC, and an actual deficit of perhaps a millisecond compared to CUBIC-SCE performance with an SCE-enabled AQM, both at default settings.  And of course it is entirely possible to delete the slow-start phase entirely and rely only on the linear or polynomial growth factors, as long as you're willing to accept the greater delay before the path capacity is actually found.  If minimising peak latency is paramount, that might just be a sacrifice you have to accept.

The concern I have is that minimizing peak latency of capacity seeking flows in CA isn’t paramount, but that is what has been used as a KPI in some discussions. A difference of 2-3ms in CA will often be lost in comparison to delays from other sources than queueing. More important for capacity seeking flows is that they achieve high utilization with reasonable delays. Since we’ve seen that burstiness can dramatically affect the utilization of HFCC flows depending on the marking scheme used, and since high capacity is also identified as important in draft-han-iccrg-arvr-transport-problem-01, burst tolerance and utilization need to be balanced for this application.

Delays for both isochronous and VBR UDP flows are also important to consider, because those generally will be latency sensitive, e.g. for voip, videoconferencing and interactive applications. Afaik those haven’t been tested, so we need to do that, and also look at what impacts they’ll have on HFCC flows in a shared low latency queue, and again, how the marking strategy affects utilization in that case.

Hopefully some of Sebastian’s concerns can be addressed with more realistic traffic patterns and path characteristics, which admittedly is work needed in our testing also. Reproducing a test similar to what is in that presentation but with some key variations mentioned above should be worthwhile.

> But it's pretty clear that remote-rendering VR headset displays is not practical over a network.  It's barely practical even within a single, up-to-date gaming-spec PC, without involving a network link at all.  I can entirely believe a 20ms latency budget for that application, as it's consistent with a 90fps minimum frame rate for VR headsets that I've seen quoted elsewhere.  That equates to 11ms between frames, and the information needed to start rendering that frame has to be prepared in advance.  Just getting data over a USB cable reliably within 9ms is challenging enough!
> 
> - Jonathan Morton
>