VXLAN: vlan extensible lan protocol definition
11.03 2024 | by massimilianoOgni VXLAN segment รจ associato con un unico 24 bit VXLAN Network Identifier differente chiamato VNI; Questo 24 bit VNI […]
Ogni VXLAN segment รจ associato con un unico 24 bit VXLAN Network Identifier differente chiamato VNI;
Questo 24 bit VNI permette di scalare da il classico 4096 vlans con 802.1q a piรน di 16 milioni di possibili virtual networks;
Le VMs servers allโinterno di un dominio layer 2 utilizzano la stessa subnet IP e sono mappati con lo stesso valore VNI;
VXLAN mantiene lโindentitร di ciascuna VMs mappando il valore di MAC address della VM con il valore VNI (possiamo avere duplicate MAC address allโinterno di un datacenters domain ma con il limite che non possono essere mappati con lo stesso VNI);
VMs appartenenti ad uno specifico VNI non richiedono speciali configurazioni a supporto perchรฉ il meccanisco di encapsulation/de- encapsulation subnets ed il mapping VNI viene gestito dal gateway VTEP;
Il gateway VTEP deve essere configurato associando il dominio L2 or L3 al VNI network value e questโultimo ad un gruppo IP multicast; questโultima configurazione permette ai VTEP la costruzione di una forwarding table attraverso lโinfrastruttura di rete;
La sincronizzazione della configurazione VTEP puรฒ essere automatizzata grazie a strumenti di gestione quali VMware Orchestrator, Open, Vswitch, Rancid e/o altri.
VXLAN (Vlan Extensible LAN) viene utilizzato per i seguenti ambienti:
Data Centers:
- VMware and Vshere virtualizzazation
- Vmotion
- Multi-Tenant offrendo capacitร di scalare la limitazione classica del 802.1q Vlans
VXLAN รจ un meccanismo che permette di aggregare e tunnellizzare (VTEP) multipli layer 2 subnetwork attraverso una infrastruttura layer 3 IP network:
VXLAN viene supportato da una infrastruttura:
Multicast
- IGMP
- PIM
ย IP routing protocols:
- OSPF
- ISIS
- BGP
IP Gateway:
VTEP (Vlan Tunnel End Point) provvede ad incapsulare e decapsulare servizi layer 2 to VXLAN.
VTEP possono essere:
- Virtual Bridges Hipervisor
- VXLAN aware VM application
- Router/Switch hardware
Nel caso il MAC sorgente ed il MAC destinazione si trovino nella stesso host, il traffico viene performato allโinterno del Vswitch e nessuna azione VXLAN (encapsulation/decapsulation) viene intrapresa;
Se, invece, il MAC destinazione si trova su altro ESX host, le frames vengono encapsulate in una VXLAN header dal VTEP sorgente e trasmesse al VTEP destinazione, sulla base delle loro informazioni contenute nella forwarding ย table;
Per traffico di tipo unknow unicast oppure broadcast/multicast, il VTEP sorgente encapsula il frames in un VXLAN header ed associa esso ad una VNI multicast address (questo include all ARPs request, Boot-p/DHCP request, etc..); i VTEP destinazione (residenti in altri ESX host) ricevono questo multicast frames e lo processano come se fosse un frames unicast.
VXLAN Header

VXLAN Header:
- Flag: composto da 8 bits dove il 5ยฐ bit (flag) indica un valido valore VNI (i restanti sette bits sono riservato e settati a zero)
- VNI: valore di 24 bits, provvede a rilasciare un unico identifier per segmento VXLAN; possiamo avere piรน di 16 milioni di VXLAN segments allโinterno di un singolo dominio L2
UDP Header:
- Outer UDP: si riferisce alla porta sorgente allโinterno dellโ outer UDP Header ed รจ dinamicamente assegnata dal VTEP sorgente; la porta di destinazione รจ tipicamente la ย ย ย ย ย well-know UDP port 4789 (puรฒ comunque variare su base implementazione)
- UDP Checksum: dovrebbe essere settato a zero (0x0000) dal VTP sorgente; nel caso il VTEP destinazione riceve un checksum non uguale a zero, la frame dovrebbe essere scartata
IP Header:
- Protocol: settato al valore 0x11 ed indica un UDP packets
- IP sorgente: รจ lโindirizzo IP del VTEP sorgente associato con la inner frame source
- IP destinazione: รจ lโindirizzo IP del VTEP destinazione corrispondente alla inner frame destination
Ethernet Header:
- Outer Ethernet: rappresenta lโindirizzo MAC del VTP sorgente associato con la inner frame source mentre il destination MAC address รจ lโindirizzo MAC del routing next- hop per raggiungere il VTEP destinazione (lโouter Ethernet header puรฒ essere taggato con un IEEE 802.1q per il trasporto in rete)
- VLAN: default 802.1q tagged protocol identifier
- Ethertype: settato a 0x0800 per identificare un pacchetto IPv4
VXLAN encapsulaton header aggiunge 50 byte ad un frame Ethernet; pertanto รจ richiesto lโuso di jumbo frame settato;
VXLAN richiede una buona quantitร di banda per supportare il traffico; รจ preferibile progettare una rete VXLAN con un troughput di almeno 10Gb;
Lโuso di IP standard aiuta VXLAN ad offrire opzioni di Vmotion VM su lunga distanza e alta affidabilitร ;
Assicurare sempre che VXLAN Vmotion /HA heartbit round trip delay non superi la soglia di 10 msec (ad esempio nei casi di disaster recovery oppure mirrored data centers application);
IP multicast services รจ usato per pacchetti di tipo unknow unicast, broadcast/multicast allโinterno di un dominio VXLAN;
ร da settare sempre un gruppo multicast per ogni VNI segment;
PIM sparse, Dense sparse e BIDIR (Birectional PIM) provvedono servizi multicast per VXLAN
Feature capability | 802.1q VLAN | VXLAN |
Number of virtual network | 4K: limited by spanning tree | 16+ million: limited by number of multicast groups supported by multicast network |
Network diameter | As far as 802.1q permitted | As far as PIM multicast groups permitted |
Network packet size | 1.5K or 9K | Add 50 bytes to VXLAN header |
Multicast requirement | NO | PIM, SM, DM, BIDIR (number of group defines number of virtual network |
Routing support | Any 802.1q capable router/switch | Any router or switch working with Vmware Vshield, vEdge, and VTEP gateway routers |
ARP cache | Limits the VM supported per vlan | Cache on Vmware or VTEP limit VMs supported per VNI |
MAC table | VM MAC address count against switch MAC table limits | VTEP MAC address count against switch MAC table limits |
