A.3. Paramètres Ethernet

ImportantImportant
 

De nos jours, la plupart des cartes d'interface réseau basées sur Ethernet (NIC) ne nécessitent pas de paramètres de module pour modifier la configuration. Ils peuvent être configurés à l'aide de ethtool ou de mii-tool. Les paramètres de module ne devraient être ajustés que si ces outils ne fonctionnent pas.

Pour de plus amples informations sur l'utilisation de ces outils, reportez-vous aux pages de manuel relatives à ethtool et mii-tool.

MatérielModuleParamètres
3Com EtherLink PCI III/XL Vortex (3c590, 3c592, 3c595, 3c597) Boomerang (3c900, 3c905, 3c595)3c59x.o

full_duplex=
0 est actif
1 est inactif

>RTL8139, SMC EZ Card Fast Ethernet, cartes RealTek utilisant RTL8129 ou jeu de puces RTL8139 Fast Ethernet8139too.o 
Pilote Intel Ether Express/100e100.o

e100_speed_duplex=X
If X =
0 = autodetect speed and duplex
1 = 10Mbps, half duplex
2 = 10Mbps, full duplex
3 = 100Mbps, half duplex
4 = 100Mbps, full duplex

Intel EtherExpress/1000 Gigabite1000.o 
Pilote Intel i82557/i82558 PCI EtherExpressProeepro100.o 
NatSemi DP83815 Fast Ethernetnatsemi.o 
AMD PCnet32 et AMD PCnetPCIpcnet32.o 
SIS 900/701G PCI Fast Ethernetsis900.o 
ThunderLANtlan.o 
Cartes Ethernet PCI Digital 21x4x Tulip SMC EtherPower 10 PCI(8432T/8432BT) SMC EtherPower 10/100 PCI(9332DST) DEC EtherWorks 100/10 PCI(DE500-XA) DEC EtherWorks 10 PCI(DE450) DEC QSILVER's, Znyx 312 etherarray Allied Telesis LA100PCI-T Danpex EN-9400, Cogent EM110tulip.oio=io_port
Cartes PCI Fast Ethernet VIA Rhine PCI avec soit VIA VT86c100A Rhine-II PCI ou 3043 Rhine-I D-Link DFE-930-TX PCI 10/100via-rhine.o 

Tableau A-2. Paramètres de modules Ethernet

A.3.1. Utilisation de plusieurs cartes Ethernet

