SK98LIN

Manuel du programmeur Linux (4)
5 août 2012
 

NOM

sk98lin - Pilote Gigabit Ethernet v6.21 pour Marvell/SysKonnect  

SYNOPSIS

insmod sk98lin.o [Speed_A=i,j,...] [Speed_B=i,j,...] [AutoNeg_A=i,j,...] [AutoNeg_B=i,j,...] [DupCap_A=i,j,...] [DupCap_B=i,j,...] [FlowCtrl_A=i,j,...] [FlowCtrl_B=i,j,...] [Role_A=i,j,...] [Role_B=i,j,...] [ConType=i,j,...] [Moderation=i,j,...] [IntsPerSec=i,j,...] [PrefPort=i,j,...] [RlmtMode=i,j,...]  

DESCRIPTION

Note : ce pilote obsolète a été retiré du noyau dans la version 2.6.26.

sk98lin est le pilote Gigabit Ethernet pour les cartes coupleurs réseau de Marvell et SysKonnect. Il supporte les adaptateurs Gigabit Ethernet compatibles SK-98xx/SK-95xx de SysKonnect et tout jeu de puces compatibles Yukon.

Lors du chargement du pilote avec insmod, les paramètres des cartes coupleur réseau devraient être déclarés comme une séquence de commandes séparées par des virgules. Si, par exemple, deux coupleurs réseau sont installés avec l'auto-négociation sur le port A du premier coupleur positionnée à ON mais le port A du second coupleur positionné à OFF, on doit entrer :


   insmod sk98lin.o AutoNeg_A=On,Off

Après que sk98lin est attaché à une ou plusieurs cartes coupleur et que le système de fichiers /proc est monté sur votre système, un fichier statistique dédié sera créé dans le répertoire /proc/net/sk98lin pour tous les ports des cartes coupleur réseau installées. Ces fichiers se nomment eth[x], où x est le numéro de l'interface qui a été affecté par le système au port dédié.

Lorsque le chargement est achevé, toute adresse IP désirée peut être affectée à l'interface eth[x] respective en utilisant la commande ifconfig(8). Cela fait que le coupleur se connecte à Ethernet et affiche un message d'état sur la console disant : « ethx: network connection up using port y » (ethx : connexion réseau établie utilisant le port y) suivi par les paramètres de connexion configurés ou détectés.

Le pilote sk98lin supporte les grandes trames (également appelées trames jumbo). L'utilisation des trames jumbo peut grandement améliorer le débit lors du transfert de grandes quantités de données. Pour activer les grandes trames, la taille de la MTU (maximum transfer unit) d'une interface doit être positionnée à une grande valeur. La valeur par défaut de la MTU est de 1500 et peut être portée à 9000 (octets). La configuration de la taille de la MTU peut être effectuée lors de l'affectation de l'adresse IP à l'interface ou plus tard, en utilisant la commande ifconfig(8) avec le paramètre mtu. Si, par exemple, eth0 a besoin d'une adresse IP et d'une taille de MTU pour grande trame, les deux commandes suivantes peuvent être utilisées :


    ifconfig eth0 10.1.1.1
    ifconfig eth0 mtu 9000

Ces deux commandes peuvent également être concaténées en une seule :


    ifconfig eth0 10.1.1.1 mtu 9000

Veuillez noter que les grandes trames ne peuvent être utilisées que si votre infrastructure réseau le permet. Cela signifie que tous les commutateurs (Ndt : switches) utilisés sur votre réseau Ethernet doivent également supporter les grandes trames. Nul doute que certains commutateurs acceptent les grandes trames, mais il est nécessaire qu'ils soient configurés en conséquence pour le permettre. La plupart du temps, leur configuration par défaut est de n'accepter que les trames standards avec une taille de MTU de 1500 (octets). En plus des commutateurs à l'intérieur du réseau, tous les coupleurs réseau qui doivent être utilisés doivent également être activés pour les trames jumbo. Si un coupleur n'est pas configuré pour recevoir de grandes trames, il les rejettera tout simplement.

Un retour à la taille standard de trame Ethernet peut être effectué en utilisant à nouveau la commande ifconfig(8) :


    ifconfig eth0 mtu 1500

Le pilote Gigabit Ethernet de Marvell/SysKonnect pour Linux est capable de supporter les réseaux locaux virtuels (VLAN) et le « Link Aggregation » conformément aux normes IEEE 802.1, 802.1q, et 802.3ad. Ces fonctionnalités ne sont disponibles qu'après l'installation des modules open source que l'on peut trouver sur Internet :

VLAN:
Link Aggregation:


