A.3. Paramètres Ethernet

ImportantImportant
 

De nos jours, la plupart des cartes d'interface réseau basées sur Ethernet (ou NIC) ne nécessitent pas de paramètres de module pour modifier les paramétrages. Ils peuvent par contre ê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. Les paramètres de module peuvent être affichés à l'aide de la commande modinfo.

NoteRemarque
 

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

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 RTL8139 Fast Ethernet chipsets.8139too.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

Il est possible d'utiliser plusieurs cartes Ethernet sur un seul ordinateur. Pour chaque carte, il doit exister une ligne alias, et éventuellement une ligne options, pour chaque carte dans le fichier /etc/modules.conf. Reportez-vous au chapitre intitulé Modules noyau du Guide d'administration système de Red Hat Enterprise Linux pour obtenir de plus amples informations sur le sujet.

Pour obtenir davantage d'informations sur l'utilisation de multiples cartes Ethernet, consultez le document intitulé Linux Ethernet-HOWTO disponible en ligne et en anglais à l'adresse suivante : http://www.redhat.com/mirrors/LDP/HOWTO/Ethernet-HOWTO.html.

A.3.2. Module de liaison de canaux

Red Hat Enterprise Linux permet aux administrateurs de lier des NIC sur un seul canal en utilisant le module noyau de liaison (bonding) et une interface réseau spéciale appelée interface de liaison de canaux. La liaison de canaux permet à deux interfaces réseau ou plus, d'agir en tant qu'une seule, augmentant ainsi la largeur de bande et offrant de la 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 de l'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 ainsi qu'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 connecté 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 surveillant les messages du noyau pour reprérer toute indication d'erreur.

La commande /sbin/insmod est exécutée selon 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 dont les éléments sont séparés les uns des autres par un espace.

Une fois convaincu qu'il n'y a pas d'erreurs et après avoir vérifié la performance de l'interface de liaison, ajoutez les paramètres appropriés du module bonding dans /etc/modules.conf.

La liste ci-dessous 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 les suivants :

    • 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 interface disponible.

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

    • 2 — Définit une politique XOR (exclusive-or) pour la tolérance aux pannes et la répartition de charge. En utilisant cette méthode, l'interface établit la correspondance entre l'adresse MAC des requêtes entrantes et l'adresse MAC de l'une 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 diffusion 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étrages de vitesse et de duplex. Transmet et reçoit sur tous les esclaves dans le groupe actif. Requiert un interrupteur conforme à la norme 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 actuelle sur chaque interface esclave. Le trafic entrant est reçu par l'esclave actuel. Si l'esclave de réception échoue, un autre esclave prend le relais de son adresse MAC.

    • 6 — 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ée par négociation ARP.

  • miimon= — Spécifie (en millisecondes) la fréquence de contrôle du lien MII. Cette option est utile si une 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 connecté 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, tel que eth0 et non pas par l'interface bond. Si MII est pris en charge, la commande renvoie l'extrait suivant :

    Link detected: yes

    Si une interface de liaison est utilisée à des fin de haute disponibilité, le module de chaque NIC doit prendre en charge MII.

    Le réglage de la valeur sur 0 (la valeur par défaut) désactive cette fonction. Lors de la configuration de ce paramètre, un bon point de départ est la valeur 100.

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

  • updelay= — Spécifie (en millisecondes) la durée d'attente avant qu'un lien soit activé. La valeur doit être un multiple de la valeur spécifiée dans le paramètre miimon.Par défaut, la valeur étant réglée sur 0, le paramètre est désactivé.

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

    Si ce paramétrage est utilisé tout en étant en mode mode 0 ou 2 (les deux modes de répartition de charge), le commutateur réseau doit être configuré pour distributer les paquets uniformément sur toutes les NIC. Afin d'obtenir de plus amples informations sur ce sujet, consultez le document /usr/share/doc/kernel-doc-<kernel-version>/Documentation/networking/bonding.txt.

    Par défaut, la valeur étant réglée sur 0, ce paramètre est désactivé.

  • 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 dont les éléments sont séparés les uns des autres par une virgule.

  • primary= — Spécifie le nom de l'interface, telle que eth0, du périphérique primaire. Le périphérique primaire dit primary représente la première des interfaces de liaison devant être utilisées et n'est pas abandonnée à moins qu'elle n'é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.

    Ce paramétrage est seulement valide lorsque l'interface de liaison est en mode active-backup. Consultez le document /usr/share/doc/kernel-doc-<kernel-version>/Documentation/networking/bonding.txt pour obtenir davantage d'informations.

  • multicast= — Spécifie une valeur entière pour le type de prise en charge de multi-diffusion désiré.

    Les valeurs acceptables pour ce paramètre sont les suivantes :

    • 0 — Désactive la prise en charge de la multi-diffusion.

    • 1 — Active la prise en charge de la multi-diffusion, mais seulement sur l'esclave activé.

    • 2 — Active la prise en charge de la 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 lorsqu'un lien ne peut être établi avec succès.

Consultez le document suivant :

/usr/share/doc/kernel-doc-<kernel-version>/Documentation/networking/bonding.txt

pour obtenir des instructions détaillées sur la liaison d'interfaces.