Re: [tsvwg] [Technical Errata Reported] RFC7141 (7237)

Jonathan Morton <chromatix99@gmail.com> Sun, 01 October 2023 20:01 UTC

Return-Path: <chromatix99@gmail.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 4766FC15153D for <tsvwg@ietfa.amsl.com>; Sun, 1 Oct 2023 13:01:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.857
X-Spam-Level:
X-Spam-Status: No, score=-1.857 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_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 u02rbhGt2f0b for <tsvwg@ietfa.amsl.com>; Sun, 1 Oct 2023 13:00:59 -0700 (PDT)
Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com [IPv6:2a00:1450:4864:20::229]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 03A1EC14CE2B for <tsvwg@ietf.org>; Sun, 1 Oct 2023 13:00:59 -0700 (PDT)
Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-2bff776fe0bso251512171fa.0 for <tsvwg@ietf.org>; Sun, 01 Oct 2023 13:00:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696190456; x=1696795256; darn=ietf.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=qBA+60hX5pbIDRbrdxYX3uTJmdx2EPJhykJE4U2fjik=; b=O+dbVfJcm1DTUsVJwfSTxYg6/IlZmS5tHWsljJvNfunkPNI1CcPnWFMe+Y0x/7wVfh UOYONmKGLQPg1uSP558lVVQC8BgwDowv34Uty6WUi9fmRCOUiNUSWOWLBGBDC/mXnGHs y8yt6hj4o99D6+OkMy8BBmNo3zrfdrnjUweIzNi6oHq9QXgxFkOIlPPK+4AgFix2Kzo4 RdY8wtPVtVOVuu0p3gDVArJfl5cY16zf0PNbhtAEt6Rmy/Hvu3pXoSsdN61D/9n2Pjys BaO21TYXsz/k/F875jpz1AYfiKVMCzq58DXss5xbAYymGR4K6s4SVwoDj1F69QE9e3lN FkrQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696190456; x=1696795256; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qBA+60hX5pbIDRbrdxYX3uTJmdx2EPJhykJE4U2fjik=; b=p4DzFiOlxp/DhHpImdX2A1M/W8EtWCEMwVu9W1ogcvYYyeDbcfxSAmZMeAllCo2wxC nJk0yShzDxfhnEh3OQ0kJPoe2iioux2p8R4MWL85ZY8oJY6GMawGXBJoGfnKDGvHEGcI j8lj89RtMoYgK6MBarOTj2cZoHPdR0/V2dU0/N5SYPSENgbX05o7x0BY6G6QSnqZgmc6 8Rkoi6GDeSL23wEAp7VUnSpSPOtzV3RQ/DxEEzL2jaJQFayfxfZdvnF96ZjiWWzzutb2 XP5ZvXQqH47lb4+Ya3q0y6mC/LgGYkUOF32psrKvhtL5bdGIRXLrDaAVCC+jEDCsfcDO HrTw==
X-Gm-Message-State: AOJu0YzsmBydzNzRmGDQ8OWOebbdXLwfLTZuzdi+JVcxuNXi9dZtedlz ogK7MgupY0PaEgMZJFktpdg=
X-Google-Smtp-Source: AGHT+IHPt2dC1YBoLVx3CkXG/gsHFKxce754/zFTrUpAq5hQQimVNU+owc6aLOMqxYhlxRMj5hEPbA==
X-Received: by 2002:a2e:9a89:0:b0:2bb:9710:9d89 with SMTP id p9-20020a2e9a89000000b002bb97109d89mr8151191lji.10.1696190456286; Sun, 01 Oct 2023 13:00:56 -0700 (PDT)
Received: from smtpclient.apple (188-67-146-233.bb.dnainternet.fi. [188.67.146.233]) by smtp.gmail.com with ESMTPSA id e12-20020a2e818c000000b002c129687a0dsm5016509ljg.24.2023.10.01.13.00.55 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 01 Oct 2023 13:00:55 -0700 (PDT)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.100.0.2.22\))
From: Jonathan Morton <chromatix99@gmail.com>
In-Reply-To: <6A52715C-F74B-40D0-825B-1ACDC8137B90@gmx.de>
Date: Sun, 01 Oct 2023 23:00:54 +0300
Cc: Bob Briscoe <ietf@bobbriscoe.net>, Gorry Fairhurst <gorry@erg.abdn.ac.uk>, TSVWG <tsvwg@ietf.org>, jukka.manner@aalto.fi, RFC Errata System <rfc-editor@rfc-editor.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <2B93FEA9-485B-49BF-922B-E2174697B213@gmail.com>
References: <20221104094005.747A455F68@rfcpa.amsl.com> <4aef3037-fae5-68c9-661f-4ce89b1ce7e7@erg.abdn.ac.uk> <273A82C1-E675-4950-A7E0-E8C564B09834@gmx.de> <6672b32e-19b6-b295-1460-904481de2c83@erg.abdn.ac.uk> <1351054E-7647-40CA-B2FA-7A566DE09E24@gmx.de> <f02cfbb6-9a14-0c70-4986-358b9226033f@erg.abdn.ac.uk> <CC3F2650-2CC7-4EC9-B0BC-2200D482CDEC@gmx.de> <073c8aed-91f4-a11a-771e-9932032cedba@bobbriscoe.net> <25626F56-AA8E-4B7D-904E-F17E2B57642E@gmx.de> <d946c450-3a9d-38c8-a2d1-a5fc54c287b4@bobbriscoe.net> <7BD52E0C-3532-4B48-B44A-EB4DA19BD258@gmx.de> <8F643560-D234-4DBF-8CB3-B0BDD5C7B53B@gmail.com> <6A52715C-F74B-40D0-825B-1ACDC8137B90@gmx.de>
To: Sebastian Moeller <moeller0@gmx.de>
X-Mailer: Apple Mail (2.3654.100.0.2.22)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/fvT8B0ZZIqVPRibfX3Jya1ytPUw>
Subject: Re: [tsvwg] [Technical Errata Reported] RFC7141 (7237)
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, 01 Oct 2023 20:01:03 -0000

