Les commutateurs utilisent des adresses MAC pour orienter les communications réseau via leur matrice de commutation vers le port approprié et en direction du noeud de destination. La matrice de commutation désigne les circuits intégrés et les éléments de programmation associés qui permettent de contrôler les chemins de données par le biais du commutateur. Pour qu'un commutateur puisse connaître les ports à utiliser en vue de la transmission d'une trame de monodiffusion, il doit avant tout savoir quels noeuds existent sur chacun de ses ports.
Un commutateur détermine le mode de gestion des trames de données entrantes à l'aide d'une table d'adresses MAC. Il crée sa table d'adresses MAC en enregistrant celles des noeuds connectés à chacun de ses ports. Dès que l'adresse MAC d'un noeud spécifique d'un port particulier est enregistrée dans la table d'adresses, le commutateur peut alors envoyer le trafic destiné au noeud vers le port mappé à ce dernier pour les transmissions suivantes.
Lorsqu'un commutateur reçoit une trame de données entrantes et que l'adresse MAC de destination ne se trouve pas dans la table, il transmet la trame à l'ensemble des ports, à l'exception de celui sur lequel elle a été reçue. Dès que le noeud de destination répond, le commutateur enregistre l'adresse MAC de ce dernier dans la table d'adresses à partir du champ d'adresse source de la trame. Dans le cadre de réseaux dotés de plusieurs commutateurs interconnectés, les tables d'adresses MAC enregistrent plusieurs adresses MAC pour les ports chargés de relier les commutateurs qui permettent de voir au-delà du noeud. En règle générale, les ports de commutateur utilisés pour connecter entre eux deux commutateurs disposent de plusieurs adresses MAC enregistrées dans la table d'adresses MAC.
Pour mieux comprendre le processus, observez les étapes détaillées dans les Figures 1 à 6.
Ce processus se présente comme suit :
Étape 1. Le commutateur reçoit une trame de diffusion de PC1 sur le port 1.
Étape 2. Le commutateur ajoute l'adresse MAC source et le port de commutateur ayant reçu la trame dans la table d'adresses.
Étape 3. L'adresse de destination étant une diffusion, le commutateur envoie la trame sur tous les ports, sauf celui sur lequel il l'a reçue.
Étape 4. Le périphérique de destination réagit à la diffusion en envoyant une trame de monodiffusion à PC1.
Étape 5. Le commutateur enregistre, dans la table d'adresses, l'adresse MAC source de PC2 et le numéro du port du commutateur ayant reçu la trame. L'adresse de destination de la trame et le port qui lui est associé se trouvent dans la table d'adresses MAC.
Étape 6. Le commutateur peut alors transmettre les trames entre les périphériques source et de destination sans les diffuser partout, puisqu'il dispose des entrées qui identifient les ports associés dans la table d'adresses .
Remarque : la table d'adresses MAC est parfois appelée une table de mémoire associative (CAM). Même si le terme de table CAM est également utilisé, nous parlerons de la table d'adresses MAC dans le cadre de ce cours.