[dpdk-dev] KNI interface

Zhou, Danny danny.zhou at intel.com
Sat Jul 19 02:16:30 CEST 2014


KNI is mainly designed for exception path or control plane packets that need to be pushed
to Linux TCP/IP packets in the kernel. You can push all the packets that DPDK PMD received 
in the user space via KNI to kernel, but majority of them will be dropped for two reasons: 1) skb
allocation/free and memory copy between mbuf and skb 2) slow TCP/IP stack. 
In terms of how to use it, basically it is user responsibility to do simple flow classification using
5-tuple in DPDK application, and push exception packets or control packets to KNI queues, in other
words, to slow path. While DPDK user space still process fast path packets.
	
> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Harish Patil
> Sent: Saturday, July 19, 2014 8:09 AM
> To: dev at dpdk.org
> Subject: [dpdk-dev] KNI interface
> 
> Hello dpdk-dev,
> Went thru’ couple of documentation but not very clear to me. Does using
> KNI means handing over all the packets received/transmitted by the poll
> mode driver to the linux stack or can it be controlled for the control
> packets only ? What is the KNI use-case (besides ethtool) and what are the
> best options/choices/strategy to use poll mode driver for data path and
> linux for control plane operations ?
> 
> Thanks,
> Harish
> 
> 
> 
> 
> 
> 
> ________________________________
> 
> This message and any attached documents contain information from QLogic Corporation or its wholly-owned subsidiaries that may be
> confidential. If you are not the intended recipient, you may not read, copy, distribute, or use this information. If you have received this
> transmission in error, please notify the sender immediately by reply e-mail and then delete this message.


More information about the dev mailing list