Eu diria que uma CPU Atom irá lidar com 100mbit de tráfego OpenVPN. Sob carga, você pode achar que um Atom introduzirá um pouco mais de latência do que uma CPU mais rápida, mas isso provavelmente não será significativo quando considerado contra a latência de links muito distantes entre o servidor e os clientes.
Alguns resultados de teste não científicos, executando dados entre meu netbook com uma CPU Atom para um servidor OpenVPN local (em uma rede de 1000mbit, mas o netbook tem apenas uma NIC de 100Mbit):
dspillett@minirant:~$ time dd if=/dev/zero bs=1024 count=1048576 | nc -q 0 192.168.43.1 3333
1048576+0 records in
1048576+0 records out
1073741824 bytes (1.1 GB) copied, 91.2072 s, 11.8 MB/s
real 1m31.227s
user 0m1.792s
sys 0m25.874s
dspillett@minirant:~$
dspillett@minirant:~$ time dd if=/dev/zero bs=1024 count=1048576 | nc -q 0 192.168.44.1 3333
1048576+0 records in
1048576+0 records out
1073741824 bytes (1.1 GB) copied, 113.082 s, 9.5 MB/s
real 1m53.107s
user 0m1.468s
sys 0m15.337s
dspillett@minirant:~$
onde 192.168.43.1 é o servidor visto apenas através da rede local e 192.168.44.1 é a mesma máquina vista através de um link OpenVPN através dessa rede. A VPN está em modo de ponte, usando uma conexão baseada em UDP.
htop mostrou que a CPU foi taxada mais durante o teste de VPN do que as contagens de user + sys de time
indicam porque time
está contando apenas a atividade de CPU de dd
e não as VPNs. Ele mostrou cpu0 em ~ 70% e cpu1 em ~ 30% durante o teste, o que sugere que a CPU está próxima do limite que pode transferir via OpenVPN naquele teste (que Atom era single core, mas com hyperthreading) - embora ainda gerencie para embaralhar a 9,5Mbyte / seg.
Como uma indicação da latência adicionada pela VPN (que será uma combinação de sobrecarga de dados de criptografia de trabalho da CPU e sobrecarga do método de encapsulamento), executando ping com pacotes pequenos (padrão, carga de 56 bytes):
--- 192.168.43.1 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 8997ms
rtt min/avg/max/mdev = 0.138/0.166/0.183/0.015 ms
--- 192.168.44.1 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 8998ms
rtt min/avg/max/mdev = 0.544/0.614/0.860/0.091 ms
e maiores (carga útil de 2048 bytes):
--- 192.168.43.1 ping statistics ---
10 packets transmitted, 10 received, 0% packet los
rtt min/avg/max/mdev = 0.514/0.521/0.531/0.021 ms
--- 192.168.44.1 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9011ms
rtt min/avg/max/mdev = 0.710/0.997/1.437/0.173 ms
Obviamente, você obterá resultados diferentes com a VPN lidando com várias conexões exibindo padrões de tráfego do mundo real, portanto você mesmo poderá realizar alguns testes mais detalhados. Você pode ser capaz de extrair mais com alguns ajustes - meu conjunto OpenVPN está praticamente rodando em padrões fora da caixa.