Che cos'è VXLAN?

Che cos'è VXLAN?

Virtual eXtensible Local-Area Network, o VXLAN, è uno standard tecnologico di virtualizzazione della rete della Task Force di Ingegneria Internet (IETF). Consente a più aziende diverse, o “tenant”, di condividere una singola rete fisica senza che un tenant riesca a vedere il traffico di rete degli altri.

Pertanto, le VXLAN sono simili alle singole unità immobiliari di un condominio: ogni appartamento è un'abitazione privata e separata all'interno di una struttura comune, così come ogni VXLAN è un segmento di rete privato e distinto all'interno di una rete fisica condivisa.

Dal punto di vista tecnico, una VXLAN consente di segmentare una rete fisica in 16 milioni di reti virtuali o logiche. Incapsula i frame Ethernet di Layer 2 in un pacchetto UDP (Protocollo di datagramma utente) di Layer 4 insieme a un header VXLAN. Se combinata con una rete privata virtuale Ethernet (EVPN), che trasporta il traffico Ethernet in reti virtualizzate utilizzando protocolli WAN, la VXLAN permette di estendere le reti Layer 2 su una rete Layer 3 IP o MPLS.

 

I vantaggi principali

Siccome le VXLAN sono incapsulate all'interno di un pacchetto UDP, possono essere eseguite su qualsiasi rete in grado di trasmettere pacchetti UDP. Il layout fisico e la distanza geografica tra i nodi della rete sottostante non hanno importanza purché i datagrammi UDP vengano inoltrati dall'endpoint del tunnel VXLAN (VTEP) che esegue l'incapsulamento al VTEP che esegue il decapsulamento. 

Quando VXLAN si combina con EVPN, gli operatori possono creare reti virtuali a partire da porte di reti fisiche su qualsiasi switch di reti fisiche che supporti lo standard e faccia parte della stessa rete Layer 3. Ad esempio, è possibile prendere una porta dallo switch A, due porte dallo switch B e un'altra porta dallo switch C e costruire una rete virtuale che appare a tutti i dispositivi collegati come un'unica rete fisica. I dispositivi che fanno parte di questa rete virtuale non potranno vedere il traffico in altre VXLAN o nel fabric di rete sottostante.

 

Problemi risolti dalla VXLAN

Così come la rapida adozione della virtualizzazione dei server ha determinato un notevole aumento dell'agilità e della flessibilità, le reti virtuali disaccoppiate dall'infrastruttura fisica sono più facili, veloci e convenienti da gestire. Ad esempio, consentono a più tenant di condividere in modo sicuro un'unica rete fisica, permettendo agli operatori di rete di scalare rapidamente ed economicamente le proprie infrastrutture per soddisfare una domanda crescente. I motivi principali per segmentare le reti sono la privacy e la sicurezza: impedire a un tenant di vedere o accedere al traffico appartenente a un altro tenant.

Gli operatori segmentano logicamente le proprie reti con un approccio simile a come implementano da tempo le LAN virtuali (VLAN) tradizionali; tuttavia, le VXLAN superano i limiti di scalabilità delle VLAN nei seguenti modi.

  • In teoria, è possibile creare fino a 16 milioni di VXLAN in un dominio amministrativo, rispetto a un massimo di 4094 VLAN tradizionali. In questo modo, le VXLAN consentono di segmentare le reti secondo la scalabilità richiesta dai cloud e service provider, supportando un numero molto elevato di tenant.
  • Le VXLAN permettono di creare segmenti di rete che si estendono tra i data center. La segmentazione tradizionale della rete basata su VLAN crea domini di broadcast, ma non appena un pacchetto contenente tag VLAN raggiunge un router, tutte le informazioni VLAN vengono rimosse. Ciò significa che le VLAN si estendono solo fino a dove può spingersi la rete Layer 2 sottostante. Questo è un problema per alcuni casi d'uso, come la migrazione di macchine virtuali (VM), che in genere tende a non attraversare i confini del Layer 3. Al contrario, la segmentazione di rete VXLAN incapsula il pacchetto originale all'interno di un pacchetto UDP. Ciò consente a un segmento di rete VXLAN di estendersi fino alla rete fisica instradata Layer 3, a condizione che tutti gli switch e i router sul percorso supportino la VXLAN, senza che le applicazioni in esecuzione sulla rete overlay virtuale debbano attraversare i confini del Layer 3. Per quanto riguarda i server connessi alla rete, essi fanno parte della stessa rete Layer 2, anche se i pacchetti UDP sottostanti possono aver attraversato uno o più router.
  • La capacità di fornire una segmentazione Layer 2 sopra una rete Layer 3 sottostante, combinata con l'elevato numero di segmenti di rete supportati, consente ai server di far parte della stessa VXLAN anche se sono distanti l'uno dall'altro, permettendo al contempo agli amministratori di rete di mantenere piccole le reti Layer 2. La presenza di reti Layer 2 più piccole contribuisce a evitare l'overflow della tabella MAC sugli switch.

 