Vous pouvez utiliser plusieurs cartes Ethernet dans un ordinateur. Pour chaque carte, vous devez simplement ajouter des lignes alias (et éventuellement options pour chaque carte dans le fichier /etc/modules.conf. Reportez-vous au chapitre intitulé Modules de noyau du Guide d'administration système de Red Hat Enterprise Linux pour obtenir de plus amples informations à ce sujet.

Pour plus d'informations sur l'utilisation de plusieurs cartes Ethernet, consultez la section Linux Ethernet-HOWTO en ligne à l'adresse suivante : http://www.redhat.com/mirrors/LDP/HOWTO/Ethernet-HOWTO.html.

A.3.2. Le module de liaison de canaux

Red Hat Enterprise Linux permet aux administrateurs de lier des NIC sur un seul canal en utilisant le module de noyau bonding et une interface réseau spéciale appelée interface de liaison de canaux. La liaison de canaux permet à plusieurs interfaces réseau d'agir en tant qu'une seule, en augmentant simultanément la largeur de bande et en offrant une redondance.

Afin de lier plusieurs interfaces réseau, l'administrateur doit effectuer les étapes suivantes :

  1. Ajoutez la ligne suivante dans /etc/modules.conf :

    alias bond<N> bonding

    Remplacez <N> par le numéro d'interface, comme 0. Pour chaque interface de liaison de canaux configurée, une entrée correspondante doit exister dans /etc/modules.conf.

  2. Configurez une interface de liaison de canaux comme l'explique la Section 8.2.3.

  3. Afin d'accroître la performance, ajustez les options de module disponibles pour identifier les combinaisons qui fonctionnent le mieux. Faites particulièrement attention aux commandes miimon et arp_interval et aux paramètres de arp_ip_target. Reportez-vous à la Section A.3.2.1 afin d'obtenir une liste des options disponibles.

  4. Après avoir testé le module, ajoutez vos options de modules préférées dans le fichier /etc/modules.conf.

A.3.2.1. Directives du module bonding

Avant d'en finir avec les paramètres du module bonding, il est bon de tester ceux qui fonctionnent le mieux. Pour ce faire, ouvrez une invite du shell en tant que super-utilisateur et saisissez la commande suivante :

tail -f /var/log/messages

Ouvrez une autre invite de shell et utilisez la commande /sbin/insmod pour charger le module bonding avec différents paramètres tout en gardant un oeil sur les messages du noyau en cas d'erreur.

La commande /sbin/insmod est exécutée dans le format suivant :

/sbin/insmod bond<N> <parameter=value> 

Remplacez <N> par le numéro de l'interface de liaison. Remplacez <parameter=value> par une liste de paramètres pour l'interface séparés par un espace.

Une fois que vous êtes sûr qu'il n'existe pas d'erreurs et après avoir vérifié la performance de l'interface de liaison, ajoutez les paramètres du module bonding appropriés dans /etc/modules.conf.

La liste suivante répertorie les paramètres disponibles pour le module bonding :

  • mode= — Spécifie l'une des quatre politiques autorisées pour le module bonding. Les valeurs acceptables pour ce paramètre sont :

    • 0 — Définit une politique round-robin pour la tolérance aux pannes et la répartition de charge. Les transmissions sont reçues et envoyées en séquence sur chaque interface esclave liée en commençant par la première disponible.

    • 1 — Définit une politique active-backup pour la tolérance aux pannes. Les transmissions sont reçues et envoyées au moyen de la première interface esclave liée disponible. Une autre interface esclave liée est seulement utilisée sir l'interface esclave liée active échoue.

    • 2 — Définit une politique XOR (ou exclusif) pour la tolérance aux pannes et la répartition de charge. En utilisant cette méthode, l'interface fait correspondre l'adresse MAC des requêtes entrantes à l'adresse MAC de l'un des NIC esclaves. Une fois ce lien établi, les transmissions sont envoyées séquentiellement en commençant par la première interface disponible.

    • 3 — Définit une politique de transmission pour la tolérance aux pannes. Toutes les transmissions sont envoyées sur toutes les interfaces esclaves.

    • 4 — Définit une politique d'agrégats de liens dynamiques IEEE 802.3ad. Crée des groupes d'agrégats qui partagent les mêmes paramètres de vitesse et de duplex. Transmet et reçoit sur tous les esclaves dans le groupe actif. Requiert un interrupteur conforme 802.3ad.

    • 5 — Définit une politique TLB (Transmit Load Balancing) pour la tolérance aux pannes et la répartition de charge. Le trafic sortant est distribué selon la charge courante sur chaque interface esclave. Le trafic entrant est reçu par l'esclave courant. Si ce dernier échoue, un autre esclave prend le relais de son adresse MAC.

    • 0 — Définit une politique ALB (Active Load Balancing) pour la tolérance aux pannes et la répartition de charge. Inclut la répartition de charge de transmission et de réception pour le trafic IPV4. La répartition de charge de réception est effectué par négociation ARP.

  • miimon= — Spécifie (en millisecondes) la fréquence de contrôle de lien MII. Cette option est utile si la haute disponibilité est requise vu que MII est utilisé pour vérifier que le NIC est bien activé. Pour vérifier que le pilote de ce NIC particulier supporte l'outil MII, saisissez la commande suivante en tant que super-utilisateur :

    ethtool <interface-name> | grep "Link detected:"

    Dans cette commande, remplacez <interface-name> par le nom de l'interface du périphérique, comme eth0, et non pas l'interface bond. Si MII est pris en charge, la commande devrait renvoyer :

    Link detected: yes

    Si il utilise une interface de liaison pour la haute disponibilité, le module de chaque NIC doit prendre en charge MII.

    Le fait de régler la valeur sur 0 (la valeur par défaut) désactive cette fonction. Lors de sa configuration, il est bon de régler ce paramètre sur 100.

  • downdelay= — Spécifie (en millisecondes) la durée d'attente après l'échec d'un lien avant la désactivation de ce lien. La valeur doit être un multiple de la valeur spécifiée dans le paramètre miimon. La valeur est réglée sur 0 par défaut, ce qui la désactive.

  • updelay= — Spécifie (en millisecondes) la durée d'attente avant l'activation d'un lien. La valeur doit être un multiple de la valeur spécifiée dans le paramètre miimon. La valeur est réglée sur 0 par défaut, ce qui la désactive.

  • arp_interval= — Spécifie (en millisecondes) la fréquence du contrôle ARP.

    Si cette configuration est utilisée tout en étant en mode mode 0 ou 2 (lesdeux modes de répartition de charge), le commutateur réseau doit être configuré pour distributer les paquets sur tous les NIC. Afin d'obtenir de plus amples informations sur ce sujet, reportez-vous au fichier /usr/src/linux-2.4/Documentation/networking/bonding.txt[1].

    La valeur est réglée sur 0 par défaut, ce qui la désactive.

  • arp_ip_target= — Spécifie l'adresse IP cible des requêtes ARP lorsque le paramètre arp_interval est activé. Jusqu'à 16 adresses IP peuvent être spécifiées dans une liste délimitée par des virgules.

  • primary= — Spécifie le nom de l'interface, comme eth0, du périphérique primaire. Le périphérique primary est le premier des interfaces de liaison à être utilisées et n'est pas abandonné à moins qu'il échoue. Cette configuration est particulièrement utile lorsqu'un NIC de l'interface de liaison est plus rapide et donc, capable de traiter un charge plus importante.

    Cette configuration est seulement valide lorsque l'interface de liaison est en mode active-backup. Reportez-vous au fichier /usr/src/linux-2.4/Documentation/networking/bonding.txt[1] afin d'obtenir davantage d'informations.

  • multicast= — Spécifie un valeur entière pour le type de support de multi-diffusion désiré.

    Les valeurs acceptables pour ce paramètre sont :

    • 0 — Désactive le support de multi-diffusion.

    • 1 — Active le support de multi-diffusion, mais seulement sur l'esclave activé.

    • 2 — Active le support de multi-diffusion sur tous les esclaves (valeur par défaut).

ImportantImportant
 

Il est essentiel que soit les paramètres de arp_interval et arp_ip_target soit ceux de miimon soient spécifiés. Dans le cas contraire, la performance réseau peut dégénérer dans le cas de l'échec d'un lien.

Reportez-vous au fichier /usr/src/linux-2.4/Documentation/networking/bonding.txt[1] afin d'obtenir de plus amples informations sur les interfaces de liaison.

Notes

[1]

Ce document est installé avec le paquetage kernel-source.