DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] Crypto-dev schedular - Support for multiple crypto algorithms concurrently
@ 2019-04-29  8:17 Jitendra Saini
  2019-04-29  8:17 ` Jitendra Saini
  0 siblings, 1 reply; 2+ messages in thread
From: Jitendra Saini @ 2019-04-29  8:17 UTC (permalink / raw)
  To: dev

Hi All,

Context: Using dpdk + vpp for telecom network user plane processing
Desired: want to use dpdk crypto-dev scheduler to have 2 cores dedicated
for crypto operations
Issue: crypto devices of different types (AES_MB & AES_GCM) are not
supported concurrently.
Query: Have anyone used crypto scheduler and able to support multiple
crypto device types?

Details:
We want to use 4 cores in total for user plane processing with following
deployment
Core-1: vpp worker thread - downlink
Core-2 : vpp worker thread - uplink
Core-3 : crypto-slave-1 (Cipher: aes-cbc-128)
Core-4 : crypto-slave-2 (Cipher: aes-gcm-128)

vpp# sh dpdk crypto devices
aesni_mb_1               crypto_aesni_mb     up
  numa_node 0, max_queues 8
  free_resources 2, used_resources 2
  SYMMETRIC_CRYPTO, SYM_OPERATION_CHAINING, CPU_AVX2, CPU_AESNI
  Cipher: aes-cbc-128, aes-cbc-192, aes-cbc-256, aes-ctr-128, aes-ctr-192,
aes-ctr-256
  Auth: md5-96, sha1-96, sha-256-128, sha-384-192, sha-512-256,
aes-xcbc-mac-96

aesni_gcm_1              crypto_aesni_gcm    up
  numa_node 0, max_queues 8
  free_resources 2, used_resources 2
  SYMMETRIC_CRYPTO, SYM_OPERATION_CHAINING, CPU_AVX2, CPU_AESNI,
MBUF_SCATTER_GATHER
  Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
  Auth: aes-gmac-128, aes-gmac-256

crypto_scheduler         crypto_scheduler    up
  numa_node 0, max_queues 8
  free_resources 2, used_resources 2
  SYMMETRIC_CRYPTO, SYM_OPERATION_CHAINING, CPU_AVX2, CPU_AESNI,
MBUF_SCATTER_GATHER
  Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
  Auth:


vpp# sh dpdk crypto placement verbose
Thread 1 (vpp_wk_0):
  aesni_mb_1           dev-id  0 inbound-queue  0 outbound-queue  1
    Cipher: aes-cbc-128, aes-cbc-192, aes-cbc-256, aes-ctr-128,
aes-ctr-192, aes-ctr-256
    Auth: md5-96, sha1-96, sha-256-128, sha-384-192, sha-512-256,
aes-xcbc-mac-96
  aesni_gcm_1          dev-id  1 inbound-queue  0 outbound-queue  1
    Cipher:
    Auth: aes-gmac-128, aes-gmac-256
  crypto_scheduler     dev-id  2 inbound-queue  0 outbound-queue  1
    Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
    Auth:

Thread 2 (vpp_wk_1):
  aesni_mb_1           dev-id  0 inbound-queue  2 outbound-queue  3
    Cipher: aes-cbc-128, aes-cbc-192, aes-cbc-256, aes-ctr-128,
aes-ctr-192, aes-ctr-256
    Auth: md5-96, sha1-96, sha-256-128, sha-384-192, sha-512-256,
aes-xcbc-mac-96
  aesni_gcm_1          dev-id  1 inbound-queue  2 outbound-queue  3
    Cipher:
    Auth: aes-gmac-128, aes-gmac-256
  crypto_scheduler     dev-id  2 inbound-queue  2 outbound-queue  3
    Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
    Auth:

Query - Detail : with above log output, we see crypto-slaves aesni_mb_1 &
aesni_gcm_1 deployed on both worker threads but from Test Results we see
following -
AES Traffic - works through crypto scehdular
GCM Traffic - does not work. (Error - dpdk-esp-decrypt            Failed to
get crypto session)

Can someone please help to understand this behavior / suggest if any
approach worked for you to support multiple crypto algorithms?

Thanks in advance

Best Regads,
Jitendra

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [dpdk-dev] Crypto-dev schedular - Support for multiple crypto algorithms concurrently
  2019-04-29  8:17 [dpdk-dev] Crypto-dev schedular - Support for multiple crypto algorithms concurrently Jitendra Saini
@ 2019-04-29  8:17 ` Jitendra Saini
  0 siblings, 0 replies; 2+ messages in thread