Principali applicazioni VXLAN

I casi d'uso di VXLAN per i service provider e i cloud provider sono semplici: questi operatori hanno un gran numero di tenant, o clienti, e a causa di molteplici motivi legali, di privacy ed etici, i provider devono separare il traffico di rete di un cliente da quello di un altro.

Negli ambienti aziendali, un tenant potrebbe essere un gruppo di utenti, un reparto o un altro insieme di utenti o dispositivi segmentati in rete creati per motivi di sicurezza interna. Ad esempio, i dispositivi Internet of Things (IoT), come i sensori ambientali dei data center, sono soggetti a vulnerabilità; quindi, è una buona pratica di sicurezza isolare il traffico di rete IoT da quello delle applicazioni della rete di produzione.

 

Il funzionamento della VXLAN

Il protocollo di tunneling VXLAN incapsula i frame Ethernet Layer 2 in pacchetti UDP Layer 4, consentendo di creare sottoreti virtualizzate Layer 2 che si estendono sulle reti fisiche Layer 3. Ogni sottorete segmentata è identificata in maniera univoca da un identificatore di rete VXLAN (VNI).

L'entità che esegue l'incapsulamento e il decapsulamento dei pacchetti è definita endpoint del tunnel VXLAN (VTEP). Un VTEP può essere un dispositivo di rete indipendente, ad esempio un router o uno switch fisico o uno switch virtuale implementato su un server. I VTEP incapsulano i frame Ethernet in pacchetti VXLAN, che vengono quindi inviati al VTEP di destinazione su una rete IP o su un'altra rete Layer 3, dove vengono decapsulati e inoltrati al server di destinazione.

Per supportare i dispositivi che non possono fungere autonomamente da VTEP, come i server bare metal, i VTEP hardware, inclusi determinati switch e router Juniper, possono incapsulare e decapsulare i pacchetti di dati. Inoltre, i VTEP possono risiedere in host hypervisor, ad esempio macchine virtuali basate su kernel (KVM), per supportare direttamente i carichi di lavoro virtualizzati. Questo tipo di VTEP è noto come software VTEP.

Hardware and software VTEPs are shown above.

Gli hardware e i software VTEP sono riportati sopra.

 

What is VXLAN diagram 2

Nella figura qui sopra, quando VTEP1 riceve un frame Ethernet dalla macchina virtuale 1 (VM1) indirizzato alla macchina virtuale 3 (VM3), utilizza il VNI e la destinazione MAC per cercare nella sua tabella di inoltro il VTEP a cui inviare il pacchetto. VTEP1 aggiunge un header VXLAN che contiene il VNI al frame Ethernet, incapsula il frame in un pacchetto UDP Layer 3 e indirizza il pacchetto a VTEP2 sulla rete Layer 3. VTEP2 decapsula il frame Ethernet originale e lo inoltra a VM3. VM1 e VM3 sono del tutto ignari del tunnel VXLAN e della rete Layer 3 esistente tra loro.

Soluzioni VXLAN di Juniper Networks

I router Serie MX, gli switch serie QFX e gli switch Serie EX di Juniper Networks supportano EVPN-VXLAN e possono fungere da gateway VTEP, incapsulando/decapsulando i pacchetti VXLAN e anche interfacciare varie VXLAN.

Domande frequenti sulle VXLAN

A che cosa servono le VXLAN?

Le VXLAN vengono utilizzate per realizzare una segmentazione di rete superiore a quella che le VLAN tradizionali sono in grado di fornire. Le VLAN classiche offrono solo 4094 reti virtuali, mentre le VXLAN ne garantiscono fino a 16 milioni. La segmentazione della rete ha due utilizzi principali: consentire a più tenant di condividere un'unica rete fisica senza vedere il traffico reciproco e permettere il riutilizzo dello spazio degli indirizzi IP. È anche possibile configurare i segmenti di rete con policy di qualità del servizio (QoS) e accordi sul livello del servizio (SLA) differenziati.