Veuillez noter que Marvell/SysKonnect n'offre aucun support pour ces modules open source et n'accepte aucune responsabilité quels que soient les défaillances ou les problèmes pouvant survenir de l'utilisation de ces modules.  

Paramètres

Speed_A=i,j,...
Ce paramètre est utilisé pour configurer les possibilités de vitesse du port B d'une carte coupleur. Il est seulement valide pour les coupleurs cuivre de Yukon. Les valeurs possibles sont : 10, 100, 1000 ou Auto, où Auto est la valeur par défaut. Habituellement, la vitesse est négociée entre les deux ports pendant l'établissement du lien. Si cela échoue, un port peut être forcé à une configuration particulière avec ce paramètre.
Speed_B=i,j,...
Ce paramètre est utilisé pour configurer les possibilités de vitesse du port B d'une carte coupleur. Il est seulement valide pour les coupleurs cuivre de Yukon. Les valeurs possibles sont : 10, 100, 1000 ou Auto, où Auto est la valeur par défaut. Habituellement, la vitesse est négociée entre les deux ports pendant l'établissement du lien. Si cela échoue, un port peut être forcé à une configuration particulière avec ce paramètre.
AutoNeg_A=i,j,...
Active ou désactive l'utilisation de l'autonégociation du port A d'une carte coupleur. Les valeurs possibles sont : On, Off ou Sense, où On est la valeur par défaut. Le mode Sense détecte automatiquement si le partenaire du lien gère l'autonégociation ou non.
AutoNeg_B=i,j,...
Active ou désactive l'utilisation de l'autonégociation du port B d'une carte coupleur. Les valeurs possibles sont : On, Off ou Sense, où On est la valeur par défaut. Le mode Sense détecte automatiquement si le partenaire du lien gère l'autonégociation ou non.
DupCap_A=i,j,...
Ce paramètre indique le mode duplex à utiliser pour le port A d'une carte coupleur. Les valeurs possibles sont : Half, Full ou Both, où Both est la valeur par défaut. Ce paramètre n'est pertinent que si AutoNeg_A du port A n'est pas positionné à Sense. Si AutoNeg_A est positionné à On, les trois valeurs de DupCap_A ( Half, Full ou Both ) peuvent être déclarées. Si AutoNeg_A est positionné à Off, seules les valeurs de DupCap_A Full et Half sont permises. Ce paramètre DupCap_A est pratique si votre partenaire de lien ne gère pas toutes les combinaisons duplex possibles.
DupCap_B=i,j,...
Ce paramètre indique le mode duplex à utiliser pour le port B d'une carte coupleur. Les valeurs possibles sont : Half, Full ou Both, où Both est la valeur par défaut. Ce paramètre n'est pertinent que si AutoNeg_B du port B n'est pas positionné à Sense. Si AutoNeg_B est positionné à On, les trois valeurs de DupCap_B (Half, Full ou Both) peuvent être déclarées. Si AutoNeg_B est positionné à Off, seules les valeurs de DupCap_B Full et Half sont permises. Ce paramètre DupCap_B est pratique si votre partenaire de lien ne gère pas toutes les combinaisons duplex possibles.
FlowCtrl_A=i,j,...
Ce paramètre peut être utilisé pour configurer les possibilités de contrôle de flux que le port signale pendant l'autonégociation. Les valeurs possibles sont : Sym, SymOrRem, LocSend ou None, où SymOrRem est la valeur par défaut. Les différents modes ont les significations suivantes :


Sym = Symmetric
 les deux partenaires du lien sont autorisés à émettre des trames PAUSE
SymOrRem = SymmetricOrRemote
 les deux partenaires du lien ou bien seulement le distant sont autorisés à émettre des trames PAUSE
LocSend = LocalSend
 seul le partenaire local du lien est autorisé à émettre des trames PAUSE
None = None
 aucun partenaire du lien n'est autorisé à émettre des trames PAUSE

Veuillez noter que ce paramètre est ignoré si AutoNeg_A est positionné à Off.

FlowCtrl_B=i,j,...
Ce paramètre peut être utilisé pour configurer les possibilités de contrôle de flux que le port signale pendant l'autonégociation. Les valeurs possibles sont : Sym, SymOrRem, LocSend ou None, où SymOrRem est la valeur par défaut. Les différents modes ont les significations suivantes :

Sym = Symmetric
 les deux partenaires du lien sont autorisés à émettre des trames PAUSE
SymOrRem = SymmetricOrRemote
 les deux partenaires du lien ou bien seulement le distant sont autorisés à émettre des trames PAUSE
LocSend = LocalSend
 seul le partenaire local du lien est autorisé à émettre des trames PAUSE
