netmap pipes (Re: vnet + netmap: how is it possible?)
Ermal Luçi
eri at freebsd.org
Mon Feb 10 08:44:10 UTC 2014
Hello Luigi,
On Mon, Feb 10, 2014 at 2:14 AM, Luigi Rizzo <rizzo at iet.unipi.it> wrote:
> On Sun, Feb 9, 2014 at 4:21 PM, Raimundo Santos <raitech at gmail.com> wrote:
>
> > Hello list!
> >
> > I am willing to test an idea: modularize network functions using vnet
> > jails. One vnet jail do the NAT, other do balancing, another one the
> > traffic shapping, and so on.
> >
>
> For these low level packet processing functions, jails are overkill.
>
> The upcoming version of netmap has "netmap pipes",
> pairs of netmap ports connected back to back and sharing memory,
> with blocking I/O through select/poll/epoll (and we are looking
> at supporting kqueue).
>
> You can use netmap pipes to build a graph of processes (nodes)
> which apply the desired transformations to your traffic.
> Nodes can be anything that speaks netmap (or libpcap),
> including your custom C code, Click instances, or whatever
> you like.
>
>
Is this netgraph overlayed over netmap or is something rewritten from
scratch?
> Netmap pipes have names, so you can dynamically
> replace nodes in the graph.
>
> You can also freely chose how netmap pipes, NICs and
> VALE switch ports share memory so depending on how
> much you want to decouple the nodes you can do
> full zero-copy paths.
>
> Performance:
> you can move up to about 100 Mpps across a pipe,
> irrespective of the size (because you move metadata through
> the pipe). Latency is that of an IPC (and really depends on
> the OS, hw configuration, batch size).
> Think something in the range 1..10us.
>
> NOTE, things become much slower once you start touching
> data, but the point is that you can forget about
> performance in moving data around and concentrate on
> how you want to process things.
>
> cheers
> luigi
>
>
> >
> > And I wonder if netmap could help to interconnect these vnets, because I
> > can not see a way to do this. May be using netgraph or epair? But any of
> > these options are not netmap aware, are they?
> >
> > Well, the question is in the air!
> >
> > Thank you all,
> > Raimundo
> > _______________________________________________
> > freebsd-net at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-net
> > To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
> >
>
>
> --
> -----------------------------------------+-------------------------------
> Prof. Luigi RIZZO, rizzo at iet.unipi.it . Dip. di Ing. dell'Informazione
> http://www.iet.unipi.it/~luigi/ . Universita` di Pisa
> TEL +39-050-2211611 . via Diotisalvi 2
> Mobile +39-338-6809875 . 56122 PISA (Italy)
> -----------------------------------------+-------------------------------
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>
--
Ermal
More information about the freebsd-net
mailing list