DPDK patches and discussions
 help / color / mirror / Atom feed
From: Harish Patil <harish.patil@qlogic.com>
To: "Zhou, Danny" <danny.zhou@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>,
	"Bruce Richardson" <bruce.richardson@intel.com>
Subject: Re: [dpdk-dev] KNI interface
Date: Sat, 19 Jul 2014 05:57:10 +0000	[thread overview]
Message-ID: <036FA1BC4A80D448AB7D9C3AAFBBCAF59F801AED@AVMB1.qlogic.org> (raw)
In-Reply-To: <DFDF335405C17848924A094BC35766CF0A8C2494@SHSMSX104.ccr.corp.intel.com>



>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.

Thanks for the clarification, Bruce/Danny.

Few follow-on questions:

i) Does the generic 5-tuple flow classification that the DPDK provides
would cover all possible packet types (e.g. Q-Q/tunneled/vxlan etc)?.
Manual packet parsing by the poll mode driver would be a daunting task by
itself.

ii) How would the forwarding/routing changes in the kernel pushed to (or
synchronized with) the DPDK L2/L3 application?

iii) Can we just live with [base DPDK + linux TCP/IP stack], without
third-party modules, to achieve full networking stack functionality at
least in a non-virtualized environment ?


>
>> -----Original Message-----
>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Harish Patil
>> Sent: Saturday, July 19, 2014 8:09 AM
>> To: dev@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.
>



________________________________

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.

  reply	other threads:[~2014-07-19  5:56 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-19  0:08 Harish Patil
2014-07-19  0:13 ` Bruce Richardson
2014-07-19  0:16 ` Zhou, Danny
2014-07-19  5:57   ` Harish Patil [this message]
2014-07-20  2:01     ` Zhou, Danny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=036FA1BC4A80D448AB7D9C3AAFBBCAF59F801AED@AVMB1.qlogic.org \
    --to=harish.patil@qlogic.com \
    --cc=bruce.richardson@intel.com \
    --cc=danny.zhou@intel.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).