[dpdk-users] KNI multi-queue example?

Cliff Burdick shaklee3 at gmail.com
Thu Jun 9 00:59:50 CEST 2016


Andriy, which pktmbuf_pool do you use when initializing KNI? There's a
separate pool for each queue on a port.

On Mon, Apr 4, 2016 at 9:11 AM, Andriy Berestovskyy <aber at semihalf.com>
wrote:

> Hi Jason,
>
> On Fri, Mar 25, 2016 at 1:00 AM, Jason Kwon <m43kwon at gmail.com> wrote:
> > Is there a KNI example for devices and
> > drivers which support multiple queues per port?
>
> I guess there is no such an example, please see below.
>
> > Would such an implementation involve instantiating multiple KNI devices,
> > each to be associated with a single RX/TX queue pair?  Or would it be
> > possible to associate multiple RX/TX queues of a single port to a single
> > KNI device?
>
> Since KNI has just 1 RX/TX pair, for the NIC->KNI path you need to
> modify kni_ingress() to iterate all the NIC RX queues and send all of
> those packets to the KNI.
>
> For the KNI->NIC path you need to modify kni_egress() to distribute
> the packets received from the KNI to multiple NIC TX queues (say,
> based on a hash).
>
> Having said the above, most likely it will not get you any performance
> gain, since I guess the bottleneck is KNI, not the NIC queues.
>
> Regards,
> Andriy Berestovskyy
>


More information about the users mailing list