From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from m15-45.126.com (m15-45.126.com [220.181.15.45]) by dpdk.org (Postfix) with ESMTP id A027647CD for ; Tue, 20 Sep 2016 00:19:07 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=126.com; s=s110527; h=Date:From:Subject:MIME-Version:Message-ID; bh=Br5X8 z5KYpS6DRSnSmDQPNy/5qrw0EZzrKJZIP1ySiM=; b=gdPZ2Jo4Rclp0O7rtml2h qhSOtm8rYVe2fMkzjygnXKbb8ec3pjrK95ahUla2RgxaNm8U6YkVmpiY1a8MTdBR SfstWB7a6UlOagfEtkzNNie5r6zqZVGH8L4FoXC5Qe3aPzavfbBr2+MTFJbL6jwN 8e0/ZsRSgdirk8NIYrBn5I= Received: from zhangwqh$126.com ( [161.253.121.223, 54.215.2.217, 10.144.1.72] ) by ajax-webmail-wmsvr45 (Coremail) ; Tue, 20 Sep 2016 06:18:25 +0800 (CST) X-Originating-IP: [161.253.121.223, 54.215.2.217, 10.144.1.72] Date: Tue, 20 Sep 2016 06:18:25 +0800 (CST) From: =?GBK?B?1cXOsA==?= To: "dev@dpdk.org" , mhall@mhcomputing.net, nikita@gandi.net X-Priority: 3 X-Mailer: Coremail Webmail Server Version SP_ntes V3.5 build 20160420(83524.8626) Copyright (c) 2002-2016 www.mailtech.cn 126com X-CM-CTRLDATA: plZEiWZvb3Rlcl9odG09MzAxMTo1Ng== MIME-Version: 1.0 Message-ID: <365e4837.62d.157448762d2.Coremail.zhangwqh@126.com> X-Coremail-Locale: zh_CN X-CM-TRANSID: LcqowAD3_0MyZOBXL8o2AA--.63031W X-CM-SenderInfo: x2kd0wxztkqiyswou0bp/1tbiWBPp6VWmNMfStgAAsv X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== Content-Type: text/plain; charset=GBK Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: [dpdk-dev] lpm performance X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Sep 2016 22:19:08 -0000 SGkgYWxsLCAKCgpEb2VzIGFueW9uZSB0ZXN0IElQdjQgcGVyZm9ybWFuY2U/IElmIHNvLCB3aGF0 J3MgdGhlIHRocm91Z2hwdXQ/IEkgY2FuIGdldCBhbG1vc3QgMTBHYiB3aXRoIDY0IGJ5dGUgcGFj a2V0cy4gIEJ1dCBiZWZvcmUgdGhlIHRlc3QsIEkgd291bGQgZXhwZWN0IGl0IHdpbGwgYmUgbGVz cyB0aGFuIDEwRy4gIEkgdGhvdWdodCB0aGUgcGVyZm9ybWFuY2Ugd2lsbCBub3QgYmUgYWZmZWN0 ZWQgYnkgdGhlICBudW1iZXIgb2YgcnVsZSBlbnRpcmVzLiBCdXQgdGhlIHRocm91Z2hwdXQgd2ls bCBiZSByZWxhdGVkIHRvIHdoZXRoZXIgdGhlIGZsb3cgbmVlZHMgdG8gY2hlY2sgdGhlIHNlY29u ZCBsYXllciB0YWJsZSA6IFRCTDguICBJcyBteSB1bmRlcnN0YW5kaW5nIGNvcnJlY3Q/IEkgYWRk ZWQgdGhpcyBmbG93IGVudHJpZXMgZm9sbG93aW5nIHRoaXMgbGluazoKaHR0cDovL3d3dy5zbGlk ZXNoYXJlLm5ldC9nYXJ5YWNoeS91bmRlcnN0YW5kaW5nLWRkcGQtYWxnb3JpdGhtaWNzIApzbGlk ZSAxMCwgCgoKCnN0cnVjdCBpcHY0X2xwbV9yb3V0ZSBpcHY0X2xwbV9yb3V0ZV9hcnJheVtdID0g ewoKICAgICAgICB7SVB2NCgxOTIsIDE2OCwgMCwgMCksIDE2LCAwfSwKCiAgICAgICAge0lQdjQo MTkyLCAxNjgsIDEsIDApLCAyNCwgMX0sCgogICAgICAgIHtJUHY0KDE5MiwgMTY4LCAxLCAxKSwg MzIsIDJ9Cgp9OwoKc2VuZCB0aGUgZmxvdyB3aXRoIGRzdCBJUDogCgoxOTIuMTY4LjEuMgoKSXQg c2hvdWxkIGNoZWNrIHRoZSBzZWNvbmQgbGF5ZXIgdGFibGUuIEJ1dCB0aGUgcGVyZm9ybWFuY2Ug aXMgc3RpbGwgMTBHLiAgRG9lcyBhbnkgcGFydCBnbyB3cm9uZyB3aXRoIG15IHNldHVwPyBPciBp dCByZWFsbHkgY2FuIGFjaGlldmUgMTBHIHdpdGggNjQgYnl0ZSBwYWNrZXQgc2l6ZS4gIAoKVGhh bmtzLAoKCg== >From pablo.de.lara.guarch@intel.com Tue Sep 20 00:52:41 2016 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 18D679E7 for ; Tue, 20 Sep 2016 00:52:40 +0200 (CEST) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga102.fm.intel.com with ESMTP; 19 Sep 2016 15:52:42 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.30,364,1470726000"; d="scan'208";a="1059196348" Received: from irsmsx152.ger.corp.intel.com ([163.33.192.66]) by fmsmga002.fm.intel.com with ESMTP; 19 Sep 2016 15:52:40 -0700 Received: from irsmsx155.ger.corp.intel.com (163.33.192.3) by IRSMSX152.ger.corp.intel.com (163.33.192.66) with Microsoft SMTP Server (TLS) id 14.3.248.2; Mon, 19 Sep 2016 23:52:38 +0100 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.164]) by irsmsx155.ger.corp.intel.com ([169.254.14.133]) with mapi id 14.03.0248.002; Mon, 19 Sep 2016 23:52:38 +0100 From: "De Lara Guarch, Pablo" To: "Jastrzebski, MichalX K" , "dev@dpdk.org" CC: "Mrozowicz, SlawomirX" , "Kobylinski, MichalX" , "Kulasek, TomaszX" , "Mrzyglod, DanielX T" Thread-Topic: [PATCH v2 1/4] libcrypto_pmd: initial implementation of SW crypto device Thread-Index: AQHSElStCj+DPfSpbEad+Ixnxd0iVqCBVf1Q Date: Mon, 19 Sep 2016 22:52:37 +0000 Message-ID: References: <1474275582-6108-1-git-send-email-michalx.k.jastrzebski@intel.com> <1474275582-6108-2-git-send-email-michalx.k.jastrzebski@intel.com> In-Reply-To: <1474275582-6108-2-git-send-email-michalx.k.jastrzebski@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYmY4OTZiODMtYzk1My00ZGQ2LWI5ZmUtYzljNjhiN2E5ZGM5IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IkF1Y1hJOEk3ZDV2bURIelpRNFA4U3NxdHFnVzFWTXlncmRraVR4enF1UEk9In0= x-ctpclassification: CTP_IC x-originating-ip: [163.33.239.180] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 1/4] libcrypto_pmd: initial implementation of SW crypto device X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Sep 2016 22:52:41 -0000 > -----Original Message----- > From: Jastrzebski, MichalX K > Sent: Monday, September 19, 2016 2:00 AM > To: dev@dpdk.org > Cc: De Lara Guarch, Pablo; Mrozowicz, SlawomirX; Kobylinski, MichalX; > Kulasek, TomaszX; Mrzyglod, DanielX T > Subject: [PATCH v2 1/4] libcrypto_pmd: initial implementation of SW > crypto device >=20 > From: Slawomir Mrozowicz >=20 > This code provides the initial implementation of the libcrypto > poll mode driver. All cryptography operations are using Openssl > library crypto API. Each algorithm uses EVP_ interface from > openssl API - which is recommended by Openssl maintainers. >=20 > LibCrypto PMD has support for: >=20 > Supported cipher algorithms: > RTE_CRYPTO_CIPHER_3DES_CBC > RTE_CRYPTO_CIPHER_AES_CBC > RTE_CRYPTO_CIPHER_AES_CTR > RTE_CRYPTO_CIPHER_3DES_CTR > RTE_CRYPTO_CIPHER_AES_GCM >=20 > Supported authentication algorithms: > RTE_CRYPTO_AUTH_AES_GMAC > RTE_CRYPTO_AUTH_MD5 > RTE_CRYPTO_AUTH_SHA1 > RTE_CRYPTO_AUTH_SHA224 > RTE_CRYPTO_AUTH_SHA256 > RTE_CRYPTO_AUTH_SHA384 > RTE_CRYPTO_AUTH_SHA512 > RTE_CRYPTO_AUTH_MD5_HMAC > RTE_CRYPTO_AUTH_SHA1_HMAC > RTE_CRYPTO_AUTH_SHA224_HMAC > RTE_CRYPTO_AUTH_SHA256_HMAC > RTE_CRYPTO_AUTH_SHA384_HMAC > RTE_CRYPTO_AUTH_SHA512_HMAC >=20 > Installation > ------------ > To compile libcrypto PMD It has to be enabled in the config/common_base > file and appropriate openssl packages have to be installed in the build > environment. >=20 I think the supported algorithms and how to install can be removed from the= commit message, as message is too big (and this information is present in the documentation= ). > Signed-off-by: Slawomir Mrozowicz > Signed-off-by: Michal Kobylinski > Signed-off-by: Tomasz Kulasek > Signed-off-by: Daniel Mrzyglod > --- ... > diff --git a/doc/guides/cryptodevs/libcrypto.rst > b/doc/guides/cryptodevs/libcrypto.rst > new file mode 100644 > index 0000000..f9daa05 > --- /dev/null > +++ b/doc/guides/cryptodevs/libcrypto.rst > @@ -0,0 +1,113 @@ ... > + > +LibCrypto Crypto Poll Mode Driver > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Remove the extra "=3D" and extra blank line below. > + > + > +This code provides the initial implementation of the libcrypto poll mode > +driver All cryptography operations are using Openssl library crypto API. Missing "." before All. > +Each algorithm uses EVP_ interface from openssl API - which is > recommended > +by Openssl maintainers. > + > +For more details about openssl library please visit openssl webpage: > +https://www.openssl.org/ > + > +Features > +-------- > + > +LibCrypto PMD has support for: > + > +Supported cipher algorithms: > +* ``RTE_CRYPTO_CIPHER_3DES_CBC`` > +* ``RTE_CRYPTO_CIPHER_AES_CBC`` > +* ``RTE_CRYPTO_CIPHER_AES_CTR`` > +* ``RTE_CRYPTO_CIPHER_3DES_CTR`` > +* ``RTE_CRYPTO_CIPHER_AES_GCM`` > + > +Supported authentication algorithms: > +* ``RTE_CRYPTO_AUTH_AES_GMAC`` > +* ``RTE_CRYPTO_AUTH_MD5`` > +* ``RTE_CRYPTO_AUTH_SHA1`` > +* ``RTE_CRYPTO_AUTH_SHA224`` > +* ``RTE_CRYPTO_AUTH_SHA256`` > +* ``RTE_CRYPTO_AUTH_SHA384`` > +* ``RTE_CRYPTO_AUTH_SHA512`` > +* ``RTE_CRYPTO_AUTH_MD5_HMAC`` > +* ``RTE_CRYPTO_AUTH_SHA1_HMAC`` > +* ``RTE_CRYPTO_AUTH_SHA224_HMAC`` > +* ``RTE_CRYPTO_AUTH_SHA256_HMAC`` > +* ``RTE_CRYPTO_AUTH_SHA384_HMAC`` > +* ``RTE_CRYPTO_AUTH_SHA512_HMAC`` > + > + > +Installation > +------------ Blank line here. > +To compile libcrypto PMD It has to be enabled in the Comma after PMD. > config/common_base file > +and appropriate openssl packages have to be installed in the build > environment. > + > +The newest openssl library version is supported: > +* 1.0.2h-fips 3 May 2016. > +Older versions that were also verified: > +* 1.0.1f 6 Jan 2014 > +* 1.0.1 14 Mar 2012 > + > +For Ubuntu 14.04 LTS these packages have to be installed in the build > system: > +sudo apt-get install openssl > +sudo apt-get install libc6-dev-i386 (for i686-native-linuxapp-gcc target= ) > + > +This code was also verified on Fedora 24. > +This code was NOT yet verified on FreeBSD. > + > +Initialization > +-------------- > + > +User can use app/test application to check how to use this pmd and to > verify > +crypto processing. > + > +Test name is cryptodev_libcrypto_autotest. > +For performance test cryptodev_libcrypto_perftest can be used. > + > +To verify real traffic l2fwd-crypto example can be used with this comman= d: > +sudo ./build/l2fwd-crypto -c 0x3 -n 4 --vdev "cryptodev_libcrypto_pmd" > +--vdev "cryptodev_libcrypto_pmd"-- -p 0x3 --chain CIPHER_HASH > +--cipher_op ENCRYPT --cipher_algo AES_CBC > +--cipher_key 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f > +--iv 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:ff > +--auth_op GENERATE --auth_algo SHA1_HMAC > +--auth_key > 11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11 > +:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:1 > 1:11:11 > +:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11 Use code-block here. > + > +Limitations > +----------- Blank line here. > +* Maximum number of sessions is 2048. > +* Chained mbufs are not supported. > +* Hash only is not supported for GCM and GMAC. > +* Cipher only is not supported for GCM and GMAC. ... > diff --git a/mk/rte.app.mk b/mk/rte.app.mk > index 1a0095b..67c0aa9 100644 > --- a/mk/rte.app.mk > +++ b/mk/rte.app.mk > @@ -135,7 +135,8 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) > +=3D -lrte_pmd_aesni_mb > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) +=3D - > L$(AESNI_MULTI_BUFFER_LIB_PATH) -lIPSec_MB > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_GCM) +=3D - > lrte_pmd_aesni_gcm -lcrypto > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_GCM) +=3D - > L$(AESNI_MULTI_BUFFER_LIB_PATH) -lIPSec_MB > -_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO) +=3D - > lrte_pmd_null_crypto > +_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_LIBCRYPTO) +=3D - > lrte_pmd_libcrypto -lcrypto > +_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO)+=3D - > lrte_pmd_null_crypto Space removed here by mistake. =20 > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_QAT) +=3D -lrte_pmd_qat -lcrypto > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_SNOW3G) +=3D -lrte_pmd_snow3g > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_SNOW3G) +=3D - > L$(LIBSSO_SNOW3G_PATH)/build -lsso_snow3g > -- > 1.9.1