[L4s-discuss] Configuring a L4S test plant
Matteo Guarna S303434 <matteo.guarna@studenti.polito.it> Tue, 03 October 2023 13:43 UTC
Return-Path: <matteo.guarna@studenti.polito.it>
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 549ABC15106A for <l4s-discuss@ietfa.amsl.com>; Tue, 3 Oct 2023 06:43:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.306
X-Spam-Level:
X-Spam-Status: No, score=-4.306 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, 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 (1024-bit key) header.d=studenti.polito.it
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 fUnEIoWQ747M for <l4s-discuss@ietfa.amsl.com>; Tue, 3 Oct 2023 06:42:59 -0700 (PDT)
Received: from compass.polito.it (compass.polito.it [130.192.55.110]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B283FC180EBF for <l4s-discuss@ietf.org>; Tue, 3 Oct 2023 06:42:49 -0700 (PDT)
Received: from compass-fwd (localhost [127.0.0.1]) by compass.polito.it (Postfix) with ESMTP id CD82060010B7 for <l4s-discuss@ietf.org>; Tue, 3 Oct 2023 15:42:46 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1]) by compass.polito.it (Postfix) with ESMTP id C909160010B6 for <l4s-discuss@ietf.org>; Tue, 3 Oct 2023 15:42:46 +0200 (CEST)
Authentication-Results: compass.polito.it (amavisd-new); dkim=pass (1024-bit key) reason="pass (just generated, assumed good)" header.d=studenti.polito.it
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= studenti.polito.it; h=user-agent:x-sender:message-id:subject :subject:to:from:from:date:date:content-type:content-type :mime-version:received:received; s=y2k10; t=1696340566; bh=tw7AV u3sNOjEduLvInPCZobMiEU23ap7R1AhOW1yKwA=; b=kXWc7Uh0J2JWDLvv1nLcY hV9bSserPl/Pt1lwWpV8QH3cQo5rtgroKemVceldKqhOFWkJeCvFje14rkA0eJFi wQBJ8ce0ExfBwGyCGkYvEFH9YS9TbbzzL03YiITAEpduY095lk+06nA14RMFW442 OwziNr2eAQClwJQVTNSjbo=
X-Virus-Scanned: amavisd-new at studenti.polito.it
Received: from compass.polito.it ([127.0.0.1]) by localhost (compass.polito.it [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id l3s2-YDtFjLh for <l4s-discuss@ietf.org>; Tue, 3 Oct 2023 15:42:46 +0200 (CEST)
X-AccountStatus: yes
Received: from mail.studenti.polito.it (mail.studenti.polito.it [130.192.55.225]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: s256987@studenti.polito.it) by compass.polito.it (Postfix) with ESMTPSA id F2A8B60010A4 for <l4s-discuss@ietf.org>; Tue, 3 Oct 2023 15:42:45 +0200 (CEST)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=_d06ed5a9db43ef4fc9d9f83cd9872de7"
Date: Tue, 03 Oct 2023 15:42:45 +0200
From: Matteo Guarna S303434 <matteo.guarna@studenti.polito.it>
To: l4s-discuss@ietf.org
Message-ID: <7952e11516cc7b25484b53ae1380d88c@studenti.polito.it>
X-Sender: matteo.guarna@studenti.polito.it
User-Agent: Roundcube Webmail/1.2-rc
X-Webmail-IP: [ 151.18.77.248 ]
X-Encoded-IP: 1wgPwnNU4KyFUYbH1PERTnUceVkR+tKbgRa8kDuzu81NQp3vMdXNCUOWBe0MjOPWhRj6K+Xyuh/LMepiGEqRJQ==
Archived-At: <https://mailarchive.ietf.org/arch/msg/l4s-discuss/glblrUbYI_CaSuNlSgoZ3deb_xg>
Subject: [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 13:43:04 -0000
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) - 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). I am sure I am missing some important details in the setup, and I would really appreciate some help. 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.
- [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)