man sk98lin (Fichiers spéciaux) - Pilote Gigabit Ethernet v6.21 pour Marvell/SysKonnect.

NOM

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

SYNOPSIS

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

DESCRIPTION

sk98lin est le pilote Gigabit Ethernet pour les cartes coupleurs réseau de Marvell et SysKonnect. Il supporte les adapteurs 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 soit attaché à une ou plusieurs cartes coupleur et que le système de fichiers /proc soit monté sur votre système, un fichier statistique dédié est 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]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 :

VLANc : http://www.candelatech.com/~greear/vlan.html

Link Aggregationc : http://www.st.rim.or.jp/~yumo



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 A d'une carte coupleur. Il est seulement valide pour les coupleurs cuivre de Yukon. Les valeurs possibles sont : 10, 100, 1000 ou AutoAuto 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 AutoAuto 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 SenseOn est la valeur par défaut. Le mode Sense détecte automatiquement si le partenaire du lien supporte 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, Offou SenseOn est la valeur par défaut. Le mode Sense détecte automatiquement si le partenaire du lien supporte 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 BothBoth 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 supporte 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 BothBoth 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 supporte 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 rapporte pendant l'autonégociation. Les valeurs possibles sont : Sym, SymOrRem, LocSend ou NoneSymOrRem 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 rapporte pendant l'autonégociation. Les valeurs possibles sont : Sym, SymOrRem, LocSend ou NoneSymOrRem 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 SlaveAuto 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ée à 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 SlaveAuto 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ée à 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 varaible 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 --------+-------------------------------------------

Autoc | Both On SymOrRem Auto Auto

100FDc | Full Off None Auto 100

100HDc | Half Off None Auto 100

10FDc | Full Off None Auto 10

10HDc | 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 ex. 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 maximum 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 DynamicNone 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 apparait 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 quelque 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 fixée 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 blinder 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écroit (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, par conséquent, entraine une utilisation importante de la 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 contre-partie à l'utilisation de la modération d'interruption est une augmentation de la durée de rotation (Ndt : RTT = round-trip-time), 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 choisi avec soin. Au premier coup d'oeil, choisir une très longue durée de modération (par ex. 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 BA est la valeur par défaut.
RlmtMode=i,j,...
RLMT surveille l'état du port. Si le lien du port actif échoue, RLMT bascule immédiatement sur le lien d'attente. Le lien virtuel est maintenu aussi longtemps qu'au moins un des liens « physiques » soit rétabli. Ce paramètre déclare comment RLMT doit surveiller les ports. Les valeurs possibles sont : CheckLinkState, CheckLocalPort, CheckSeg ou DualNetCheckLinkState 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 paqueets 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 qui a été configuré 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]etleportBcomme eth[x+1]. Les deux ports peuvent être utilisé 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 statistique d'une interface particulière d'une carte coupleur. Il contient des informations génériques sur la carte coupleur plus un résumé détaillé de tous les compteurs de transmission et de réception.
/usr/src/linux/Documentation/network/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

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

AUTEURS

Ralph Roesler - rroesler@syskonnect.de

Mirko Lindner - mlindner@syskonnect.de

VOIR AUSSI

TRADUCTION

Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 14 décembre 2005.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=en man 4 sk98lin ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.