doc: support IPsec Multi-buffer lib v1.3

Updated AESNI MB and AESNI GCM, KASUMI, ZUC, SNOW3G
and CHACHA20_POLY1305 PMD documentation guides
with information about the latest Intel IPsec Multi-buffer
library supported.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Ciara Power <ciara.power@intel.com>
Acked-by: Brian Dooley <brian.dooley@intel.com>
Signed-off-by: Kai Ji <kai.ji@intel.com>
This commit is contained in:
Pablo de Lara 2022-11-22 00:35:17 +08:00 committed by Thomas Monjalon
parent 83ce3b3931
commit f272ea5ba7
7 changed files with 83 additions and 28 deletions

View File

@ -40,8 +40,8 @@ Installation
To build DPDK with the AESNI_GCM_PMD the user is required to download the multi-buffer
library from `here <https://github.com/01org/intel-ipsec-mb>`_
and compile it on their user system before building DPDK.
The latest version of the library supported by this PMD is v1.2, which
can be downloaded in `<https://github.com/01org/intel-ipsec-mb/archive/v1.2.zip>`_.
The latest version of the library supported by this PMD is v1.3, which
can be downloaded in `<https://github.com/01org/intel-ipsec-mb/archive/v1.3.zip>`_.
.. code-block:: console
@ -84,8 +84,8 @@ and the external crypto libraries supported by them:
17.08 - 18.02 Multi-buffer library 0.46 - 0.48
18.05 - 19.02 Multi-buffer library 0.49 - 0.52
19.05 - 20.08 Multi-buffer library 0.52 - 0.55
20.11 - 21.08 Multi-buffer library 0.53 - 1.2*
21.11+ Multi-buffer library 1.0 - 1.2*
20.11 - 21.08 Multi-buffer library 0.53 - 1.3*
21.11+ Multi-buffer library 1.0 - 1.3*
============= ================================
\* Multi-buffer library 1.0 or newer only works for Meson but not Make build system.

View File

@ -1,8 +1,8 @@
.. SPDX-License-Identifier: BSD-3-Clause
Copyright(c) 2015-2018 Intel Corporation.
AESN-NI Multi Buffer Crypto Poll Mode Driver
============================================
AES-NI Multi Buffer Crypto Poll Mode Driver
===========================================
The AESNI MB PMD (**librte_crypto_aesni_mb**) provides poll mode crypto driver
@ -10,8 +10,6 @@ support for utilizing Intel multi buffer library, see the white paper
`Fast Multi-buffer IPsec Implementations on Intel® Architecture Processors
<https://www.intel.com/content/dam/www/public/us/en/documents/white-papers/fast-multi-buffer-ipsec-implementations-ia-processors-paper.pdf>`_.
The AES-NI MB PMD has current only been tested on Fedora 21 64-bit with gcc.
The AES-NI MB PMD supports synchronous mode of operation with
``rte_cryptodev_sym_cpu_crypto_process`` function call.
@ -77,6 +75,23 @@ Limitations
* RTE_CRYPTO_CIPHER_DES_DOCSISBPI is not supported for combined Crypto-CRC
DOCSIS security protocol.
AESNI MB PMD selection over SNOW3G/ZUC/KASUMI PMDs
--------------------------------------------------
This PMD supports wireless cipher suite (SNOW3G, ZUC and KASUMI).
On Intel processors, it is recommended to use this PMD
instead of SNOW3G, ZUC and KASUMI PMDs, as it enables algorithm mixing
(e.g. cipher algorithm SNOW3G-UEA2 with authentication algorithm AES-CMAC-128)
and performance over IMIX (packet size mix) traffic is significantly higher.
AESNI MB PMD selection over CHACHA20-POLY1305 PMD
-------------------------------------------------
This PMD supports Chacha20-Poly1305 algorithm.
On Intel processors, it is recommended to use this PMD instead of CHACHA20-POLY1305 PMD,
as it delivers better performance on single segment buffers.
For multi-segment buffers, it is still recommended to use CHACHA20-POLY1305 PMD,
until the new SGL API is introduced in the AESNI MB PMD.
Installation
------------
@ -84,8 +99,8 @@ Installation
To build DPDK with the AESNI_MB_PMD the user is required to download the multi-buffer
library from `here <https://github.com/01org/intel-ipsec-mb>`_
and compile it on their user system before building DPDK.
The latest version of the library supported by this PMD is v1.2, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.2.zip>`_.
The latest version of the library supported by this PMD is v1.3, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.3.zip>`_.
.. code-block:: console
@ -130,8 +145,8 @@ and the Multi-Buffer library version supported by them:
18.05 - 19.02 0.49 - 0.52
19.05 - 19.08 0.52
19.11 - 20.08 0.52 - 0.55
20.11 - 21.08 0.53 - 1.2*
21.11+ 1.0 - 1.2*
20.11 - 21.08 0.53 - 1.3*
21.11+ 1.0 - 1.3*
============== ============================
\* Multi-buffer library 1.0 or newer only works for Meson but not Make build system.

