La réponse à cette question dépend fortement de ce que vous comptez 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 meme une vieille carte ISA 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 données sur le réseau reste la plus basse possible, vous devrez certainement choisir une des cartes PCI récentes, qui utilisent le bus-mastering, telles celles comportant la puce tulip (21xxx) 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.
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, SMC-Elite (WD80x3), 3c509, Lance, NE2000.
Cela 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 le bus-mastering que les cartes ISA Lance utilisent, et que certains clones NE2000 bon marché ont des difficultés à être détectés au démarrage.
Les pilotes les plus courament utilisés sous Linux sont probablement le 3Com Vortex/Boomerang (3c59x/3c9xx), le DEC tulip (21xxx), et l'EtherExpressPro 100 d'Intel. Les divers clones PCI-NE2000 sont plutôt courants, mais l'achat d'une telle carte ne peut se justifier que si le prix est plus important que les performances.
Vous ne pourrez certainement plus acheter une carte Ethernet ISA 8 bits de nos jours, mais vous en trouverez encore beaucoup 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''. cette constatation est d'ailleurs aussi valable pour les cartes ISA 16 bits car les cartes PCI deviennent de plus en plus communes.
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.
Notez qu'un réseau à 10 Mbps ne justifie pas l'utilisation d'une interface 32 bits. 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 entraînera souvent une surcharge processeur moins importante, ce qui est bon pour les systèmes multi-utilisateurs.
Bien sûr, avec la démocratisation des réseaux 100 Mbps, les cartes 32 bits deviennent une obligation pour pouvoir tirer avantage de toute la bande passante. 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 tulip (21xxx) 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. (voir 3c590/3c595)
Les cartes EtherExpress Pro 10/100 PCI d'Intel sont aussi connues pour marcher plutôt bien avec Linux. (voir EtherExpress).
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. Depuis la version 2.0.34 du noyau, un pilote
specifique à ces cartes ne2k-pci.c
est aussi disponible. Il
devrait être légerement plus efficace que le pilote ISA ne.c
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
Le 100BaseT est beaucoup plus répandu que le 100VG et la plaquette publicitaire suivante est extraite d'un vieux 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.)
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 pour l'ethernet a 10 Mbps. En cas d'utilisations de cartes 100 Mbps, il est clair que vous aurez à utiliser un bus plus rapide pour utiliser toute la bande passante.
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.
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.
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) contigus, 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 !).
Pour : Libère le processeur pendant le transfert des données, peut lier des tampons entre eux, peut nécessiter peu voire pas de perte de temps processeur sur le bus ISA. La majorité des pilotes bus-mastering pour linux utilisent un schéma 'copybreak' où les gros paquets sont directements placés dans les tampons réseau du noyau par la carte, les petits paquets étant copiés par le CPU qui est plus rapide pour ce type de traitements.
Contre : (seulement pour les cartes ISA) Nécessite des tampons en mémoire basse et un canal DMA pour les cartes. 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.)
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èdent 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....:)
)