[Ntop-misc] pfring multichannel sees the same packet on all channels
arnon at qwilt.com
Sun Sep 5 17:14:23 CEST 2010
I have been playing around with pf_ring + tnapi in order to get specific
tuples into processes running on different cores.
I was expecting that a single packet injected into eth0 will only appear in
one of the cores (a single pfcount consumer attached to that core), but I
see it being counted on all cores (pfcount threads).
I might have missed something, so I will try to describe what I did:
The playground consists of:
tnapi (igb 2.0.6)
NIC intel 82576
RH6 beta2 (kernel 184.108.40.206)
machine was initialized by
insmod pf_ring.ko transparent_mode=1
insmod igb.ko RSS=8,8,8,8 (2 dual port NICs)
service irqbalance stop
service iptables stop
from /proc/interrupts I extracted irq numbers (Y) of eth0 at TxRx-0 ...7 and
set matching affinity X=2^i , where i=0...7
echo X > /proc/irq/Y/smp_affinity
Now I launch pfcount_multichannel on eth0 and transmit traffic using
tcpreplay from a different machine.
When injecting a single packet 1000 times (easyer to spot in
/proc/interrupts) into eth0, I see the matching interrupt incrementing
properly only on one of the cores,
but pfcount_multichannel which is running on eth0 at 0-7 sees the packet in
all 8 channels,
and not only in one of the pf_ring channels as I would expect.
What am I missing here?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Ntop-misc