Introduzione
Questo documento risponde alle domande più frequenti relative a Multiprotocol Label Switching (MPLS) da un livello principiante.
Che cos'è Multi-Protocol Label Switching (MPLS)?
MPLS è una tecnologia di inoltro di pacchetti che utilizza etichette per prendere decisioni relative all'inoltro dei dati. Con MPLS, l'analisi dell'intestazione di layer 3 viene eseguita una sola volta (quando il pacchetto entra nel dominio MPLS). L'ispezione delle etichette determina l'inoltro successivo dei pacchetti. MPLS offre le seguenti applicazioni vantaggiose:
Inoltre, riduce il sovraccarico di inoltro sui router core. Le tecnologie MPLS si applicano a qualsiasi protocollo a livello di rete.
Che cos'è un'etichetta? Qual è la struttura dell'etichetta?
Un'etichetta è un identificatore breve, a quattro byte, a lunghezza fissa, significativo a livello locale utilizzato per identificare una classe FEC (Forwarding Equivalence Class). L'etichetta applicata a un pacchetto specifico rappresenta la classe FEC (Forwarding Equivalence Class) a cui il pacchetto è assegnato.

-
Etichetta - Valore etichetta (non strutturato), 20 bit
-
Exp - Uso sperimentale, 3 bit; attualmente utilizzato come campo CoS (Class of Service)
-
S - Parte inferiore dello stack, 1 bit
-
TTL - Time to Live, 8 bit
Dove verrà applicata l'etichetta in un pacchetto?
L'etichetta viene applicata tra l'intestazione del livello di collegamento dati (livello 2) e l'intestazione del livello di rete (livello 3). La parte superiore dello stack di etichette viene visualizzata per prima nel pacchetto, mentre la parte inferiore viene visualizzata per ultima. Il pacchetto del livello di rete segue immediatamente l'ultima etichetta nello stack di etichette.

Che cos'è una FEC?
Una FEC è un gruppo di pacchetti IP che vengono inoltrati nello stesso modo, sullo stesso percorso e con lo stesso trattamento. Una FEC può corrispondere a una subnet IP di destinazione, ma può anche corrispondere a qualsiasi classe di traffico considerata significativa da Edge-LSR. Ad esempio, tutto il traffico con un certo valore di precedenza IP può costituire una funzione FEC.
Che cos'è un router upstream label switch (LSR)? Che cos'è un LSR downstream?
Upstream e downstream sono termini relativi nel mondo MPLS. Si riferiscono sempre a un prefisso (più propriamente, una FEC). Questi esempi spiegano ulteriormente questo aspetto.

Per FEC 10.1.1.0/24, R1 è l'LSR a valle di R2.
Per FEC 10.1.1.0/24, R2 è l'LSR a monte di R1.

Per FEC 10.1.1.0/24, R1 è l'LSR a valle di R2 e R2 è l'LSR a valle di R3.

Per FEC 10.1.1.0/24, R1 è l'LSR a valle di R2. Per FEC 10.2.2.0/24, R2 è l'LSR a valle di R1.
I dati fluiscono da monte a valle per raggiungere tale rete (prefisso).

La tabella di routing R4 ha R1, R2 e R3 come hop successivi per raggiungere il valore 10.1.1.0/24.
R3 è un LSR downstream per R4 per 10.1.1.0/24?
Sì, il traffico scorre a valle da R4 a R3 per 10.1.1.0/24.
Che cosa significano i termini in entrata, in uscita, locale e remoto quando si fa riferimento alle etichette?
Prendere in considerazione R2 e R3 in questa topologia. R2 distribuisce un'etichetta L per FEC F a R3. R3 utilizza l'etichetta L quando inoltra i dati a FEC-F (perché R2 è il suo LSR a valle per FEC-F). In questo scenario:

