I am wrote NETMAP application and meet some limitation.
I am use server 16-core server.
Workers thread run mostly independend, with minimal interworking.
I am use balancer threads for distributing packet flow between worker
I am using two NETMAP pipes between balancer and workers.
As result, for case of 4 balancer and 12 workers I am need 4x12x2 = 96
pipes. NETMAP have limitation of 64 pipes.

May be exist more optimal way?

May be I can emulate tilera way, with bufers credits?
(In this case balancer give RX buffers, confirm to kernel and pass it
to worker. kernel reduce credit, used for reciving other buffer from
pool. After complete worker pass buffer to balancer and balancer
return buffer to kernel, kernel rise credits and put free buffer to
In this case I am not need to many pipes and not limited performance
by too long processing of one packet.
freebsd-net@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to