Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 Nov 2023 22:04:37 -0800
From:      Jim Thompson <jim@netgate.com>
To:        Benoit Chesneau <benoitc@enki-multimedia.eu>
Cc:        "freebsd-net@FreeBSD.org" <freebsd-net@freebsd.org>
Subject:   Re: Re : Re: netgraph and vpp
Message-ID:  <CAKAfi7yQvCep5Bw7HhcxcPFXyBxoDNQLRQH0ZWpr4mkqNVcC7w@mail.gmail.com>
In-Reply-To: <iYQJCBat80WckJfvwcalfTT8NewxLG9Su9vepqcq84u62m89Rj_HvUk-u9Xauc7foC4Nn7dRzF54f89LIpSS0VweFxbDw-4qa3zoCy-Ib5A=@enki-multimedia.eu>
References:  <i95iAV4FVYfHk1VOE0b8IWzeTDWWGKwyVFst0jbTV8mhc8oI2axEotoPGkUhngk35HwCUakBC83fMH6oNFTEQUVd0GADG3lYRL882ImYYhM=@enki-multimedia.eu> <CAKAfi7yp9Grc0sphHwN3ORFAFtHKg9muYmvg8=NmTQnVwcWuBQ@mail.gmail.com> <iYQJCBat80WckJfvwcalfTT8NewxLG9Su9vepqcq84u62m89Rj_HvUk-u9Xauc7foC4Nn7dRzF54f89LIpSS0VweFxbDw-4qa3zoCy-Ib5A=@enki-multimedia.eu>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
On Nov 25, 2023 at 4:09:29 AM, Benoit Chesneau <benoitc@enki-multimedia.eu>
wrote:

>
> Thanks for your answer. So i guess if we want to build a modern router
> without custom code, vpp is the way to go in term de performance?
>

Well, that’s the path I chose back in 2016, yes.

(Might note that I also run the pfsense project, and that VPP does not
currently run on FreeBSD.)

One thing i really miss ito  cross connect 2 interfaces without using a
> bridge. Somethibg really easy and performant with  vpp...
>

kp@ added something similar using pf https://reviews.freebsd.org/D37193 but
if_bridge is pretty performant these days
https://issue.freebsdfoundation.org/publication/?i=660151


Benoit
> Le sam. 25 nov. 2023 à 00:33, Jim Thompson <jim@netgate.com <Le sam. 25
> nov. 2023 à 00:33, Jim Thompson <<a href=>> a écrit :
>
>
>
> On Nov 24, 2023 at 12:48:07 AM, Benoit Chesneau <
> benoitc@enki-multimedia.eu> wrote:
>
>> netgraph and vpp looks similar in their intent. Both are graphs to
>> process packets.
>>
>> I thought that usinv netgraph sounds interresting to build a modern
>> router or cpe. What about the perforance? Did anyone compRe? Also is there
>> any difference in term of implementation of the processing? Id there any
>> recent paper about netgraph?
>>
>
> They are very, very different. Netgraph is closer to AT&T streams, but
> with mbufs.
>
> Netgraph would probably be better implemented these days as a set of
> netmap modules, ala
> https://github.com/zeek/packet-bricks or
> https://github.com/outscale/packetgraph (this one is DPDK, but similar
> architecture)
>
>
>
>

[-- Attachment #2 --]
<html><body><div dir="ltr">
    <br>
</div>
<br>
<div class="gmail_quote" dir="ltr">
    <div dir="ltr" class="gmail_attr">On Nov 25, 2023 at 4:09:29 AM, Benoit Chesneau &lt;<a href="mailto:benoitc@enki-multimedia.eu">benoitc@enki-multimedia.eu</a>&gt; wrote:<br></div>
    <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" type="cite">
        <div><div></div><div>   <div><br></div><div dir="auto">Thanks for your answer. So i guess if we want to build a modern router without custom code, vpp is the way to go in term de performance? </div></div></div></blockquote><div class="gmail_quote"><br></div>Well, that’s the path I chose back in 2016, yes.</div><div class="gmail_quote" dir="ltr"><br></div><div class="gmail_quote" dir="ltr">(Might note that I also run the pfsense project, and that VPP does not currently run on FreeBSD.)</div><div class="gmail_quote" dir="ltr"><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" type="cite"><div><div><div dir="auto">One thing i really miss ito  cross connect 2 interfaces without using a bridge. Somethibg really easy and performant with  vpp...</div></div></div></blockquote><div class="gmail_quote" dir="ltr"><br>kp@ added something similar using pf <font color="#419cff"><a href="https://reviews.freebsd.org/D37193">https://reviews.freebsd.org/D37193</a></font> but if_bridge is pretty performant these days</div><div class="gmail_quote" dir="ltr"><font color="#419cff"><a href="https://issue.freebsdfoundation.org/publication/?i=660151">https://issue.freebsdfoundation.org/publication/?i=660151</a></font><br></div><div class="gmail_quote" dir="ltr"><br></div><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" type="cite"><div><div><div dir="auto">Benoit </div>Le sam. 25 nov. 2023 à 00:33, Jim Thompson &lt;<a class="" href="mailto:Le sam. 25 nov. 2023 à 00:33, Jim Thompson &lt;&lt;a href=">jim@netgate.com</a>&gt; a écrit :<blockquote type="cite" class="protonmail_quote">  <div dir="ltr">
    <br>
</div><div dir="ltr"><br></div>
<div class="gmail_quote">
    <div class="gmail_attr" dir="ltr">On Nov 24, 2023 at 12:48:07 AM, Benoit Chesneau &lt;<a href="mailto:benoitc@enki-multimedia.eu">benoitc@enki-multimedia.eu</a>&gt; wrote:<br></div>
    <blockquote type="cite" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
        <div><div></div><div> <div dir="auto">netgraph and vpp looks similar in their intent. <span style="; ; ;San Francisco&quot;, Helvetica, Arial, sans-serif; ; font-style: normal; ; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; ; -webkit-text-size-adjust: none; -webkit-text-stroke-width: 0px; ; text-decoration: none; display: inline !important; float: none;">Both</span><span style="; ; ;San Francisco&quot;, Helvetica, Arial, sans-serif; ; font-style: normal; ; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; ; -webkit-text-size-adjust: none; -webkit-text-stroke-width: 0px; ; text-decoration: none; display: inline !important; float: none;"> are graphs to process packets.<span class="Apple-converted-space"> </span></span> </div><div dir="auto"><br></div><div dir="auto">I thought that usinv  netgraph sounds interresting to build a modern router or cpe. What about the perforance? Did anyone compRe? Also is there any difference in term of implementation of the processing? Id there any recent paper about netgraph?</div></div></div>
    </blockquote><br>
</div><div class="gmail_quote"><div dir="ltr">They are very, very different.  Netgraph is closer to AT&amp;T streams, but with mbufs.</div><div dir="ltr"><br></div><div dir="ltr">Netgraph would probably be better implemented these days as a set of netmap modules, ala </div><div dir="ltr"><font color="#419cff"><span style="--dark-color: var(--NSColor_linkColor);"><a href="https://github.com/zeek/packet-bricks">https://github.com/zeek/packet-bricks</a></span></font>; or <font color="#419cff"><a href="https://github.com/outscale/packetgraph">https://github.com/outscale/packetgraph</a></font>; (this one is DPDK, but similar architecture)</div><div dir="ltr"><br></div><div dir="ltr"><br></div><div dir="ltr"><br></div></div>
</blockquote></div></div>
    </blockquote>
</div></body></html>

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAKAfi7yQvCep5Bw7HhcxcPFXyBxoDNQLRQH0ZWpr4mkqNVcC7w>