Hi all,
I'm using openssl 1.0.1e and OpenVPN 2.3.2
I'm using the cryptodev-linux/extras/eng_cryptodev.c with openssl
The cryptodev with "openssl speed" works, i see the crypto HW
interrupts in /proc/interrupts increasing while running it, and there
is a huge difference in speed with/without the cryptodev module.
I startup a client openvpn --cipher AES-256-CBC, and it connects fine,
i can ping fine. I can change the ping data size, and all is OK. But
doing a large transfer with iperf openvpn will fail, and the server side
will start generating errors like:
Mon Dec 2 14:56:26 2013 us=282785 test1/10.64.1.3:64764 PID_ERR large
diff [1693821396] [SSL-0]
[EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE]
0:1693821542 0:146 t=1385996186[0] r=[-2,64,15,1693821517,1]
sl=[0,64,64,272]
Mon Dec 2 14:56:26 2013 us=282785 test1/10.64.1.3:64764
Authenticate/Decrypt packet error: bad packet ID (may be a replay): [
#146 ] -- see the man page entry for --no-replay and --replay-window for
more info or silence this warning with --mute-replay-warnings
I bump the --replay-window to 640 ( 10x bigger than default) and it
still fails.
The issue looks similar to:
https://mail.gna.org/public/cryptodev-linux-devel/2010-07/msg00003.html
so on openvpn I started it up with " --auth none " to disable HMAC
and the issues still appears.
Is it possible a large amount of packets are being discarded somewhere
or lost?
If i remove the cryptodev kernel modules openvpn works fine, but quite
slow doing SW only crypto.
Openssl speed output also showing compiler flags.
# openssl speed -evp aes-256-cbc
Doing aes-256-cbc for 3s on 16 size blocks: 78786 aes-256-cbc's in 0.11s
Doing aes-256-cbc for 3s on 64 size blocks: 41087 aes-256-cbc's in 0.12s
Doing aes-256-cbc for 3s on 256 size blocks: 37191 aes-256-cbc's in 0.10s
Doing aes-256-cbc for 3s on 1024 size blocks: 26853 aes-256-cbc's in 0.06s
Doing aes-256-cbc for 3s on 8192 size blocks: 7119 aes-256-cbc's in 0.03s
OpenSSL 1.0.1e 11 Feb 2013
built on: Mon Dec 2 11:58:00 CET 2013
options:bn(64,32) rc4(ptr,int) des(idx,risc1,2,long) aes(partial)
idea(int) blowfish(idx)
compiler: arm-poky-linux-gnueabi-gcc -march=armv7-a -marm
-mthumb-interwork -mfloat-abi=hard -mtune=cortex-a9
--sysroot=/home/karl/Work/yocto/poky-dylan-9.0.2/build_ek/tmp/sysroots/ek -fPIC
-DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H
-DL_ENDIAN -DTERMIO -O2 -pipe -g -feliminate-unused-debug-types
-Wall -Wa,--noexecstack -DHAVE_CRYPTODEV
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-256-cbc 11459.78k 21913.07k 95208.96k 458291.20k
1943961.60k
The crypto HW driver I'm using is:
https://github.com/linux4sam/linux-at91/blob/linux-3.6.9-at91/drivers/crypto/atmel-aes.c
output of examples/aes.
Got cbc(aes) with driver atmel-cbc-aes
Note: This is not an accelerated cipher
Got cbc(aes) with driver atmel-cbc-aes
Note: This is not an accelerated cipher
AES Test passed
output of examples/sha
Got sha1 with driver atmel-sha1
Note: This is not an accelerated cipher
digest: 2f:d4:e1:c6:7a:2d:28:fc:ed:84:9e:e1:bb:76:e7:39:1b:93:eb:12:
Does anyone know if any workarounds, things i should check, or debug
suggestions?
Thanks
Karl.
_______________________________________________
Cryptodev-linux-devel mailing list
Cryptodev-linux-devel@gna.org
https://mail.gna.org/listinfo/cryptodev-linux-devel