From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 9B707A034F;
	Mon,  8 Nov 2021 03:44:28 +0100 (CET)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 1A21140151;
	Mon,  8 Nov 2021 03:44:28 +0100 (CET)
Received: from mga04.intel.com (mga04.intel.com [192.55.52.120])
 by mails.dpdk.org (Postfix) with ESMTP id BA6D240040
 for <dev@dpdk.org>; Mon,  8 Nov 2021 03:44:26 +0100 (CET)
X-IronPort-AV: E=McAfee;i="6200,9189,10161"; a="230869604"
X-IronPort-AV: E=Sophos;i="5.87,217,1631602800"; d="scan'208";a="230869604"
Received: from orsmga004.jf.intel.com ([10.7.209.38])
 by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 07 Nov 2021 18:44:25 -0800
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.87,217,1631602800"; d="scan'208";a="601254652"
Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82])
 by orsmga004.jf.intel.com with ESMTP; 07 Nov 2021 18:44:25 -0800
Received: from shsmsx604.ccr.corp.intel.com (10.109.6.214) by
 fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2242.12; Sun, 7 Nov 2021 18:44:24 -0800
Received: from shsmsx601.ccr.corp.intel.com (10.109.6.141) by
 SHSMSX604.ccr.corp.intel.com (10.109.6.214) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2242.12; Mon, 8 Nov 2021 10:44:22 +0800
Received: from shsmsx601.ccr.corp.intel.com ([10.109.6.141]) by
 SHSMSX601.ccr.corp.intel.com ([10.109.6.141]) with mapi id 15.01.2242.012;
 Mon, 8 Nov 2021 10:44:22 +0800
From: "Zhang, Qi Z" <qi.z.zhang@intel.com>
To: "Xu, Ting" <ting.xu@intel.com>, Thomas Monjalon <thomas@monjalon.net>
CC: "dev@dpdk.org" <dev@dpdk.org>, "Yang, Qiming" <qiming.yang@intel.com>,
 "Guo, Junfeng" <junfeng.guo@intel.com>, "orika@nvidia.com"
 <orika@nvidia.com>, "viacheslavo@nvidia.com" <viacheslavo@nvidia.com>,
 "Yigit, Ferruh" <ferruh.yigit@intel.com>, "andrew.rybchenko@oktetlabs.ru"
 <andrew.rybchenko@oktetlabs.ru>
Thread-Topic: [dpdk-dev] [PATCH v4 0/2] enable protocol agnostic flow
 offloading in RSS
Thread-Index: AQHX0SKIxyMfN/h4bEWTGgAbptQM6qv0ZGqAgAACjACAAAEvAIAAGU4AgARg0OA=
Date: Mon, 8 Nov 2021 02:44:22 +0000
Message-ID: <212e24c9848f4fd382f032d3558c099e@intel.com>
References: <20211008070934.6956-1-ting.xu@intel.com>
 <2404603.ePvfOphbkP@thomas>
 <CO6PR11MB56345CEACEA35A35E23BE0A4F88E9@CO6PR11MB5634.namprd11.prod.outlook.com>
 <4597919.4CLRmV2U1y@thomas>
 <CO6PR11MB56340A59CB99AA6A1653CB24F88E9@CO6PR11MB5634.namprd11.prod.outlook.com>
In-Reply-To: <CO6PR11MB56340A59CB99AA6A1653CB24F88E9@CO6PR11MB5634.namprd11.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
dlp-reaction: no-action
dlp-version: 11.6.200.16
dlp-product: dlpe-windows
x-originating-ip: [10.239.127.36]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: Re: [dpdk-dev] [PATCH v4 0/2] enable protocol agnostic flow
 offloading in RSS
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>



> -----Original Message-----
> From: Xu, Ting <ting.xu@intel.com>
> Sent: Friday, November 5, 2021 10:54 PM
> To: Thomas Monjalon <thomas@monjalon.net>; Zhang, Qi Z
> <qi.z.zhang@intel.com>
> Cc: dev@dpdk.org; Yang, Qiming <qiming.yang@intel.com>; Guo, Junfeng
> <junfeng.guo@intel.com>; orika@nvidia.com; viacheslavo@nvidia.com;
> Yigit, Ferruh <ferruh.yigit@intel.com>; andrew.rybchenko@oktetlabs.ru
> Subject: RE: [dpdk-dev] [PATCH v4 0/2] enable protocol agnostic flow
> offloading in RSS
>=20
> > -----Original Message-----
> > From: Thomas Monjalon <thomas@monjalon.net>
> > Sent: Friday, November 5, 2021 9:23 PM
> > To: Zhang, Qi Z <qi.z.zhang@intel.com>; Xu, Ting <ting.xu@intel.com>
> > Cc: dev@dpdk.org; Yang, Qiming <qiming.yang@intel.com>; Guo, Junfeng
> > <junfeng.guo@intel.com>; orika@nvidia.com; viacheslavo@nvidia.com;
> > Yigit, Ferruh <ferruh.yigit@intel.com>; andrew.rybchenko@oktetlabs.ru
> > Subject: Re: [dpdk-dev] [PATCH v4 0/2] enable protocol agnostic flow
> > offloading in RSS
> >
> > 05/11/2021 14:18, Xu, Ting:
> > > From: Thomas Monjalon <thomas@monjalon.net>
> > > > 04/11/2021 03:22, Ting Xu:
> > > > > Enable protocol agnostic flow offloading to support raw pattern
> > > > > input for RSS hash flow rule creation. It is based on Parser
> > > > > Library
> > feature.
> > > > > Current rte_flow raw API is utilized.
> > > >
> > > > I remember raw item was especially targetting encapsulation action.
> > > > Which action do you achieve in ice PMD? Only RSS with raw item?
> > > >
> > > > For matching, raw item is quite limited. I think the new flex item
> > > > is more appropriate for general custom protocol parsing.
> > > > Did you look into flex item feature?
> > > >
> > > Hi, Thomas, we make use of the API for rte_raw to achieve our
> > > protocol agnostic flow offloading method, including RSS and FDIR.
> > > Behind it is the new Parser Library feature based on DDP,
> >
> > Where is this parser library code?
>=20
> Parser Library is committed before as ice base code.
>=20
> >
> > > rather than the original logic I think.
> >
> > > Binary-format pattern spec and mask are passed to Parser Library and
> > > the corresponding protocol ID and offset will be provided.
> >
> > Sorry you didn't reply about the new flex item added in this release.
> > Do you know it was added?
> > 	https://git.dpdk.org/dpdk/commit/?id=3Ddc4d860e8a89
> >
>=20
> Protocol agnostic flow offloading is based on ice DDP feature, although
> they all want to make flow creation more flexible, I think it is differen=
t
> with flex item.
> @Zhang, Qi Z Hi, Qi, are you familiar with flex item?
>=20

Yes, this is a very Intel DDP specific feature, the goal is to make our dri=
ver to support any customized parser (DDP) without change code.

Below steps are planned:

1. raw packet interface, this help on quick POC, as its simply the rte_flow=
 parser, but of cause it's not scale for an DPDK application to support dif=
ferent vendor.
2. enable a build-in util to forge a packet from a sequence of rte_flow hea=
ders, then the application will be scale, but the missing part is how to de=
scribe a customized header, we have similar idea like json, but seems "Flex=
 Item" already help to fix this gap, and we will improve the solution base =
on it.

Thanks
Qi