Article de reference

Contrôleur d'interface réseau

Un contrôleur d'interface réseau ( NIC , également connu sous le nom de carte d'interface réseau , adaptateur réseau , adaptateur LAN et interface réseau physique ) est un compo...

Un contrôleur d'interface réseau ( NIC , également connu sous le nom de carte d'interface réseau , adaptateur réseau , adaptateur LAN et interface réseau physique ) est un composant matériel informatique qui connecte un ordinateur à un réseau informatique .

Les premiers contrôleurs d'interface réseau étaient généralement intégrés à des cartes d'extension qui se connectaient au bus de l'ordinateur . Le faible coût et l'omniprésence de la norme Ethernet font que la plupart des ordinateurs récents intègrent un contrôleur d'interface réseau à la carte mère ou via une clé USB , même si des cartes réseau restent disponibles.

Les contrôleurs d'interface réseau modernes offrent des fonctionnalités avancées telles que des interfaces d'interruption et DMA vers les processeurs hôtes, la prise en charge de plusieurs files d'attente de réception et de transmission, le partitionnement en plusieurs interfaces logiques et le traitement du trafic réseau sur le contrôleur, comme le moteur de déchargement TCP .

But

Le contrôleur de réseau met en œuvre les circuits électroniques nécessaires pour communiquer en utilisant une norme de couche physique et de couche de liaison de données spécifique telle qu'Ethernet ou Wi-Fi . ​​Cela fournit une base pour une pile de protocoles réseau complète , permettant la communication entre les ordinateurs sur le même réseau local (LAN) et les communications réseau à grande échelle via des protocoles routables, tels que le protocole Internet (IP).

La carte réseau permet aux ordinateurs de communiquer sur un réseau, par câble ou sans fil. Elle constitue à la fois un périphérique de couche physique et de couche liaison de données : elle assure l’accès physique au support réseau et, pour les réseaux IEEE 802 et similaires, elle fournit un système d’adressage de bas niveau grâce aux adresses MAC , attribuées de manière unique aux interfaces réseau.

Mise en œuvre

12 cartes réseau PC ISA 8 et 16 bits anciennes. La carte en bas à droite est une ancienne carte réseau sans fil, et la carte centrale avec un couvercle en plastique beige partiel est un modem RTC .
Contrôleur Ethernet Gigabit double port Intel Ophir 82571

À l'origine, les contrôleurs réseau se présentaient sous forme de cartes d'extension enfichables sur le bus de l'ordinateur. Le faible coût et l'omniprésence de la norme Ethernet font que la plupart des nouveaux ordinateurs intègrent un contrôleur d'interface réseau à la carte mère ; cette configuration est appelée LAN sur carte mère (LOM). Les cartes mères de serveurs récentes peuvent intégrer plusieurs interfaces réseau. Les fonctionnalités Ethernet sont soit intégrées au chipset de la carte mère , soit implémentées via une puce Ethernet dédiée à faible coût. Une carte réseau séparée n'est généralement plus nécessaire, sauf si des connexions réseau indépendantes supplémentaires sont requises ou si un réseau autre qu'Ethernet est utilisé. La tendance générale en informatique est à l' intégration des différents composants des systèmes sur une puce , et cela s'applique également aux cartes d'interface réseau.

Un contrôleur de réseau Ethernet possède généralement un connecteur 8P8C pour le branchement du câble réseau. Les cartes réseau plus anciennes proposaient également des connexions BNC ou AUI . Les contrôleurs de réseau Ethernet prennent généralement en charge…Il existe des cartes réseau Ethernet 10 Mbit/s , 100 Mbit/s et 1 000 Mbit/s . Ces contrôleurs sont désignés par 10/100/1000 , ce qui signifie qu’ils peuvent prendre en charge des débits de données de 10, 100 ou 1 000 Mbit/s . Des cartes réseau Ethernet 10 Gigabit sont également disponibles et, depuis novembre 2014, commencent à être intégrées aux cartes mères d’ordinateurs .

Carte réseau double port SFP+ Qlogic QLE3442-CU

Les modules SFP et SFP+ sont très répandus, notamment pour les communications par fibre optique . Ils définissent un connecteur standard pour les émetteurs-récepteurs dépendants du support, permettant ainsi aux utilisateurs d'adapter facilement l'interface réseau à leurs besoins.