None = None
 aucun partenaire du lien n'est autorisé à émettre des trames PAUSE

Veuillez noter que ce paramètre est ignoré si AutoNeg_B est positionné à Off.

Role_A=i,j,...
Ce paramètre n'est valide que pour les cartes coupleurs 1000Base-T. Pour que deux ports 1000Base-T puissent communiquer, un doit tenir le rôle du maître (fournissant l'information d'horloge) pendant que l'autre tient le rôle d'esclave. Les valeurs possibles sont : Auto, Master ou Slave, où Auto est la valeur par défaut. Habituellement, le rôle d'un port est négocié entre deux ports pendant l'établissement du lien, mais si cela échoue, le port A d'une carte coupleur peut être forcé à une configuration spécifique avec ce paramètre.
Role_B=i,j,...
Ce paramètre n'est valide que pour les cartes coupleurs 1000Base-T. Pour que deux ports 1000Base-T puissent communiquer, un doit tenir le rôle du maître (fournissant l'information d'horloge) pendant que l'autre tient le rôle d'esclave. Les valeurs possibles sont : Auto, Master ou Slave, où Auto est la valeur par défaut. Habituellement, le rôle d'un port est négocié entre deux ports pendant l'établissement du lien, mais si cela échoue, le port B d'une carte coupleur peut être forcé à une configuration spécifique avec ce paramètre.
ConType=i,j,...
Ce paramètre est une combinaison des cinq paramètres par port réunis dans un seul paramètre. Cela simplifie la configuration des deux ports d'une carte coupleur. Les différentes valeurs de cette variable reflètent les combinaisons les plus significatives des paramètres des ports. Les valeurs possibles et leur combinaison correspondante de paramètres par port sont :

ConType | DupCap   AutoNeg   FlowCtrl   Role   Speed
--------+-------------------------------------------
Auto    |  Both      On      SymOrRem   Auto   Auto

100FD | Full Off None Auto 100
100HD | Half Off None Auto 100
10FD | Full Off None Auto 10
10HD | Half Off None Auto 10
Déclarer tout autre paramètre de port avec le paramètre ConType engendrera une fusion de la configuration de ces réglages. Cela est dû au fait que les paramètres par port (par exemple Speed_A) ont une priorité plus haute que la variable combinée ConType.
Moderation=i,j,...
La modération d'interruption est utilisée pour limiter le nombre maximal d'interruptions que le pilote devra honorer. C'est-à-dire, une ou plusieurs interruptions (qui indique qu'un paquet en transmission ou réception doit être traité) sont mises en file d'attente jusqu'à ce que le pilote les traite. Lorsque les interruptions mises en file d'attente sont prêtes à être honorées, cela est déterminé par le paramètre IntsPerSec qui sera expliqué plus loin. Les modes de modération possibles sont : None, Static ou Dynamic, où None est la valeur par défaut. Les différents modes ont les significations suivantes :

None Aucune modération d'interruption n'est appliquée sur la carte coupleur. Aussi, chaque interruption en transmission ou réception est immédiatement honorée aussitôt qu'elle apparaît sur la ligne d'interruption de la carte coupleur.


Static La modération d'interruption est appliquée sur la carte coupleur. Toutes les interruptions en transmission ou réception sont mises en file d'attente jusqu'à ce que l'intervalle complet de modération prenne fin. Lorsqu'un tel intervalle de modération s'achève, toutes les interruptions mises en file d'attente sont traitées d'un seul coup, sans délai. Le terme Static reflète le fait que la modération d'interruption est toujours activée, et ce quelle que soit la charge du réseau sur une interface particulière. De plus, la durée de l'intervalle de modération a une longueur fixe qui ne peut jamais être modifiée tant que le pilote est opérationnel.


Dynamic La modération d'interruption peut être appliquée sur la carte coupleur, suivant la charge du système. Si le pilote détecte une charge système trop importante, le pilote essaie de protéger le système contre une charge réseau trop importante en activant la modération d'interruption. Si, après un certain temps, l'utilisation de la CPU décroît (ou si la charge réseau devient négligeable), la modération d'interruption est automatiquement désactivée.

La modération d'interruption devrait être utilisée lorsque le pilote doit gérer une ou plusieurs interfaces avec une charge réseau importante, laquelle entraîne --- par conséquent --- une utilisation importante du CPU. Lorsque la modération est appliquée à de telles situations de forte charge réseau, la charge de la CPU peut être réduite de 20 à 30% sur les ordinateurs lents.

Veuillez noter que la contrepartie de l'utilisation de la modération d'interruption est une augmentation du délai aller-retour (RTT), due à la mise en file d'attente et au service des interruptions à des moments de modération dédiés.

