Page suivante Page précédente Table des matières

2. Quelle carte dois-je acheter pour Linux?

La réponse à cette question dépend fortement de ce que vous escomptez faire avec votre connexion réseau, et de la quantité de trafic que vous verrez.

Si vous escomptez qu'un utilisateur isolé effectue occasionnellement une session FTP ou une connexion WWW, alors une vieille carte 8 bits vous rendra probablement heureux.

Si vous avez l'intention de mettre en place un serveur, et que vous exigez que la surcharge processeur liée à la réception et à la transmission des paquets Ethernet reste la plus basse possible, vous devrez certainement considérer une des cartes PCI les plus récentes, comportant la puce 21040 de DEC, ou la puce PCnet-PCI d'AMD.

Si vous vous trouvez au milieu de ces deux extrèmes, alors n'importe quelle carte ISA 16 bits possédant un pilote stable vous conviendra.

2.1 Quels sont les pilotes stables, alors?

Parmi les cartes ISA 16 bits, les pilotes suivants sont très mûrs, et vous ne devriez pas avoir de problèmes si vous achetez une carte qui utilise ces pilotes:

SMC-Ultra/EtherEZ, WD80x3, 3c509, 3c503/16, Lance, NE2000.

Ceci ne signifie pas que tous les autres pilotes sont instables. Il se trouve juste que ceux-ci sont les plus anciens et les plus utilisés des pilotes Linux, ce qui en fait le choix le plus sûr.

Notez que certaines cartes-mères pas chères peuvent avoir des problèmes avec la maîtrise de bus que les cartes Lance réalisent, et que certains clones NE2000 pas chers ont des difficultés à être détectés au démarrage.

En ce qui concerne les cartes PCI, les cartes PCnet-PCI qui utilisent le pilote Lance sont un choix sûr (en dehors des cartes Boca, car elles comportent des vices matériels). L'Allied Telsyn AT2450 est une implémentation de la puce PCnet-PCI qui est réputée pour son bon fonctionnement.

Le pilote DEC 21040 `tulip' et le pilote 3c59x `vortex' sont des pilotes relativement nouveaux, mais qui ont déjà prouvé qu'ils sont pratiquement stables.

2.2 Cartes 8 bits contre cartes 16 bits

Vous ne pourrez certainement plus acheter une carte Ethernet ISA 8 bits de nos jours, mais vous en trouverez encore plein dans les années qui viennent sur les marchés aux puces informatiques ou autres braderies, et ce à des prix vraiment très bas. Cela les rend idéales pour les systèmes ``Ethernet-à-la-maison''.

Des cartes 8 bits qui donneront de bonnes performances pour une utilisation faible à modérée sont la wd8003, la 3c503 et la ne1000. La 3c501 donnera des résultats faibles, et ces reliques antédiluviennes (12 ans!) des jours du XT sont à éviter.

Le canal de données 8 bits n'atténue pas trop les performances, puisque vous pouvez encore espérer obtenir 500 à 800 Ko/s en vitesse de transfert FTP pour une carte 8 bits wd8003 (sur un bus ISA rapide) à partir d'un serveur rapide. Et si la plupart de votre trafic réseau est à destination de sites éloignés, le goulot d'étranglement se situera ailleurs sur le chemin, la seule différence de vitesse que vous noterez se produisant lorsqu'il y a de l'activité sur votre réseau local.

2.3 Cartes 32 bits / VLB / PCI

Les pilotes de cartes Ethernet 32 bits sont peu nombreux parce que les cartes Ethernet 32 bits sont peu nombreuses. Les cartes Ethernet 32 bits sont peu nombreuses parce qu'un réseau à 10 Mbit/s ne justifie pas l'écart de prix important pour accéder à l'interface 32 bits. Mais maintenant que les réseaux 100 Mbit/s deviennent plus courants, les choses changent néanmoins.

