netmap pipes (Re: vnet + netmap: how is it possible?)
Luigi Rizzo
rizzo at iet.unipi.it
Mon Feb 10 17:28:22 UTC 2014
On Mon, Feb 10, 2014 at 12:44 AM, Ermal Luçi <eri at freebsd.org> wrote:
>
> 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?
>
nothing to do with netgraph, this is "simply" an
extension of the netmap module. Also note this
only provides the interconnection, you still have
to build the processing modules.
cheers
luigi
More information about the freebsd-net
mailing list