From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <keith.wiles@intel.com>
Received: from mga11.intel.com (mga11.intel.com [192.55.52.93])
 by dpdk.org (Postfix) with ESMTP id E3571201
 for <users@dpdk.org>; Fri,  9 Nov 2018 22:26:22 +0100 (CET)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from orsmga003.jf.intel.com ([10.7.209.27])
 by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 09 Nov 2018 13:26:21 -0800
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.54,484,1534834800"; d="scan'208,217";a="99053943"
Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205])
 by orsmga003.jf.intel.com with ESMTP; 09 Nov 2018 13:26:21 -0800
Received: from fmsmsx153.amr.corp.intel.com (10.18.125.6) by
 fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS)
 id 14.3.408.0; Fri, 9 Nov 2018 13:26:21 -0800
Received: from fmsmsx117.amr.corp.intel.com ([169.254.3.70]) by
 FMSMSX153.amr.corp.intel.com ([169.254.9.212]) with mapi id 14.03.0415.000;
 Fri, 9 Nov 2018 13:26:21 -0800
From: "Wiles, Keith" <keith.wiles@intel.com>
To: Harsh Patel <thadodaharsh10@gmail.com>
CC: "users@dpdk.org" <users@dpdk.org>
Thread-Topic: [dpdk-users] Query on handling packets
Thread-Index: AQHUdzydRRkBFdv4fkKjO7j2RJcyb6VGGaEAgACGp4CAAAyagIABE0+AgAA3DS4=
Date: Fri, 9 Nov 2018 21:26:20 +0000
Message-ID: <10C2B33F-810B-401B-8C8F-4E4C6693D037@intel.com>
References: <CAA0iYrE_OBz5dCAT4UrDNHqnR4LKeHDKVMD5+5CgGA4Va7tn+g@mail.gmail.com>
 <71CBA720-633D-4CFE-805C-606DAAEDD356@intel.com>
 <CAA0iYrHkp_UZ=GMuzG+Ti6dJk4+FWFDotuNWDpcWLCqA1T6NZg@mail.gmail.com>
 <D6A4CD43-BE09-4AFA-A82C-962650011A14@intel.com>,
 <CAA0iYrFBzO_Bw2bUy46VBjpLJNzos3M57N=nfkx8FNUMgq+2bQ@mail.gmail.com>
In-Reply-To: <CAA0iYrFBzO_Bw2bUy46VBjpLJNzos3M57N=nfkx8FNUMgq+2bQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
X-Content-Filtered-By: Mailman/MimeDel 2.1.15
Subject: Re: [dpdk-users] Query on handling packets
X-BeenThere: users@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK usage discussions <users.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/users>,
 <mailto:users-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/users/>
List-Post: <mailto:users@dpdk.org>
List-Help: <mailto:users-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/users>,
 <mailto:users-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Nov 2018 21:26:23 -0000



Sent from my iPhone

On Nov 9, 2018, at 5:09 AM, Harsh Patel <thadodaharsh10@gmail.com<mailto:th=
adodaharsh10@gmail.com>> wrote:

We have implemented the logic for Tx/Rx as you suggested. We compared the o=
btained throughput with another version of same application that uses Linux=
 raw sockets.
Unfortunately, the throughput we receive in our DPDK application is less by=
 a good margin. Is this any way we can optimize our implementation or anyth=
ing that we are missing?

The PoC code I was developing for DAPI I did not have any performance of is=
sues it run just as fast with my limited testing. I converted the l3fwd cod=
e and I saw 10G 64byte wire rate as I remember using pktgen to generate the=
 traffic.

Not sure why you would see a big performance drop, but I do not know your a=
pplication or code.


Thanks and regards
Harsh & Hrishikesh

On Thu, 8 Nov 2018 at 23:14, Wiles, Keith <keith.wiles@intel.com<mailto:kei=
th.wiles@intel.com>> wrote:


On Nov 8, 2018, at 4:58 PM, Harsh Patel <thadodaharsh10@gmail.com<mailto:th=
adodaharsh10@gmail.com>> wrote:

Thanks for your insight on the topic. Transmission is working with the func=
tions you mentioned. We tried to search for some similar functions for hand=
ling incoming packets but could not find anything. Can you help us on that =
as well?

I do not know if a DPDK API set for RX side. But in the DAPI (DPDK API) PoC=
 I was working on and presented at the DPDK Summit last Sept. In the PoC I =
did create a RX side version. The issues it has a bit of tangled up in the =
DAPI PoC.

The basic concept is a call to RX a single packet does a rx_burst of N numb=
er of packets keeping then in a mbuf list. The code would spin waiting for =
mbufs to arrive or return quickly if a flag was set. When it did find RX mb=
ufs it would just return the single mbuf and keep the list of mbufs for lat=
er requests until the list is empty then do another rx_burst call.

Sorry this is a really quick note on how it works. If you need more details=
 we can talk more later.

Regards,
Harsh and Hrishikesh.

On Thu, 8 Nov 2018 at 14:26, Wiles, Keith <keith.wiles@intel.com<mailto:kei=
th.wiles@intel.com>> wrote:


> On Nov 8, 2018, at 8:24 AM, Harsh Patel <thadodaharsh10@gmail.com<mailto:=
thadodaharsh10@gmail.com>> wrote:
>
> Hi,
> We are working on a project where we are trying to integrate DPDK with
> another software. We are able to obtain packets from the other environmen=
t
> to DPDK environment in one-by-one fashion. On the other hand DPDK allows =
to
> send/receive burst of data packets. We want to know if there is any
> functionality in DPDK to achieve this conversion of single incoming packe=
t
> to a burst of packets sent on NIC and similarly, conversion of burst read
> packets from NIC to send it to other environment sequentially?


Search in the docs or lib/librte_ethdev directory on rte_eth_tx_buffer_init=
, rte_eth_tx_buffer, ...



> Thanks and regards
> Harsh Patel, Hrishikesh Hiraskar
> NITK Surathkal

Regards,
Keith


Regards,
Keith