Consultez  E/S programmées contre... pour savoir pourquoi avoir une carte Ethernet 10 Mbit/s sur un bus ISA à 8 MHz ne constitue pas un goulot d'étranglement. Même si le fait que la carte Ethernet se trouve sur un bus rapide ne signifie pas que les transferts sont plus rapides, cela signifiera souvent une surcharge processeur moins importante, ce qui est bon pour les systèmes multi-utilisateurs.

AMD offre les puces 32 bits PCnet-VLB et PCnet-PCI. Consultez  AMD PCnet-32 pour plus d'informations sur la version 32 bits de la puce LANCE / PCnet-ISA.

La puce 21040 PCI de DEC est une autre option (voir  DEC 21040) pour les utilisateurs de puissance. De nombreux fabricants proposent des cartes basées sur cette puce, et les prix de ces cartes ``sans-nom'' sont généralement bas.

Les cartes PCI `Vortex' et `Boomerang' de 3Com constituent aussi une autre option, et le prix reste correct si vous pouvez en obtenir une tant que leur proposition d'évaluation dure

(NDT: Je n'en ai jamais entendu parlé en France, en tout cas pas depuis le printemps 97.)

Des fabricants de clones ont commencé à produire des clones PCI de ne2000, basés sur une puce RealTek ou une puce Winbond. Le pilote Linux ne2000 des noyaux 2.0.31 et supérieurs acceptera ces cartes. Cependant vous ne bénéficierez que de la vitesse plus élevée du bus, puisque ces cartes utiliseront encore l'interface du pilote de la ne2000, qui commence à dater.

2.4 Cartes et pilotes 100 M disponibles

La liste des matériels 100 M reconnus par Linux à l'heure actuelle est la suivante: les cartes basées sur la puce DEC 21140; les cartes 3c595/3c90x Vortex; et la HP 100VG ANY-LAN. Les pilotes des deux premières sont relativement stables, mais les informations sur le pilote de la HP sont peu nombreuses jusqu'à présent.

L'EtherExpressPro10/100B possède maintenant un pilote, présent dans le noyau 2.0 courant. Pour les mises-à-jour et/ou des informations, consultez la section correspondante dans ce document.

La puce 100Base-? 21140 est supportée avec le même pilote que son équivalent 10 M, la 21040. Les cartes PCI 100 Mbs EtherPower de SMC utilisent cette puce. Comme pour la 21040, vous aurez le choix entre deux pilotes.

Allez aussi jeter un coup d'oeil sur le site WWW de Donald, à l'URL suivante:

Ethernet 100M

Donald a fait un bon bout de chemin avec les cartes EtherPower-10/100 de SMC, et indique qu'il a obtenu près de 4.6Mo/s d'application à application en TCP sur des machines à processeur Pentium 100, puce Triton. (Consultez  3c595 et  DEC 21140 pour plus de détails.)

Pour des informations sur le 100VG, consultez la section suivante, et cette URL sur le site de Donald:

La page 100VG de Donald

Vous serez peut-être aussi intéressé(e) par:

La page Fast Ethernet de Dan Kegel

2.5 100VG contre 100BaseT

La plaquette publicitaire suivante est extraite d'un message désespérement bourré d'informations posté par Donald dans comp.os.linux; elle résume bien la situation:

``Pour ceux qui ne seraient pas au courant, il y a deux normes Ethernet en compétition, le 100VG (aussi connu sous le nom de 100baseVG ou encore 100VG-AnyLAN) et le 100baseT (qui, selon le type du câble, s'appelle 100bastTx, 100baseT4 ou 100baseFx).

Le 100VG est arrivé sur le marché le premier, et je sentais qu'il était mieux pensé que le 100baseTx. J'étais persuadé qu'il allait gagner, mais visiblement ce ne sera pas le cas. HP et consorts ont fait plusieurs mauvais choix:

1) Retarder la norme de manière à ce qu'ils puissent amadouer IBM et accepter les trames Token Ring. Cela `ressemblait à une bonne idée à l'époque', puisque cela aurait permis aux boutiques Token Ring de se mettre à jour sans devoir faire admettre aux décideurs qu'ils avaient fait une énorme bourde en s'acoquinant avec la mauvaise technologie. Mais il n'y avait rien à gagner, parce que les deux types de trames ne peuvent pas coexister sur un réseau, parce que Token Ring est un marécage de complexité , et que IBM a quand même adopté 100baseT pour finir.

2) Ne produire que des cartes ISA et EISA. (Un modèle PCI n'a été annoncé que récemment.) Le bus ISA est trop lent pour 100 M, et relativement peu de machines EISA existent. A l'époque VLB était classique, rapide, et économique, PCI restant un choix viable. Mais la sagesse des ``anciens'' disait que les serveurs continueraient d'utiliser le bus EISA hors de prix.

3) Ne pas m'envoyer une documentation. Oui, cela a été la raison réelle du déclin du 100VG :-). J'ai appelé partout pour obtenir des infos de programmation, et tout ce que j'ai pu obtenir a été une brochure de quelques pages sur papier glacé de AT&T décrivant combien le jeu de puce Regatta était merveilleux.''

