Le standard IEEE 802.1Q fournit un mécanisme d'encapsulation très répandu et implanté dans de nombreux équipements de marques différentes, aussi bien que dans les commutateurs réseau virtuels de VMWARE ESX[1] 3. Ce standard succéde à l'encapsulation ISL propriétaire CISCO. l'en-tête de trame est complété par une balise de 4 octets.
Le standard IEEE 802.1Q définit le contenu de la balise de VLAN (VLAN tag) avec laquelle on complète l'en-tête de trame Ethernet. Le format de la trame Ethernet modifiée avec les 4 octets supplémentaires est présenté ci-dessous.
adresse dst. | adresse src. | Len/Etype | Data | FCS |
adresse dst. | adresse src. | Len/Etype = 0x8100 | Tag (inséré) | Data | FCS (modifié) |
---|
TPID (16bit) | Priority (3bit) | CFI (1Bit) | Vlan ID, VID (12Bit) |
Il faut noter que le champ FCS est recalculé après l'insertion de la balise de VLAN.
Les 16 premiers bits sont utilisés pour identifier le protocole de la balise insérée. Dans le cas de la balise 802.1Q la valeur de ce champ est fixée à 0x8100.
Ce champ de 3 bits fait référence au standard IEEE 802.1p[2]. Sur 3 bits on peut coder 8 niveaux de priorités de 0 à 7. La notion de priorité dans les VLANs est sans rapport avec les mécanismes de priorité IP. Ces 8 niveaux sont utilisés pour fixer une priorité aux trames d'un VLAN relativement aux autres VLANs.
Ce champ codé sur 1 bit assure la compatibilité entre les adresses MAC Ethernet et Token Ring. Un commutateur Ethernet fixera toujours cette valeur à 0. Si un port Ethernet reçoit une valeur 1 pour ce champ, alors la trame ne sera pas propagée puisqu'elle est destinée à un port "sans balise" (untagged port).
Ce champ de 12 bits sert à identifier le réseau local virtuel (VLAN) auquel appartient la trame. Il est possible de coder 4096 VLANs avec ce champ.
Dans les switch Cisco, voici la commande permettant d'utiliser 802.1Q à la place de ISL en configuration terminal de interface à paramétrer.
A partir des versions 2.6 et supérieurs du kernel, les VLAN taggés 802.1q sont supportés. La commande permettant leurs configurations est
vlan add ethx vid
Les logiciels tcpdump ou wireshark[3] permettent d'analyser le trafic VLAN ; exemple :