On aura pas du tout les même résultats avec une carte Marvell et une carte Intel, par exemple, tout simplement parce que la carte Intel fait énormément de boulot elle-même (et que le driver est bien écrit, pas trop d'interruptions, etc).
C'est donc à prendre en compte dans les tests.
En fonction de la quantité de règles, et de la mémoire disponible, il y a des paramètres iptables à ajuster. Notamment, par défaut, les tables de conntrack sont stockées dans une table de hash dont chaque élément contient 8 entrée de conntrack. On peut beaucoup accélérer les choses en n'en stockant qu'une par hash, et en augmentant le nombre de hash utilisables (qui est calculé en fonction de la mémoire mais qui plafonne assez vite). Tout se fait à coup de sysctl et d'options de modules, voir http://www.wallfire.org/misc/netfilter_conntrack_perf.txt
Enfin, il faut prendre garde à évaluer non seulement la bande passante, mais aussi et surtout le nombre de paquets par seconde : c'est comme ça qu'on évalue les performances d'un routeur.
Dans les tests, je te suggère de prévoir plusieurs jeux de paquets (a rejouer avec tcpreplay, plusieurs fois, pour lisser les résultats et éviter les gags du genre cron qui tourne, phases de la lune, rafale de neutrinos, etc). Parmi eux, prévoir du NAT, plusieurs IP internes si possible, et plusieurs "profils" (petits paquets, gros paquets, avec ou sans fragmentation, grand nombre de connexions genre p2p...).
# Mon expérience à moi
Posté par nodens . En réponse au message Pare-feu Linux - test de charge. Évalué à 6.
On aura pas du tout les même résultats avec une carte Marvell et une carte Intel, par exemple, tout simplement parce que la carte Intel fait énormément de boulot elle-même (et que le driver est bien écrit, pas trop d'interruptions, etc).
C'est donc à prendre en compte dans les tests.
En fonction de la quantité de règles, et de la mémoire disponible, il y a des paramètres iptables à ajuster. Notamment, par défaut, les tables de conntrack sont stockées dans une table de hash dont chaque élément contient 8 entrée de conntrack. On peut beaucoup accélérer les choses en n'en stockant qu'une par hash, et en augmentant le nombre de hash utilisables (qui est calculé en fonction de la mémoire mais qui plafonne assez vite). Tout se fait à coup de sysctl et d'options de modules, voir http://www.wallfire.org/misc/netfilter_conntrack_perf.txt
Enfin, il faut prendre garde à évaluer non seulement la bande passante, mais aussi et surtout le nombre de paquets par seconde : c'est comme ça qu'on évalue les performances d'un routeur.
Dans les tests, je te suggère de prévoir plusieurs jeux de paquets (a rejouer avec tcpreplay, plusieurs fois, pour lisser les résultats et éviter les gags du genre cron qui tourne, phases de la lune, rafale de neutrinos, etc). Parmi eux, prévoir du NAT, plusieurs IP internes si possible, et plusieurs "profils" (petits paquets, gros paquets, avec ou sans fragmentation, grand nombre de connexions genre p2p...).
Mais ce genre de bench est toujours intéressant.