# IEEE 802.1Q

IEEE 802.1Q è uno standard che permette di definire quelle che si chiamano VLAN (Virtual LAN) le quali permettono di separare logicamente a livello 2 (Data Link Layer) diversi flussi di traffico. Questa separazione logica consente di suddividere un singolo collegamento fisico tra diversi apparati in modo similare a quello che accadrebbe facendo seguire ai flussi di traffico percorsi fisici distinti.
802.1q è il nome del protocollo di incapsulamento utilizzato nel processo di trunking nelle reti Ethernet.
Vedere anche i protocolli proprietari Cisco VLAN Trunking Protocol (VTP) e Cisco Inter-Switch Link (ISL) per informazioni sulle comunicazioni inter-VLAN e inter-switch.
Il titolo ufficiale dello standard 802.1Q è IEEE Std. 802.1Q-2003, Virtual Bridged Local Area Networks; ISBN 0-7381-3662-X.
Shortest Path Bridging Incorporato nel IEEE 802.1Q-2014.

## Formato del frame

802.1Q non incapsula il frame originale, ma aggiunge 4 byte all'header.
* I primi 2 byte modificati riguardano il tag protocol identifier TPID. Esso è impostato a 0x8100, valore che evidenzia che il frame è in formato IEEE 802.1Q.
* I successivi 2 byte riguardano il tag control information TCI (detto anche VLAN Tag) così suddiviso:
** Priority Code Point (PCP): Questo campo a 3 bit può essere utilizzato per indicare un livello di priorità per il frame. L'utilizzo di questo campo è definito in: IEEE 802.1p.
** Drop eligible indicator (DEI): (in precedenza CFI) Campo di 1 bit che indica la possibilità di ignorare il frame in caso di congestione.
** VLAN ID (VID): campo di 12 bit che indica l'ID delle VLAN, che possono così essere fino a 4096 (ossia $2^{12}$). Di queste, la prima (VLAN 0) e l'ultima (VLAN 4095) sono riservate, quindi gli ID realmente usabili sono 4094.
Il resto del frame Ethernet rimane identico all'originale.
Poiché con la modifica di questo header il frame viene cambiato, il meccanismo di incapsulazione di 802.1Q richiede il ricalcolo del campo FCS nel trailer Ethernet.

## VLAN native

L'articolo 9 dello standard definisce il protocollo di incapsulazione usato per il multiplex delle VLAN su un solo collegamento ed introduce il concetto di VLAN nativa. I frame appartenenti alla VLAN nativa non sono modificati quando passano in un trunk. Le VLAN native sono anche chiamate "Management VLAN".
Ad esempio, si supponga di avere una porta 802.1Q a cui sono assegnate le VLAN 2, 3 e 4. Se la VLAN 2 è la VLAN nativa, i frame di questa VLAN che devono uscire dalla porta non contengono un header 802.1Q. Rimangono, quindi, semplici frame Ethernet. I frame che entrano da questa porta che non hanno nessun header 802.1Q sono spediti nella VLAN 2.
Il comportamento del traffico relativo alle VLAN 3 e 4 è intuitivo.
È possibile avere solo una VLAN nativa per porta.

## Generic Attribute Registration Protocol

In aggiunta, IEEE 802.1Q specifica GVRP, una applicazione del Generic Attribute Registration Protocol. Questo permette ai bridge di negoziare le VLAN soggette a trunking in una specifica connessione.

## Protocollo di spanning-tree multiplo

La revisione del 2003 dello standard include anche il Protocollo di Spanning Tree multiplo (MSTP) definito inizialmente in IEEE 802.1s