Des LED adjacentes au connecteur réseau ou intégrées à celui-ci indiquent à l'utilisateur si le réseau est connecté et lorsqu'une activité de données se produit.

La carte réseau peut inclure une ROM pour stocker son adresse MAC attribuée en usine .

La carte réseau peut utiliser une ou plusieurs des techniques suivantes pour indiquer la disponibilité de paquets à transférer :

Les cartes réseau peuvent utiliser une ou plusieurs des techniques suivantes pour transférer les données par paquets :

  • Entrée/sortie programmée , où le processeur déplace les données entre la carte réseau et la mémoire.
  • L'accès direct à la mémoire (DMA) permet à un périphérique autre que le processeur de prendre le contrôle du bus système pour transférer des données entre la carte réseau et la mémoire. Cela allège la charge du processeur, mais nécessite davantage de ressources logiques sur la carte. De plus, un tampon de paquets sur la carte réseau peut être supprimé, ce qui permet de réduire la latence .

Performances et fonctionnalités avancées

Une interface réseau en mode de transfert asynchrone (ATM)
La carte réseau Ethernet Gigabit Intel 82574L , une carte PCI Express ×1, qui fournit deux files d'attente de réception matérielles

Les cartes réseau multifiles offrent plusieurs files d'attente d'émission et de réception , permettant d'affecter les paquets reçus à l'une de ces files. La carte réseau peut répartir le trafic entrant entre les files d'attente de réception à l'aide d'une fonction de hachage . Chaque file d'attente de réception est associée à une interruption distincte ; en acheminant chacune de ces interruptions vers différents processeurs ou cœurs de processeur , le traitement des requêtes d'interruption déclenchées par le trafic réseau reçu par une seule carte réseau peut être distribué, améliorant ainsi les performances.

La distribution matérielle des interruptions, décrite précédemment, est appelée mise à l'échelle côté réception (RSS). Des implémentations purement logicielles existent également, telles que le pilotage des paquets de réception (RPS), le pilotage des flux de réception (RFS) et Intel Flow Director . Des gains de performance supplémentaires peuvent être obtenus en acheminant les requêtes d'interruption vers les processeurs ou les cœurs exécutant les applications qui sont les destinations finales des paquets réseau ayant généré les interruptions. Cette technique améliore la localité des références et se traduit par des performances globales supérieures, une latence réduite et une meilleure utilisation du matériel grâce à une utilisation accrue des caches du processeur et à une diminution du nombre de changements de contexte nécessaires .

Avec les cartes réseau multi-files d'attente, il est possible d'améliorer encore les performances en répartissant le trafic sortant entre différentes files d'attente de transmission. En attribuant différentes files d'attente de transmission à différents processeurs ou cœurs de processeur, on évite les conflits internes au système d'exploitation. Cette approche est généralement appelée pilotage des paquets de transmission (XPS).

Certains produits comportent un partitionnement NIC ( NPAR , également connu sous le nom de partitionnement de port ) qui utilise la virtualisation SR-IOV pour diviser une seule carte réseau Ethernet 10 Gigabit en plusieurs cartes réseau virtuelles discrètes avec une bande passante dédiée, qui sont présentées au firmware et au système d'exploitation comme des fonctions de périphérique PCI distinctes .

Certaines cartes réseau intègrent un moteur de déchargement TCP permettant de déléguer le traitement de l'ensemble de la pile TCP/IP au contrôleur réseau. Ce moteur est principalement utilisé avec les interfaces réseau haut débit, telles que Gigabit Ethernet et 10 Gigabit Ethernet, pour lesquelles la surcharge de traitement de la pile réseau devient significative.

Certaines cartes réseau intègrent des FPGA ( Field-Programmable Gate Arrays ) permettant à l'utilisateur de traiter le trafic réseau avant qu'il n'atteigne l'ordinateur hôte, ce qui réduit considérablement la latence pour les applications critiques. De plus, certaines cartes réseau proposent des piles TCP/IP complètes à faible latence exécutées sur des FPGA intégrés, associées à des bibliothèques espace utilisateur qui interceptent les opérations réseau habituellement effectuées par le noyau du système d'exploitation ; la pile réseau open source OpenOnload de Solarflare , fonctionnant sous Linux , en est un exemple. Ce type de fonctionnalité est généralement désigné sous le terme de réseau au niveau utilisateur .