Le VXLAN vengono utilizzate principalmente all'interno di grandi data center, nelle reti di service provider e operatori cloud in cui il limite di 4094 reti virtuali delle VLAN tradizionali è troppo vincolante. Ciò premesso, man mano che le VXLAN vengono supportate da un numero maggiore di switch meno costosi, iniziano a essere adottate non solo nei data center, ma anche nelle reti dei campus. 

VXLAN è uno standard?

Sì, lo standard VXLAN è stato creato nel 2014 dall'IETF ed è specificato nell'RFC 7348. 

VXLAN è uno standard Layer 3?

VXLAN è talvolta considerato un protocollo Layer 3 perché si basa su una rete di trasporto IP (Layer 3). A volte è anche ritenuto uno standard Layer 4 perché incapsula i frame Ethernet in UDP, influenzando il funzionamento dell'UDP Layer 4. 

VXLAN sostituisce VLAN?

Le VXLAN non sostituiscono completamente le VLAN; in alcune circostanze, come nel caso dei grandi data center dei service provider, è possibile utilizzare entrambi gli standard. Le VXLAN possono essere usate per segmentare la rete globale del service provider, isolando ogni cliente sulla propria VXLAN e consentendo al contempo a ciascuno di essi di creare VLAN private all'interno della VXLAN.

Qual è la differenza fondamentale tra le tecnologie VXLAN, VLAN e QinQ?

VLAN, QinQ e VXLAN sono tutti standard utilizzati per segmentare logicamente le reti fisiche in più reti virtuali. Ogni standard offre rispettivamente una maggiore scalabilità rispetto al precedente. Di solito, le reti sono segmentate per motivi di sicurezza e per supportare requisiti QoS differenziati, che in genere fanno parte degli SLA.

Le VLAN sono state le prime a essere standardizzate nel 1998; QinQ si è basato sulle VLAN per espandere il numero di reti logiche che è possibile creare. QinQ consente inoltre di supportare le VLAN aziendali e commerciali attraverso i servizi WAN pubblici. VXLAN offre la massima estensibilità e flessibilità delle tre tecnologie.

Tecnicamente, le differenze tra queste tecnologie consistono nel modo in cui etichettano e incapsulano i frame Ethernet prima della trasmissione sulle reti di comunicazione.  

Quali sono le differenze più tecniche tra VXLAN, VLAN e QinQ?

La comprensione di queste diverse tecnologie di virtualizzazione richiede una conoscenza di base del funzionamento delle reti Ethernet. Un frame Ethernet è costituito da un header con informazioni sull'inoltro dei dati, come gli indirizzi MAC e IP di origine e destinazione, e da un payload contenente i dati effettivi da trasmettere. Affinché questi frame possano essere inoltrati correttamente da una posizione all'altra, ogni elemento di rete coinvolto nella catena di comunicazione, come le schede di interfaccia di rete, gli switch e i router, deve comprendere gli standard Ethernet e di virtualizzazione presenti.

Sia VLAN che QinQ estendono la lunghezza dell'header del frame Ethernet di base, ed è quindi necessario che tutti i dispositivi di rete (sia gli endpoint che tutti i dispositivi intermedi) supportino gli standard. Al contrario, VXLAN non estende l'header del frame Ethernet, quindi richiede solo il supporto dello standard sui dispositivi che fungono da VTEP.

Lo standard VLAN, creato nel 1998, estende gli header del frame Ethernet di 4 byte, consentendo ai frame Ethernet di essere “etichettati” come appartenenti a una delle 4094 reti virtuali. QinQ estende lo standard VLAN per permettere la creazione di 4094 VLAN “private” su ciascuna delle 4094 VLAN “pubbliche”, per un totale di 16 milioni di VLAN. A questo scopo, estende anche l'header del frame Ethernet di 4 byte.