-
L è l'etichetta in ingresso per F su R2
-
L è l'etichetta in uscita per FEC-F su R3
-
L è l'associazione locale per FEC F su R2
-
L è l'associazione remota per FEC-F su R3
Un LSR può trasmettere/ricevere un pacchetto IP nativo (non MPLS) su un'interfaccia MPLS?
Sì, se l'IP è abilitato sull'interfaccia. I pacchetti nativi vengono ricevuti/trasmessi come al solito. L'IP è solo un altro protocollo. I pacchetti MPLS hanno una codifica Layer 2 diversa. L'LSR ricevente riconosce il pacchetto MPLS, in base alla codifica di layer 2.
Un LSR può ricevere/trasmettere un pacchetto etichettato su un'interfaccia non MPLS?
No. I pacchetti non vengono mai trasmessi su un'interfaccia che non è abilitata per quel protocollo. MPLS dispone di un determinato codice Ethertype associato (così come IP, IPX e Appletalk dispongono di Ethertype univoci). Quando un router Cisco riceve un pacchetto con un Ethertype non abilitato sull'interfaccia, lo scarta. Ad esempio, se un router riceve un pacchetto Appletalk su un'interfaccia per cui Appletalk non è abilitato, il pacchetto viene scartato. Analogamente, se si riceve un pacchetto MPLS su un'interfaccia che non ha MPLS abilitato, il pacchetto viene scartato.
Quali piattaforme e Cisco IOS supportano MPLS?
Cisco serie 2691, 3640, 3660, 3725, 3745, 6400-NRP-1, 6400-NRP-2SV, 6400-NSP, Catalyst 5000 con Route Switch Module (RSM), 7200, 7301, 7400, 7500, Catalyst 6500/Cisco 76 La serie 900 con WS-SUP720-3B e WS-SUP720-3BXL, Gigabit Switch Router (GSR), Route Processor Module (RPM), Universal Broadband Router (UBR) 7200, AS5350 e IGX8400-URM supporta tutti MPLS.
Queste piattaforme supportano il Cisco Tag Distribution Protocol (TDP) come protocollo di distribuzione delle etichette.
Le informazioni su Label Distribution Protocol (LDP), Resource Reservation Protocol (RSVP) e Border Gateway Protocol (BGP) sono disponibili con lo strumento Software Advisor (solo utenti registrati). Software Advisor fornisce un elenco completo delle funzionalità supportate nelle diverse versioni di Cisco IOS e sulle diverse piattaforme.
Il tunnel GRE (Generic Routing Encapsulation) ha un sovraccarico di 24 byte. Qual è il sovraccarico di un tunnel LSP MPLS?
Un tunnel MPLS Label-Switched Paths (LSP) ha un'etichetta (quattro byte) o due etichette (ad esempio, quando si utilizza Link Protection Fast Reroute) del sovraccarico. A differenza di un tunnel GRE, MPLS non modifica l'intestazione IP. Al contrario, lo stack di etichette viene imposto sul pacchetto che prende il percorso del tunnel.
Come fa l'LSR a sapere qual è l'etichetta superiore, l'etichetta inferiore e l'etichetta centrale della pila di etichette?
L'etichetta immediatamente dopo l'intestazione di livello 2 è l'etichetta superiore, mentre l'etichetta con il bit S impostato su 1 è l'etichetta inferiore. Nessuna applicazione richiede LSR per leggere/identificare le etichette centrali. Tuttavia, un'etichetta è un'etichetta centrale se non si trova nella parte superiore dello stack e il bit S è impostato su 0.
Qual è l'intervallo dei valori di etichetta? Valori di etichetta riservati Che cosa significano i valori riservati?
Questi valori si trovano anche nella RFC3032 - MPLS Label Stack Encoding.
In teoria, l'intervallo è compreso tra 0 e (220-1). I valori di etichetta da 0 a 15 sono riservati, mentre i valori da 4 a 15 sono riservati per utilizzi futuri. I valori da 0 a 3 sono definiti come segue:
-
Il valore 0 rappresenta l'etichetta NULL esplicita IPv4. Questa etichetta indica che lo stack di etichette deve essere scaricato e che l'inoltro del pacchetto deve essere basato sull'intestazione IPv4. In questo modo i bit di Exp rimangono sicuri fino al router di uscita. Viene utilizzato nelle funzionalità QoS basate su MPLS.
-
Il valore 1 rappresenta l'etichetta di avviso del router. Quando un pacchetto ricevuto contiene questo valore di etichetta nella parte superiore dello stack di etichette, viene consegnato a un modulo software locale per l'elaborazione. L'effettivo inoltro del pacchetto è determinato dall'etichetta presente sotto lo stack. Tuttavia, se il pacchetto viene inoltrato ulteriormente, l'etichetta di avviso del router deve essere rinviata allo stack di etichette prima dell'inoltro. L'uso di questa etichetta è analogo a quello dell'opzione di avviso del router nei pacchetti IP (ad esempio, ping con opzione record route).
-
Il valore 2 rappresenta l'etichetta NULL esplicita IPv6. Indica che lo stack di etichette deve essere aperto e che l'inoltro del pacchetto deve essere basato sull'intestazione IPv6.
-
Il valore 3 rappresenta l'etichetta NULL implicita. Si tratta di un'etichetta che può essere assegnata e distribuita da un LSR. Tuttavia, non viene mai visualizzato nell'incapsulamento. Indica che l'LSR estrae l'etichetta superiore dallo stack e inoltra il resto del pacchetto (con o senza etichetta) tramite l'interfaccia in uscita (in base alla voce in Lfib). Sebbene questo valore non venga mai visualizzato nell'incapsulamento, deve essere specificato nel protocollo Label Distribution Protocol, pertanto viene riservato.
Quali protocolli e numeri di porta vengono utilizzati da LDP e TDP per distribuire le etichette ai peer LDP/TDP?
Il protocollo LDP utilizza la porta TCP 646 e il protocollo TDP utilizza la porta TCP 711. Queste porte vengono aperte sull'interfaccia del router solo quando sull'interfaccia è configurato mpls ip. L'utilizzo del protocollo TCP come protocollo di trasporto garantisce la consegna affidabile delle informazioni LDP/TDP con un solido controllo del flusso e meccanismi di gestione della congestione.
Quali restrizioni esistono per il supporto MPLS sugli switch Catalyst 6500 e 7600 Optical Services Router (OSR)?
L'interfaccia connessa al dominio MPLS deve utilizzare uno degli Optical Services Module (OSM) (ad esempio, qualsiasi modulo che utilizzi il complesso Parallel Express Forwarding (PXF)) o un'interfaccia nel modulo FlexWAN. La stessa restrizione esiste per la VPN di livello 3 MPLS. In altre parole, il frame IP deve entrare in un'interfaccia WAN che sia un OSM o un'interfaccia in un modulo FlexWAN. Queste restrizioni non esistono su un Supervisor 720.
Dove è possibile trovare gli esempi di configurazione MPLS?
In Implementazione e configurazione sono disponibili molti documenti di configurazione MPLS: MPLS.
Quali opzioni sono disponibili per i pacchetti MPLS di bilanciamento del carico?
I pacchetti MPLS possono essere bilanciati dal carico con le informazioni dell'etichetta MPLS e/o l'indirizzo di origine e di destinazione dell'intestazione IP essenziale.
Posso configurare un trunk 802.1Q tra due switch Cisco Catalyst su siti diversi tramite una connessione MPLS?
Quando ci si connette a un sito remoto tramite MPLS, si tratta di una connessione di livello 3 e il trunk 802.1Q è un protocollo di livello 2, quindi non è possibile avere un trunk 802.1Q su una connessione MPLS. Per espandere la VLAN fornita dall'ISP, è necessario disporre di una connessione Metro Ethernet o di un tunneling 802.1Q. Nel cloud MPLS, l'ISP comunica tramite VRF (Virtual Routing and Forwarding).
per ulteriori informazioni, fare riferimento a Configurazione del tunneling IEEE 802.1Q.
Il valore MPLS EXP in uscita eredita il valore DSCP (Differentiated Services Code Point) nei pacchetti IP in arrivo per impostazione predefinita oppure il DSCP in ingresso è attendibile senza alcuna configurazione aggiuntiva su un'interfaccia abilitata per MPLS?
Sì, non sono necessarie configurazioni aggiuntive.
La funzione di inoltro DHCP funziona sulla rete VPN MPLS?
Sì, la richiesta DHCP viene inoltrata all'interno del VRF attraverso la rete VPN MPLS e l'edge del provider di servizi in uscita la invia nello stesso VRF al server DHCP.
Informazioni correlate