X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Ftools%2Fcryptoperf.rst;h=457f817c029f78d8bbbb1a11389288521a347e5a;hb=c4c6f682292b8c8987cd0f9d247794d50f875dee;hp=1117ebf6d3629f5a73962b03bd35e8bed358c0b6;hpb=35b09d76f89e7d5a4f38a2926cf6915028ed1e56;p=dpdk.git diff --git a/doc/guides/tools/cryptoperf.rst b/doc/guides/tools/cryptoperf.rst index 1117ebf6d3..457f817c02 100644 --- a/doc/guides/tools/cryptoperf.rst +++ b/doc/guides/tools/cryptoperf.rst @@ -133,6 +133,7 @@ The following are the appication command-line options: throughput latency + verify * ``--silent`` @@ -150,10 +151,25 @@ The following are the appication command-line options: Set the number of packets per burst. + This can be set as: + * Single value (i.e. ``--burst-sz 16``) + * Range of values, using the following structure ``min:inc:max``, + where ``min`` is minimum size, ``inc`` is the increment size and ``max`` + is the maximum size (i.e. ``--burst-sz 16:2:32``) + * List of values, up to 32 values, separated in commas (i.e. ``--burst-sz 16,24,32``) + * ``--buffer-sz `` Set the size of single packet (plaintext or ciphertext in it). + This can be set as: + * Single value (i.e. ``--buffer-sz 16``) + * Range of values, using the following structure ``min:inc:max``, + where ``min`` is minimum size, ``inc`` is the increment size and ``max`` + is the maximum size (i.e. ``--buffer-sz 16:2:32``) + * List of values, up to 32 values, separated in commas (i.e. ``--buffer-sz 32,64,128``) + + * ``--segments-nb `` Set the number of segments per packet. @@ -170,6 +186,9 @@ The following are the appication command-line options: crypto_snow3g crypto_kasumi crypto_zuc + crypto_dpaa2_sec + crypto_armv8 + crypto_scheduler * ``--optype `` @@ -181,6 +200,8 @@ The following are the appication command-line options: auth-then-cipher aead + For GCM/CCM algorithms you should use aead flag. + * ``--sessionless`` Enable session-less crypto operations mode. @@ -189,11 +210,6 @@ The following are the appication command-line options: Enable out-of-place crypto operations mode. -* ``--verify`` - - Enable verify that all crypto operations were successful. - The verification is done after the performance test. - * ``--test-file `` Set test vector file path. See the Test Vector File chapter. @@ -210,10 +226,8 @@ The following are the appication command-line options: 3des-ecb 3des-ctr aes-cbc - aes-ccm aes-ctr aes-ecb - aes-gcm aes-f8 aes-xts arc4 @@ -244,9 +258,7 @@ The following are the appication command-line options: 3des-cbc aes-cbc-mac - aes-ccm aes-cmac - aes-gcm aes-gmac aes-xcbc-mac md5 @@ -277,13 +289,41 @@ The following are the appication command-line options: Set the size of authentication key. -* ``--auth-digest-sz `` +* ``--auth-iv-sz `` + + Set the size of auth iv. - Set the size of authentication digest. +* ``--aead-algo `` -* ``--auth-aad-sz `` + Set AEAD algorithm name, where ``name`` is one + of the following:: + + aes-ccm + aes-gcm - Set the size of authentication aad. +* ``--aead-op `` + + Set AEAD operation mode, where ``mode`` is one of + the following:: + + encrypt + decrypt + +* ``--aead-key-sz `` + + Set the size of AEAD key. + +* ``--aead-iv-sz `` + + Set the size of AEAD iv. + +* ``--aead-aad-sz `` + + Set the size of AEAD aad. + +* ``--digest-sz `` + + Set the size of digest. * ``--csv-friendly`` @@ -295,9 +335,9 @@ Test Vector File The test vector file is a text file contain information about test vectors. The file is made of the sections. The first section doesn't have header. It contain global information used in each test variant vectors - -typicaly information about plaintext, ciphertext, cipher key, aut key, +typically information about plaintext, ciphertext, cipher key, aut key, initial vector. All other sections begin header. -The sections contain particular information typicaly digest. +The sections contain particular information typically digest. **Format of the file:** @@ -332,9 +372,13 @@ a string of bytes in C byte array format:: Key used in auth operation. -* ``iv`` +* ``cipher_iv`` + + Cipher Initial Vector. + +* ``auth_iv`` - Initial vector. + Auth Initial Vector. * ``aad`` @@ -349,34 +393,33 @@ Examples Call application for performance throughput test of single Aesni MB PMD for cipher encryption aes-cbc and auth generation sha1-hmac, -one milion operations, burst size 32, packet size 64:: +one million operations, burst size 32, packet size 64:: - dpdk-test-crypto-perf -l 6-7 --vdev crypto_aesni_mb_pmd -w 0000:00:00.0 -- + dpdk-test-crypto-perf -l 6-7 --vdev crypto_aesni_mb -w 0000:00:00.0 -- --ptest throughput --devtype crypto_aesni_mb --optype cipher-then-auth --cipher-algo aes-cbc --cipher-op encrypt --cipher-key-sz 16 --auth-algo - sha1-hmac --auth-op generate --auth-key-sz 64 --auth-digest-sz 12 + sha1-hmac --auth-op generate --auth-key-sz 64 --digest-sz 12 --total-ops 10000000 --burst-sz 32 --buffer-sz 64 Call application for performance latency test of two Aesni MB PMD executed on two cores for cipher encryption aes-cbc, ten operations in silent mode:: - dpdk-test-crypto-perf -l 4-7 --vdev crypto_aesni_mb_pmd1 - --vdev crypto_aesni_mb_pmd2 -w 0000:00:00.0 -- --devtype crypto_aesni_mb + dpdk-test-crypto-perf -l 4-7 --vdev crypto_aesni_mb1 + --vdev crypto_aesni_mb2 -w 0000:00:00.0 -- --devtype crypto_aesni_mb --cipher-algo aes-cbc --cipher-key-sz 16 --cipher-iv-sz 16 --cipher-op encrypt --optype cipher-only --silent --ptest latency --total-ops 10 -Call application for performance latency test of single open ssl PMD +Call application for verification test of single open ssl PMD for cipher encryption aes-gcm and auth generation aes-gcm,ten operations in silent mode, test vector provide in file "test_aes_gcm.data" with packet verification:: dpdk-test-crypto-perf -l 4-7 --vdev crypto_openssl -w 0000:00:00.0 -- - --devtype crypto_openssl --cipher-algo aes-gcm --cipher-key-sz 16 - --cipher-iv-sz 16 --cipher-op encrypt --auth-algo aes-gcm --auth-key-sz 16 - --auth-digest-sz 16 --auth-aad-sz 16 --auth-op generate --optype aead - --silent --ptest latency --total-ops 10 - --test-file test_aes_gcm.data --verify + --devtype crypto_openssl --aead-algo aes-gcm --aead-key-sz 16 + --aead-iv-sz 16 --aead-op encrypt --aead-aad-sz 16 --digest-sz 16 + --optype aead --silent --ptest verify --total-ops 10 + --test-file test_aes_gcm.data Test vector file for cipher algorithm aes cbc 256 with authorization sha:: @@ -399,7 +442,7 @@ Test vector file for cipher algorithm aes cbc 256 with authorization sha:: 0xf5, 0x0c, 0xe7, 0xa2, 0xa6, 0x23, 0xd5, 0x3d, 0x95, 0xd8, 0xcd, 0x86, 0x79, 0xf5, 0x01, 0x47, 0x4f, 0xf9, 0x1d, 0x9d, 0x36, 0xf7, 0x68, 0x1a, 0x64, 0x44, 0x58, 0x5d, 0xe5, 0x81, 0x15, 0x2a, 0x41, 0xe4, 0x0e, 0xaa, 0x1f, 0x04, 0x21, 0xff, 0x2c, 0xf3, 0x73, 0x2b, 0x48, 0x1e, 0xd2, 0xf7 - iv = + cipher_iv = 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F # Section sha 1 hmac buff 32 [sha1_hmac_buff_32]