Packet drop while using BPF filter
Raghavendra D Prabhu
raghu.prabhu13 at gmail.com
Sat Dec 24 13:54:45 EST 2011
* On Sat, Dec 24, 2011 at 09:57:50PM +0530, Mukesh Yadav <mukesh.fkd at gmail.com> wrote:
>Hi Raghavendra,
>
>" /proc/sys/net/core/bpf_jit_**enable " is not present on machine. Seems
>kernel need to be configured for these.
Yes, it is a fairly new option -- CONFIG_BPF_JIT=y
>Btw CPU scaling issue is resolved. Packet drop was because all interrupt
>handling was happening on core where packets were getting drop. Tuning
>system for interrupt handling using smp_affinity resolved the issue.
That is generally how it is done. The core which handles packets
initially
handles the interrupts too. Do you mean all non-network
interrupts were happening on same core ? Then give irqbalance a
shot.
>
>Thanks
>Mukesh
>
>On 22 December 2011 19:18, Raghavendra D Prabhu <raghu.prabhu13 at gmail.com>wrote:
>
>> Hi,
>> Have you tried enabling -- /proc/sys/net/core/bpf_jit_**enable --
>> provides JIT compiled BPF on 64 bit linux.
>> * On Wed, Dec 21, 2011 at 12:08:04AM +0530, Mukesh Yadav <
>> mukesh.fkd at gmail.com> wrote:
>>> Hi Guys,
>>> I am working on user level code which uses BPF filter.
>>> Solution has two threads and BPF filter for incoming packets to raw
>>> socket
>>> dedicated to each thread.
>>> Intent is to divide ingress traffic between two thread based on whether
>>> dest IP is even or odd.
>>> BPF filters used are:
>>> Even IP filter :-> tcpdump -i interface 'ether dst <dest mac> && ip[19] &
>>> 0x01 = 0'
>>> Odd IP filter :-> tcpdump -i interface 'ether dst <dest mac> && ip[19] &
>>> 0x01 = 1'
>>> There is a packet loss for odd IP thread even when CPU is available.
>>> Reason
>>> being packet drop due recv buffer full.
>>> Same amount of traffic is well handled by even IP thread(user code being
>>> same in both), scaling CPU to full 100%.
>>> In odd IP thread, If filter is changed to "tcpdump -i interface 'ether
>>> dst
>>> <dest mac> && ip proto 17' ", all goes fine.
>>> Also CPU usage at kernel drops from 50% to 4 % for a particular amount of
>>> traffic.
>>> Would appreciate any I/ps for reducing load at kernel for packet
>>> filtering(Odd/Even IP distribution)
>>> Cheers
>>> Mukesh
>> ______________________________**_________________
>>> Kernelnewbies mailing list
>>> Kernelnewbies at kernelnewbies.**org <Kernelnewbies at kernelnewbies.org>
>>> http://lists.kernelnewbies.**org/mailman/listinfo/**kernelnewbies<http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies>
>> --------------------------
>> Raghavendra Prabhu
>> GPG Id : 0xD72BE977
>> Fingerprint: B93F EBCB 8E05 7039 CD3C A4B8 A616 DCA1 D72B E977
>> www: wnohang.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20111225/dea47c08/attachment.bin
More information about the Kernelnewbies
mailing list