HOWTO du routage avancé et du contrôle de trafic sous Linux | ||
---|---|---|
Précédent | Chapitre 10. Équilibrage de charge sur plusieurs interfaces | Suivant |
Rien n'est aussi simple qu'il y paraît. Les interfaces eth1 et eth2 sur les deux routeurs A et B ne doivent pas avoir la fonction de filtrage par chemin inverse activée. Dans le cas contraire, ils rejeteront les paquets destinés à des adresses autres que les leurs :
# echo 0 > /proc/net/ipv4/conf/eth1/rp_filter # echo 0 > /proc/net/ipv4/conf/eth2/rp_filter |
Il y a un sérieux problème avec le réordonnancement des paquets. Supposons que six paquets aient besoin d'être envoyés de A vers B. Par exemple, eth1 peut traiter les paquets 1, 3 et 5 et eth2 les paquets 2, 4 et 6. Dans un monde idéal, le routeur B devrait recevoir ces paquets dans l'ordre 1, 2, 3, 4, 5, 6. Mais il est plus probable que le noyau les reçoive comme ceci : 2, 1, 4, 3, 6, 5. Ce problème va perturber TCP/IP. Alors qu'il n'y a pas de problèmes pour les liens transportant différentes sessions TCP/IP, vous ne serez pas capable de regrouper plusieurs liens et obtenir par ftp un simple fichier beaucoup plus rapidement, à moins que le système d'exploitation envoyant ou recevant ne soit Linux. En effet, celui-ci n'est pas facilement perturbé par de simples réordonnancements.
Cependant, l'équilibrage de charge est une bonne idée pour de nombreuses applications.
Précédent | Sommaire | Suivant |
Équilibrage de charge sur plusieurs interfaces | Niveau supérieur | Netfilter et iproute - marquage de paquets |