TL;DR: un pcengines APU 1D sait router, via openvpn
chiffré, 76Mbps ou 100kpps
Router 100Mbps dans un VPN, pas si simple ?
Comme d'autres FAI de la fédération, nous utilisons, chez
FAImaison, des montages où un client VPN « reçoit » un
bloc d'adresses IP au travers d'un VPN pour ensuite assigner ces adresses sur
son réseau local.
Ce montage, qui permet de nettoyer et partager une
connexion support est explicité sur
le wiki de tetaneutral.net.
J'ai eu l'occasion de voir cette configuration fonctionner :
Dans les deux cas, la connexion support était un ADSL, inférieur à 18Mbps, et
la connexion VPN n'était pas un facteur limitant.
Se pose aujourd'hui la question de router 100Mbps via un montage similaire
chez FAImaison. Quelques posts de ci
de là
laissent entendre qu'il faudra un peu de puissance CPU (pour le VPN) et une
carte réseau décente (pour le routage de nombreux petits paquets).
Ces contraintes écartent de fait les machines comme le
raspberry pi, le
banana pi,
ou la
LIME1.
Souhaitant tout de même une machine sobre en énergie, FAImaison a fait
l'acquisition d'un APU.1D de chez
pcengines (~180€).
Benchmarks
J'ai repris
le protocole que Baptiste avait établi
pour cadrer mes tests. Sans être parfait (quelques estimations dans les
calculs), il permet de mesurer les débits atteignables (en Mbps et en PPS)
avec un équipement logiciel et matériel raisonnable.
Afin de ne pas fausser les résultats, l'autre bout du tunnel VPN était monté
par une machine dont le CPU
outrepasse largement
celui de l'APU. J'ai mis en ligne les configuratinos serveur et client.
Les résultats sont les suivants (cf résultats bruts) :
Techno |
Version |
Packet size (MSS) |
Débit Mbps (out/in) |
pps (out/in) |
Charge cpu routeur (out/in) |
Sans VPN |
linux 3.16.0 |
1448 |
929 / 916 |
672k / 663k |
7% / 7% |
112 |
52 / 94 ¹ |
492k / 882k |
22% / 70% |
OpenVPN (sans chiffrement) |
2.3.4 |
1370 |
139 / 128 |
103k / 95k |
100% / 91% |
112 |
16.3 / 15.3 |
152k / 143k |
97.5% / 90% |
OpenVPN (BF-CBC) |
2.3.4 |
1354 |
76 / 76.3 |
59k / 59k |
100% / 100% |
112 |
11.4 / 11.5 |
107k / 107k |
100% / 100% |
¹ Résultat étrangement asymétrique, mais reproductible chez moi :-/
Conclusion : c'est… presque bon.
Au regard des mesures effectuées, le chiffrement semble être l'actuel
facteur limitant. Celui-ci étant souhaité, l'APU ne permet de router « que »
76Mbps.
Parmi les pistes prometteuses qui me font voir d'un bon œil cette conclusion en
demi-teinte :
Parmi les pistes rejetées :
D'autres idées ?
En l'état, je pense que ces 76Mbps feront l'affaire, en attendant l'arrivée de
chacha dans openssl.
<3
À tous les copains issus de FAImaison,
tetaneutral.net et d'autres assos de la
FFDN qui ont apporté leur eau au moulin.
commentaires