Re: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" discussion during the interim

"De Schepper, Koen (Nokia - BE/Antwerp)" <koen.de_schepper@nokia-bell-labs.com> Wed, 02 March 2022 14:34 UTC

Return-Path: <koen.de_schepper@nokia-bell-labs.com>
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 5C4343A08A6 for <tsvwg@ietfa.amsl.com>; Wed, 2 Mar 2022 06:34:59 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.911
X-Spam-Level:
X-Spam-Status: No, score=-1.911 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nokia.onmicrosoft.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 m-jGKbTK8voL for <tsvwg@ietfa.amsl.com>; Wed, 2 Mar 2022 06:34:54 -0800 (PST)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2072b.outbound.protection.outlook.com [IPv6:2a01:111:f400:7d00::72b]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2483E3A088F for <tsvwg@ietf.org>; Wed, 2 Mar 2022 06:34:53 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZrdhAJXVK/Cmwpceajn+4VXxLzQIV1p/hQF507nhAV9Qfn86Z76yprymb3Ju1YnUVPxHWAyPu9snBnVABm0LcxNxfa3CxYAuovNI12BuPhVTbTSsgJ3KuWpyeduZI+cf43p1qqoz6E2PMmHRvOCV1SlohOQG50Aq1cSUBVcwZ57+TYkRxsjTOzkv7Sl0RFUebJH5wG8kIIKOBNir7p3n0l+4seH8KQu5snQdN8tYIzfDdOlfd1YSOUlEe2U8Sj5uTCPw+UmoOBGatIMjP5dWJFhzwJJOIOWT5jUdpKqJNxpVv62GpMf4TdC1oNPFh9GFRzX+3Lkfio3vKBngsEdZMg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=jwHTh7/DtNRT7J2ZKLj76vLY1H9uaNbv9cPzGdkmQhg=; b=T95xi8vG/MFeDwzCDhX4nUmnzUrnLDOgSQsyMyFhbd6cIK1v3O0NOGmIT7gaTZaUole0znYfA4FOLWucPziQmvK5ybCIZkKzKLsJuZXr0n9ZxHF221QZLtYbVn8D4aDvmOUv1feF2z96cdbRA7l/H8dT321oQ6k85nmOtdUfOgxsHaj/Iil7l4kOQIJSnwV6gXIr/PqkZldhg9kJqo5VeWW+UDvTgVaQw+sHHmgE2cu4Hs956bzLe9HSCL3yXhPZQqEogV8g7ntGdHpkoQrPVhlkhiwiVI4CqE62cytkuuj36Ney0aoZ8biOXAzeZ7JOtSM3F4zdzdaWnKs5MaRsfA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia-bell-labs.com; dmarc=pass action=none header.from=nokia-bell-labs.com; dkim=pass header.d=nokia-bell-labs.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jwHTh7/DtNRT7J2ZKLj76vLY1H9uaNbv9cPzGdkmQhg=; b=FiTk8y1OgMB/UGzZKV2zsJvwv2A15m5cFek44VZZGuolWaRrjWMsQl12knnFX19PnL2UwLySiq3zQeGYPuBpy6hTi4+AEzjVTq3hUPPoGbfddKvqUu294/ilcb8a4l6BwkSEC9VPMoKAf+spkVWgnXFfvSpJdPVE8i1xjMDaJ0c=
Received: from AM9PR07MB7313.eurprd07.prod.outlook.com (2603:10a6:20b:2c6::19) by VI1PR07MB5311.eurprd07.prod.outlook.com (2603:10a6:803:a2::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.9; Wed, 2 Mar 2022 14:34:48 +0000
Received: from AM9PR07MB7313.eurprd07.prod.outlook.com ([fe80::91fc:61da:729c:d949]) by AM9PR07MB7313.eurprd07.prod.outlook.com ([fe80::91fc:61da:729c:d949%4]) with mapi id 15.20.5038.014; Wed, 2 Mar 2022 14:34:48 +0000
From: "De Schepper, Koen (Nokia - BE/Antwerp)" <koen.de_schepper@nokia-bell-labs.com>
To: Sebastian Moeller <moeller0@gmx.de>, Bob Briscoe <in@bobbriscoe.net>
CC: "Black, David" <David.Black@dell.com>, Neal Cardwell <ncardwell@google.com>, tsvwg IETF list <tsvwg@ietf.org>
Thread-Topic: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" discussion during the interim
Thread-Index: AdgkJ2KkH3TNxxbjSbGmariabLxqmgGAY+aQAA/RmIAAAj03gAAAKftgAAApSYAACT5WAAAwe7HwAC5FnAAAJMcAgAAw2OgAAAQe2mA=
Date: Wed, 02 Mar 2022 14:34:48 +0000
Message-ID: <AM9PR07MB7313D36D1A7905405898CA3CB9039@AM9PR07MB7313.eurprd07.prod.outlook.com>
References: <AM9PR07MB7313D5AAF6B9D66C74CC35A1B9369@AM9PR07MB7313.eurprd07.prod.outlook.com> <AM9PR07MB7313F1401B14F6F2DB72A2B2B93E9@AM9PR07MB7313.eurprd07.prod.outlook.com> <MN2PR19MB40454F60DEE5735EAD428465833E9@MN2PR19MB4045.namprd19.prod.outlook.com> <CADVnQyk+uSX9GJtMBnsBhn9NzY+L3BKfhhUJ=yu4Aya98YEonw@mail.gmail.com> <MN2PR19MB40458624D266CDB54009AB19833E9@MN2PR19MB4045.namprd19.prod.outlook.com> <AM9PR07MB731311A9E4532FD501B5D94CB93E9@AM9PR07MB7313.eurprd07.prod.outlook.com> <AC61D119-FE97-4386-8FF0-A7783FA01522@gmx.de> <AM9PR07MB7313C0978D8B8306169409CCB9009@AM9PR07MB7313.eurprd07.prod.outlook.com> <B2CBEFEF-FF1F-45E8-8FE5-247E4BB00623@gmx.de> <d5d87c4c-6f40-c277-2968-0452275be98f@bobbriscoe.net> <67ECA322-1938-4AFD-B4E1-4C7C754D712E@gmx.de>
In-Reply-To: <67ECA322-1938-4AFD-B4E1-4C7C754D712E@gmx.de>
Accept-Language: nl-BE, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia-bell-labs.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 15ac083c-268f-4230-e8b9-08d9fc59cd95
x-ms-traffictypediagnostic: VI1PR07MB5311:EE_
x-microsoft-antispam-prvs: <VI1PR07MB5311257F799071A6144A02B1B9039@VI1PR07MB5311.eurprd07.prod.outlook.com>
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: VVEf7qemEEraHWsF8VPfTZQ5YhRHpGFwwUeeXaVMSe0MSfT4bhSi2wxd9G3ZCM6iDSOMkoQL6q8o0TVxzsssKp9y6xceU3AsO7pz0qB8APkA9ZeylIsJz26HcWW1Es31rUp4R9dsn2u1Q3P5TX9N33pe3VP47efyvKP4HLtqYHxjW6AdvaH02ZVJArEYNWEnSJS4fTrOhRVLATp/olckx3BU8URfjuCiFsKBw08b7DRbZau1PusizODpqRXIlOcqhU1Se9OejxVQhy7Oa+4YlqlD8le6r01+/2hvTJg0x97m3OHVhsKyz15fWRbVPFz3yII7KaQ8KAgOehgyx65YEfIYH+Nrp0I9WnR8koYpGMc/GVX8s+xGREabtRc4LAVKrtLGmkKcn5MfoCIf5TDeT8TD5pYFQJG4yg2oY/DCIacBElii4aA/ry+FoeZMLV8zu/WEKNSrp+q5n26mMZhjWnv6dwN3pU7+7bUttztqIc49x+jbUNy/9+i2A+lcEKmTbBU5B3qShoTIM++4cAfU8pzRIynfM09pmH4MKsQgbzGZ8vMcZ8nqmqC6euz4SXn+q1jQP/T0dFxI0fQiJK4MWsJT/tTW7m1C+WD4rd44viTZcpAnlVbg2pxN/1uw2KGasjS4UNUsn9Q8/DMozIzgHp0nKFv04yUb0aLwQPltwyMH8Pd1cIrN/E0FID15eeFFM2gv8wMBtiB5ji7+K7N+vNtellZyWnVKOatDjVd43glnxGirkfgYvwNsHXKoqQ4OZE2b0k1HXeu97qmIEcvnNnIPlz16wCwIDZNyzAjI0GHE24c9Dej7Z6QaXudUEbGJXns41tuYNL7foAE2cSNbPrjbAkUIr2rEZfxrG6c6lC/uJ5EISR5ys2iHX3U1MQEvrjc77J/dvVCZK1rU+Gz2D/YazKLSDozDRSN2EepcJvIm8jhw4VDBdah6ymeBVDXR
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9PR07MB7313.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(52536014)(83380400001)(8936002)(33656002)(5660300002)(30864003)(2906002)(66574015)(55016003)(122000001)(26005)(38100700002)(38070700005)(86362001)(82960400001)(186003)(508600001)(8676002)(316002)(6506007)(7696005)(71200400001)(53546011)(4326008)(64756008)(66476007)(110136005)(76116006)(66556008)(66946007)(66446008)(9686003)(966005)(54906003)(579004)(336755003)(18886065003); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 2kD+p4eMxbu/6N3GXrkkYnM0k8+r1+gcpxTyiSVQDPFlwh5o/EDS7yzIfzQnAiFCUAaIm1aoFjml1QKxcF4fp/9GTe9Ef7xjngCydscYHwxyxz/lHn9COIln2WCE2rBS5HBbFAMvlaxAi7UVbYzcgRkplW9JtHKGFEesUERAAR5aiQqwmPaXslQoCVrqyTL+ecRIvTBXqrNcIvRrSUS0KqIuHyuYehnSC0EJHBF+awWn6jjn4zzhSle8Drp7DRe/JOTy4MpaYW2W/C8rqBBp0rc5crfxXNblr3oixj4M9kcTlzDqMGaXMpuJLaQ8m1nuwo7sKLxryuVYWvoXiAjkx2j16zJaSxJn9CGaigPu1F9hJyUGT8gzzVoE70cqpBre9wqO1uKtYhWkY4v20GHY+Ze99VkbxJdfoQknl0KiU9xuoGJuchyqzWqPnknTjbiiWO0v3Ilrh31T1ECrOWi21oHN5QdX+I/sfLP7OEqmlfaFNk41UL/hGR5Xt9x1wZ5VMhIS8ua9ZWdiZOejJshufQz5FBG9krN0BQ43LE4XvpJEZhZqjlPBIzEK79Dhlvlpn4eBWXjN32cMeiLWcjcIYz1WiUCiybZzoGdMMAmVjvL3v/depBUJWLB+rtcVLANkC7u3hbiRPYfxFfezTrhK3qAHZtzI09PYjMJgI+5WUyHsmmWcyDxa5J0PX1fkCUAibdOiS0PzvBwhLpe02UxXZHHFS/sm1vcYY38n1vppxyzsRnYjydea1zmgWX3ck0sU5IlqpzpmtHulDCRzQoxiYDV/UdZtbEeKeAcRd4UlyM7RHM+BQ2+iUUAlWcvozWLwpqLpf4uMbztEJWZ5LpWaQUQQkawzJNEM6fbnGC2aaOD1CqRyJ8B6Dxf3eHeBfjxlaQLeube5U0i6H/2sV1SqXP5Li6pTnqW2FIEFsO0gv9rBt14pxKL207FH2tZqwndyrc02TxA1sozGalQ/N8OWSkYZiDtAyaJyrWaTR3/gKjQS3z2VlXVrNO+z7o1thwEYlbwhKOKnhjg6UHXqa1vapyRF+m47/QBqhHyfy37qaRUrqgqrarbcRtkUAEKn0zQw+1PVS8ekMOUaSEcIKl0wTFeNbD1oz1zE6Jll7wvsibLqD0i7dZ8Gb2u6FAtF+tbxnbpY0rhbllNz0uIHKPb2ehnRU208cbI5NKEEb2Pj/18d4D8oiutCWXlAFTWi8QfENqxIDcNaN2ygTjW98DTIjm90bfwpVSaMsqywh0HbRUVLTt4ZdgobdGjphkh+gc310tAVjmbbx/DPuWh4Nvtgqu9GPJo4AE9U35UvfvbRFkNjqJMhPlaWv0mQSxX4khxJvhv6QJ19Gk0oFNvmGbspHM5fzD9SzGIIOMdnu/QLRjTz9emQQ7DplzKWc2Ex7oMGFVXtDYhkpXNahqRlZH8pAMkofKBxcqXOh0+NpGXZRJar6NKUmOJ/qS3kliLXttpY/AAjuJbP61e20x339Ah3dKGbN56kiseYwyTRPypx5bTMyDNUVhjzmVdMp7N0n3O9nQaKwtSRH8Zyww9HWLX9LyxoP4TMF2xDD01fFs94G1xZsCZ7YtZBL+gd44GrQvjyunHJ/Y+ZUrBp3TRI5u3rep5DeUGvec3XZaqh3tf42T62QjabBKiwzKsQ/IBf/EaXF3kerNXqyOoESXNhvJz1T2Bom9z0/fRUFuaazNH6hgZ4cgodZI9daohdVveddL3MBp1Uy261etyHivD/Jsn4mQ==
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: nokia-bell-labs.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: AM9PR07MB7313.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 15ac083c-268f-4230-e8b9-08d9fc59cd95
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Mar 2022 14:34:48.0609 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: o3nKxuCavQqrs2d30ckvCgf/YFiv5DCTp5XI/GH182clWDSZbbM42Ym/BvgvCdzuxzNcgOMEgqNj6vItOJ1L83x8Rx3FDoP1QKHvQhErf+3oV0GjBbmMkUAI+5TeOQWa
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB5311
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/YGFHab9wUa1euALjn-N0RAxM8-0>
Subject: Re: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" discussion during the interim
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: Wed, 02 Mar 2022 14:35:00 -0000

>> By deliberate design, the DualQ treats an unresponsive flow the same as a FIFO AQM (like PIE) would.
>>	[SM] That is imprecise, CE-unresponsive traffic in the L-queue will only see actual drops if it squeezes the C-queue below its weighted scheduler share, in a FIFO an unresponsive flow will acquire drops (more or less) commensurate with its capacity share. This is clearly not the identical treatment, 

[K] Your thought experiment is incomplete and for that reason is not matching the results. In PIE, PI2 and DualPI2, an ECT flow (both for L4S or Classic ECN) will only see drop if the PIE/PI2 Classic drop probability is above the drop-ECN threshold. Even for DualPI2 the rate share is independent from the scheduler, only depends on the senders' response to drop, as the drop is equally distributed over all flows.
If there is sufficient congestion in the Classic Q, it can already raise the probability above this threshold, without the L4S share reaching the 90% (for instance if there is also Classic non-responsive traffic or a high number of Classic flows). If there isn't enough Classic traffic, this Classic traffic will even be protected by the scheduler as long as the L4S (non-responsive) traffic is not causing more congestion in the L4S queue as there is in the Classic queue.

>> and you acknowledge that "conditional fast lane" in the overload document:
>>"Only when non-responsive traffic is below the link capacity it can fully use that share, making the responsive flows share the rest of the capacity (as usual for any AQM on the Internet on a shared queue)."

[K] I don't see how I did. I mentioned the total "link capacity", not the L4S WRR share. I hope your problem is not that non-responsive traffic below the link capacity can have zero queue size? If there is no other traffic and it sends at 80% of the link capacity it will also have 0 queueing delay, and if it is send to a single-Q L4S STEP AQM with other L4S capacity seeking traffic it will get 1ms latency too, and still will not respond to the CE marks, so uses 80% of that capacity too. Just like any non-responsive traffic in any single-Q AQM.

Hope this clarifies, and explains why your thought experiments are incomplete.

Koen.

-----Original Message-----
From: Sebastian Moeller <moeller0@gmx.de> 
Sent: Tuesday, March 1, 2022 1:36 PM
To: Bob Briscoe <in@bobbriscoe.net>
Cc: De Schepper, Koen (Nokia - BE/Antwerp) <koen.de_schepper@nokia-bell-labs.com>; Black, David <David.Black@dell.com>; Neal Cardwell <ncardwell@google.com>; tsvwg IETF list <tsvwg@ietf.org>
Subject: Re: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" discussion during the interim

Hi Bob,

> On Feb 28, 2022, at 14:17, Bob Briscoe <in@bobbriscoe.net> wrote:
> 
> Sebastian,
> 
> On 27/02/2022 19:44, Sebastian Moeller wrote:
>> Dear Koen,
>> 
>> I have not spent the time to verify that I understand your claims an that I agree with them, (I have a hard time understanding how dropping packets that the head of a queue can be called "taildrop" with a straight face and hence am not willing to give you the benefit of the doubt, sorry).
>> 	But on a purely logical level, how can a real attack vector for CoDel you might or might not have detected remedy the fact that DualQ essentially established a new fast-lane for unresponsive paced flows that manage to stay below L4S weighted schedulers L4S capacity? 
>> 
> 
> [BB] Because Jonathan's claim in his write-up that this is a new fast-lane is false.
> Also, in the heading, Jonathan says "This bonus is easily exploited by unscrupulous senders without disabling congestion control."
> But clearly, the flow's congestion control is not responding to the ECN markings coupled across from the C queue. So this statement must also be false.

	[SM] It can be argued whether a flow responsive to drops but not CE has congestion control disabled though. Given the historic use of the TOS byte with potential value changes by all intermediate hops... so ECT(1) might actually be set by some other party then the end-points, and if they did not negotiate ECN on a flow they are not really obliged to honor CE-marks either.


> Reasoning:
> By deliberate design, the DualQ treats an unresponsive flow the same as a FIFO AQM (like PIE) would.

	[SM] That is imprecise, CE-unresponsive traffic in the L-queue will only see actual drops if it squeezes the C-queue below its weighted scheduler share, in a FIFO an unresponsive flow will acquire drops (more or less) commensurate with its capacity share. This is clearly not the identical treatment, and you acknowledge that "conditional fast lane" in the overload document:

"Only when non-responsive traffic is below the link capacity it can fully use that share, making the responsive flows share the rest of the capacity (as usual for any AQM on the Internet on a shared queue)."

This raises the question how likely this situation can/will arise. From my own limited experience the typical congestion prone locations of a typical internet path are:
(1) at (both of) the edges, home networks typically were much narrower than ISP internal networks or typical data centers housing servers(this can include one's own access link, or the uplink of the next aggregation, like DOCSIS segment or OLT/DSLAM uplink)
(2) at transition points between networks (peering, transit, ...)

L4S as currently written clearly has ambitions for deployment in (1) and (2), and that can result in the situation, that the access link (1) limits a capacity seeking flow's max rate such that is stays below a type (2) L-queue capacity (this flow if limited by the access link's capacity will also mostly appear "paced"), but above its promised L4S share (rough equality between flows but allowing for RTT-bias, if I recall correctly). IMHO that is a novel fast-lane.


> If Jonathan ran a similar experiment but classified that unresponsive flow into the C queue, whether it was ECN-capable or not, it would have also got 40Mb/s.

	[SM] Yes, assuming with "unresponsive" we mean does not respond to any congestion signal... but that gets us in DOS territory, because it is somewhat hard to do useful data transfer when arbitrary pieces can go missing. Sure one could design a protocol such that the required retransmissions are performed out of line so that an unrelenting main flow can just keep on sending, but that would be a lot of work for little gain. (fq_codel can be configured to ignore ECN, codel ignores ECN by default)


> So, there is no new fast-lane.  

	[SM] But only if we ignore the unscrupulous ignore-CE (because I can without much cost) but respect drop (because retransmissions otherwise get complicated) flow. Really the issue here is CE-marks versus drops and the respective cost of ignoring those for individual flows.

> There is no new throughput bonus. This is just the same 40Mb/s that any unresponsive 40Mb/s flow has always got in a single queue (AQM or not, ECN or not). 
> 
> This is the oft-stated deliberate design intent of the DualQ. Per-flow rate policing (and/or per-flow latency policing) can be added as an optional extra, but only if the operator wants it. The vast majority of the Internet currently works fine without per-flow policing.

	[SM] Does it? Why then propose L4S if everything is fine in the Internet already? 


> So far, I am solely focusing on Jonathan's scenario (40Mb/s in a 50Mb/s link). Koen's experiments show CoDel falls down when unresponsive flow(s) send more than the link capacity, but I want to take this one scenario at a time.

	[SM] But the 40/50 flow is exactly the situation where the L-queue can demonstrably be abused to gain more throughput then promised in the L4S drafts by flows that do honor drops but ignore CE-marks... 


> 
> 
> Bob
> 
>> 
>>> On Feb 27, 2022, at 18:57, De Schepper, Koen (Nokia - BE/Antwerp) 
>>> <koen.de_schepper@nokia-bell-labs.com>
>>>  wrote:
>>> 
>>> Hi Sebastian,
>>> 
>>> The important plots to check are the throughput plots in figure 1, 
>>> where PIE and DualPI2 have very similar throughput profiles 
>>> (confirming a coupled DualQ works like a single Q),
>>> 
>> 	As I said that is not enough, the whole premise of DualQ is that L4S and traditional traffic can not be mixed, so regressing to single queue behavior indicates that DualQ fails to meet its promise... 
>> 
>> 
>> 
>>> and figure 3 where PIE and DualPI2 have a queue latency at the target. This can only be achieved if the drop and marks are correctly set by the AQM.
>>> 
>> 	But is this actually showing more than the known fact that PIE and CoDel have different strictness when interpreting the reference target parameter? To me this looks not really unexpected.
>> 
>> 
>>> Only in the CoDel case the ECT(0) non-responding UDP flow takes practically all the link capacity (99.9% when sending unresponsive UDP-ECT(0) at 100Mbps, and really 100% when sending at the higher 140 and 200Mbps rates, probably killing "all" not-ECT traffic; see other mail to Dave Taht).
>>> These results speak undeniably for themselves.
>>> 
>> 	That is, as always, a contingent upon interpretation; I am not convinced that your interpretation is necessarily the best objective one available.
>> 
>> 
>>> Your hunch and the issue which is now mentioned in the interim slides and the shepherd's writeup is just wrong.
>>> 
>> 	Excuse me, there is no data indicating that a faked ECT(1) unresponsive-to-CE flow (especially one staying below the L-queues capacity share) will get the same amount of actual drops in the L-queue as it would in a singe-queue CoDel or FIFO. I might not be seeing the forrest for the trees here, so please explain how the existing data shows that my hunch is wrong. But with the additional information about figure 8, I object to your claim, my "hunch [...] is just wrong". The data confirms what I described as my hunch, for cases when when the "illegitimate" flow stays below the L4S AQM's L-queue capacity.
>> 	As I implied before this situation is not as exotic as you might think, given that most access links are << than core links, and L4S apparently is targeted for deployment on core links, no? So no, my flow might not noticeably affect the L-2-C "fairness at a congested L4S AQM but I might still be able to gain an unfair and undeserved throughput advantage over other flows at that link that runs counter to the L4S claims of rough equitable sharing between flows.
>> 
>> 
>> 
>>> This non-issue should just be removed from the writeup and I suggest you make it an issue for the CoDel/FQ-CoDel RFCs instead. There we detected a "real" attack vector!
>>> 
>> 	Yeah, you essentially demonstrated that CoDel in itself is not as DOS resilient as it would be desirable. As Dave already mentioned fq_codel partly takes the sting out of this by restricting the fall-out mostly to the hash-bucket housing the offending flow. Also note how the stress-dropper takes care to find the largest queue (which will house the DOS flow) so even batch-emergency dropping does mostly the right thing. A sufficiently motivated attacker obviously will spoof/randomize at least SRC ports or addresses causing more problems for FQ, but my concern really is not so much DOS resistance but simple ways to gain fast-lane access for actual useful data transfer and there address spoofing will make things much harder, than just rate-limiting and fake-ECT(1) marking a flow...
>> As I see it if I would simply fake ECT(1) mark capacity-seeking non-ECN-honoring flows L4S will grant me a priority lane for data as long as I a) pace packets sufficiently well and b) stay below the L4S bottlenecks L-queue capacity.
>> 
>> 
>> 
>>> Koen.
>>> 
>>> BTW:
>>> 
>>>>> the highly interesting drops for Not-ECT UDP (for CoDel) seem to 
>>>>> be missing (generally the labeling for figure 8 is imprecise, e.g. 
>>>>> showing Drops ECT(1)-UDP in the first set PIE with ECT(0)-UDP)
>>>>> 
>>> These results are not missing, only the legend is indeed missing
>>> 
>> 	Which for someone not intimately familiar with the data boils down to the same consequence, thanks for clearing this up.
>> 
>> 
>> 
>>> the brown colored "Drop Not-ECT" label, but the plots show these 
>>> values (in brown). Also ECT(1) label in the legend should say 
>>> ECT(0/1)
>>> 
>> 	I had figured that out from context ;)
>> 
>> 
>>> which depends on whether ECT(0/1) is used in the experiment (as in the labels under the results).
>>> 
>> 	Ah, okay with that additional information figure 8 now confirms my hunch just perfectly, no drops for unresponsive UDP in L-queue versus drops in C-queue as long as it stays below L-queue capacity. That is in direct conflict with your argument above that my "hunch [...] is just wrong", no?
>> 
>> 
>> 
>> 
>>> -----Original Message-----
>>> From: Sebastian Moeller
>>> <moeller0@gmx.de>
>>>  
>>> Sent: Friday, February 25, 2022 11:32 PM
>>> To: De Schepper, Koen (Nokia - BE/Antwerp) 
>>> <koen.de_schepper@nokia-bell-labs.com>
>>> 
>>> Cc: Black, David
>>> <David.Black@dell.com>; Neal Cardwell <ncardwell@google.com>; tsvwg 
>>> IETF list <tsvwg@ietf.org>; Bob Briscoe <in@bobbriscoe.net>
>>> 
>>> Subject: Re: [tsvwg] Related to "Non-L4S traffic abusing the 
>>> L-queue" discussion during the interim
>>> 
>>> Hi Koen,
>>> 
>>> from your link:
>>> 
>>> "Only when non-responsive traffic is below the link capacity it can fully use that share, making the responsive flows share the rest of the capacity (as usual for any AQM on the Internet on a shared queue)." 
>>> 
>>> 
>>> This pretty much confirms what I predicted, except the drop plots 
>>> look incomplete, the highly interesting drops for Not-ECT UDP (for 
>>> CoDel) seem to be missing (generally the labeling for figure 8 is 
>>> imprecise, e.g. showing Drops ECT(1)-UDP in the first set PIE with 
>>> ECT(0)-UDP). My hunch is that comparing drops ECT(1)-UDP in DualPi2 
>>> with the missing drops Not-ECT UDP in Codel, that in the latter we 
>>> see much more drops than in the former, et voila, exploitable way to 
>>> gain more throughput by marking traffic ECT(1)... as long as that 
>>> traffic is reasonably paced and does not exceed the capacity of the 
>>> L4S AQM (not an unlikely scenario even for capacity seeking traffic, 
>>> my measly 100Mbps access link will not saturate the BNG uplink of my 
>>> ISP or the link to the DSLAM)
>>> 
>>> Regards
>>> 	Sebastian
>>> 
>>> 
>>> 
>>>> On Feb 25, 2022, at 19:30, De Schepper, Koen (Nokia - BE/Antwerp) 
>>>> <koen.de_schepper@nokia-bell-labs.com>
>>>>  wrote:
>>>> 
>>>> Hi David,
>>>> 
>>>> To be sure, we re-did the overload tests recently, confirming the 
>>>> previous overload results. These results are available at: Overload 
>>>> results caused by non-responsive UDP traffic for PIE, DualPI2 and 
>>>> CoDel AQMs | l4steam.github.io
>>>> 
>>>> Specifically look at figure 8 at the end which shows that L4S traffic gets marks, up to 100% and appropriate drop if it reaches and exceeds the link capacity.
>>>> 
>>>> The test case of Jonathan is approximated by the 70Mbps non-responsive ECT(1) UDP traffic on a 100Mbps link on a DualPI2 (Prague+Cubic) test case. In Jonathan's case it was 40Mbps on a 50Mbps link. We also evaluated in extreme when sending at 100Mbps non-responsive ECT(1) UDP traffic on a 100Mbps link, and even exceeding at 140Mbps and 200Mbps. You will see the results are as if it is on a Single Q PIE AQM. Note also that CoDel which never drops ECT packets, causes actually close to starvation and high tail-drop delay results as shown in figure 1, even with ECT(0). So I guess all the concerns about FQ_CoDel and tunnels/Hash-collisions are equally severe and not related to L4S alone (can just be exploited by ECT(0) traffic today already!!).
>>>> 
>>>> Koen.
>>>> 
>>>> From: Black, David
>>>> <David.Black@dell.com>
>>>> 
>>>> Sent: Friday, February 25, 2022 7:04 PM
>>>> To: Neal Cardwell
>>>> <ncardwell@google.com>
>>>> 
>>>> Cc: De Schepper, Koen (Nokia - BE/Antwerp)
>>>> 
>>>> <koen.de_schepper@nokia-bell-labs.com>
>>>> ; tsvwg IETF list
>>>> 
>>>> <tsvwg@ietf.org>; Jonathan Morton <chromatix99@gmail.com> ; Bob 
>>>> Briscoe
>>>> 
>>>> <in@bobbriscoe.net>; Black, David <David.Black@dell.com>
>>>> 
>>>> Subject: RE: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" 
>>>> discussion during the interim
>>>> 
>>>> Hi Neal,
>>>> 
>>>> So, I saw that explanation - could someone check the "running code" to make sure that the coupling and marking occur even when the L queue is always empty?
>>>> 
>>>> Thanks, --David
>>>> 
>>>> From: Neal Cardwell
>>>> <ncardwell@google.com>
>>>> 
>>>> Sent: Friday, February 25, 2022 12:58 PM
>>>> To: Black, David
>>>> Cc: De Schepper, Koen (Nokia - BE/Antwerp); tsvwg IETF list; 
>>>> Jonathan Morton; Bob Briscoe
>>>> Subject: Re: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" 
>>>> discussion during the interim
>>>> 
>>>> [EXTERNAL EMAIL]
>>>> 
>>>> 
>>>> 
>>>> On Fri, Feb 25, 2022 at 11:56 AM Black, David 
>>>> <David.Black@dell.com>
>>>>  wrote:
>>>> Koen,
>>>> 
>>>> I'll observe that "traffic that is not responding at all to CE marks" 
>>>> is not necessary to achieve the reported results if the 
>>>> experimental setup "prevents the L queue from seeing any
>>>> 
>>>> need to apply congestion signals, because it is always empty" as there would be no CE marks for the traffic in the L queue to respond to.
>>>> 
>>>> I think the key part here is "if". :-) The assertion "prevents the L queue from seeing any need to apply congestion signals, because it is always empty" is from:
>>>>  
>>>> https://sce.dnsmgr.net/downloads/L4S-WGLC2-objection-details.pdf
>>>>  
>>>> [sce.dnsmgr.net] That assertion is inconsistent with the functioning of the Dual-Q algorithm, as described in:
>>>>  
>>>> https://www.ietf.org/id/draft-ietf-tsvwg-aqm-dualq-coupled-21.html
>>>>  
>>>> [ietf.org]
>>>> 
>>>> As Bob noted: "in the scenario shown, although the L queue is indeed always empty, it will see a high level of congestion signals (~10% in this case) via the coupling."
>>>> Here's Bob's e-mail for more context/details:
>>>> 
>>>> 
>>>> https://mailarchive.ietf.org/arch/msg/tsvwg/joFr3sfOrxxkYhWdYrO2rLl
>>>> CNU
>>>> 
>>>> w/ [mailarchive.ietf.org]
>>>> 
>>>> thanks,
>>>> neal
>>>> 
>>>> 
>>>> 
>>>> Please give that further consideration.
>>>> 
>>>> Thanks, --David (as an individual)
>>>> 
>>>> From: tsvwg
>>>> <tsvwg-bounces@ietf.org>
>>>>  On Behalf Of De Schepper, Koen
>>>> (Nokia - BE/Antwerp)
>>>> Sent: Friday, February 25, 2022 4:29 AM
>>>> To: tsvwg IETF list; Jonathan Morton
>>>> Subject: Re: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" 
>>>> discussion during the interim
>>>> 
>>>> [EXTERNAL EMAIL]
>>>> 
>>>> Hi Jonathan,
>>>> 
>>>> Can you confirm that this test is done with "Cubic" traffic that is not responding at all to CE marks? So it is just like any other non-responding traffic (like UDP CBR). We don't see any other way to explain your results. 
>>>> 
>>>> If so, we can/should remove this "issue" from the shepherd's write-up, as such unresponsive flows will get the same throughput on any single-Q bottleneck with or without AQM (taildrop/PI2/PIE/CoDel/STEP/RED/...) with a latency that matches the AQM strategy.
>>>> 
>>>> Koen.
>>>> 
>>>> 
>>>> From: tsvwg
>>>> <tsvwg-bounces@ietf.org>
>>>>  On Behalf Of De Schepper, Koen
>>>> (Nokia - BE/Antwerp)
>>>> Sent: Thursday, February 17, 2022 7:01 PM
>>>> To: tsvwg IETF list
>>>> <tsvwg@ietf.org>
>>>> ; Jonathan Morton
>>>> 
>>>> <chromatix99@gmail.com>
>>>> 
>>>> Subject: [tsvwg] Related to "Non-L4S traffic abusing the L-queue" 
>>>> discussion during the interim
>>>> 
>>>> Hi Jonathan,
>>>> 
>>>> It seems that the following open issue identified by the chairs:
>>>> 
>>>> Non-L4S traffic abusing the L-queue
>>>> * 'DualQ gives a large throughput bonus to L queue traffic, ie. a "fast lane"'
>>>> * Is this a matter specific for DualQ that can be left for experimentation?
>>>> 
>>>> is based on the following experiment you performed:
>>>> 
>>>> 
>>>>>            simple two-flow competition test on a standard dumbbell 
>>>>> topology,
>>>>> 
>>>>>            with the bottleneck running a DualQ qdisc into a 50Mbps shaper.
>>>>> 
>>>>>            Both flows were configured to use CUBIC congestion 
>>>>> control with
>>>>> 
>>>>>            ECN negotiated, but one was additionally tweaked to set
>>>>> ECT(1)
>>>>> 
>>>>>            instead of ECT(0) on all data segments, and to pace its 
>>>>> output at
>>>>> 
>>>>>            40Mbps. This latter measure prevents the L queue from 
>>>>> seeing any
>>>>> 
>>>>>            need to apply congestion signals, because it is always 
>>>>> empty.  These
>>>>> 
>>>>>            tweaks allowed that flow to use 80% of the link 
>>>>> capacity, gaining a
>>>>> 
>>>>>            fourfold advantage over its competitor,
>>>>> 
>>>> If there is capacity seeking traffic in the Classic queue, then it is even desired that the L4S queue does not add extra marks. The L4S marks should come only from the Classic coupling.
>>>> Before diving into details, can you first explain why in your experiment the coupling from the Classic Q has no effect on your paced and ECT(1) labeled Cubic flow?
>>>> 
>>>> I would expect that this ECT(1) labeled Cubic flow would get even less throughput than the Classic Cubic flow, as the first gets the doubled coupled CE marking probability (eg 2*10% = 20%) for L4S flows instead of the squared CE marking probability (10%^2 = 1%) which ECT(0) traffic would get.
>>>> 
>>>> Thanks,
>>>> Koen.
>>>> 
> 
> --
> ________________________________________________________________
> Bob Briscoe                               
> http://bobbriscoe.net/