Re: [Tsv-art] Tsvart early review of draft-briscoe-docsis-q-protection-02
Magnus Westerlund <magnus.westerlund@ericsson.com> Mon, 28 February 2022 08:33 UTC
Return-Path: <magnus.westerlund@ericsson.com>
X-Original-To: tsv-art@ietfa.amsl.com
Delivered-To: tsv-art@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A39CE3A0D05; Mon, 28 Feb 2022 00:33:19 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.111
X-Spam-Level:
X-Spam-Status: No, score=-2.111 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, 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=ericsson.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 tCsSreMhrAut; Mon, 28 Feb 2022 00:33:14 -0800 (PST)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2076.outbound.protection.outlook.com [40.107.21.76]) (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 6D6BF3A0BCE; Mon, 28 Feb 2022 00:33:14 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E9kn1bNuWSSoQJ3IYTKmXkKXFEKR/rV9UjR0DePZUUcIMnuR0xbcFoqtbIAPqWhSk896a3eFSu17VYThxkgzDptAf7z0Fa8s5inwtzwPoCBqaSgaWoU7lKJ4Y94iuQX/C4r6d1m+T9W20PfbP6ij1owhaQ5axjfeV3CBY64t6FbsV0OCwsCB4Nd5+Yv69QJNGQZ9Jy/BPH3Zlek41vsW+sZbsgwsJmMKn7ZR6r+/6WLAJFJB2mLEfvrG7QiKPb1UygPhtVqNkQHmEILrMnImPWISQyntb7nZ7JSkfiwzZdAkc/d2+3XPPRU6oyo6pThCjY3qWLEt5vWCa02vWd2TZQ==
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=HGjG+H3sc2GoA3X9Je5tUdiwSeB6eI5IuXM9yntKkXs=; b=g40IRutRF3mD2OMoK2IGurLY/d1tpuxQX6N9O/49JkaYb22pGEwmoOOfWckA4c4aSXztBwFNxyWwk28lwP0ZF+D9Y7vwQ0s+oRljjxU+LSsbKfkj5KjbTR6R9fa5b3wemGGznp/IkbporXyOz911qjxkwlaGayEEpfk021ND/uV3O3Qp2xOEP8FLsylDUn2TBPPoI8Cg4UBkZfeBhSmbbWxubvJu0apr5Y3fZDSqRPB87D/71ksjJKvRUaw7pkgZJtVNqQRpT1p8tS6X4xhTa/cpNGe0YqBZmT4wUxU+hSQmhUZ7z3yjtio0xMFdZiiFOsuAQtHPlGn7lRi65DqTiA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HGjG+H3sc2GoA3X9Je5tUdiwSeB6eI5IuXM9yntKkXs=; b=DyXdsS88yNYr6fWeyeLcZ33uj6G5e0hgcJmg//CxcOO/AAeDPW0lp028sq4XzgpVDLp/0KdAODfWV1lhO2gSjF3+Wk698s0CIVrCPB6vJ6Xcrz4bd8u2Rf/RegOcqjhr/3Polp134KHN79BwKlS9PDiTS761go6a9dGk7JzrEQY=
Received: from PA4PR07MB8414.eurprd07.prod.outlook.com (2603:10a6:102:2a2::6) by DB9PR07MB7274.eurprd07.prod.outlook.com (2603:10a6:10:1fa::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.9; Mon, 28 Feb 2022 08:33:08 +0000
Received: from PA4PR07MB8414.eurprd07.prod.outlook.com ([fe80::f154:6b1c:52f1:cba]) by PA4PR07MB8414.eurprd07.prod.outlook.com ([fe80::f154:6b1c:52f1:cba%8]) with mapi id 15.20.5038.013; Mon, 28 Feb 2022 08:33:08 +0000
From: Magnus Westerlund <magnus.westerlund@ericsson.com>
To: "ietf@bobbriscoe.net" <ietf@bobbriscoe.net>, "g.white@CableLabs.com" <g.white@CableLabs.com>
CC: "tsv-art@ietf.org" <tsv-art@ietf.org>, "draft-briscoe-docsis-q-protection.all@ietf.org" <draft-briscoe-docsis-q-protection.all@ietf.org>, "rfc-ise@rfc-editor.org" <rfc-ise@rfc-editor.org>
Thread-Topic: [Tsv-art] Tsvart early review of draft-briscoe-docsis-q-protection-02
Thread-Index: AQHYJPm3zGLumkXGvUiYLDc4kDzWz6ybhEgAgAZNygCABt91sA==
Date: Mon, 28 Feb 2022 08:33:08 +0000
Message-ID: <PA4PR07MB8414CB29F2E7DC1E596BA2FF95019@PA4PR07MB8414.eurprd07.prod.outlook.com>
References: <164519474663.16853.11644347542089865375@ietfa.amsl.com> <72e135f883c88d382920f75132cc6aae.squirrel@www.rfc-editor.org> <f91d44a0-1e4b-54db-b485-2a165049349c@bobbriscoe.net> <2cd2ea32-1632-5e5a-3137-1995d0cb2f94@bobbriscoe.net>
In-Reply-To: <2cd2ea32-1632-5e5a-3137-1995d0cb2f94@bobbriscoe.net>
Accept-Language: en-US, sv-SE
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ericsson.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 5114fe08-2bb4-4f4b-9098-08d9fa94f30d
x-ms-traffictypediagnostic: DB9PR07MB7274:EE_
x-microsoft-antispam-prvs: <DB9PR07MB72747A6A3A414209E0BEE27595019@DB9PR07MB7274.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: dld75bUwDxd5RnOlNo8UteVdIZsTXIZBdmNSE2AdBk9hZqxSd2a6teXdHQp7nfhwe0bXCzM73br/z5qFGw8b02g6IYOQHEsrxKd9FoHGY7eJEE2wz/xu0j6wZlpXb0xngtCZDLZvlOIRmwmLwCeEfPeTn9DvTxTwxYJ6wxEH0DAa+YVjEGgZxAQInwMA1Phhxz5gfjE/cvM/BvU0XTd2X4V8c4HxY7n4UagXKh3ZWSRuD8uPIzZON4qio+mkv4EW8R7UBz0gmcRLjW523ZDojOM/xnZaXJuNp1+uo6Gm5LD+kh7+qRHJoskZ5nf5d9Kf69n7E4nQjY2bF46pIaYiRMqeNuepVMJIUqV6Hw1REQnjJJQXedQRlWzA6XTuY4Hc6GWfUXkpc7USswd9XF4LNbMmLI3NSnJQPTEvG5KXJkwrFuZcJReSkBjppx0FLY5L2K4KZYomn9V5sGHDmPNhILB+YYaitHF+M/x0OPeJxlDJkh9rKSvKwpoTMpH9boFMONFpKmRNw3LTJN17fp2G156EN51p72Vc/72dQ3jPVhFYwS2DR75RcgpXoJI10cc+I/ViCkukP9+da1MyWQtGX9bn5XClvxwxp+Us++zckdegbNCr3j3BZHl15kE8SrhHgrFRoumxYkeyP83+JS/DV0w5FO4gawolcvhFpKYvPDv3vMMMrnkQTQHhiQDf5BQ1z4aU2W5b0tEJ322hjQhiovumBc1Xfgwajs6oFvwz7wk9A3/8epxa8CTIwcJLdlN2FYQQimM/fzpv0Mdyf62cLLnOsFrCLkGNQiDxp94EWwHDPU52OA8onSQV+LuK+ElSIoqgNgQsKAwA/4Y4nZg+UjTOSmp5B6Rmfphk6L7NP1E=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PA4PR07MB8414.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(86362001)(66556008)(38070700005)(966005)(6506007)(7696005)(53546011)(66476007)(71200400001)(508600001)(76116006)(66946007)(8676002)(4326008)(110136005)(316002)(54906003)(166002)(64756008)(83380400001)(66446008)(26005)(9686003)(99936003)(186003)(38100700002)(122000001)(82960400001)(8936002)(33656002)(52536014)(2906002)(5660300002)(55016003)(44832011); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: pznc+Q+E5dT2OsOvsKHHJ5Uadfjm0pBYSCh619vB3FC/6ZEDPg3t8G2zUYzlO1pUImf8+4E7MVLPKKQi2v1vyQITw0BHiiNYphFC2GVo7QVh4/JSJMu0zgMeTaE66gAk6glsenXQ0W9X0+tzr9acli6ZIYLlPe8G8wOk+O60izNewc2uqCRt8IoTOpp4jiZ/TLIdfCexowAMFOI1kjzAtRaDbtytopCYAJE8P0sUMXngwJfmWhxZH8G2QNyufHk4K/qDVk6pHcqV5tj9anh5Cab5Lxu0PhTOLTdWDSx3z/E+JISFk0IJzJWRkux0nLAZFvHcMQX8th+c3ortpNpelqklkZ//h9Rn8Gxdn/vwnEM3pB8K79rU3kvlK4U4/pZM+sWIdkktUu6qNNhLGmCMZDTUz4Q9ZrG7cBBqIV/X8eEYTdHXmOZ7gvYgqkZqZ+hXTv4xz3i4SQUC1Be1YDaQgdFaTiqIPheazKdB6+stbUHMUCR8aGWcrje6PA+Pg7GFnTJQRj14+04WQd5vrJzn1r6CCBGdjLbqGZkat/W+3+7jbVxGa7X61Xa0pqK5VnpzNyA1oCcNpY90V8BZUEawUyfeAAidmBxUJKj8/sf7tWI4J2VZEqHWi0SbevcSAxOotRTPVXEEoNhUhJIn48/Ca5253n4oLEJEAUuiN2iDqReoBY2lqzpYueWlydbv2R9Mn6pvLfymOrwl9eJq3GtMtOGj8Pd/kn54HCHWWjSWrikzRfaFDq1S5wukzqSQpdgBcs7+XT1OsYzmj4XFVNTjGDTgZc7JRdgmL+RNTbyRrT4wHTOcyHgGCvua1lXnHn10xb034n93h1af68QZvY2TecO+BE4tZrfO6s/LZPMvaOqeuSptegLAj0jkAlfqvfsCozLOltce1ahqByAFXXqLSh5S6zuL+wJ4NqpCcQMwtR3smlsQw2DYxWmJt4h1GzIj5dDfbRUdzqCJdD9HJ3vMmVzI4ajqogj6HBMUpfECHHmvLfwJCZSPgNyocRAkJuKocD1Y7lfBbBPJreKuZb2w+buzENhlUCKy4NWt6KCOJJYsj/D5UUTz+dYNVUDDQaUmVMtXK6oqur0CuP7I8k5uUrwFjn++AsIHs5RxGoLUx3rzr1tMJS8HK9iVAcN78YwbxCV+1hXe2OE05iKHTr76Dh0TWBqq6JbigLcRwAUw+ro2R2adMcIvBlH8d066Mwj77d2q56MJjXjjbUaJFoNRdqnH02YUjvqjggG0A6NouNoItC1KHuR32X8gEapi+IQrKM4Wlw1sz7dzaVnIfSwXkPh4t3lFiBrGWSJPI0VBIobV5DjJ28I6vwsHS2E7Kpytq8QtgHjdt8nVhHLs7cdpKyZ1Wb+FnpMZPH3kJVr84ZKmEBT3VoabAg9Dp+I7Fi26TtponHrPptV+MgWrYMr5ASGtmNgXkVjmriOPhG/jRVikyLRbtYUkbu3sX0wy8B6GX9M68B3RObPGiue6SlZ35OlyzrbhnCNeKtxKN9Rm0+rRJiXWMVSgtjlAP5F2DZkkVwrbSc1YqS1DdzyFXbIwG/M6E7vC1sTXVXQcSokBR8PD2zo1/IWC63/+e9r/xC5lAK/sOT9jpYjsKZ1GAX1sVS6sWgUbMcwOhQYCT76nW9ORQDuYeszi3M60U/7bdbd5sPQco1zBapTkabFC7H9BfQ==
Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="SHA1"; boundary="----=_NextPart_000_0353_01D82C86.3173EBB0"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PA4PR07MB8414.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5114fe08-2bb4-4f4b-9098-08d9fa94f30d
X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Feb 2022 08:33:08.8242 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: zqzGaxweQNHHhtHg6/qIg9RF1fZIPwShbPQ18xlhjpugzDrRRFfnHHItWQKogmJSDZNkf8ysjyRQICay8NBanf/ZO1iz/bmSiVsGn162wiI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR07MB7274
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsv-art/DZ4qU-DKwLvaKQi88GKVr5cXgX8>
Subject: Re: [Tsv-art] Tsvart early review of draft-briscoe-docsis-q-protection-02
X-BeenThere: tsv-art@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Review Team <tsv-art.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsv-art>, <mailto:tsv-art-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsv-art/>
List-Post: <mailto:tsv-art@ietf.org>
List-Help: <mailto:tsv-art-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsv-art>, <mailto:tsv-art-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Feb 2022 08:33:20 -0000
Hi Bob, I have reviewed the diff and the changes looks okay to me and address what I raised. Thanks Magnus Westerlund From: Bob Briscoe <ietf@bobbriscoe.net> Sent: den 24 februari 2022 00:35 To: Magnus Westerlund <magnus.westerlund@ericsson.com>; Greg White <g.white@CableLabs.com> Cc: tsv-art@ietf.org; draft-briscoe-docsis-q-protection.all@ietf.org; rfc-ise@rfc-editor.org Subject: Re: [Tsv-art] Tsvart early review of draft-briscoe-docsis-q-protection-02 Magnus, Thank you again for the review. Greg and I have now gone through it. See [BB] inline for responses. I've also attached a diff (Greg pls also check that). Pls let us know if you're happy or not. (will do David Black's comments next) On 19/02/2022 23:19, Bob Briscoe wrote: Magnus, Thank you for your thorough and detailed review. I scanned it yesterday, but realized that I need to sit down and go through it with a clear head. So a response will appear in a few days. Thanks again. Bob On 18/02/2022 18:59, RFC ISE (Adrian Farrel) wrote: Magnus, Very many thanks for a helpful and clear review. Cheers, Adrian Magnus Westerlund via Datatracker wrote: Reviewer: Magnus Westerlund Review result: Ready with Issues To first attempt to answer the review request questions. The Independent Stream Editor is keen to receive a review with two aspects: "- Does this document overlap with or otherwise infringe upon any IETF work?" It is clearly related to the L4S work in TSVWG. However, as it describes a particular implementation of an queue protection algorithm by DOCSIS I don't see it infringing upon any IETF work. "- Does this document read well to someone with Transport and Congestion control background?" It is understandable with a few exception that I will comment on below when clarity can be improved. In general I think it is close to being ready for publication. Just some issues that needs to be addressed. 1. Section 4.1: AGING = pow(2, (LG_AGING-30) ) * T_RES // lg([B/s]) to [B/T_RES] So the -30 is here is instead of dividing by 1E9? How much does the rounding error of ~7% impact? To my understanding the aging value will be smaller than intended with those 7%. [BB] Yes, you've caught us being sloppy. Nonetheless, the number has considerable leeway built into it, so it doesn't need to be precise. The default for AGING is introduced In §3 as follows: "AGING, which is a configured constant of the algorithm (default 2^19 B/s ~= 4.2 Mb/s)." So we've dialled down the implied accuracy by: s|4.2 Mb/s|4 Mb/s| Then in the pseudocode: s|// Convert units|// Convert units (approx)| The value of AGING using the pseudocode shown is 3.9 Mb/s, which is near enough 4 Mb/s. 2. Section 4.1: NBUCKETS = pow(2, BI_SIZE); // No. of non-default buckets MASK = NBUCKETS-1; // convenient constant, filled with ones This appears to be a calculation that is based on that NBUCKETS and MASK are int and not floating point values? I would also note that MASK will not be filled with 1, only have NBUCKETS of ones at the lower bits using integer arithmetic. Does this document need clear conventions for when floating point is used versus integer arithmetic? [BB] After the blocks defining input parameters and constants, we've added the following: "Throughout the peudocode, most variables are integers. The only exceptions are floating point variables representing probabilities (MAX_PROB and ProbNative) and the AGING parameter. In practice, these floats would also typically be represented by integers that would be upscaled for precision. The pseudocode omits overflow checking and it would need to be made robust to non-default input parameters." Yes, NBUCKETS and MASK are integers. Sry, the comment against MASK will have thrown you off. We've changed it: s|// convenient constant, filled with ones| |// convenient constant, with BI_SIZE LSBs set| 3. Section 4.1: // Minimum marking threshold of 2 MTU for slow links [ns] FLOOR = 2 * 8 * MAX FRAME SIZE * 10^9 / MAX RATE; Should not MAX FRAME SIZE and MAX RATE be an input parameters although implementation specific ones? I would also note that they are not written as parameters or constants here for any programming language I know of. [BB] Sry, these were defined in other parts of the DOCSIS spec, and we used them without explaining. Also , thx for pointing out the missing underscores in the variable names. These were copied from the DOCSIS spec. I've fixed them, and Greg has now submitted a request to correct them in the DOCSIS spec too. Here's the diffs: // Input Parameters + MAX_RATE; // Configured maximum sustained rate [b/s] QPROTECT_ON; // Queue Protection is enabled [Default: TRUE] + MAX_FRAME_SIZE = 2000; // DOCSIS-wide constant [B] // Minimum marking threshold of 2 MTU for slow links [ns] FLOOR = 2 * 8 * MAX_FRAME_SIZE * 10^9 / MAX_RATE; 4. Section 4.2.1 // if (bckt_id->t_exp risks overflow) // Details not shown // return EXIT_SANCTION; I don't understand this. If the issue that one attempts to protect against is that t_exp becomes larger than what the variable supports? What I can see of how t_exp is used it must not wrap and is carrying the devices understanding of time progression in T_RES ticks. So what overflow is intended here? And I would note that fill_bucket prevents t_exp from never being more that qLSCORE_MAX further into the future than now. [BB] Sry, these two lines should have been deleted. They were left over from when we'd left out details of qLSCORE_MAX. Thx for spotting this. 5. Section 4.2.2: What happens when ATTEMPTS * BI_SIZE > 32? The lack of handling of this case, is it assumed that one would never configure this algorithm so that (ATTEMPTS - N)* BI_SIZE > 32 would be true for N=2 or larger where h32 would be zeros and empty for multiple attempts. It appears like there will be no significant failure, only hash collisions which reduces the actual attempts to fewer than ATTEMPTS. Should there be a warning here that if (ATTEMPTS - 1) * BI_SIZE is larger than 32 bit a larger hash size should be used? [BB] See addition earlier of "The pseudocode omits overflow checking and it would need to be made robust to non-default input parameters." 6. Section 5.5: This might be detected when the bucket expiry time t_exp exceeds a threshold, which could also conveniently prevent overflow of the t_exp variable (see the qprotect() function in Section 4.2.1). In relation to earlier comment. It is not clear what is overload here. [BB] Sry, same problem as earlier - everything after the comma deleted, 'cos this was from before we introduced qLSCORE_MAX. Thanks for the warnings and errors from the output log of your pseudocode parser and compiler! Awesome. I also added some missing ';'s Cheers Bob -- ________________________________________________________________ Bob Briscoe http://bobbriscoe.net/ <https://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-b0108c2709550a3a&q=1&e=c51e3420-d3d6-4594-8345-77632b4fe895&u=http%3A%2F%2Fbobbriscoe.net%2F>
- [Tsv-art] Tsvart early review of draft-briscoe-do… Magnus Westerlund via Datatracker
- Re: [Tsv-art] Tsvart early review of draft-brisco… RFC ISE (Adrian Farrel)
- Re: [Tsv-art] Tsvart early review of draft-brisco… Bob Briscoe
- Re: [Tsv-art] Tsvart early review of draft-brisco… Bob Briscoe
- Re: [Tsv-art] Tsvart early review of draft-brisco… Magnus Westerlund