Skip to main content

Comment fonctionne un switch Ethernet (ou commutateur) ?

Un switch Ethernet, aussi appelé commutateur Ethernet, permet d’interconnecter plusieurs machines entre elle. Ces machines peuvent ainsi communiquer entre elle. Admettons que PC1 communique avec PC2. Comment le switch peut-il savoir qu’il doit envoyer la trame uniquement sur le port vers le PC2, et non vers le PC3 ?Switch Ethernet

Trame Ethernet

Les machines (PC, serveurs, mac, etc) s’échangent des données entre elles, et sont interconnectés avec des switches et des routeurs. Le switch analyse les données du niveau 2 du modèle OSI (la couche liaison). Ces données sont appelés des trames, et par extension, des trames Ethernet (Ethernet étant le protocole de niveau 2 le plus utilisé aujourd’hui).

Apprentissage des adresses MAC : Flood and Learn

Admettons que PC1 connait déjà l’adresse MAC du PC2.

Lorsque PC1 envoie une trame vers le switch, le switch apprend l’adresse MAC du PC1 (l’adresse MAC source). Il met l’adresse MAC du PC1 dans sa table d’adresse MAC, en indiquant qu’il l’a apprise par le port 1.

Fonctionnement d'un switch ethernet

Ensuite, il regarde dans sa table d’adresse MAC s’il connait l’adresse MAC du PC2. Sinon, il envoie la trame vers tous les ports actifs, sauf celui d’où provient le trafic (le port 1).

Le trame va arriver sur PC2 et PC3. Cependant, seul PC2 répondra car l’adresse MAC de destination est égale à la sienne. PC3 ignorera la trame. Le schéma ci-dessous résume ce fonctionnement :

Lorsque PC2 répond à la requête, le switch apprend l’adresse MAC du PC2. Ainsi, sa table d’adresse MAC sera celle du schéma ci-dessous :

 

Ensuite, le switch regarde dans sa table d’adresse MAC si l’adresse MAC du PC1 est connu. L’adresse MAC étant connu par le port 1, il envoie la réponse UNIQUEMENT vers le port 1.

Ainsi, lors des prochains échanges entre les 2 PC, les trames ne sera plus envoyée vers tous les ports, mais uniquement vers le PC2.

Le switch apprend donc les adresses MAC en envoyant les trames sur tous ces ports lorsqu’il ne connait pas la destination (sauf sur le port d’où vient la trame). On dit qu’il « Flood » (innonde en francais). Au fur et à mesure que les machines répondent, il apprend toute les adresses MAC qu’il y a derrière ses ports. On dit qu’il « Learn » (apprendre en francais).

Adrien

Author Adrien

More posts by Adrien