> On 1 Oct, 2023, at 9:43 pm, Sebastian Moeller <moeller0@gmx.de> wrote:
> 
> Neither RFC 7141 nor draft-ietf-tsvwg-ecn-encap-guidelines make "the Internet work better". Others might disagree but should be prepared to explain "how".

As it stands, the text you quoted in RFC-7141 - though it is listed as a BCP - does not reflect actual Current Practice, and I would consider that the root of the problem.  Perhaps we can improve the situation by suggesting a modification to the text so that it *does* reflect Best Current Practice.  I think that would be in the spirit of an Erratum, or at least the starting point for a more productive discussion.

> Original Text
> -------------
> 2.2.  Recommendation on Encoding Congestion Notification
> 
>   When encoding congestion notification (e.g., by drop, ECN, or PCN),
>   the probability that network equipment drops or marks a particular
>   packet to notify congestion SHOULD NOT depend on the size of the
>   packet in question.
> [...]
> 2.3.  Recommendation on Responding to Congestion
> 
>   When a transport detects that a packet has been lost or congestion
>   marked, it SHOULD consider the strength of the congestion indication
>   as proportionate to the size in octets (bytes) of the missing or
>   marked packet.
> 
>   In other words, when a packet indicates congestion (by being lost or
>   marked), it can be considered conceptually as if there is a
>   congestion indication on every octet of the packet, not just one
>   indication per packet.
> 
>   To be clear, the above recommendation solely describes how a
>   transport should interpret the meaning of a congestion indication, as
>   a long term goal.  It makes no recommendation on whether a transport
>   should act differently based on this interpretation.  It merely aids
>   interoperability between transports, if they choose to make their
>   actions depend on the strength of congestion indications.
> 
> Corrected Text
> --------------

2.2.  Recommendation on Encoding Congestion Notification

  When encoding congestion notification (e.g., by drop, ECN, or PCN),
  the rate at which network equipment drops or marks packets to notify
  congestion SHOULD be approximately consistent over time, regardless
  of variations in the size of packets.

  The probability that a given traffic flow receives a congestion
  notification in any given time interval SHOULD NOT depend on the
  packet sizes it consists of, but SHOULD depend on its relative
  utilisation of the channel.  This can be achieved stochastically.

[...]

2.3.  Recommendation on Responding to Congestion

  When a transport detects that a packet has been lost or congestion
  marked, it MAY consider the strength of the congestion indication
  as proportionate to the size in octets (bytes) of the missing or
  marked packet.

  In other words, when a packet indicates congestion (by being lost or
  marked), it can be considered conceptually as if there is a
  congestion indication on every octet of the packet, not just one
  indication per packet.  Conversely, a transport can consider a
  rapid sequence of congestion notifications to be a single event of
  congestion.

  To be clear, the above recommendation solely describes how a
  transport should interpret the meaning of a congestion indication, as
  a long term goal.  It makes no recommendation on whether a transport
  should act differently based on this interpretation.  It merely aids
  interoperability between transports, if they choose to make their
  actions depend on the strength of congestion indications.

> Notes
> -----

Current Practice includes the Controlled Delay (Codel) AQM [RFC8289], which marks packets on a time-schedule basis and thus naturally adapts to the more rapid passage through a channel of smaller packets, or indeed to same-sized packets passing through a faster channel.  Codel has been shown to achieve similar congestion-control performance to probability-based AQMs with fewer congestion indications, and there is some theoretical justification for time-domain marking schedules being a good match to current congestion control schemes.  In any case, Codel is one of the most widely deployed AQMs in today's Internet, usually in concert with a fair-queuing mechanism.

With that said, probability-based AQMs which either do or do not compensate for this effect (such compensation effectively introducing a dependence on packet size) are also in Current Practice.  Packet size compensation, whose behaviour is closer (but not identical) to time-domain marking, is considered a more modern practice.

Current Practice also includes the widely deployed Standards Track congestion control algorithms NewReno and CUBIC as applied to TCP, and ECN [RFC3168], which all treat any sequence of congestion indications (losses or CE marks) during a single round-trip as being a single congestion event warranting a single congestion-control response (a multiplicative decrease of the congestion window).

Indeed RFC-3168 specifies a mechanism for reflecting CE marks back to the sender which is incapable of conveying the existence of more than CE mark per round-trip, since the ECE flag is latched on until it is acknowledged by a CWR flag set by the sender.  In the absence of SACK, TCP is also incapable of detecting more than one packet loss event per round-trip, and not all TCP implementations (particularly those for resource-constrained devices) implement SACK.

As such, the original text does not accurately reflect Current Practice and therefore cannot be said to reflect Best Current Practice.  The corrected text attempts to better reflect the state of the art.

 - Jonathan Morton