View File

@ -16,6 +16,14 @@ AEAD algorithms:
* RTE_CRYPTO_AEAD_CHACHA20_POLY1305
Chaha20_Poly1305 PMD vs AESNI MB PMD
------------------------------------
AESNI MB PMD also supports CHACHA20-POLY1305 algorithms.
It is recommended to use the AESNI MB PMD,
which offers better performance on Intel processors,
when single-segment buffers are used.
Take a look at the PMD documentation (:doc:`aesni_mb`) for more information.
Installation
------------
@ -23,8 +31,8 @@ Installation
To build DPDK with the Chacha20-poly1305 PMD the user is required to download
the multi-buffer library from `here <https://github.com/01org/intel-ipsec-mb>`_
and compile it on their user system before building DPDK.
The latest version of the library supported by this PMD is v1.0, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.0.zip>`_.
The latest version of the library supported by this PMD is v1.3, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.3.zip>`_.
After downloading the library, the user needs to unpack and compile it
on their system before building DPDK:
@ -64,7 +72,7 @@ and the external crypto libraries supported by them:
============= ================================
DPDK version Crypto library version
============= ================================
21.11+ Multi-buffer library 1.0*
21.11+ Multi-buffer library 1.0-1.3*
============= ================================
\* Multi-buffer library 1.0 or newer only works for Meson but not Make build system.

View File

@ -30,14 +30,22 @@ Limitations
(if length and/or offset of data to be ciphered is not byte-aligned).
KASUMI PMD vs AESNI MB PMD
--------------------------
AESNI MB PMD also supports KASUMI cipher and authentication algorithms.
It is recommended to use the AESNI MB PMD,
which offers better performance on Intel processors.
Take a look at the PMD documentation (:doc:`aesni_mb`) for more information.
Installation
------------
To build DPDK with the KASUMI_PMD the user is required to download the multi-buffer
library from `here <https://github.com/01org/intel-ipsec-mb>`_
and compile it on their user system before building DPDK.
The latest version of the library supported by this PMD is v1.2, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.2.zip>`_.
The latest version of the library supported by this PMD is v1.3, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.3.zip>`_.
After downloading the library, the user needs to unpack and compile it
on their system before building DPDK:
@ -78,8 +86,8 @@ and the external crypto libraries supported by them:
DPDK version Crypto library version
============= ================================
16.11 - 19.11 LibSSO KASUMI
20.02 - 21.08 Multi-buffer library 0.53 - 1.2*
21.11+ Multi-buffer library 1.0 - 1.2*
20.02 - 21.08 Multi-buffer library 0.53 - 1.3*
21.11+ Multi-buffer library 1.0 - 1.3*
============= ================================
\* Multi-buffer library 1.0 or newer only works for Meson but not Make build system.

View File

