Benchmarks IPsec

Introduction

Voici les résultats de quelques tests de performance d'IPsec sur ma Soekris.

Méthodologie

Les tests sont réalisés entre ma Soekris et mon portable reliés par un cable croisé RJ45 en Ethernet. Mon portable fait tourner un petit serveur TCP et ma Soekris un petit client TCP qui envoie en continue autant de données qu'il peut vers le serveur (le code source des deux programmes est disponible en bas de cette page).

IPsec est utilisé en mode transport et uniquement dans le sens Soekris vers mon portable. Les paquets dans l'autre direction ne subissent aucune modification.

Les résultats indiqués sont des moyennes sur trois essais. Durant chaque essai, 30 Mo de données sont transmis entre la Soekris et mon portable.

Résultats

Sans IPsec

Sans IPsec, j'arrive à un débit de 1385 ko/s. Cette valeur, faible pour un lien Ethernet 100 MB/s, est due à ma carte Ethernet PCMCIA de mon portable. En effet, c'est une carte 16 bits ce qui limite fortement le débit maximum qu'elle peut envoyer au système.

En conséquence, il ne faut pas voir les résultats suivants sous un angle de comparaison avec/sans IPsec mais plutôt comme des mesures du débit maximum que l'on peut obtenir avec IPsec.

Mise à jour (25/05/05) : Entre ma Soekris et mon Mac, j'obtiens dans les même conditions 3962 ko/s (31,7 Mb/s) avec l'interface filaire (donc je pense que c'est le maximum que l'on peut obtenir de la Soekris en Ethernet) et 1034 ko/s (8,27 Mb/s) sur l'interface Wifi 802.11 b/g. J'ai refait quelques mesures avec le logiciel Iperf qui indique des résultats similaires.

AH (Authentification) uniquement

Algorithme Taille clé (bits) Vitesse (ko/s)
HMAC-MD51281317
HMAC-SHA11601276
HMAC-SHA2-2562561146

ESP (Confidentialité) uniquement

Algorithme Taille clé (bits) Vitesse (ko/s)
DES-CBC64731
AES-CBC1281017
Blowfish-CBC128870
Twofish-CBC128905
3DES-CBC192318
AES-CBC192968
Blowfish-CBC192870
Twofish-CBC192890
AES-CBC256925
Blowfish-CBC256880
Twofish-CBC256907

Rappel : Utiliser la confidentialité (ESP) sans l'authentification/intégrité (AH) est fortement déconseillé...

Quelques remarques :

AH + ESP

AH ESP Vitesse (ko/s)
HMAC-SHA1 (160)AES-CBC (128)728

Donc dans une configuration typique d'IPsec, on obtient un débit maximal de 728 ko/s soit environ 6 Mb/s, ce qui est inférieur à la vitesse maximale que l'on peut obtenir sur l'ADSL (ADSL Débit Max). Donc si l'on veut utiliser IPsec (par exemple pour proteger une liaison Wifi) et sa connexion ADSL au maximum, il faut soit dégrader les algorithmes utilisés par IPsec (utiliser MD5 à la place de SHA par exemple) ou utiliser une carte d'accéleration cryptographique comme la vpn1411.

Fichiers