Re: [tsvwg] I-D Action: draft-ietf-tsvwg-nqb-15.txt

Sebastian Moeller <moeller0@gmx.de> Sun, 02 April 2023 11:06 UTC

Return-Path: <moeller0@gmx.de>
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 A1E96C14CE31 for <tsvwg@ietfa.amsl.com>; Sun, 2 Apr 2023 04:06:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.846
X-Spam-Level:
X-Spam-Status: No, score=-6.846 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_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmx.de
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 FmKxL8XPU_Nq for <tsvwg@ietfa.amsl.com>; Sun, 2 Apr 2023 04:06:19 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 94DA8C14CE2B for <tsvwg@ietf.org>; Sun, 2 Apr 2023 04:06:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1680433573; i=moeller0@gmx.de; bh=7BLllB4VcrLom23Cy44kFYtU8mAhCkMda7hmWLwIDOs=; h=X-UI-Sender-Class:Subject:From:In-Reply-To:Date:Cc:References:To; b=hJOXsIR9jJ0ezB7fu7cF9ZjInma/EbgGeSO1b4YrAVL4lEAZsO9PVM1z7jvn6eNXG Vgy2idRCn5aDrrio9NzJ+KmINJ7xxMTX8eDWQa8Foi2Bzh8jUIG1ABszp0x1X+yzUg 1Vlx7T6zRwTFXmvDuuBF9gX/GYnrFwLehOh9shvRfHhaljsBazjEkgApeOvhk7FnDm hwaV+L+GvOOJyQ7QkWGebDx+v0oyLN+AWJG+akJpHIkIDrWA69ELuwRswZnfRTYdiu FHuyaHeT4vo1dIVnGfvCA4MS4SnlW3CIwkbkWZxnh5TnWFadLAgZ/sqSt02rs/OavX B5gtadNCK7mpg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from smtpclient.apple ([77.3.68.204]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1M6lpG-1pmoDz1In0-008H08; Sun, 02 Apr 2023 13:06:13 +0200
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.2\))
From: Sebastian Moeller <moeller0@gmx.de>
In-Reply-To: <FR2P281MB1527BFB4CEE69622FCE71C6A9C8E9@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
Date: Sun, 02 Apr 2023 13:06:11 +0200
Cc: alex.burr@ealdwulf.org.uk, tsvwg@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <A5A14B44-27D4-4848-8755-22A1BC293F17@gmx.de>
References: <167348364734.15098.9183646444272144529@ietfa.amsl.com> <99798453-8EAB-4FAC-9F04-060EA42C5D37@cablelabs.com> <8FEB8FB8-849F-4F6E-BDAD-0EF53F010173@gmx.de> <vzeYc5YbJNlwG-Eelc9Ua79lI-OftySXhDOTNwS4NG115U4aIeX7D4Rs06Euqp6y7xFuUZpGOJY6pba_YN-DP5yuKjzP7ilpOwVLpuK8iD4=@ealdwulf.org.uk> <FR2P281MB1527BFB4CEE69622FCE71C6A9C8E9@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
To: Ruediger.Geib@telekom.de
X-Mailer: Apple Mail (2.3696.120.41.1.2)
X-Provags-ID: V03:K1:fstE7xxkJk4jtkE8IhHA+eSkcPhKyGnQUb928cTzXGQilt4pO98 aav/F5yJvkoNZY5S5WsyVAAHXsM5JO9mjziA49K30SiO/QqZHOFYiIWBScBUCFVeWz9T3gN pWUpWyp5D0Gy1u8Ou9tOJQBeZCH8RArriWLWznVu7iTiC+Ck/zL+kaTlUuTj/JAUmKAPtTL hKec3W2fkq/RJ5yXT7PUw==
UI-OutboundReport: notjunk:1;M01:P0:FvHsaY56gds=;Mgo18vRAvsIDCtav5hAul11KKm7 uOmyoYTj+sDS5y9Q/vAnvdm8RhwJy4qntKQo32ZMDkRhrW1YSWXEWyxlplX96U+9FxHzFaxFR UpwDGXB8jLdmI2ZI3e3qYQSEcliT1rp3TQhwxBwcJX5cdRrVY9pl88bQZrdgutvlcGPo38HmU o3qubvUvVWatgQElKzgXcvRvleoxpFKgBTxbL05gOaEcHnVuhWX/ufcfjNt3Tt+sZlnDXXqI3 ZPUgDT/thBS6Zqz6GKF+4RD52uDCyMvX5G1xdHxdLWq1m1WAn9Ih6E9DaSPd+UHeyHZaF27vz TJKnnxswYAZNjJZG8lY+XtSGG0t001BJEK8dEPt9J1sOSe88i3cz+gIvR/tyzH65fDQWhQpLd PZVdd8qZ67u9Osj/z0HjjEFSIR6pLnI6vyI1yjv3uZw9WZPpPrrWqdk+FSFO6MmXCj2HcHadi 4OKsdClyAx4negQxF+BjC2B9zrrDr25V1VEmpmaH+yM+1tYv3T1bYb7jwxuImnf7Oi3sV2fMt Q1Z1wXSmkweoqClAqGDMNvwiYjB/zeXzyF9eB3cAq1zlop8YYYY6qne5Q/2cExOCrZPKnCfxo /UaWNmEBrcv5iPIqrI3ds9RIuY4Mang5wTg9TrPNoPuu+JxibZPBltC2jaZbg2NnPyOqXm5ji Y53dHI0eUPRIn/bbdIYBgvm7Jk7fMS/QOLzPDNy53NWewXZvZwVnKYzZYeE1sJIvSdCDE3FBI b5WywZZySjP4TwtUZs4AAtANv0x1Ok3X95uQhgYOHKpaWkUK+fumUpzJgdC4d3Fk0xcCPeIXw iq+wAqwKxInn6GGir0vgCoWI91Pvf5f0OafqGzVDHz8IKX5nmh/94ellINEArl9dh4sXhrDsB LNaa0gUM6CysjmZ79vEYLhsGqGinQXtx8UqGvGwo7sSrldkfJO0x+4tXLRF7Dv6BzWtXwM++1 AFCCxy3VFes1PoyPFsli/KH+CA0=
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/gkivTzD534vLrsylijCrkA4UotM>
Subject: Re: [tsvwg] I-D Action: draft-ietf-tsvwg-nqb-15.txt
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.39
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: Sun, 02 Apr 2023 11:06:23 -0000