(NDT: ``La norme 100 BAS VG - any LAN proposée par HP (...) ne reprend pas le principe du protocole Ethernet mais utilise le principe du polling. L'utilisation du mot Ethernet a donc ici plutôt une vocation commerciale. Il faut changer les coupleurs dans les stations de travail. Toutefois, on conserve les principaux systèmes de câblage.'' (Pierre Rolin, in ``Réseaux haut débit'', Hermès, 1995). Fin 1997 plus personne ne parle de 100VG.

La norme 100baseT4 utilise un câblage catégorie 3 et 4, 100baseTx un câblage catégorie 5, 100baseFx de la fibre optique.)

2.6 Entrées/Sorties programmées contre mémoire partagée contre DMA

Ethernet fait 10 Mbit/s. (Ne soyez pas pédant, le 3 Mbit/s et le 100 Mbit/s ne comptent pas.) Si vous savez déjà envoyer et recevoir des paquets les uns derrière les autres, vous ne pouvez tout simplement pas mettre plus de bits sur le fil. Toutes les cartes Ethernet modernes peuvent recevoir des paquets les uns à la suite des autres. Les pilotes Linux DP8390 (wd80x3, SMC-ULTRA, 3c503, ne2000, etc) s'approchent très près de l'envoi de paquets les uns derrière les autres (cela dépendra du temps de latence d'interruption courant), et la 3c509 ou l'AT1500 n'ont absolument aucun problème pour émettre des paquets les uns derrière les autres.

Le bus ISA peut faire du 5,3 Mo/s (42 Mbit/s), ce qui semble plus que nécessaire. Vous pouvez utiliser cette bande passante de plusieurs façons, qui sont listées ci-dessous.

Entrées/Sorties (E/S) programmées (NE2000, 3c509, etc.)

Pour: N'utilise aucune ressource système contrainte, juste quelques registres d'E/S, et n'a pas de limite à 16 M.

Contre: Généralement le taux de transfert le plus faible, le processeur attend tout le temps, et un accès entrelacé (interleaved en anglais) aux paquets est habituellement difficile voire impossible.

Mémoire partagée (WD80x3, SMC-Ultra, 3c503, etc.)

Pour: Simple, plus rapide que les E/S programmées, permet l'accès aléatoire aux paquets. Les pilotes Linux calculent la somme de contrôle (checksum en anglais) des paquets IP entrants lorsqu'ils sont copiés depuis la carte, ce qui entraîne une réduction supplémentaire de la charge du processeur par rapport à une carte équivalente en E/S programmées.

Contre: Utilise beaucoup d'espace mémoire (c'est important pour les utilisateur sous DOS, cela n'a pratiquement pas d'importance sous Linux), et charge encore le processeur.

Accès Direct à la Mémoire (DMA) Esclave (normal) (p.ex.: aucune pour Linux!)