@ -21,6 +21,10 @@ Authentication algorithm:
* RTE_CRYPTO_AUTH_SNOW3G_UIA2
.. note::
The latest v1.3 add ARM64 port of ipsec-mb library support ARM platform.
Limitations
-----------
@ -29,6 +33,14 @@ Limitations
* In-place bit-level operations for SNOW 3G (UEA2) are not supported
(if length and/or offset of data to be ciphered is not byte-aligned).
SNOW3G PMD vs AESNI MB PMD
--------------------------
AESNI MB PMD also supports SNOW3G cipher and authentication algorithms.
It is recommended to use the AESNI MB PMD,
which offers better performance on Intel processors.
Take a look at the PMD documentation (:doc:`aesni_mb`) for more information.
Installation
------------
@ -37,8 +49,8 @@ library and compile it on their user system before building DPDK.
For x86 system, the multi-buffer library is available
`here <https://github.com/01org/intel-ipsec-mb>`_.
The latest version of the library supported by this PMD is v1.2, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.2.zip>`_.
The latest version of the library supported by this PMD is v1.3, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.3.zip>`_.
For Arm system, ARM64 port of the multi-buffer library can be downloaded from
`<https://gitlab.arm.com/arm-reference-solutions/ipsec-mb/-/tree/main/>`_. The
@ -83,8 +95,8 @@ and the external crypto libraries supported by them:
DPDK version Crypto library version
============= ================================
16.04 - 19.11 LibSSO SNOW3G
20.02 - 21.08 Multi-buffer library 0.53 - 1.2*
21.11+ Multi-buffer library 1.0 - 1.2*
20.02 - 21.08 Multi-buffer library 0.53 - 1.3*
21.11+ Multi-buffer library 1.0 - 1.3*
============= ================================
\* Multi-buffer library 1.0 or newer only works for Meson but not Make build system.

View File

@ -21,6 +21,10 @@ Authentication algorithm:
* RTE_CRYPTO_AUTH_ZUC_EIA3
.. note::
The latest v1.3 add ARM64 port of ipsec-mb library support ARM platform.
Limitations
-----------
@ -28,6 +32,13 @@ Limitations
* ZUC (EIA3) supported only if hash offset field is byte-aligned.
* ZUC (EEA3) supported only if cipher length, cipher offset fields are byte-aligned.
ZUC PMD vs AESNI MB PMD
-----------------------
AESNI MB PMD also supports ZUC cipher and authentication algorithms.
It is recommended to use the AESNI MB PMD,
which offers better performance on Intel processors.
Take a look at the PMD documentation (:doc:`aesni_mb`) for more information.
Installation
------------
@ -37,8 +48,8 @@ library and compile it on their user system before building DPDK.
For x86 system, the multi-buffer library is available
`here <https://github.com/01org/intel-ipsec-mb>`_.
The latest version of the library supported by this PMD is v1.2, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.2.zip>`_.
The latest version of the library supported by this PMD is v1.3, which
can be downloaded from `<https://github.com/01org/intel-ipsec-mb/archive/v1.3.zip>`_.
For Arm system, ARM64 port of the multi-buffer library can be downloaded from
`<https://gitlab.arm.com/arm-reference-solutions/ipsec-mb/-/tree/main/>`_. The
@ -83,8 +94,8 @@ and the external crypto libraries supported by them:
DPDK version Crypto library version
============= ================================
16.11 - 19.11 LibSSO ZUC
20.02 - 21.08 Multi-buffer library 0.53 - 1.2*
21.11+ Multi-buffer library 1.0 - 1.2*
20.02 - 21.08 Multi-buffer library 0.53 - 1.3*
21.11+ Multi-buffer library 1.0 - 1.3*
============= ================================
\* Multi-buffer library 1.0 or newer only works for Meson but not Make build system.

View File

@ -248,7 +248,8 @@ New Features
* **Updated ipsec_mb crypto driver.**
Added SNOW-3G and ZUC support for ARM platform.
* Added SNOW-3G and ZUC support for ARM platform.
* Added Intel IPsec MB v1.3 library support for x86 platform.
* **Added UADK crypto driver.**