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

"Bless, Roland (TM)" <roland.bless@kit.edu> Wed, 02 August 2023 18:36 UTC

Return-Path: <roland.bless@kit.edu>
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 56B1AC15154D for <tsvwg@ietfa.amsl.com>; Wed, 2 Aug 2023 11:36:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level:
X-Spam-Status: No, score=-1.997 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.091, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
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 Na6wE1uaPtif for <tsvwg@ietfa.amsl.com>; Wed, 2 Aug 2023 11:36:07 -0700 (PDT)
Received: from iramx1.informatik.kit.edu (iramx1.informatik.kit.edu [IPv6:2a00:1398:2::10:80]) (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 C7255C151541 for <tsvwg@ietf.org>; Wed, 2 Aug 2023 11:36:06 -0700 (PDT)
Received: from [2a00:1398:2:4006:b0b1:11e2:4c:5e43] (helo=i72vorta.tm.kit.edu) by iramx1.informatik.kit.edu with esmtpsa port 25 iface 2a00:1398:2::10:8 id 1qRGhW-0005t3-Hr; Wed, 02 Aug 2023 20:36:02 +0200
Received: from [IPV6:::1] (ip6-localhost [IPv6:::1]) by i72vorta.tm.kit.edu (Postfix) with ESMTPS id 06A80D0018F; Wed, 2 Aug 2023 20:36:01 +0200 (CEST)
Message-ID: <4ff3d1f0-2379-ef8c-c71e-64fe28c41bb5@kit.edu>
Date: Wed, 02 Aug 2023 20:36:00 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0 Thunderbird/102.13.0
Content-Language: de-DE, en-US
To: Ruediger.Geib@telekom.de, g.white@CableLabs.com
Cc: tsvwg@ietf.org
References: <169039129927.3244.8784605239288349316@ietfa.amsl.com> <FR2P281MB1527340CD1B283FF32161DCC9C0AA@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM> <2201ba11-c247-35f6-d127-1c912eeed66e@kit.edu> <FR2P281MB1527709C65666E3DC213990D9C0BA@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM> <fe37c2f8-b8d5-7f9e-b985-fa1221a36b3d@kit.edu> <FR2P281MB152716B8EDBE88A59F7584729C0BA@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
From: "Bless, Roland (TM)" <roland.bless@kit.edu>
Organization: Institute of Telematics, Karlsruhe Institute of Technology (KIT)
In-Reply-To: <FR2P281MB152716B8EDBE88A59F7584729C0BA@FR2P281MB1527.DEUP281.PROD.OUTLOOK.COM>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-ATIS-AV: ClamAV (iramx1.informatik.kit.edu)
X-ATIS-Checksum: v3zoCAcc32ckk
X-ATIS-Timestamp: iramx1.informatik.kit.edu esmtpsa 1691001362.598715247
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/seyk3MBv8qq-BPLZXORuAFwSExk>
Subject: Re: [tsvwg] I-D Action: draft-ietf-tsvwg-nqb-19.txt - BBR
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: Wed, 02 Aug 2023 18:36:12 -0000

Hi,

On 02.08.23 at 11:19 Ruediger.Geib@telekom.de wrote:
> thanks. Some questions:
> - is BBR "work in progress" and statements referring to it best should mention a version (e.g., BBRv2 and earlier versions...)?
> - Roland, could you provide a reference for insertion in draft NQB?

For BBRv1 I would shamelessly ;-) recommend our own paper
M. Hock, R. Bless and M. Zitterbart, "Experimental evaluation of BBR 
congestion control," 2017 IEEE 25th International Conference on Network 
Protocols (ICNP), Toronto, ON, Canada, 2017, pp. 1-10, doi: 
10.1109/ICNP.2017.8117540.
https://ieeexplore.ieee.org/document/8117540
or
https://doc.tm.kit.edu/2017-kit-icnp-bbr-authors-copy.pdf
as it has several plots showing the overshoot during BBRv1's startup 
phase, especially in large buffers. There is also
D. Scholz, B. Jaeger, L. Schwaighofer, D. Raumer, F. Geyer and G. Carle, 
"Towards a Deeper Understanding of TCP BBR Congestion Control," 2018 
IFIP Networking Conference (IFIP Networking) and Workshops, Zurich, 
Switzerland, 2018, pp. 1-9, doi: 10.23919/IFIPNetworking.2018.8696830.
https://dl.ifip.org/db/conf/networking/networking2018/2B1-1570416152.pdf


For BBRv2
Y. -J. Song, G. -H. Kim, I. Mahmud, W. -K. Seo and Y. -Z. Cho, 
"Understanding of BBRv2: Evaluation and Comparison With BBRv1 Congestion 
Control Algorithm," in IEEE Access, vol. 9, pp. 37131-37145, 2021, doi: 
10.1109/ACCESS.2021.3061696. https://ieeexplore.ieee.org/document/9361674
has some nice plots, too.