Come QinQ, lo standard VXLAN, creato nel 2014, supporta fino a 16 milioni di reti virtuali. Pur non estendendo l'header del frame Ethernet, necessita di un aumento delle dimensioni massime dei pacchetti IP, estendendo i pacchetti IPv4 da 1518 byte a 1554 byte. I pacchetti VXLAN incapsulano il frame Ethernet originale all'interno di un pacchetto UDP. Il nuovo pacchetto UDP contiene sia l'header VXLAN che l'intero frame Ethernet originale all'interno del suo payload. L'UDP, spesso utilizzato per il traffico sensibile ai ritardi, è il protocollo di comunicazione Layer 4 senza connessione della suite di protocolli Internet di base, un'alternativa a bassa latenza rispetto al protocollo TCP orientato alla connessione.  

VXLAN, VLAN e QinQ vengono, in genere, utilizzate insieme?

Ipoteticamente, è possibile utilizzare in contemporanea VLAN tradizionali, VLAN QinQ e VXLAN. Questo per la posizione degli identificatori di rete all'interno del pacchetto di dati. Le VXLAN non modificano, né estendono il formato del pacchetto UDP in cui sono incapsulate, né cambiano o estendono il frame Ethernet esterno in cui viene trasportato tale pacchetto UDP. Ciò è dovuto al fatto che i pacchetti VXLAN sono contenuti nel payload di un pacchetto UDP (e non nell'header). Essi includono un header VXLAN e l'intero frame Ethernet originale da trasmettere. Pertanto, i pacchetti VXLAN-in-UDP possono avere frame Ethernet esterni che contengono anche identificatori VLAN e QinQ.

In altre parole, in un pacchetto VXLAN, sono presenti tre punti in cui è possibile definire le reti virtuali: il frame Ethernet esterno, l'header VXLAN e il frame Ethernet interno, e ciascuno di questi insiemi di reti virtuali può essere completamente distinto l'uno dall'altro. In questo modo si può ottenere un pacchetto in cui il frame Ethernet esterno può supportare 16 milioni di reti virtuali, l'header VLXAN ne può supportare altri 16 milioni e il frame Ethernet interno ne può supportare ancora ulteriori 16 milioni.

Tuttavia, nella pratica del networking aziendale, le reti di solito si basano su VLAN o VXLAN. In genere, le tecnologie vengono combinate dai provider di servizi di rete e cloud che offrono ai clienti aziendali la possibilità di utilizzare le VLAN all'interno della propria VXLAN. Questo scenario si avvale delle VLAN sul frame Ethernet interno insieme alle funzionalità di rete virtuale dell'header VXLAN, ma non delle VLAN sul frame Ethernet esterno.

VXLAN è meglio di VLAN?

VXLAN e VLAN, pur essendo superficialmente simili, risolvono lo stesso problema in modi diversi. Questo significa che vengono utilizzate in circostanze diverse e che non si escludono a vicenda.

Oggi quasi tutti gli switch in commercio possono supportare almeno le VLAN di base e la maggior parte, compresi molti switch consumer, è in grado di supportare QinQ. Il supporto EVPN-VXLAN è in genere limitato a switch aziendali o carrier-grade più capaci.

Le VXLAN sono considerate la tecnologia più efficiente. Il motivo è che, in una rete basata su VXLAN, solo gli switch che contengono i VTEP assumono un carico aggiuntivo della tabella di look-up (LUT), e devono farlo solo per le reti virtuali per le quali dispongono di VTEP e non per l'intera rete. Questo si differenzia dalle reti basate su VLAN, come QinQ, che supporta gli stessi 16 milioni di potenziali reti virtuali delle VXLAN, ma necessita che tutti gli switch assumano il carico aggiuntivo. 

Quali sono i dettagli tecnici che garantiscono l'efficienza delle VXLAN rispetto alle VLAN QinQ?

Le VLAN QinQ richiedono che ogni dispositivo in grado di interagire con un pacchetto QinQ supporti l'header Ethernet esteso. VXLAN necessita che ogni dispositivo in grado di interagire con un pacchetto VXLAN supporti il frame Ethernet più lungo, ma che solo i dispositivi con i VTEP supportino il decapsulamento e la lettura dell'header VXLAN.

Dato che sia la VLAN tradizionale che la sua estensione QinQ aggiungono semplicemente un tag all'header del frame Ethernet, ogni switch che vede un pacchetto VLAN o QinQ memorizzerà i metadati di ogni pacchetto. Ciò comporta una rapida espansione delle LUT poiché ogni switch deve sapere dove si trova ogni singolo dispositivo nell'intera rete.