Hi Ruediger,

> On Mar 30, 2023, at 09:23, Ruediger.Geib@telekom.de wrote:
> 
> Alex,
> 
> is that Maxwells Demon scheduler working similar as the one on slide 5 of
> https://datatracker.ietf.org/meeting/116/materials/slides-116-iccrg-alternative-best-effort-abe-for-service-differentiation-trading-loss-versus-delay  ?
> 
> The scheduler described by that publication isn't NQB, it trades low delay for packet loss during congestion. Another notable difference is, that NQB allows packets which can't be scheduled by the low delay queue, to get access to the default queue. Hence these packets are the only ones being able to access both schedulers, low delay and default. So there's no strict priority in NQB scheduling at the NQB scheduler itself, however there's exclusive access to scheduler resources for a particular kind of traffic (NQB at the expense of default/QB). In the end I think, NQB is able to seize more bandwidth than QB.

	[SM] I assume the problem is that it seems intended to put NQB traffic into the LL-queue of an L4S scheduler. So it appears as if the goal for the NQB PHB is to not put additional constraints on the L4S scheduler. Now, this is clearly speculation, but it is based on the docsis' low-latency design. The consequence of that is however that the NQB queue can be abused easily (reasonably paced traffic that is application limited below 50% of capacity but that is above the 1 Mbps recommended rate, will see both reduced latency variability and potentially a larger capacity share (assuming more than one additional flow). 
	Side-note: I disagree with the notion, that assuring that QB and NQB share the capacity equitably between classes is an acceptable goal. As far as I understand the goal should be that all individual flows get roughly the same chance" to transmit their packets, which to me means rough per-flow equitable sharing (everything else ends up picking winners and loosers, which is fine as explicit policy, but IMHO not as default for a PHB that claims compatibility with DF traffic)

[SM] The current draft claims:
"The PHB is also designed to minimize any incentives for a sender to mismark its traffic, since neither higher priority nor reserved bandwidth are being offered. "

but the recommended optional enforcements do not actually assure that, see the described way to gain >= 50% of capacity for a single NQB flow over multiple QB flows in the likely earliest NQB deployment (as part of low-latency docsis).



> 
> While the authors of the above material present a fair amount of measurement results giving some indication how the scheduler impacts transport while not having been editing any ID, I note that the authors of NQB, a standards track doc, didn't publish any measurement or simulation result within IETF. 

	[SM] +1; this is also unexpected, given that within the docsis low-latency frame work there already should be a usable implementation available that could already have been submitted to laboratory and real-world testing (with knowingly participating networks).


> 
> A kind of priority or "unfair advantage" (not sure it's the right term) results from shallow queues, once the default queue depth is approaching congestion free RTT. I didn't give it a deep thought, but could that say, the default queue of such an experiment is of sub-optimal depth if it is on the order of the RTT or bigger (and should be decreased)?

	[SM] I would guess that the default queue would be sized in accordance to some theory (e.g. expected BDP, or expected BDP/square-root(number concurrent flows), or similar). Exactly because to serve for example TCP-Reno flows at acceptable utilization the deep queue is deep, and is expected to show some delay variability. It is partly that variability that NQB aims to "keep away" from the NQB queue. This clearly requires an "unfair transmit slot access" but that is IMHO part of the PHB's definition and purpose*, however the (potentially/likely) unfair access to >= 50% of link capacity is not something the draft sufficiently discusses.

Best Regards
	Sebastian


*) It is clear to me that this requires some form of prioritization, hence I argue that the draft should not claim "without prioritization".



> 
> Regards, Ruediger
> 
> 
> Alex wrote: 
> 
> The following thought experiment should illustrate that moving from a single queue, to two queues with a scheduler between them, can be positive sum for latency/delay:
> 
> We have two traffic types A and B. In the "control group" case, they are in the same queue. In the test case, we separate them into two queues. The queue for type A offers the same treatment the original single queue. The queue for type B has a different treatment with a shallow queue.
> 
> The scheduler between the two is  Maxwell's Demon. The demon knows exactly which time slots the packets from each type *would have used* if they had been moving through as single queue. It schedules as follows:
> * When a packet of type A would have exited the single queue, the demon lets through a packet from queue A. 
> * When a packet of type B would have exited the single queue, the demon lets through a packet from queue B.
> * If a packet from the appropriate queue is not available, it lets the slot go empty.
> 
>