Re: [L4s-discuss] Configuring a L4S test plant
Sebastian Moeller <moeller0@gmx.de> Tue, 03 October 2023 14:39 UTC
Return-Path: <moeller0@gmx.de>
X-Original-To: l4s-discuss@ietfa.amsl.com
Delivered-To: l4s-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EDA5AC151075 for <l4s-discuss@ietfa.amsl.com>; Tue, 3 Oct 2023 07:39:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.853
X-Spam-Level:
X-Spam-Status: No, score=-6.853 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_HI=-5, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=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, URIBL_BLOCKED=0.001, 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=gmx.de
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 XOYui4SRTQgo for <l4s-discuss@ietfa.amsl.com>; Tue, 3 Oct 2023 07:39:25 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CFDB8C153CBF for <l4s-discuss@ietf.org>; Tue, 3 Oct 2023 07:39:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1696343962; x=1696948762; i=moeller0@gmx.de; bh=iJwXarFLnkibEBeYCL4No7fMq1WJQANoPJ65TmfAIdw=; h=X-UI-Sender-Class:Subject:From:In-Reply-To:Date:Cc:References:To; b=CIA3veM6IhuNDtgfQ6MDGOuuV2Fssor9Dbr6v+hgD/dnNL7Xzmm75Jbv/eVSQCwxozcrbl/8eVU bEG7JydLbZoveojUd/X3jCVfA5lYT0+sU3Gzqc8zI/4YzW/aNbFICot6x+uCvH2kYIkjkOkf67v6B ZQPya7mj/9K7LCmprZI+NUagctiegNRCJB5WLoeyMB7yD1hikQ4oZ+F6357q1oaIGSiH66nK4jD8X KkVR8ilQXRBvOtozHQYFuLo2BGySMEc6uIqqNQ3NugM9YYlIZIksvIM+grUa0iYW4bpzc/NJuPDJT swXoaF3pqy5iswYWxQIKM8y7sC9H6sdpfQxg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from smtpclient.apple ([95.116.82.136]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N95iR-1rimvG3QF5-0165LD; Tue, 03 Oct 2023 16:39:21 +0200
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.4\))
From: Sebastian Moeller <moeller0@gmx.de>
In-Reply-To: <7952e11516cc7b25484b53ae1380d88c@studenti.polito.it>
Date: Tue, 03 Oct 2023 16:39:20 +0200
Cc: l4s-discuss@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <230D9924-C32F-4DE8-8BBD-F3D35D94B05B@gmx.de>
References: <7952e11516cc7b25484b53ae1380d88c@studenti.polito.it>
To: Matteo Guarna S303434 <matteo.guarna@studenti.polito.it>
X-Mailer: Apple Mail (2.3696.120.41.1.4)
X-Provags-ID: V03:K1:I6QFvcBnWeclJdbRRf1/rz5CoS1LVsLKTwstOir4R7885DINU0x Mkqu/Tg1V2m1NyNTRjVjO8JDhJl7dMYmybhcLJQqflNKGTdRvBIx2UQHA9Zytsh2svt3TrC QqqT+W9txmPSXry9BnLR4i5NV0Eh3I0fjXvzTwam2A/rNmp5JtHlXYxZl9e2uwTeDS+xVfB 11BI47WZA1jmjwRf0tlNg==
UI-OutboundReport: notjunk:1;M01:P0:j3eFd5ZZw1Y=;5l7y/rjZ+p2/P6L8Mbj3o4TDnsW kcDiaMUlVh2v5gLTluAeBMkwCeMT48am5U9rqhfDCY34BBi++K1z25ofEG93Adgbl7eazMwq0 4fGfmLLj0/Q49Zl91HubDUezowhhs+MoZZvFKS1TjRZ9b+5ISZEz1AaxopLQ6rZsFJdC3CJ1j Pv+lc9CFB4TKAdLcXQo8HU73YVutftoBoluVU/nmYRmR1LjwC8Rc7OrVRZRNPvrkYdHtS7w7M EwqoBAW91eFvgtw775SGLC6FsReIEplqymztC5R5Fkmj/oChfPMRtZg4idbkbF9nIRSrupOXd mKdteEUz8ssWuSfpLpnmGL4AICTmRZraRo8nd7qa0kQ+5donzNfAXBqDYsfd9XKxoC4pHXBBx yq+aI1bkTc2lHFkHyyNsjXf7FqkQMNKb8x2u7T/9AXExuPRgR7SWbC9LlP10Kd/xYijcXHqHV FIfXuM+XC1prHjaX9I3u5jeclo1YdYqbR7bBycD77xHaq9I/OFiMHDgua2yXwVZkDk+mRpLla yy1/jD6Fr50mYqup3er25spqfBAwr4sXVCS257ga5OWTgQuo4TnXzTy0zoLkTgMDSAwdTIZ1x bgFGVG5JhGe6oZImIBB0hLe6r/Es9fgw2cu8UdqHv4kVjkadHNW2BvaE9WY+pBGfhIKd5ppKU ScYKIY91/J/ZW53CPaEVtXdZt4Qycjx10LxEbvBDnf2XuYqkPTYTJDw+uzqC6uPt7kyp6ltvs uF5vayAF0h49hL3BaxNFRJV7WGQ+OnHpaB8X76iLvO9inwLDH1OiaUGkKEyLqXwbIvDWD0XSM WQ2+sUepIkD7qrJi2SxUXFrsltQuEgaYTn1WXloKUchkG2+3rxR7FTc8vRqbEADZGg0canCqd pom5LFkvubB+fnEhOAcxwt2cHf18Ec8kPNnhOXvVayE3LP36fG+6bFNS5/2js0aHj8VV+D2OC SndaSYtB74SHy5b0wfibd0OiQCY=
Archived-At: <https://mailarchive.ietf.org/arch/msg/l4s-discuss/EvHmVIQ-U2ixFAwQBYS5UEIg3KA>
Subject: Re: [L4s-discuss] Configuring a L4S test plant
X-BeenThere: l4s-discuss@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Low Latency, Low Loss, Scalable Throughput \(L4S\) " <l4s-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/l4s-discuss>, <mailto:l4s-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/l4s-discuss/>
List-Post: <mailto:l4s-discuss@ietf.org>
List-Help: <mailto:l4s-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/l4s-discuss>, <mailto:l4s-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 03 Oct 2023 14:39:29 -0000
Hi Matteo. > On Oct 3, 2023, at 15:42, Matteo Guarna S303434 <matteo.guarna@studenti.polito.it> wrote: > > Greetings everyone, > > I hope the question isn't too off-topic, please forgive me in advance if it is so. > > I am still trying to perform some fairness measurements with both L4S and classic flow, although now on a physical test plant instead of a virtualized one. I'm relying on the L4STeam Github project for the deployment of the L4S architecture and I am looking for someone who's familiar with the project and might be willing to help me: in fact I seem not to be able to achieve the correct configuration. > > My setup is very simple: I have four servers (two senders and two receivers) exchanging two traffic flows through one server acting as a router. One client-server pair uses Prague as CC, while the other uses Cubic. All servers have the patched kernel provided in the https://github.com/L4STeam/linux/ repository branch. > > If I trigger a congestion on the router by generating both the Prague and the Cubic flows (let's say the flows measure 100 Mbit/s each, and they come though a L2 switch both on the same router's input interface on a 1Gb Ethernet link; only a 100M link though is in place on the output interface towards the receivers) I see the L4S flow having higher delay, higher jitter and a smaller (and more variable) bandwidth share. The Prague share is 1/4 of the Cubic share. I am sending an attachment with a graphical representation of the scenario here described. > > I configured my L4S endpoints as follows: > > - I set the CC as tcp Prague (sysctl -w net.ipv4.tcp_congestion_control=prague) > - I set the AccEcn, even if it's not necessary apparently (sysctl -w net.ipv4.tcp_ecn=3) > - I disabled the required offloading capabilities on the endpoints (sudo ethtool -K $NETIF tso off gso off gro off lro off) [SM] I think you need to do the same on the router... or with your topology with running prague and cubic over separate end-points especially on the router itself. Side-node, sch_cake grew a split-gso mode to automatically handle this issue because it can be a bit of a whack-a-mole problem to make these configs stick (and in the case of cake the idea was to make deployment easy even for non-experts). > - I configured the fair queue on the endpoints (sudo tc qdisc replace dev $NETIF root fq) > > I configured my router as follows: > > - I enabled forwarding through these interfaces to obtain the routing capabilities (sudo sysctl -w net.ipv4.ip_forward=1) > - I set the dualpi2 on both interfaces (sudo tc qdisc replace dev $NETIF root dualpi2) > > I then applied the fair queue and disabled the offloading capabilities on both my classic endpoints to ensure that the classic and l4s flows act as fairly as possible, but to no avail (even without these precautions the results remain roughly the same). [SM] Again, I think with your topology offloads at the endpoints should not have much influence, but at the router the well might. If that turns out to help this might be explained by Prague's (and/or DualQ's L-queue) considerably higher sensitivity to bursty traffic compared to classic traffic and queue. > > I am sure I am missing some important details in the setup, and I would really appreciate some help. [SM] To me this looks rather straight forward, and I probably would try something similar, but I did not actually try in practice. Regards & good luck Sebastian > > Regards, > > Matteo > > P.s. > I just want to point out that by looking at the packet traces everything seems fine: Prague carries the ECN=1, the dualpi2 marks packets with ECN=3, the AccEcn control signals on the ACE fields are coherent, and no losses occur in the Prague flow, while they do happen with the Cubic flow. It looks like Prague is underperforming for whatever reason. Furthermore, if I switch back to two Cubic flows I measure perfect share, equal delay and equal jitter, so it looks to me like there are no physical impairments on the testbed.<testplant_issue.pdf>-- > L4s-discuss mailing list > L4s-discuss@ietf.org > https://www.ietf.org/mailman/listinfo/l4s-discuss
- [L4s-discuss] Configuring a L4S test plant Matteo Guarna S303434
- Re: [L4s-discuss] Configuring a L4S test plant Sebastian Moeller
- Re: [L4s-discuss] Configuring a L4S test plant Matteo Guarna S303434
- Re: [L4s-discuss] Configuring a L4S test plant Sebastian Moeller
- Re: [L4s-discuss] Configuring a L4S test plant Neal Cardwell
- Re: [L4s-discuss] Configuring a L4S test plant Matteo Guarna S303434
- Re: [L4s-discuss] Configuring a L4S test plant Neal Cardwell
- Re: [L4s-discuss] Configuring a L4S test plant Matteo Guarna S303434
- Re: [L4s-discuss] Configuring a L4S test plant Sebastian Moeller
- Re: [L4s-discuss] Configuring a L4S test plant Sebastian Moeller
- Re: [L4s-discuss] Configuring a L4S test plant Matteo Guarna S303434
- Re: [L4s-discuss] Configuring a L4S test plant Matteo Guarna S303434
- Re: [L4s-discuss] Configuring a L4S test plant Sebastian Moeller
- Re: [L4s-discuss] Configuring a L4S test plant Sebastian Moeller
- Re: [L4s-discuss] Configuring a L4S test plant Matteo Guarna S303434
- Re: [L4s-discuss] Configuring a L4S test plant Sebastian Moeller
- Re: [L4s-discuss] Configuring a L4S test plant Koen De Schepper (Nokia)