Re: [tcpm] A description of Linux pacing

Michael Welzl <michawe@ifi.uio.no> Wed, 20 March 2024 07:42 UTC

Return-Path: <michawe@ifi.uio.no>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 172BFC1E7240 for <tcpm@ietfa.amsl.com>; Wed, 20 Mar 2024 00:42:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.007
X-Spam-Level:
X-Spam-Status: No, score=-2.007 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, 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=ifi.uio.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 93xsiyEgiZVN for <tcpm@ietfa.amsl.com>; Wed, 20 Mar 2024 00:42:11 -0700 (PDT)
Received: from mail-out02.uio.no (mail-out02.uio.no [IPv6:2001:700:100:8210::71]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 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 30247C1E723C for <tcpm@ietf.org>; Wed, 20 Mar 2024 00:42:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=ifi.uio.no; s=key2309; h=References:To:Cc:In-Reply-To:Date:Subject:Mime-Version: Content-Type:Message-Id:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=0I2oIsT658vmE8n4oZUtoWwUme85pZJnFl+qQLZTYVE=; b=CKnKqPRmF1FLFD6fNzFQn1usku ZAtMZcUyJg1SFngCVPvjQ+JAaCcSvQzkN4R5XwG34Jz2wQ/mxWmjckyzKEaXEkErlPaxptOyBhuwt 3CkUHMc7440LsLbQeQpusWhPEGf6mQGurIjDDWzP4insjqqgvddexQ846IuJpSc6wf5G6t99C0UpE SNAdGR2YetJXLonmxl68tmBsE16WPM89sqE+FvKhhEW+Pfmjax4mEPHrU0yUj2XhC94jKSmusa8dm 3FBDThultn7gUKT+R42thNLKlCnpMqAFLNn0yTjz0LY5N15wkAW1QNk/3jz9pbP2SjzES9UpW7LBN Yn9c4SQA==;
Received: from mail-mx11.uio.no ([129.240.10.83]) by mail-out02.uio.no with esmtps (TLS1.2) tls TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (Exim 4.96.2) (envelope-from <michawe@ifi.uio.no>) id 1rmqaM-00DE3l-1p; Wed, 20 Mar 2024 08:42:06 +0100
Received: from [129.240.136.194] (helo=smtpclient.apple) by mail-mx11.uio.no with esmtps (TLS1.2:ECDHE-ECDSA-AES256-GCM-SHA384:256) (Exim 4.97.1) (envelope-from <michawe@ifi.uio.no>) id 1rmqaI-000000006K7-1K8h; Wed, 20 Mar 2024 08:42:06 +0100
From: Michael Welzl <michawe@ifi.uio.no>
Message-Id: <16FCCC7E-7F2E-453D-AD9B-BA6942C7B2F9@ifi.uio.no>
Content-Type: multipart/alternative; boundary="Apple-Mail=_0F0F9E8C-1BC0-4A70-A70E-60B0226CF911"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.8\))
Date: Wed, 20 Mar 2024 08:42:01 +0100
In-Reply-To: <CAM4esxQg=MmBMJ-2dyWLX0HCy9yBCCaVBaWof31MFNBC-37ajQ@mail.gmail.com>
Cc: tcpm@ietf.org, iccrg@irtf.org
To: Martin Duke <martin.h.duke@gmail.com>
References: <AE83F8F4-7D71-4034-93E7-365E1CD701F5@ifi.uio.no> <CAM4esxQg=MmBMJ-2dyWLX0HCy9yBCCaVBaWof31MFNBC-37ajQ@mail.gmail.com>
X-Mailer: Apple Mail (2.3696.120.41.1.8)
X-UiO-SPF-Received: Received-SPF: neutral (mail-mx11.uio.no: 129.240.136.194 is neither permitted nor denied by domain of ifi.uio.no) client-ip=129.240.136.194; envelope-from=michawe@ifi.uio.no; helo=smtpclient.apple;
X-UiO-Spam-info: not spam, SpamAssassin (score=-4.0, required=5.0, autolearn=disabled, GOOGLE_DOC_SUSP=1, HTML_MESSAGE=0.001, RDNS_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, UIO_MAIL_IS_INTERNAL=-5)
X-UiO-Scanned: 846AAB79FF0ADE1876033CA3E501C1F83D2D126B
X-UiOonly: 2DBF6D0F3B70FC70DF6CC72422646A0742F896A1
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/7oFE3SWBdliqvui4-25BUvZDtnE>
Subject: Re: [tcpm] A description of Linux pacing
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 20 Mar 2024 07:42:16 -0000

Hi,

and thanks for your feedback!

I agree; I can write this up in time for the Vancouver IETF. As for documenting other implementations, I don’t know internals of any others… but I’m very willing to involve others in such an I-D - if any expert on a different OS is interested, get in touch!

Else, I could just make a start with this and see where it goes. It’s not much work, I can keep it short and simple.

Cheers,
Michael


> On 12 Mar 2024, at 23:08, Martin Duke <martin.h.duke@gmail.com> wrote:
> 
> Speaking as an individual, it's a bummer we don't have a real RFC about pacing, this would be a decent Informational RFC for a way to do pacing, that is also a useful reference for how an important implementation does it.
> 
> Even more ambitious, one could document the approaches of several major implementations.
> 
> On Mon, Feb 19, 2024 at 6:06 AM Michael Welzl <michawe@ifi.uio.no <mailto:michawe@ifi.uio.no>> wrote:
> Dear TCPM and ICCRG (I assume that there’s so much overlap with people in CCWG that it would just be spamming to send it there too?),
> 
> Over the last two weeks or so, I have put some effort into trying to understand how Linux pacing *really* works  (I had some descriptions that were somewhat high-level; I wanted to obtain a more precise lower-level understanding).
> I wrote a document, just for myself, explaining what goes on in the code, as I can’t even try to follow the Linux kernel without taking notes.
> 
> After a first iteration, I shared it with the bufferbloat mailing list, in the hope of getting corrections.
> I did!  Most notably (but not only), Neal Cardwell helped me a ton - and now the document should be quite thorough and hopefully correct.
> 
> While I only did this for myself and just asked the list for help, several people have in the meantime told me that this document is actually valuable for the community - and so I thought I should share it here, too.
> It lives as a Google doc at this URL:
> https://docs.google.com/document/d/1-uXnPDcVBKmg5krkG5wYBgaA2yLSFK_kZa7xGDWc7XU/edit?usp=sharing <https://docs.google.com/document/d/1-uXnPDcVBKmg5krkG5wYBgaA2yLSFK_kZa7xGDWc7XU/edit?usp=sharing>
> 
> Comments or fixes are very welcome!
> Please feel free to forward this as you want.
> 
> I know that Google docs is not the format that we people here normally use  :-)   well, if someone thinks that it would indeed be useful to write this up as an I-D (probably skipping all the code details though), please let me know - I can do that, and I can also present it if there’s interest (but in Vancouver, not Brisbane).
> 
> Cheers,
> Michael
> 
> _______________________________________________
> tcpm mailing list
> tcpm@ietf.org <mailto:tcpm@ietf.org>
> https://www.ietf.org/mailman/listinfo/tcpm <https://www.ietf.org/mailman/listinfo/tcpm>