Re: Performance issues with vnet jails + epair + bridge

From: Marek Zarychta <zarychtam_at_plan-b.pwste.edu.pl>
Date: Sun, 15 Sep 2024 17:44:51 UTC
Dnia Thu, Sep 12, 2024 at 06:16:18PM +0100, Sad Clouds napisaƂ(a):
> Hi, I'm using FreeBSD-14.1 and on this particular system I only have a
> single physical network interface, so I followed instructions for
> networking vnet jails via epair and bridge, e.g.
> 
> devel
> {
>         vnet;
>         vnet.interface = "e0b_devel";
>         exec.prestart += "/jails/jib addm devel genet0";
>         exec.poststop += "/jails/jib destroy devel";
> }
> 
> The issue is bulk TCP performance throughput between this jail and the
> host is quite poor, with one CPU spinning 100% in kernel and others
> sitting mostly idle.
> 
> It seems there is some lock contention somewhere, but I'm not sure if
> this is around vnet, epair or bridge subsystems. Are there
> other alternatives for vnet jails? Can anyone recommend specific
> deployment scenarios? I've seen references to netgraph which could be
> used with jails. Does it have better performance and scalability and
> could replace epair and bridge combination?
> 
> Thanks.

Have you tried to use kernel built with "options RSS" ? 
From my experience it could help in some specific scenarios.

-- 
Marek Zarychta