Ce TP a pour but de mettre en oeuvre et observer quelques fonctionnalités avancées de la commutation sur Ethernet avec un ou plusieurs commutateurs (switchs). Nous utiliserons ici des switchs de type HP ProCurve.
Exercice 1 - Domaines de diffusion
En prenant un switch pour quatre PC, réaliser le montage suivant.
Exercice 2 - VLANs non taggés
On désire maintenant que le trafic entre PC1 et PC4 soit complètement différencié du trafic entre PC2 et PC3, c'est à dire qu'aucun échange ni observation ne puisse avoir lieu entre ces deux réseaux locaux virtuels. Pour cela, on peut créer deux VLANs distincts: le VLAN rouge pour PC1 et PC4 et le VLAN vert pour PC2 et PC3. Ce sont des VLANs par port, compatibles avec la norme IEEE 802.1Q. En l'absence de toute configuration, les switchs considèrent que tous les ports font partie du même VLAN par défaut.
Exercice 3 - VLANs non taggés entre deux switchs
On désire maintenant ajouter un second switch et répartir les machines comme indiqué dans la figure suivante. On désire toujours n'utiliser que des VLANs non taggés.
Exercice 4 - VLANs et Spanning Tree
Y a t il une boucle dans cette configuration et un risque d'inondation par les switchs eux-mêmes. Pourrait il y en avoir avec d'autres interfaces raccordées à ces switchs. Que se passerait-il dans la configuration actuelle si on mettait en oeuvre le STA?
Exercice 5 - VLANs taggés
Supposons maintenant que l'on veuille un seul lien entre les deux
switchs (disons entre le port 2 du switch 1 et le port 1 du switch
2). Cela nécessite que les trafics des VLANs rouge et vert passent par
ce lien, et donc que ces 2 ports soient associés à la fois au VLAN
rouge et au VLAN vert. Cela n'est pas possible si les 2 VLANs sont non
taggés.
Note: Un port peut appartenir à plusieurs VLANs, mais un seul
(au plus) de ces VLANs peut être non taggé.
Du point de vue des systèmes, il faut disposer d'un noyau NetBSD compatible avec la norme 820.1Q sur les VLANs. Vous aurez simplement à utiliser la commande ifconfig.
Attention: l'association d'un port à un VLAN interdit la communication de la machine qui lui est reliée par toute autre interface logique que celle de ce VLAN (même si elle passe par la même interface physique). En particulier, l'adresse 10.10.1.10 de PC1 ne peut plus émettre par le port 1 du switch 1 si celui-ci n'accepte que le trafic taggé du VLAN rouge. Seule l'adresse 10.20.1.10 peut communiquer. Dans ce cas, même l'adresse 10.10.1.1 du switch n'est plus accessible.
Il est en revanche possible de donner au switch une adresse IP distincte par VLAN, qui sera accessible par chaque machine se trouvant dans le même VLAN.
Sinon, puisque vous disposez de machines munies de plusieurs cartes, vous pouvez utiliser une autre interface pour accéder à un port libre du switch qui sera, lui, associé au VLAN par défaut non taggé.
Exercice 6 - VLANs et serveur
On suppose maintenant que le PC3 est un serveur qui doit pouvoir
communiquer avec les deux VLANs. Néanmoins, on veut conserver les deux
VLANs avec des trafics distincts. Pour cela, on peut associer une
deuxième interface logique de VLAN (rouge) au PC3 (sur la même
interface physique ou sur une autre). Réaliser l'exemple de
configuration ci-dessous, et vérifier qu'il est possible, à partir du
PC3, de communiquer avec le VLAN rouge, le VLAN vert et le VLAN par
défaut.
Note: dans certains cas (désormais rares) de multiples
interfaces logiques sur une même interface physique, on peut être
amené à donner "à la main" des routes au PC (commande route).
Exercice 7 - Port Trunking
Le port trunking est la faculté d'associer plusieurs liens (jusqu'à 4) entre 2 switchs en une sorte de congrégation de liens. Les différents liens constituant ce trunk seront alors utilisés simultanément, permettant ainsi d'augmenter le débit inter-switch. La distribution du trafic sur chacun des liens du trunk est effectuée sur la base d'une résolution d'adresse source et/ou destination, voir d'une négociation. Au pire des cas, même si c'est rare, il se peut donc qu'un lien du trunk soit saturé tandis que les autres sont inutilisés.
Du point de vue du switch, la connexion à un trunk est vue comme un seul port. Par exemple, le STA décide soit de transmettre sur tous les liens du trunk, soit de bloquer tous les liens. De même, tous les ports des liens d'un même trunk doivent appartenir aux mêmes VLANs.
La figure suivante illustre une utilisation du trunk: dans la configuration de l'exercice 3 (voir figure), nous avions des liens entre 2 switchs. VLAN rouge uniquement du port 1 au port 2 et VLAN vert uniquement du port 3 au port 4. On peut imaginer qu'il aurait été utile (pour l'administration des switchs, par exemple) d'avoir un lien du port 6 au port 6 pour le VLAN par défaut.
Placer ces trois liens dans un seul trunk permet d'éviter d'avoir des boucles entre les switchs (sans utiliser le STA qui n'est pas adapté ici), tout en conservant les trois liens disponibles. Le seul pré-requis est de créer un trunk dont les caractéristiques regroupent toutes celles des liens qui le constituent: il doit appartenir au VLAN rouge, au VLAN vert et au VLAN par défaut. C'est possible puisque seul le VLAN par défaut est non taggé.
Réaliser ce montage et tester les communications et le trafic.
Exercice 8 - Switch Meshing
Une autre manière d'agréger plusieurs liens est le meshing. Cette technique ne se limite pas à des liaisons point à point entre deux switchs puisqu'elle peut regrouper tout un maillage de switchs (plusieurs switchs reliés entre eux de façon redondante). À l'intérieur d'un même mesh, le trafic est distribué dynamiquement vers les liens offrant l'accès le plus rapide.
Un ensemble de switchs reliés (de manière redondante) par des liens paramétrés comme mesh constitue un meshed domain. Ce dernier détermine régulièrement les "meilleurs" chemins à l'intérieur de ce domaine selon plusieurs critères: en fonction de la taille de la file d'attente des buffers associés aux ports du switch, de leur configuration en vitesse et type Half/Full-dulplex, et de la quantité de paquets jetés qui illustre l'occupation du port. Un chemin déterminé comme "meilleur" entre deux adresses MAC reste valable tant que l'entrée de ces adresses MAC n'expire pas dans la table d'adressage. La différence principale avec le trunk et le STA est que tous les liens restent actifs et qu'ils peuvent rapidement être sollicités pour répondre à une augmentation du trafic.
Réaliser le montage ci-dessous, où un lien "normal" relie deux mesh domain. Observer les tables d'adressage, le trafic et en particulier le comportement des messages en diffusion. Constater qu'ils ne sont pas systématiquement "inondés" par chacun des switchs sur chacun des ports.
En regardant le trafic, en particulier au repos, proposer une explication sur le mode de fonctionnement du meshing.
À voir éventuellement: IP Multicast, ABC, Port Security, CoS, Analysis.