From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 65D933B2A4 for ; Mon, 27 Feb 2023 07:11:01 -0500 (EST) Received: by mail-ed1-x52b.google.com with SMTP id d30so24870128eda.4 for ; Mon, 27 Feb 2023 04:11:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=vC845F8muF9vB0I2MdY32e+vdP5Utamoa6bfMYz7IK0=; b=RM0v/hVF/BbekkU4IbgtlvzqE/cms1+payhKTwg6Dqt4kBSSZ76WvqLQnafUfDHXL2 7aC079c0SebYUMDJOpEwK8b3AOTnpOComqdjwUwNf+vOyvnzoeRPK8XyiN0kwb2aAUh/ XaDTj4JbxuVngQp4VV5BuTIY2e7YMK+FvTGUnhQ4VXcskfZtvqP+ihnR0+tLq1SAW+Dm YtLU44cJ6Af2nTJG71JNqARO3QGAPOGDDH+BkLtcXHd7mumDK90ghRhx89X5oCeARSHq CNK/ZtVC8iK6C1bu4BDXrzTlbjJFUsoKdarlRaI7uzVQB0yPXRZnkv7bteyRz+5Ye7Je 1HXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=vC845F8muF9vB0I2MdY32e+vdP5Utamoa6bfMYz7IK0=; b=sNM8e33JUlUZFvRnO4irxCoTWslZ4//mdiMUE9TjIzAyhvvzZ5RIJCp7fFE/Yog2u9 uxYgael89BDhCGg6p845kuDUlAQXeLU6ylkFLnPYeMRUcoyOaIxKzzlr+8rZeO73qm47 JYvqyJfkJT+10B2zdhD2NRRa7dKxIax/UgUWvU9gqK/81Z2gczy6cwz5M9yLpYGpAF9Q NWpLoT2mT3uEUyekdOgCX/Ov4mzuUB6Xe1V3WLvkrtRDA50gHk2yRai5GuphPfDYvix7 qKlpx9ZZf+yaz2JkfW1aTEfXOBS/j7z9WRFS9rwFezYvw9QGc5BVDcsbCzsWvThXu0gE xWWw== X-Gm-Message-State: AO0yUKWOHxu4mOSXuXfw8iyzpqV6G7D8Jj2L2DRSzf0fCeT/jJFHKk59 RwGB6B31L3IcULnZz9GL/7v1ST0ja7hyxtNjxEGxK4msoa8= X-Google-Smtp-Source: AK7set8wdbOFUidQDU3akI4kJyuR8XjIcWZODjdMCI7DqZVH7SwSE3/maGN19m5jxylFs9387okn519dX0NGqWilWh0= X-Received: by 2002:a50:9fa2:0:b0:4aa:a4f2:ca1a with SMTP id c31-20020a509fa2000000b004aaa4f2ca1amr12088735edf.0.1677499859621; Mon, 27 Feb 2023 04:10:59 -0800 (PST) MIME-Version: 1.0 References: <27972.1677357422@localhost> <20230225125425.7d440ba9@hermes.local> In-Reply-To: From: Maximilian Bachl Date: Mon, 27 Feb 2023 13:10:48 +0100 Message-ID: To: Dave Taht Cc: Stephen Hemminger , Michael Richardson via Bloat Content-Type: multipart/alternative; boundary="0000000000003e5b8205f5ad5fbc" Subject: Re: [Bloat] WSL2 + fq_codel X-BeenThere: bloat@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: General list for discussing Bufferbloat List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Feb 2023 12:11:01 -0000 --0000000000003e5b8205f5ad5fbc Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Yes, the default interface of WSL2 seems to use fq_codel: $ tc qdisc show dev eth0 qdisc mq 0: root qdisc fq_codel 0: parent :8 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn qdisc fq_codel 0: parent :7 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn qdisc fq_codel 0: parent :6 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn qdisc fq_codel 0: parent :5 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn qdisc fq_codel 0: parent :4 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn qdisc fq_codel 0: parent :3 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn qdisc fq_codel 0: parent :2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn qdisc fq_codel 0: parent :1 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn On Sat, Feb 25, 2023 at 11:07 PM Dave Taht via Bloat < bloat@lists.bufferbloat.net> wrote: > On Sat, Feb 25, 2023 at 12:54=E2=80=AFPM Stephen Hemminger > wrote: > > > > On Sat, 25 Feb 2023 15:37:02 -0500 > > Michael Richardson via Bloat wrote: > > > > > Dave Taht via Bloat wrote: > > > > I so want to believe... I so want to believe... can anyone > confirm? > > > > > > > > https://raw.githubusercontent.com/microsoft/WSL2-Linux-Kernel/linux-msft-= wsl-5.15.y/Microsoft/config-wsl > > > > > > But, AFAIK, WSL isn't a kernel. It's an implementation of the Linux > ABI on > > > top of Windows service(s). If you told me that they build some of it > from > > > actual Linux kernel sources, I'd believe you. (Rather like > User-Mode-Linux) > > > > > > If you told me that they have a kernel that they build for when they > actually > > > spin up an actual VM (such as to run containers) that would also be > unsurprising. > > > > > > > ... > > > > > > > CONFIG_NET_SCH_DEFAULT=3Dy > > > > CONFIG_DEFAULT_FQ_CODEL=3Dy > > > > # CONFIG_DEFAULT_PFIFO_FAST is not set > > > > CONFIG_DEFAULT_NET_SCH=3D"fq_codel" > > > > > > It would be nice if the billion windows desktops started doing > > > something better, but I don't think it will help observed latency. > > > The real question is what the default schedule for the default Azure > Linux VM > > > is. > > > > > > > I think WSL2 is actually a full Linux VM running in Hyper-V. > > Yes, it is. But it is kind of unknown how the underlying network > interface is behaving in this case, as well as what the actual default > qdisc is, and this not just a random gist. It was VERY exciting to see > that gist go by... > > are there no windows users on this list? :/ We long ago should have > pursued at least flent, and a TCP_INFO equivalent sampling method for > windows. The closest thing we have for windows is the rust-based: > https://github.com/Zoxc/crusader > > -- > A pithy note on VOQs vs SQM: https://blog.cerowrt.org/post/juniper/ > Dave T=C3=A4ht CEO, TekLibre, LLC > _______________________________________________ > Bloat mailing list > Bloat@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/bloat > --0000000000003e5b8205f5ad5fbc Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Yes, the default interface of WSL2 seems to use fq_co= del:=C2=A0

