Date: Thu, 3 Mar 2022 23:03:44 +0100 From: Vincenzo Maffione <vmaffione@freebsd.org> To: Santiago Martinez <sm@codenetworks.net> Cc: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org> Subject: Re: FBSD-13 - Vale maximum virtual switches. Message-ID: <CA%2B_eA9hd4Cn%2Bt1_F989bZyW52scOyV8kZAPODKoqsJqOs=W-FQ@mail.gmail.com> In-Reply-To: <87d079ec-13da-6c8f-a801-5e68ca696466@codenetworks.net> References: <87d079ec-13da-6c8f-a801-5e68ca696466@codenetworks.net>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Hi,
Yes, the maximum number of VALE bridges should definitely become a sysctl.
I'll try to implement the change asap.
Cheers,
Vincenzo
Il giorno gio 3 mar 2022 alle ore 19:07 Santiago Martinez <
sm@codenetworks.net> ha scritto:
> Hi Everyone,
>
> The other day had to simulate a network topology and I wanted to use vale
> switches instead of in-kernel bridges.
>
> After creating a few switches I notice that there was a hard limit of 8
> switches ( that is clearly stated on the man page).
>
> For my simulation I needed 32 virtual switches, hence I increase the value
> of NM_BRIDGES from 8 to 64.
>
> After that I was able to create the bridges and they seem to work fine.
>
> My question is, do we need that hard limit on 8? Should this be change to
> a dynamic value set with sysctl?
>
> Best regards.
> Santi
>
> diff --git a/sys/dev/netmap/netmap_bdg.h b/sys/dev/netmap/netmap_bdg.h
>
> index e4683885e66c..3afe1d9d5d99 100644
> --- a/sys/dev/netmap/netmap_bdg.h
> +++ b/sys/dev/netmap/netmap_bdg.h
> @@ -73,8 +73,8 @@ struct netmap_bdg_ops {
> int netmap_bwrap_attach(const char *name, struct netmap_adapter *, struct
> netmap_bdg_ops *);
> int netmap_bdg_regops(const char *name, struct netmap_bdg_ops *bdg_ops,
> void *private_data, void *auth_token);
>
> -#define NM_BRIDGES 8 /* number of bridges */
> -#define NM_BDG_MAXPORTS 254 /* up to 254 */
> +#define NM_BRIDGES 64 /* number of bridges */
> +#define NM_BDG_MAXPORTS 16 /* up to 254 */
> #define NM_BDG_BROADCAST NM_BDG_MAXPORTS
> #define NM_BDG_NOPORT (NM_BDG_MAXPORTS+1)
>
>
>
>
[-- Attachment #2 --]
<div dir="ltr"><div>Hi,</div><div> Yes, the maximum number of VALE bridges should definitely become a sysctl.</div><div>I'll try to implement the change asap.</div><div><br></div><div>Cheers,</div><div> Vincenzo<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Il giorno gio 3 mar 2022 alle ore 19:07 Santiago Martinez <<a href="mailto:sm@codenetworks.net">sm@codenetworks.net</a>> ha scritto:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<span style="font-weight:bold;color:rgb(0,0,0);background-color:rgb(255,255,255)"></span>
<p><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">Hi Everyone, <br>
</span></span></p>
<p><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">The other day had to simulate a network
topology and I wanted to use vale switches instead of
in-kernel bridges.</span></span></p>
<p><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">After creating a few switches I notice
that there was a hard limit of 8 switches ( that is clearly
stated on the man page).</span></span></p>
<p><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">For my simulation I needed 32 virtual
switches, hence I increase the value of NM_BRIDGES from 8 to
64.</span></span></p>
<p><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">After that I was able to create the
bridges and they seem to work fine.<br>
</span></span></p>
<p><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">My question is, do we need that hard
limit on 8? Should this be change to a dynamic value set with
sysctl?</span></span></p>
<p><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
Best regards.<br>
Santi</span></span></p>
<p><span style="font-family:monospace"><span style="font-weight:bold;color:rgb(0,0,0);background-color:rgb(255,255,255)">diff
--git a/sys/dev/netmap/netmap_bdg.h
b/sys/dev/netmap/netmap_bdg.h</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span></span></p>
<span style="font-family:monospace"></span>
<p><span style="font-family:monospace"><span style="font-weight:bold;color:rgb(0,0,0);background-color:rgb(255,255,255)">index
e4683885e66c..3afe1d9d5d99 100644</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span><br>
<span style="font-weight:bold;color:rgb(0,0,0);background-color:rgb(255,255,255)">---
a/sys/dev/netmap/netmap_bdg.h</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span><br>
<span style="font-weight:bold;color:rgb(0,0,0);background-color:rgb(255,255,255)">+++
b/sys/dev/netmap/netmap_bdg.h</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span><br>
<span style="color:rgb(24,178,178);background-color:rgb(255,255,255)">@@ -73,8
+73,8 @@</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)"> struct
netmap_bdg_ops {
</span><br>
int netmap_bwrap_attach(const char *name, struct netmap_adapter
*, struct netmap_bdg_ops *);
<br>
int netmap_bdg_regops(const char *name, struct netmap_bdg_ops
*bdg_ops, void *private_data, void *auth_token);
<br>
<br>
<span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">-#define
NM_BRIDGES 8 /* number of bridges */</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span><br>
<span style="color:rgb(178,24,24);background-color:rgb(255,255,255)">-#define
NM_BDG_MAXPORTS 254 /* up to 254 */</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span><br>
<span style="color:rgb(24,178,24);background-color:rgb(255,255,255)">+#define
NM_BRIDGES 64 /* number of bridges */</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span><br>
<span style="color:rgb(24,178,24);background-color:rgb(255,255,255)">+#define
NM_BDG_MAXPORTS 16 /* up to 254 */</span><span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">
</span><br>
#define NM_BDG_BROADCAST NM_BDG_MAXPORTS
<br>
#define NM_BDG_NOPORT (NM_BDG_MAXPORTS+1)<br>
<br>
<br>
</span></p>
<p><br>
</p>
</div>
</blockquote></div>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B_eA9hd4Cn%2Bt1_F989bZyW52scOyV8kZAPODKoqsJqOs=W-FQ>