Pour: Libère le processeur pendant le transfert réel des données.

Contre: La vérification des conditions aux limites de blocs, l'allocation de tampons (buffers en anglais) contigüs, et la programmation des registres DMA en font la plus lente de toutes les techniques. Elle utilise en plus un canal DMA (une ressource rare!) et nécessite des tampons alignés en mémoire basse (NDT: affreux!).

DMA en Maître de Bus (Bus Master) (p.ex.: LANCE, DEC 21040)

Pour: Libère le processeur pendant le transfert des données, peut lier des tampons entre eux, peut nécessiter peu voir pas de perte de temps processeur sur le bus ISA.

Contre: Nécessite des tampons en mémoire basse et un canal DMA. Tout Maître de Bus aura des problèmes avec les autres Maîtres de Bus qui sont des goinfres, comme certaines cartes SCSI primitives. Quelques jeux de puces pour cartes-mères mal pensés ont des problèmes avec les maîtres de bus. Et une raison pour n'avoir aucun type de périphérique DMA est d'utiliser un processeur 486 conçu pour le remplacement (en place) d'un 386: ces processeurs doivent vider leur cache à chaque cycle DMA. (Ceci inclus les Cx486DLC, Ti486DLC, Cx486SLC, Ti486SLC, etc.)

2.7 Les types de câbles que votre carte peut accepter

Si vous mettez en place un petit réseau ``personnel'', vous préfèrerez certainement utiliser le ``thinnet'' ou câble Ethernet fin. C'est le modèle avec les connecteurs BNC standards. Consultez  Câbles, Coax... pour d'autres questions sur les différents types de câble Ethernet.

La plupart des cartes Ethernet possède aussi une version `Combo' qui ne coûte que 60 à 150 francs de plus. (NDT: Amusant comme les écarts de prix en dollars se convertissent en écarts de prix en francs! La version anglaise dit ``10 à 20 dollars de plus''. Ces écarts de prix sont vrais fin 97.)

Ces versions `Combo' possèdent les deux interfaces paire torsadée et Ethernet fin intégrées, ce qui vous permet de changer d'avis plus tard.(NDT: `Combo' signigie même souvent: interface RJ-45 (10baseT, paire torsadée) + interface BNC (10base2, thinnet) + interface AUI (pour transceiver ou câble de descente (drop-cable) gros Ethernet).)

Les câbles à paires torsadées, avec les connecteurs RJ-45 (rectangulaires) sont appelés techniquement 10BaseT. Vous pourrez aussi entendre parler de UTP (Unshielded Twisted Pair, paire torsadée non-écrantée ou non-blindée, NDT).

Le câblage `thinnet', ou Ethernet fin (câble coaxial RG-58) avec les connecteur BNC (en métal, à enfoncer puis tourner pour verrouiller) est appelé techniquement 10Base2.

Le vieil Ethernet `épais' (Thick Ethernet, sur câble coaxial de 10 mm, jaune) ne se trouve plus que dans les installations anciennes, et est appelé 10Base5.

Les grandes installations professionnelles utiliseront le plus souvent du 10BaseT au lieu de 10Base2. 10Base2 n'offre pas un moyen simple de passer aux nouvelles normes 100 Mbit/s, quel que soit le nom qu'on leur donne.

(NDT: Professionnellement parlant, en dehors de la fibre optique qui est encore hors de prix jusqu'à la machine de l'utilisateur, les nouveaux câblages devraient être réalisés en ``Catégorie 5, classe D''. Ce type de câblage supporte non seulement 10BaseT, mais aussi 100BaseT et les nouveaux débits qui apparaissent.

Pour la maison, vous choisirez entre Ethernet fin (simple et pas cher) et une connectique style RJ-45 (un peu moins simple, un peu plus cher, mais plus `propre' électriquement parlant) selon vos envies et votre budget!

Et d'abord allez voir  Câbles, Coax....:))


Page suivante Page précédente Table des matières