From: Jitendra Saini @ 2019-04-29  8:17 UTC (permalink / raw)
  To: dev

Hi All,

Context: Using dpdk + vpp for telecom network user plane processing
Desired: want to use dpdk crypto-dev scheduler to have 2 cores dedicated
for crypto operations
Issue: crypto devices of different types (AES_MB & AES_GCM) are not
supported concurrently.
Query: Have anyone used crypto scheduler and able to support multiple
crypto device types?

Details:
We want to use 4 cores in total for user plane processing with following
deployment
Core-1: vpp worker thread - downlink
Core-2 : vpp worker thread - uplink
Core-3 : crypto-slave-1 (Cipher: aes-cbc-128)
Core-4 : crypto-slave-2 (Cipher: aes-gcm-128)

vpp# sh dpdk crypto devices
aesni_mb_1               crypto_aesni_mb     up
  numa_node 0, max_queues 8
  free_resources 2, used_resources 2
  SYMMETRIC_CRYPTO, SYM_OPERATION_CHAINING, CPU_AVX2, CPU_AESNI
  Cipher: aes-cbc-128, aes-cbc-192, aes-cbc-256, aes-ctr-128, aes-ctr-192,
aes-ctr-256
  Auth: md5-96, sha1-96, sha-256-128, sha-384-192, sha-512-256,
aes-xcbc-mac-96

aesni_gcm_1              crypto_aesni_gcm    up
  numa_node 0, max_queues 8
  free_resources 2, used_resources 2
  SYMMETRIC_CRYPTO, SYM_OPERATION_CHAINING, CPU_AVX2, CPU_AESNI,
MBUF_SCATTER_GATHER
  Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
  Auth: aes-gmac-128, aes-gmac-256

crypto_scheduler         crypto_scheduler    up
  numa_node 0, max_queues 8
  free_resources 2, used_resources 2
  SYMMETRIC_CRYPTO, SYM_OPERATION_CHAINING, CPU_AVX2, CPU_AESNI,
MBUF_SCATTER_GATHER
  Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
  Auth:


vpp# sh dpdk crypto placement verbose
Thread 1 (vpp_wk_0):
  aesni_mb_1           dev-id  0 inbound-queue  0 outbound-queue  1
    Cipher: aes-cbc-128, aes-cbc-192, aes-cbc-256, aes-ctr-128,
aes-ctr-192, aes-ctr-256
    Auth: md5-96, sha1-96, sha-256-128, sha-384-192, sha-512-256,
aes-xcbc-mac-96
  aesni_gcm_1          dev-id  1 inbound-queue  0 outbound-queue  1
    Cipher:
    Auth: aes-gmac-128, aes-gmac-256
  crypto_scheduler     dev-id  2 inbound-queue  0 outbound-queue  1
    Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
    Auth:

Thread 2 (vpp_wk_1):
  aesni_mb_1           dev-id  0 inbound-queue  2 outbound-queue  3
    Cipher: aes-cbc-128, aes-cbc-192, aes-cbc-256, aes-ctr-128,
aes-ctr-192, aes-ctr-256
    Auth: md5-96, sha1-96, sha-256-128, sha-384-192, sha-512-256,
aes-xcbc-mac-96
  aesni_gcm_1          dev-id  1 inbound-queue  2 outbound-queue  3
    Cipher:
    Auth: aes-gmac-128, aes-gmac-256
  crypto_scheduler     dev-id  2 inbound-queue  2 outbound-queue  3
    Cipher: aes-gcm-128, aes-gcm-192, aes-gcm-256
    Auth:

Query - Detail : with above log output, we see crypto-slaves aesni_mb_1 &
aesni_gcm_1 deployed on both worker threads but from Test Results we see
following -
AES Traffic - works through crypto scehdular
GCM Traffic - does not work. (Error - dpdk-esp-decrypt            Failed to
get crypto session)

Can someone please help to understand this behavior / suggest if any
approach worked for you to support multiple crypto algorithms?

Thanks in advance

Best Regads,
Jitendra

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-04-29  8:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-29  8:17 [dpdk-dev] Crypto-dev schedular - Support for multiple crypto algorithms concurrently Jitendra Saini
2019-04-29  8:17 ` Jitendra Saini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).