> I found https://datatracker.ietf.org/meeting/117/materials/slides-117-ccwg-bbrv3-algorithm-bug-fixes-and-public-internet-deployment-00, contains:
> - So most test results for BBRv2 will not apply to BBRv3
> - Primary impact of these changes:
>    Lower queuing delays and packet loss rates during and shortly after STARTUP
> 
> I don't claim that to be true and don't know, whether that has yet been validated independently. If I'm to have trust in Greg's work, I'd have to have trust into this presentation too.

Neal answered already quite clearly that for BBRv3, especially multiple 
flows "cause repeated/sustained queue pressure" and that the queue is
"in the neighborhood of 1.5*BDP", which is sustained queue pressure
that we analytically derived for BBRv1 already.

>  From all that I learned about networking, in the absence of admission control no sender is able to predict whether its initial traffic sent to a destination may cause congestion at the bottleneck. This, I think, holds independent of a DSCP chosen to mark that traffic. It is more important to me to understand, whether a BBR(v3) flow repeatedly causes queue-pressure. NQB, as Greg emphasized, provides low jitter and loss on a statistical basis *only* (and it *doesn't* provide throughput guarantees). A single, brief period of congestion every such and such minutes won't significantly impact jitter and loss statistics, if these were measured by a number of probes allowing stat-calculation with high confidence.
> 
> Roland, I agree, bottleneck buffer size and the number of flows impact buffer dimensioning and the buffer depth impacts the performance experienced by the flows. You mention an 8 BDP buffer, is that 8*60[ms]*100 Mbit/s? If yes, I'm astonished. Is that a standard Internet config - or ,e.g., WiFi specific? 8*20ms@100Mbit/s would be closer to my expectations.

Yes, we used this as an academic extreme at one end of the spectrum. 
However, since minRTTs may vary one flow's BDP may be different from 
another flow's BDP and a huge looking buffer may become small for
flows with larger minRTTs.

Regards,
  Roland

> -----Ursprüngliche Nachricht-----
> Von: Bless, Roland (TM) <roland.bless@kit.edu>
> Gesendet: Mittwoch, 2. August 2023 10:22
> An: Geib, Rüdiger <Ruediger.Geib@telekom.de>; g.white@CableLabs.com
> Cc: tsvwg@ietf.org
> Betreff: Re: [tsvwg] I-D Action: draft-ietf-tsvwg-nqb-19.txt - BBR
> 
> Hi Rüdiger,
> 
> On 02.08.23 at 08:25 Ruediger.Geib@telekom.de wrote:
>> thanks. My point is, draft-NQB claims BBR to "generally overshoot the available capacity, causing a queue to build up at the bottleneck link". This contradicts the BBR design aim, as formulated by the BBR authors "..without causing excessive queue pressure", and it seems to contradict a statement to be found within an RFC co-authored by Greg too. In the NQB draft, Greg puts down a negative evaluation of BBR, but does neither provide a reference, nor measurement results backing his assessment. A non-informed reader may take that as whatever BBR claims, they failed. I'd expect a reference for statements like that at least. Or removal.
>>
> 
> It is correct that BBRv1 and BBRv2 may overshoot considerably during their startup phase as other congestion controls would also do during their slow start phase. Although BBRv3 has a changed startup phase, I guess that the behavior is still somewhat similar. In general, BBR's behavior also depends on the bottleneck buffer size and the number of flows present. In larger buffers BBRv2 still caused considerable queueing delays that would not fit NQB's goals (e.g., we measured two flows 20ms and 60ms RTT, 100 Mbit/s bottleneck capacity, 8 BDP buffer caused 40–60ms queuing delay). This was usually better in smaller buffers as inflight_hi was set early due to packet loss >%2.
> However, newly starting BBR flows would probably regularly exceed NQB's buffer capacity and thus causing jitter and loss.
> 
> Regards,
>    Roland
> 
>> -----Ursprüngliche Nachricht-----
>> Von: Bless, Roland (TM) <roland.bless@kit.edu>
>> Gesendet: Dienstag, 1. August 2023 16:39
>> An: Geib, Rüdiger <Ruediger.Geib@telekom.de>; g.white@CableLabs.com
>> Cc: tsvwg@ietf.org
>> Betreff: Re: [tsvwg] I-D Action: draft-ietf-tsvwg-nqb-19.txt - BBR
>>
>> Hi Rüdiger,
>>
>> I brought this issue up on 2019/09/13 already (see "Comments on draft-white-tsvwg-nqb-02"
>> https://mailarchive.ietf.org/arch/msg/tsvwg/OY6yFWNUGxukDOwvpMP1Fuokiy
>> E/ for reference). In general, capacity seeking does not automatically
>> mean that it is queue building (e.g., TCP LoLa tries limit its queue to 5ms, but it is capacity seeking). BBR cannot always avoid to build a queue, but tries to limit its length, too.
>> As far as I understand the NQB design and draft, NQB flows are application-limited in nature (and thus not capacity seeking), so neither BBR nor LoLa flows are intended to use the NQB PHB.
>>
>> Regards,
>>     Roland
>>
>> On 01.08.23 at 16:09 Ruediger.Geib@telekom.de wrote:
>>> Hi Greg,
>>>
>>> Your draft NQB characterizes BBR as a capacity seeking protocol...causing a queue to build up at the bottleneck link (see below). This is seemingly in contradiction with the design aim of BBR (see below). Further, RFC9330 lists BBR as a "scalable congestion control" based protocol (see below). I note that the latter is co-authored by you. I take the statement of RFC9330 to contradict the standards track NQB judgement of BBR. Could you provide a reference or text explaining to readers, why your latest standards track RFC judges BBR as Queue Building? Alternatively, you could remove BBR from the statement in draft NQB.
>>>
>>> Regards,
>>>
>>> Ruediger
>>>
>>>
>>> https://www.ietf.org/archive/id/draft-ietf-tsvwg-nqb-19.html#name-int
>>> r oduction Many of the commonly-deployed congestion control
>>> algorithms, such as ..... BBR, are designed to seek the available
>>> capacity of the end-to-end path (which can frequently be the access network link capacity), and in doing so generally overshoot the available capacity, causing a queue to build up at the bottleneck link.
>>>
>>> https://datatracker.ietf.org/doc/html/draft-cardwell-iccrg-bbr-conges
>>> t
>>> ion-control#name-introduction-7 BBR uses recent measurements of a
>>> transport connection's delivery rate, round-trip time, and packet loss rate to build an explicit model of the network path, including its estimated available bandwidth, bandwidth-delay product, and the maximum volume of data that the connection can place in-flight in the network without causing excessive queue pressure.
>>>
>>> https://www.rfc-editor.org/rfc/rfc9330.html#name-l4s-architecture-ove
>>> r view Indeed, between the present document being drafted and
>>> published, the following Scalable congestion controls were
>>> implemented: ...., and the L4S ECN part of Bottleneck Bandwidth and Round-trip propagation time (BBRv2) [BBRv2] intended for TCP and QUIC transports.
>>>
>>>
>>>
>>> -----Ursprüngliche Nachricht-----
>>> Von: tsvwg <tsvwg-bounces@ietf.org> Im Auftrag von
>>> internet-drafts@ietf.org
>>> Gesendet: Mittwoch, 26. Juli 2023 19:08
>>> An: i-d-announce@ietf.org
>>> Cc: tsvwg@ietf.org
>>> Betreff: [tsvwg] I-D Action: draft-ietf-tsvwg-nqb-19.txt
>>>
>>>
>>> A New Internet-Draft is available from the on-line Internet-Drafts directories. This Internet-Draft is a work item of the Transport Area Working Group (TSVWG) WG of the IETF.
>>>
>>>       Title           : A Non-Queue-Building Per-Hop Behavior (NQB PHB) for Differentiated Services
>>>       Authors         : Greg White
>>>                         Thomas Fossati
>>>       Filename        : draft-ietf-tsvwg-nqb-19.txt
>>>       Pages           : 29
>>>       Date            : 2023-07-26
>>>
>>> Abstract:
>>>       This document specifies properties and characteristics of a Non-
>>>       Queue-Building Per-Hop Behavior (NQB PHB).  The NQB PHB provides a
>>>       shallow-buffered, best-effort service as a complement to a Default
>>>       deep-buffered best-effort service for Internet services.  The purpose
>>>       of this NQB PHB is to provide a separate queue that enables smooth
>>>       (i.e. non-bursty), low-data-rate, application-limited traffic
>>>       microflows, which would ordinarily share a queue with bursty and
>>>       capacity-seeking traffic, to avoid the latency, latency variation and
>>>       loss caused by such traffic.  This PHB is implemented without
>>>       prioritization and can be implemented without rate policing, making
>>>       it suitable for environments where the use of these features is
>>>       restricted.  The NQB PHB has been developed primarily for use by
>>>       access network segments, where queuing delays and queuing loss caused
>>>       by Queue-Building protocols are manifested, but its use is not
>>>       limited to such segments.  In particular, applications to cable
>>>       broadband links, Wi-Fi links, and mobile network radio and core
>>>       segments are discussed.  This document recommends a specific
>>>       Differentiated Services Code Point (DSCP) to identify Non-Queue-
>>>       Building microflows.
>>>
>>>       [NOTE (to be removed by RFC-Editor): This document references an ISE
>>>       submission draft (I-D.briscoe-docsis-q-protection) that is approved
>>>       for publication as an RFC.  This draft should be held for publication
>>>       until the queue protection RFC can be referenced.]
>>>
>>> The IETF datatracker status page for this Internet-Draft is:
>>> https://datatracker.ietf.org/doc/draft-ietf-tsvwg-nqb/
>>>
>>> There is also an HTML version available at:
>>> https://www.ietf.org/archive/id/draft-ietf-tsvwg-nqb-19.html
>>>
>>> A diff from the previous version is available at:
>>> https://author-tools.ietf.org/iddiff?url2=draft-ietf-tsvwg-nqb-19
>>>
>>> Internet-Drafts are also available by rsync at
>>> rsync.ietf.org::internet-drafts
>>>
>>>
>>
>