I's possible compile NSS driver with support only for hardware encryption ?
it's very low speeds for IPQ8064/8065 CPU.
Today I tested Linksys EA8500 (same hardware, as in your R7800, but CPU 1.4Ghz instead of your 1.7GHz ),
with OpenWRT 18.06.1 ,
default settings + light tuning (net buffers).
static address, NAT, 2 PC (1st in LAN, 2nd in WAN),
port forwarding (for tests in both directions) for Iperf port.
Few simple rules in firewall (for ssh, ipsec)
Iperf, ftp. (ftp test use passive ftp mode.)
Iperf (tcp, 2 streams, 250K buffers) :
(WAN-LAN, ~~ same for LAN-WAN)
without software offloading,
default settings for CPU governor & power management :
540-560 Mbits/sec. (~70-80 %sirq)
with software offloading,
default settings for CPU governor & power management :
635-650 Mbits/sec. (but less %sirq)
without any software offloading,
optimized settings for CPU governor & power management :
870-900 Mbits/sec. (~50-65 %sirq)
and 900 Mbits/sec. isn't a 100% load - router may more speed (for example, in duplex).
ftp, 1 stream , without any software offloading, in WAN<->LAN (both directions) ,
default settings for CPU governor & power management :
65-70 Mbytes/sec.
optimized settings for CPU governor & power management :
95-103 Mbytes/sec.
Next test : routing disabled, only WiFi AP, speed is limited by speed of WAN channel to other router (100/100 Mbits).
Even for this light load download to wifi client was ~90 in both cases, but upload was worse for default settings for CPU governor.
optimized settings for CPU governor & power management :
- settings for ondemand scheduler:
35 for /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
(for up_threshold =30 or 40 I not detect any difference.)
10 for /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor
- or set performance scheduler/governor , no additional settings.
Conclusion :
Settings for CPU governor & power management is
very important for this CPU for hi-speed channels.
Default settings for CPU governor & power management in OpenWRT 18.06.1 (and 17.01.xx too ) is very poor for any router, based on IPQ80xx or any other CPU with advanced power&frequency management .
Yes, I know that these numbers also are in many other "stock kernels", but it's not for routers&firewalls ! ( and not for many more other specific devices)