Received: by 2002:a05:6602:18e:0:0:0:0 with SMTP id m14csp4966535ioo; Tue, 31 May 2022 16:15:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxyaljWsNcG3RxxPeDu9//8H7lo15WJQlAnPpA0MXdWBTvmx2tEUxUCxy+VUOHo92s8pyqm X-Received: by 2002:a05:6402:424d:b0:42b:6da1:bd25 with SMTP id g13-20020a056402424d00b0042b6da1bd25mr46892621edb.107.1654038942235; Tue, 31 May 2022 16:15:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654038942; cv=none; d=google.com; s=arc-20160816; b=qX4ATWJm4k9yBJxLcgNiLW2YGM4BEyEkh08LKSDNoM1pvjMHnkF09dZZWFNxqWEGtJ pmO4UQ3bmPPbYsK5Bh8UlIXBSGRF/mchGg96ZmdXZlB+XmxLIdf2K2bToxahr77lbrK+ QI2Bca5U4FKhmv++LtEGA/O+eXJ51NfLaNxucBFhqlVV7zMGafewpBd0Wjdbed+1SjTf oh4CUnuipUSypauMfjQ2sQpNra4Ze+U34I/AfvCWcYI00MGhljgaVcc4JDXkdc3KHGwn ip1ATb51bwBD+R8jDWFwrDXpt+TAgDAeZ6N+IWeqeMjlIqgQL2l32f4zAp1OyYKfVKBp aOvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=Ue5buJT5E74XVP8su1RZHoIggsGgw6wVZdFRERN/nS8=; b=uMsZr65lddOuh2vX24EETi6uoeH+Z5ppMYmTqZPz0BHaI5iHqx66rMmk20FVEKeyBy 6kyrFsl/4vTPdikGOJt78ehFK028YT7v5NJk4lw+aq1epQpaYzhjyyugHHjikbSOmoK3 yW3+r838JzD+2MwGTAblV/k9gfuYTFsVVlPAIPI4SEDoi6cq7dw2uBpYhpbWnEIne4/J pnUwm+z1VE7TrsF5kxjL//WljS1/wMIbzkyHBq3lcVa8ircl67HVqzkv9VfTPM6XKIfp iNeUMTTvYILMS8z/6tkOMCfmjfg/wWET2lj+fGZe2B8C1Kyul89//2yOl8TVClaPqqRe Q4rQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=hgm+W3VX; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e8-20020a17090658c800b006fee7918c98si155765ejs.884.2022.05.31.16.15.25; Tue, 31 May 2022 16:15:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=hgm+W3VX; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345249AbiEaO01 (ORCPT + 67 others); Tue, 31 May 2022 10:26:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54260 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345194AbiEaO00 (ORCPT ); Tue, 31 May 2022 10:26:26 -0400 Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [IPv6:2a00:1450:4864:20::62c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 516527CDDD; Tue, 31 May 2022 07:26:23 -0700 (PDT) Received: by mail-ej1-x62c.google.com with SMTP id f21so26915779ejh.11; Tue, 31 May 2022 07:26:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Ue5buJT5E74XVP8su1RZHoIggsGgw6wVZdFRERN/nS8=; b=hgm+W3VXAjq8KZl44XJVDPCmVbKiuFupXTbDOVwFC/i0SqYIQ7UGGXAhfRgmtv81Hc itxje5RSqtyfD0IFFuT2sVn3J+IcYltNd6YRTKKaqaEyqZo6sZksPASZqPehhiiXvOtl LbvNPw0sr2XhZODz8SFIb6D2pa3PdTSG6OaIjLbL0FCsdWE23dHfQ8hu0su8UIf9vvgl wZJdedI/9rIsMKySJ9YYpz00156vE8t4ThRdhuAmgnE9aF4Myl5pSoQ6J4xp0UXTFnD1 B1r3YCRiLdnHtVobebASgYSTS4pl+wncuBxoFNJBVtfDGRwQkvmCr5GYvWPqGMbvJci9 N69w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Ue5buJT5E74XVP8su1RZHoIggsGgw6wVZdFRERN/nS8=; b=2w+CfbI7aTR1A5VpaUw27LW1Qp1DAu0bdqUmFrwhCVs27m8+2G+LyMImgKey671sbZ 9vTru0xdMZiyaMRU5Fvc9PoFs9fRksLKY6RniuWxfZjKZYpzoe9ZWzVMXSGbF264Hn23 GRckH8rrbY+MAU/cm5tpJuxFDd9IHYa7AJGo0/s3pvAjzXAi0WwCaNfoTxOBDhTp0/hx 5PwuIzOAKavs7K9Q+abUTEB7qF+GeE35opeIe7Ohdz53Di7DZdRotAWcojstKhkn/OP7 +4pOmA5792xIye19TPswnGVEo/snJGlHOgXYMBHLoEjJsYmXgo1g9Yg4F6sC7XARlg3z a2Vw== X-Gm-Message-State: AOAM53323oZO69GHJUeQ5XsQqG5FSVneQnyIg/elDwkHDu+VWlvJALU6 hWQ+XLBwNHnOV+3OVswz34BxYCybUiT8b8n/a/E= X-Received: by 2002:a17:907:9712:b0:6ff:c09:33a2 with SMTP id jg18-20020a170907971200b006ff0c0933a2mr28418873ejc.50.1654007181855; Tue, 31 May 2022 07:26:21 -0700 (PDT) MIME-Version: 1.0 References: <20220531100922.491344-1-gasmibal@gmail.com> In-Reply-To: From: Baligh GASMI Date: Tue, 31 May 2022 16:26:10 +0200 Message-ID: Subject: Re: [RFC PATCH v3 1/1] mac80211: use AQL airtime for expected throughput. To: =?UTF-8?Q?Linus_L=C3=BCssing?= Cc: Johannes Berg , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , "open list:MAC80211" , "open list:NETWORKING [GENERAL]" , open list , The list for a Better Approach To Mobile Ad-hoc Networking Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org Hi, > > On Tue, May 31, 2022 at 12:09:22PM +0200, Baligh Gasmi wrote: > > Since the integration of AQL, packet TX airtime estimation is > > calculated and counted to be used for the dequeue limit. > > > > Use this estimated airtime to compute expected throughput for > > each station. > > > > It will be a generic mac80211 implementation. If the driver has > > get_expected_throughput implementation, it will be used instead. > > > > Useful for L2 routing protocols, like B.A.T.M.A.N. > > > > Signed-off-by: Baligh Gasmi > > Hi Baligh, > > Thanks for your work, this indeed sounds very relevant for > batman-adv. Do you have some test results on how this compares to > real throughput? And maybe how it compares to other methods we > already have in the kernel, like expected throughput via > minstrel_ht rate control or the estimates performed in 802.11s > HWMP [0]? I'll share a comparison between an iperf3 running and the current value of this implementation. What I can say, for now, is that they are close to each other. The minstrel_ht still a better implementation for expected throughput. That's why if there is minstrel_ht support, it will be used instead of this implementation. However, 802.11s metric is another story, it's a parameter used by the HWMP routing protocol for the path selection, so it could be based on the expected throughput, but it includes other factors that could be mesh specific. For me, 802.11s metric and expected throughput are not necessarily the same values. > > Is there a certain minimum amount of traffic you'd suggest to have > enough samples to get a meaningful result? I'm using a burst of 50 ARP packets, padded to have 1024 bytes. (to be optimized) > > I'm also wondering if we are starting to accumulate too many > places to provide wifi expected throughput calculations. Do you > see a chance that this generic mac80211 implementation could be made > good enough to be used as the sole source for both batman-adv and > 802.11s HWMP, for instance? Or do you see some pros and cons > between the different methods? > I think that this implementation is still based on an estimation, so it's not good as a minstrel. It's based on the AQL airtime estimation. With a phy_rate of the last sent packet, and average aggregated packets, and other stuff ... The whole idea is not to replace current implementation, but to extend other drivers (to have something is better than having nothing !) Since batman-adv needs the expected throughput to make a decision, it will get a value regardless of the driver implementation. > Regards, Linus > > > [0]: https://elixir.bootlin.com/linux/v5.18/source/net/mac80211/mesh_hwmp.c#L295