Siccome le VXLAN incapsulano il frame Ethernet originale, separano la rete in un “underlay” e in un “overlay”. L'underlay è la rete fisica che trasmette i pacchetti UDP in cui risiedono l'header VXLAN e il frame Ethernet originale. La maggior parte degli switch fisici che trasmettono questi pacchetti UDP non hanno bisogno di memorizzare le informazioni sull'header VXLAN o sul frame Ethernet originale: tutto ciò che devono sapere è dove consegnare il pacchetto UDP.

Quando il pacchetto UDP arriva a uno switch con un VTEP pertinente, il pacchetto UDP viene decapsulato e lo switch con il VTEP legge l'header VXLAN e le informazioni dell'header del frame Ethernet incapsulato, aggiungendo tali dati alla propria LUT. Di conseguenza, solo gli switch che contengono i VTEP sostengono il carico LUT aggiuntivo delle reti virtuali in una rete basata su VXLAN, e devono farlo solo per le reti virtuali per le quali dispongono di VTEP e non per l'intera rete. Questo comportamento è diverso dalle reti basate su VLAN, in cui tutti gli switch devono sostenerlo.

Una grande rete basata su VXLAN è, pertanto, molto più efficiente dal punto di vista dell'utilizzo delle risorse LUT rispetto a una basata su VLAN/QinQ. Tuttavia, la rete basata su VXLAN necessita di switch che supportino i VTEP, ossia attualmente solo quelli di fascia superiore.

Qual è la differenza tra VXLAN ed EVPN?

Tutti i tipi di LAN virtuali sono un mezzo per segmentare le reti fisiche in più reti virtuali private. Ethernet VPN (EPVN) e VXLAN vengono spesso utilizzate insieme, ma sono tecnicamente indipendenti e hanno obiettivi diversi.

Le VXLAN espandono lo spazio degli indirizzi Layer 2 da circa 4000 a circa 16 milioni per estendere le reti Ethernet su reti IP più ampie, suddividendo la rete fisica in modo che più tenant possano condividerne le risorse senza vedere il traffico reciproco. EVPN consente di creare reti virtuali che comprendono porte di switch e altre risorse di apparecchiature e domini di rete diversi. EVPN è fondamentalmente un modo per permettere ai computer, che non sono connessi alla stessa rete fisica e potrebbero essere geograficamente distanti l'uno dall'altro, di comportarsi come se fossero collegati allo stesso switch fisico, con tutti i nodi, appartenenti a tale EVPN, che ricevono trasmissioni di dati come se fossero connessi a una rete locale Layer 2 tradizionale. 

Perché utilizzare insieme VXLAN ed EVPN?

Quando si combinano queste tecnologie in una EVPN-VXLAN, si ottiene la massima flessibilità di configurazione della rete; la posizione fisica di un computer non ha alcuna influenza sulla rete a cui è connesso. In un unico switch a 32 porte, ogni porta potrebbe esporre una VXLAN diversa, nel senso che un computer collegato a una qualsiasi porta non sarebbe in grado di interfacciarsi con un altro computer collegato a un'altra porta dello stesso switch senza un router che fornisca la connettività. EVPN, tuttavia, consente di creare reti Ethernet virtuali in modo che, con un’adeguata configurazione, i computer in due città diverse possano far parte della stessa sottorete.

Quali soluzioni VXLAN offre Juniper?

Juniper offre il supporto VXLAN VTEP in diversi switch e router, oltre a opzioni per la configurazione e la gestione dei fabric per data center VXLAN ed EVPN-VXLAN:

  • Alcuni dispositivi di rete Juniper, inclusi gli switch serie QFX, gli switch Serie EX e i router universali Serie MX, possono fungere da VTEP, inoltrando pacchetti UDP contenenti gli header VXLAN e il frame Ethernet incapsulato, perché non devono essere a conoscenza dei contenuti VXLAN.
  • I fabric per data center EVPN-VXLAN possono essere gestiti manualmente tramite la CLI del sistema operativo Junos, le API di Junos OS o il fabric manager per data center Juniper Apstra.
  • I fabric di campus basati su AI di Juniper, costruiti su un overlay VXLAN con un piano di controllo EVPN, offrono un sistema efficiente e scalabile per creare e interconnettere le reti aziendali in modo coerente.
  • Alcuni firewall Juniper della Serie SRX supportano l'ispezione di sicurezza dei tunnel VXLAN.