Une
carte d'interface réseau (NIC en abrégé), également connue sous le nom
d'adaptateur réseau, est un périphérique qui connecte un ordinateur à un
réseau local. Tant qu'il est connecté à un réseau local, une carte
réseau doit être installée. Une carte réseau comprend principalement les
deux couches inférieures de l'OSI, la couche physique et la couche
liaison de données.La puce de la couche physique est appelée PHY, et la
puce de la couche liaison de données est appelée contrôleur MAC.
Aujourd'hui,
nous comprenons le principe de fonctionnement de la carte réseau et
apprenons le processus d'envoi et de réception de paquets de données.
La
carte réseau fonctionne dans les deux dernières couches de l'OSI : la
couche physique et la couche liaison de données. La couche physique
définit les signaux électriques et optiques, l'état de la ligne, la
référence d'horloge, le codage des données et les circuits nécessaires à
la transmission et à la réception des données, et communique à la
liaison de données Les dispositifs de couche fournissent des interfaces
standard. La couche liaison de données fournit des fonctions telles que
le mécanisme d'adressage, la construction de trames de données, la
vérification des erreurs de données, le contrôle de transmission et
l'interface de données standard avec la couche réseau. La puce de la
couche liaison de données dans la carte Ethernet est appelée contrôleur
MAC. Ces deux parties de nombreuses cartes réseau sont réalisées
ensemble. La relation entre eux est que le bus PCI est connecté au bus
MAC, le MAC est connecté au PHY et le PHY est connecté au câble réseau
(via le transformateur).
Continuons à regarder comment PHY et MAC
transmettent des données et communiquent entre eux. Connectez MAC et
PHY via l'interface MII standard définie par IEEE. Cette interface est
définie par l'IEEE. L'interface MII transfère toutes les données et le
contrôle des données du réseau. Le MAC détermine l'état de
fonctionnement du PHY et contrôle le PHY en utilisant l'interface SMI
(Serial Management Interface) en lisant et en écrivant les registres du
PHY. Une partie des registres du PHY sont également définis par l'IEEE,
de sorte que le PHY reflète son état actuel dans les registres, et le
MAC lit en continu le registre d'état du PHY via le bus SMI pour
connaître l'état actuel du PHY, tel que que la vitesse de connexion et
la capacité duplex Attendez. Bien sûr, vous pouvez également définir les
registres PHY via SMI pour atteindre des objectifs de contrôle, tels
que l'ouverture et la fermeture du contrôle de flux, le mode
d'auto-négociation ou le mode obligatoire, etc.
Par conséquent, qu'il
s'agisse de l'interface MII et du bus SMI physiquement connectés ou du
registre d'état et du registre de contrôle du PHY, il existe des
spécifications IEEE, de sorte que les MAC et les PHY de différentes
entreprises peuvent fonctionner en harmonie. Bien sûr, afin de coopérer
avec certaines fonctions uniques des PHY de différentes entreprises, le
pilote doit être modifié en conséquence.
processus de travail
Lorsque
le PHY envoie des données, il reçoit les données du MAC (pour le PHY,
il n'y a pas de concept de trame, pour lui, ce sont toutes des données
quelle que soit l'adresse, les données sont toujours CRC), et tous les 4
bits ajoutent 1 bit de code de détection d'erreur, puis convertit les
données parallèles en données de flux série, puis selon les règles de
codage de la couche physique (codage NRZ de 10Based-T ou codage
Manchester de 100based-T), le codage de données est converti en un
signal analogique et envoyé. Le processus de réception des données est
inversé.
Examinons maintenant la dernière partie de la sortie du PHY.
Lorsqu'une
puce de processus CMOS fonctionne, le niveau de signal généré est
toujours supérieur à 0 V (cela dépend des exigences de processus et de
conception de la puce), mais un tel signal aura une tension continue
élevée lorsqu'il est envoyé à 100 mètres ou même plus loin. perte de
poids. De plus, si le câble réseau externe est directement connecté à la
puce, l'induction électromagnétique et l'électricité statique peuvent
facilement endommager la puce.
De plus, la méthode de mise à la terre
de l'équipement est différente et l'environnement de réseau différent
entraînera une incohérence des niveaux 0 V des deux parties. De cette
manière, le signal est transmis de A à B. Étant donné que le niveau 0 V
de l'équipement A est différent du niveau 0 V du point B, cela
provoquera un courant important. Flux d'un appareil avec un potentiel
plus élevé vers un appareil avec un potentiel plus faible. À ce moment,
un transformateur (transformateur d'isolement) est nécessaire. Il filtre
le signal différentiel envoyé par le PHY avec un filtre de couplage de
bobine couplé en mode différentiel pour améliorer le signal, et le
couple à l'autre extrémité du câble réseau via la conversion du champ
électromagnétique. De cette façon, il n'y a pas de connexion physique
entre le câble réseau et le PHY et le signal est transféré, la
composante CC du signal est coupée et les données peuvent également être
transmises dans des appareils avec différents niveaux de 0 V.
Le
transformateur d'isolement lui-même est conçu pour résister à la tension
de 2KV ~ 3KV, et en même temps il joue le rôle de protection contre la
foudre. L'équipement réseau de certains utilisateurs est facile à brûler
par temps d'orage, dont la plupart sont causés par une conception de
PCB déraisonnable, et la plupart d'entre eux ont brûlé l'interface de
l'équipement, et peu de puces sont brûlées, car le transformateur
d'isolement joue un rôle protecteur .
Lors de l'envoi de données,
la carte réseau écoute d'abord s'il y a une porteuse sur le support (la
porteuse est indiquée par la tension), et si c'est le cas, elle pense
que d'autres stations transmettent des informations et continue à
écouter le support. Une fois que le support de communication est au
repos pendant un certain temps (appelé intervalle inter-trame IFG = 9,6
microsecondes), c'est-à-dire qu'il n'est pas occupé par d'autres
stations, la transmission des données de trame est lancée tout en
continuant à écouter le support de communication pour détecter les
collisions. Lors de la transmission de données, si une collision est
détectée, la transmission est immédiatement arrêtée et un signal de
"blocage" est envoyé au support pour informer les autres stations qu'une
collision s'est produite, éliminant ainsi les données de trame
corrompues qui peuvent avoir été reçues , et attente Une durée aléatoire
(l'algorithme de CSMA/CD pour déterminer le temps d'attente est un
algorithme de temporisation exponentielle binaire). Attendez un laps de
temps aléatoire avant de faire un nouvel envoi. Si une collision se
produit encore après plusieurs retransmissions (plus de 16 fois), la
transmission est abandonnée.
Lors de la réception, la carte réseau
scanne chaque trame transmise sur le support, et si elle fait moins de
64 octets de longueur, elle est considérée comme un fragment de
collision. Si la trame reçue n'est pas un fragment en conflit et que
l'adresse de destination est une adresse locale, vérifiez l'intégrité de
la trame, si la longueur de la trame est supérieure à 1518 octets
(appelée trame surdimensionnée, elle peut être causée par un mauvais
pilote LAN ou interférence) ou S'il ne réussit pas le contrôle CRC, on
considère que la trame est déformée. Les trames qui réussissent la
vérification sont considérées comme valides et la carte réseau les
reçoit pour un traitement local.