IntsPerSec=i,j,...
Ce paramètre détermine la longueur de chaque intervalle de modération d'interruption. En supposant qu'une modération d'interruption statique soit utilisée, une valeur de 2000 pour le paramètre IntsPerSec conduira à un intervalle de modération d'interruption de 500 microsecondes. Les valeurs possibles pour ce paramètre sont comprises entre 30 et 40000 (interruptions par secondes). La valeur par défaut est 2000.

Ce paramètre n'est utilisé que si une modération d'interruption statique ou dynamique a été activée sur la carte coupleur réseau. Ce paramètre est ignoré si aucune modération n'est appliquée.

Veuillez noter que la durée de l'intervalle de modération doit être choisie avec soin. Au premier coup d'œil, choisir une très longue durée de modération (par exemple, seulement 100 interruptions par seconde) semble être significatif, mais l'accroissement du délai de traitement des paquets est énorme. D'un autre coté, choisir un temps de modération très court peut compenser l'utilisation d'une modération à appliquer.

PrefPort=i,j,...
Ce paramètre est utilisé pour forcer la préférence sur l'un des deux ports A ou B (sur les coupleurs réseau à deux ports). Le port préféré est celui qui est utilisé si les deux ports A et B sont détecté comme étant pleinement fonctionnel. Les valeurs possibles sont : A ou B, où A est la valeur par défaut.
RlmtMode=i,j,...
RLMT surveille l'état du port. Si le lien du port actif est défaillant, RLMT bascule immédiatement sur le lien en attente. Le lien virtuel est maintenu aussi longtemps qu'au moins un des liens « physiques » est établi. Ce paramètre déclare comment RLMT doit surveiller les ports. Les valeurs possibles sont : CheckLinkState, CheckLocalPort, CheckSeg ou DualNet, où CheckLinkState est la valeur par défaut. Les différents modes ont les significations suivantes :

CheckLinkState Vérifie l'état du lien seulement : RLMT utilise l'état du lien rapporté par la partie matérielle du coupleur pour chacun des ports afin de déterminer si un port peut être utilisé pour tout le trafic réseau ou non.


CheckLocalPort Dans ce mode, RLMT surveille le lien réseau entre les deux ports d'un coupleur en échangeant de manière régulière des paquets entre eux. Ce mode nécessite une configuration du réseau dans lequel les deux ports sont capables de se « voir » mutuellement (c'est-à-dire qu'il ne doit pas y avoir de routeurs entre les ports).


CheckSeg Surveille le port local et la segmentation : ce mode supporte les mêmes fonctions que le mode CheckLocalPort et vérifie en plus la segmentation du réseau entre les ports. Ce mode n'est donc utilisé que si des commutateurs Gigabit Ethernet sont installés sur le réseau et ont été configurés pour utiliser le protocole « Spanning Tree ».


DualNet Dans ce mode, les ports A et B sont utilisés comme des périphériques séparés. Si vous possédez un coupleur avec deux ports, le port A devra être configuré comme eth[x] et le port B comme eth[x+1]. Les deux ports peuvent être utilisés de manière indépendante avec des adresses IP distinctes. RLMT est désactivé.

Veuillez noter que les modes RLMT CheckLocalPort et CheckLinkState sont conçus pour opérer dans des configurations où le lien réseau entre les ports d'un coupleur existe. De plus, ils ne sont pas conçus pour fonctionner avec des coupleurs connectés dos-à-dos, c.-à-d. directement.

 

FICHIERS

/proc/net/sk98lin/eth[x]

Le fichier de statistiques d'une interface particulière d'une carte coupleur contient des informations génériques sur la carte coupleur, ainsi qu'un résumé détaillé de tous les compteurs de transmission et de réception.
/usr/src/linux/Documentation/networking/sk98lin.txt

C'est le fichier README du pilote sk98lin. Il contient un guide pratique d'installation détaillé et décrit tous les paramètres du pilote. Il indique également les problèmes courants et fournit leurs solutions.
 

BOGUES

Signalez les bogues à linux@syskonnect.de (Ndt : en anglais !)  

VOIR AUSSI

ifconfig(8), insmod(8), modprobe(8)  

COLOPHON

Cette page fait partie de la publication 3.66 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.  

TRADUCTION

Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Alain Portal <http://manpagesfr.free.fr/> (2004-2006). Simon Paillard et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».


 

Index

NOM
SYNOPSIS
DESCRIPTION
Paramètres
FICHIERS
BOGUES
VOIR AUSSI
COLOPHON
TRADUCTION

This document was created by man2html, using the manual pages.
Time: 21:52:42 GMT, July 12, 2014