[Click] netmap support?

wbsun wbsun at cs.utah.edu
Tue Jan 15 15:50:08 EST 2013


Current netmap support in Click is very simple.
Its buffer recycling mechanism is not MT safe; at high packet rate, it 
can easily run out of netmap buffers so that Click has to copy netmap's 
buffer content to make a new Packet; and the integration doesn't support 
rx/tx from a particular ring of the RSS-enable NIC.

I've been working on improving this for a while, and so far all the 
above problems have been solved. You can take a look at 
https://github.com/wbsun/glick , it includes my modification to netmap 
integration and FromDevice/ToDevice support for single ring rx/tx, it 
also support pin Click thread to a particular CPU core so that you can 
benefit from RSS by setting NIC interruption affinity. It requires a 
modified Netmap which is at https://github.com/wbsun/nm . This netmap 
version supports allocating spare buffers for userspace pool to avoid 
buffer-run-out in Click, and also supports more slot buffers.

That modified Click has something related to GPU, I plan to make them 
loosely-coupled after finishing my current work on hand and try to make 
a pull request at github for merging into Click source.
If you want to use it now, you need to remove my GPU related elements 
under elements/local/ so as to avoid compilation errors. To identify 
them, they all include my 'g4c.h' header, so simply remove any elements 
needing the 'g4c.h' header. Some files outside elements/local/ also need 
'g4c.h' header, but they just need macros inside it, you can get that 
header file from https://github.com/wbsun/g4c .

Hope this can help a little bit.

On 2013-01-06 07:52, Ashok Anand wrote:
> Hi,
>
> I was wondering if netmap has been integrated with click, and is 
> available
> to use. please let me know.
>
> Regards,
> Ashok
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click


More information about the click mailing list