$ tc qdisc show dev= eth0
qdisc mq 0: root
qdisc fq_codel 0: parent :8 limit 10240p flows= 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
q= disc fq_codel 0: parent :7 limit 10240p flows 1024 quantum 1514 target 5.0m= s interval 100.0ms memory_limit 32Mb ecn
qdisc fq_codel 0: parent :6 lim= it 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limi= t 32Mb ecn
qdisc fq_codel 0: parent :5 limit 10240p flows 1024 quantum 1= 514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
qdisc fq_codel 0= : parent :4 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.= 0ms memory_limit 32Mb ecn
qdisc fq_codel 0: parent :3 limit 10240p flows= 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
q= disc fq_codel 0: parent :2 limit 10240p flows 1024 quantum 1514 target 5.0m= s interval 100.0ms memory_limit 32Mb ecn
qdisc fq_codel 0: parent :1 lim= it 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limi= t 32Mb ecn


On Sat, Feb 25, 2023 at 11:07 PM Dave Taht via Bloat &= lt;bloat@lists.bufferbloat.n= et> wrote:
stephen= @networkplumber.org> wrote:
>
> On Sat, 25 Feb 2023 15:37:02 -0500
> Michael Richardson via Bloat <bloat@lists.bufferbloat.net> wrote:
>
> > Dave Taht via Bloat <bloat@lists.bufferbloat.net> wrote:
> >=C2=A0 =C2=A0 =C2=A0> I so want to believe... I so want to beli= eve... can anyone confirm?
> >
> >=C2=A0 =C2=A0 =C2=A0> https://raw.githubusercontent.com/mic= rosoft/WSL2-Linux-Kernel/linux-msft-wsl-5.15.y/Microsoft/config-wsl
> >
> > But, AFAIK, WSL isn't a kernel.=C2=A0 It's an implementat= ion of the Linux ABI on
> > top of Windows service(s).=C2=A0 If you told me that they build s= ome of it from
> > actual Linux kernel sources, I'd believe you.=C2=A0 (Rather l= ike User-Mode-Linux)
> >
> > If you told me that they have a kernel that they build for when t= hey actually
> > spin up an actual VM (such as to run containers) that would also = be unsurprising.
> >
> >=C2=A0 =C2=A0 =C2=A0> ...
> >
> >=C2=A0 =C2=A0 =C2=A0> CONFIG_NET_SCH_DEFAULT=3Dy
> >=C2=A0 =C2=A0 =C2=A0> CONFIG_DEFAULT_FQ_CODEL=3Dy
> >=C2=A0 =C2=A0 =C2=A0> # CONFIG_DEFAULT_PFIFO_FAST is not set > >=C2=A0 =C2=A0 =C2=A0> CONFIG_DEFAULT_NET_SCH=3D"fq_codel&q= uot;
> >
> > It would be nice if the billion windows desktops started doing > > something better, but I don't think it will help observed lat= ency.
> > The real question is what the default schedule for the default Az= ure Linux VM
> > is.
> >
>
> I think WSL2 is actually a full Linux VM running in Hyper-V.

Yes, it is. But it is kind of unknown how the underlying network
interface is behaving in this case, as well as what the actual default
qdisc is, and this not just a random gist. It was VERY exciting to see
that gist go by...

are there no windows users on this list? :/ We long ago should have
pursued at least flent, and a TCP_INFO equivalent sampling method for
windows. The closest thing we have for windows is the rust-based:
https://github.com/Zoxc/crusader

--
A pithy note on VOQs vs SQM: https://blog.cerowrt.org/post/jun= iper/
Dave T=C3=A4ht CEO, TekLibre, LLC
_______________________________________________
Bloat mailing list
Bloat@list= s.bufferbloat.net
https://lists.bufferbloat.net/listinfo/bloat
--0000000000003e5b8205f5ad5fbc--