[dpdk-dev] drops while transmitting to the kni using rte_kni_tx_burst()

Shirley Avishour shirley at imvisiontech.com
Mon Jan 16 15:58:51 CET 2017


I am currently using the kernel interface for recording the received
traffic by duplicating the received packets and sending a copy to the kni
(and performing pcap_open_live on the kni).
my goal rate is around 500Mbps. is it possible to achieve it via the kni ??


On Mon, Jan 16, 2017 at 4:55 PM, Ferruh Yigit <ferruh.yigit at intel.com>
wrote:

> On 1/16/2017 2:47 PM, Shirley Avishour wrote:
> > Hi,
> > As I wrote the kernel thread runs on a dedicated lcore.
> > running top while my application is running I see kni_single and the cpu
> > usage is really low...
> > Is there any rate limitation for transmitting to the kernel interface
> > (since packets are being copied in the kernel).
>
> Yes, kind of, kernel thread sleeps periodically, with a value defined by
> KNI_KTHREAD_RESCHEDULE_INTERVAL. You can try tweaking this value, if you
> want thread do more work, less sleep J
>
> Also KNI_RX_LOOP_NUM can be updated for same purpose.
>
> >
> >
> > On Mon, Jan 16, 2017 at 4:42 PM, Ferruh Yigit <ferruh.yigit at intel.com
> > <mailto:ferruh.yigit at intel.com>> wrote:
> >
> >     On 1/16/2017 12:20 PM, Shirley Avishour wrote:
> >     > Hi,
> >     > I have an application over dpdk which is consisted of the
> following threads
> >     > each running on a separate core:
> >     > 1) rx thread which listens on in a poll mode for traffic
> >     > 2) 2 packet processing threads (for load balancing)
> >     > 3) kni thread (which also runs on a separate core).
> >
> >     This is kernel thread, right? Is it bind to any specific core?
> >     Is it possible that this thread shares the core with 2nd processing
> >     thread when enabled?
> >
> >     >
> >     > the rx thread receives packets and clones them and transmit a copy
> >     to the
> >     > kni and the other packet is sent to the packet processing unit
> >     (hashing
> >     > over 2 threads).
> >     > the receive traffic rate is 100Mbps.
> >     > When working with single packet processing thread I am able to get
> >     all the
> >     > 100Mbps towards the kni with no drops.
> >     > but when I activate my application with 2 packet processing
> >     threads I start
> >     > facing drops towards the kni.
> >     > the way I see it the only difference now is that I have another
> >     threads
> >     > which handles an mbuf and frees it once processing is completed.
> >     > Can anyone assist with this case please?
> >     >
> >     > Thanks!
> >     >
> >
> >
>
>


More information about the dev mailing list