OK, so I spent the whole night testing performance and tweaking configuration and here are the results
at first I have to say windows and samba was not the best choice to measure performance
I obtained remote access to the machine at the university and did some testing with iperf and openvpn 2.3.4 compiled from sources
TCP over TCP AES-128-CBC + SHA1 --> 47.5 mbps
TCP over TCP none + none -----------> 49-50 mbps
with these promising results I repeated iperf measurements a few times to see if they are consistent and they were
I continued to test with UDP as that should increase performance over TCP
TCP over UDP AES-256-CBC + SHA1 --> 41 mbps
TCP over UDP AES-128-CBC + SHA1 --> 44 mbps
TCP over UDP none + none -----------> 57 mbps
TCP over UDP none + none -----------> 58.5 mbps (after overclocking exynos 4412 from 1.7GHz to 1.92GHz)
with such promising results I investigated further what is more expensive, AES encryption or SHA1 HMAC digest calculation
TCP over UDP AES-256-CBC + none ----> 51.5 mbps (after overclocking exynos 4412 from 1.7GHz to 1.92GHz)
TCP over UDP AES-128-CBC + none ----> 53.7 mbps (after overclocking exynos 4412 from 1.7GHz to 1.92GHz)
it looks like SHA1 is more expensive to calculate so I tested it with MD5 HMAC instead
TCP over UDP AES-128-CBC + MD5 ----> 51.7 mbps (after overclocking exynos 4412 from 1.7GHz to 1.92GHz)
so I added / modified this in my config in 1st post
cipher AES-128-CBC
auth MD5
tun-mtu 1500
mssfix 1400
so with these result I went to test it in person with my laptop (Intel SU7300)
when I booted into Ubuntu 14.04 64-bit and openvpn 2.3.4 compiled from sources and tested with iperf I was getting the same results as above
so the conclusion is that VPN delivers :twisted:
I went to test it in Windows 7 Professional x64 and openvpn 2.3.4 64-bit
with the same iperf commands I was getting ~35mbps and was quite surprised
so I rebooted back to Ubuntu to verify if something is wrong with the network or with windows
sure enough, ubuntu and VPN delivered ~50mbps in one direction and after switching client/server between each other ~59mbps in opposite direction
back to windows and iperf still showing ~35mbps
Y:\TMP\iperf>iperf.exe -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
the default window size of 64KB seems as either a lie or something is seriously wrong, because after manually specifying 64KB window size
Y:\TMP\iperf>iperf.exe -s -w 64k
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte
------------------------------------------------------------
speeds were quite close to what linux delivered
atheros AR8132 and not excellent drivers (compared to Intel NICs) probably also contribute to a bit lower speeds
so to sum it up, I am getting the performance I wanted
I will test application performance later and more thoroughly, as application speed (samba, ftp) did not get anywhere near to what iperf measured
thanks for your replies and suggestions