Il meccanismo Multiprotocol Label Switching Class of Service (MPLS CoS) è una funzione che esegue servizi differenziati su ATM. Consente alla rete ATM di trattare diversi pacchetti in base al campo EXP (sperimentale) (chiamato anche CoS) dell'intestazione MPLS, che ha le stesse proprietà e può essere mappato sulla precedenza IP.
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Label | EXP |S| TTL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Questo documento spiega come utilizzare questo meccanismo all'interno di una rete principale MPLS che riceve pacchetti IP (senza bit di precedenza impostati) da diverse origini.
Multi-VC TBR utilizza percorsi diversi e nuove classi di servizio per supportare un trattamento diverso rispetto a ATM. Questo metodo consiste di un massimo di quattro circuiti virtuali di etichette (LVC) paralleli (o "Tag VC" nella terminologia precedente) e mappa a MPLS CoS. Nella tabella seguente viene illustrato il mapping predefinito:
Tipo di circuito virtuale etichetta | Class of Service | Tipo di servizio IP |
---|---|---|
Disponibile | 0 | 0,4 |
Standard | 1 | 1,5 |
Premium | 2 | 2,6 |
Controllo | 3 | 3,7 |
Ogni LSR (Label Switch Router) ha un numero di VC (da uno a quattro) corrispondente alla stessa destinazione o "multi-VC". Questi LVC paralleli vengono configurati dal router edge upstream con protocollo di distribuzione delle etichette.
Per supportare i VLAN a livello di switch, sono state introdotte quattro nuove categorie di CoS. Sono denominate classi Tagged Bit Rate (TBR) e sono servizi a portata di mano (come con le tradizionali UBR). Possono essere configurati nello stesso modo. Ciò significa che i loro pesi relativi o i limiti delle loro soglie possono essere modificati.
Classe servizio forum ATM | CoS | Peso classe relativa | Etichetta circuito virtuale |
---|---|---|---|
CBR | 2 | Non applicabile | |
VBR-RT | 2 | 8 | |
VBR-nRT | 3 | 1 | |
ABR | 4 | 1 | |
UBR | 5 | 1 | |
TBR_1 (WRR_1) | 1 | 1 | Disponibile |
TBR_2 (WRR_2) | 6 | 2 | Standard |
TBR_3 (WWR_3) | 7 | 3 | Premium |
TBR_4 (WWR_4) | 8 | 4 | Controllo |
Nota: le nuove categorie CoS sono in grassetto.
L'LSR del bordo imposta il campo MPLS CoS con Committed Access Rate (CAR) sull'interfaccia in entrata corretta. CAR può essere configurato per agire in base a un contratto o a qualsiasi altra regola specifica. L'LSR al margine della rete ATM coda le celle che contengono il pacchetto nella coda corretta (disponibile, standard, premium o controllo), a seconda della mappa CoS. Le celle passano quindi attraverso la rete MPLS ATM con lo stesso LVC. Il risultato è che, in ogni LSR ATM, le cellule ricevono un trattamento per CoS:
WFQ (Weighted Fair Queuing) per CoS è proporzionale ai pesi della classe relativa.
Per CoS Weighted Early Packet Discard (WEPD) è un metodo per scartare i pacchetti quando le code si riempiono (simile a WRED (Weighted Random Early Detection)).
Di conseguenza, per i modelli LS1010 e 8540MSR, questo comportamento per CoS viene emulato su ciascuna coda VC.
MPLS CoS supporta le unioni di VC standard. Per utilizzare un numero inferiore di VC, è possibile ridurre il numero di VC utilizzati (ad esempio, da quattro a due). Per ulteriori informazioni, fare riferimento al documento MPLS CoS over ATM: Mappa CoS per una configurazione di esempio.
L'argomento del numero di VC è trattato in Progettazione di MPLS per ATM: Quotatura dello spazio VC dell'etichetta MPLS.
Questa configurazione è stata sviluppata e testata con le seguenti versioni software e hardware:
LSR Edge
Software - Software Cisco IOS® versione 12.1(3)T; la funzione Multi-VC è stata introdotta nel software Cisco IOS versione 12.0(5)T.
Hardware: Cisco 7200 Router con PA-A1.
Nota: questa funzione funziona solo con Cisco 7200 e 7500 con PA-A1.
Core ATM LSR
Software - Qualsiasi versione software che supporti MPLS; si consigliano le versioni più recenti.
Hardware: LS1010 e 8540MSR.
Nota: per il sistema LS1010 è obbligatorio l'uso di una funzione Feature Card per-flow queueing (FC-PFQ).
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
In questa sezione vengono presentate le informazioni necessarie per configurare le funzionalità descritte più avanti nel documento.
Nota: per ulteriori informazioni sui comandi menzionati in questo documento, usare lo strumento di ricerca dei comandi (solo utenti registrati).
Nel documento viene usata questa impostazione di rete:
Nel documento viene usata questa procedura di configurazione:
Per impostare quattro LVC predefiniti (con mappatura predefinita), aggiungere questa istruzione alla configurazione della sottointerfaccia ATM degli LSR dello spigolo:
tag-switching atm multi-vc
I VLAN paralleli si configurano automaticamente sugli switch ATM. Per classificare i pacchetti, usare il comando CAR (consultare la documentazione del dispositivo CAR) per impostare il campo EXPerimental dell'intestazione MPLS sul valore desiderato. Questo esempio imposta su 1 il CoS di tutti i pacchetti in entrata sull'interfaccia Ethernet 1/1 (e imposta la mappa su "standard"):
interface Ethernet1/1 rate-limit input 8000 1500 200 conform-action set-mpls-exp-transmit 1 exceed-action set-mpls-exp-transmit 1
È inoltre possibile eseguire il controllo del traffico e impostare il valore CoS su 2 (mappa su "premium") per il traffico conforme e su 0 (mappa su "available") per il traffico che supera:
interface Ethernet1/1 rate-limit input 64000 8000 16000 conform-action set-mpls-exp-transmit 2 exceed-action set-mpls-exp-transmit 0
Nota: è possibile utilizzare anche il comando tag-switching atm vpi 2-4, ma non è obbligatorio specificare gli identificatori di percorso virtuale (VPI) da utilizzare per MPLS.
Nota: ricordare di configurare ip cef (ip cef distribuito su Cisco 7500) sulla configurazione generale dei router.
Nel documento vengono usate queste configurazioni:
Rapido |
---|
! interface Loopback0 ip address 223.0.0.12 255.255.255.255 ! interface Loopback2 ip address 7.7.7.7 255.255.255.0 ! ! interface FastEthernet0/1 ip address 150.150.0.2 255.255.255.0 duplex auto speed auto ! ! router ospf 1 network 7.7.7.7 0.0.0.0 area 0 network 150.150.0.0 0.0.0.255 area 0 network 223.0.0.0 0.0.0.255 area 0 ! |
Alcazaba |
---|
! ip cef ! ! interface Loopback0 ip address 223.0.0.3 255.255.255.255 ! interface Loopback1 ip address 1.1.1.1 255.255.255.255 ! interface Ethernet1/1 ip address 150.150.0.1 255.255.255.0 rate-limit input 64000 32000 64000 conform-action set-mpls-exp-transmit 2 exceed-action set-mpls-exp-transmit 1 no ip mroute-cache ! ! interface ATM4/0 no ip address no ip mroute-cache no atm ilmi-keepalive ! interface ATM4/0.1 tag-switching ip address 10.0.0.13 255.255.255.252 tag-switching atm multi-vc tag-switching atm vpi 2-4 tag-switching ip ! router ospf 1 network 1.1.1.1 0.0.0.0 area 0 network 10.0.0.0 0.0.0.255 area 0 network 150.150.0.0 0.0.0.255 area 0 network 223.0.0.3 0.0.0.0 area 0 ! |
Capri |
---|
! interface Loopback1 ip address 223.0.0.6 255.255.255.255 no ip directed-broadcast ! ! interface ATM3/0/2 ip address 10.0.0.14 255.255.255.252 no ip directed-broadcast tag-switching atm vpi 2-4 tag-switching ip ! interface ATM3/1/2 ip address 10.0.0.10 255.255.255.252 no ip directed-broadcast tag-switching atm vpi 2-4 tag-switching ip ! router ospf 2 network 10.0.0.0 0.0.0.255 area 0 network 223.0.0.6 0.0.0.0 area 0 ! |
Goldorak |
---|
! interface Loopback0 ip address 223.0.0.2 255.255.255.255 no ip directed-broadcast ! interface ATM0/1/0 ip address 10.0.0.9 255.255.255.252 no ip directed-broadcast tag-switching atm vpi 2-4 tag-switching ip ! ! interface ATM0/1/3 ip address 11.0.0.1 255.255.255.252 no ip directed-broadcast tag-switching atm vpi 5-7 tag-switching ip ! ! router ospf 1 network 10.0.0.0 0.0.0.255 area 0 network 11.0.0.0 0.0.0.255 area 0 network 223.0.0.2 0.0.0.0 area 0 ! |
Ischia |
---|
! ip cef ! interface Loopback0 ip address 223.0.0.11 255.255.255.255 ! interface Loopback1 ip address 2.2.2.2 255.255.255.255 ! ! interface ATM3/0.158 tag-switching ip address 11.0.0.2 255.255.255.252 tag-switching atm multi-vc tag-switching atm vpi 5-7 tag-switching ip ! router ospf 1 log-adjacency-changes network 2.2.2.2 0.0.0.0 area 0 network 11.0.0.0 0.0.0.255 area 0 network 223.0.0.11 0.0.0.0 area 0 ! |
Per verificare che la configurazione funzioni correttamente, consultare questa sezione.
Lo strumento Output Interpreter (solo utenti registrati) (OIT) supporta alcuni comandi show. Usare l'OIT per visualizzare un'analisi dell'output del comando show.
Su un LSR del router:
show tag-switching forwarding-table
mostra dettagli tabella di inoltro commutazione tag
Su uno switch ATM:
show tag-switching atm-tdp binding
show atm vc interface<interface> <vci/vpi>
Per verificare che la configurazione funzioni correttamente, consultare questa sezione.
Lo strumento Output Interpreter (solo utenti registrati) (OIT) supporta alcuni comandi show. Usare l'OIT per visualizzare un'analisi dell'output del comando show.
Per controllare le connessioni multi-VC su un LSR perimetrale, è possibile usare il tradizionale comando show tag-switching forwarding-table. Per controllare in modo specifico il VCD (Virtual Circuit Descriptor) o l'identificatore del percorso virtuale/l'identificatore del canale virtuale (VPI/VCI), il comando deve essere specifico di una destinazione e terminare con la parola detail.
Alcazaba#show tag-switching forwarding-table Local Outgoing Prefix Bytes tag Outgoing Next Hop tag tag or VC or Tunnel Id switched interface 16 Untagged 7.7.7.0/24 0 Et1/1 150.150.0.2 17 Untagged 10.0.0.0/16 0 Et1/1 150.150.0.2 18 Untagged 158.0.0.0/8 0 Et1/1 150.150.0.2 19 Untagged 223.0.0.12/32 0 Et1/1 150.150.0.2 20 Untagged 7.7.7.7/32 570 Et1/1 150.150.0.2 21 Multi-VC 10.0.0.8/30 0 AT4/0.1 point2point 25 Multi-VC 2.2.2.2/32 0 AT4/0.1 point2point 32 Multi-VC 223.0.0.2/32 0 AT4/0.1 point2point 34 Multi-VC 223.0.0.6/32 0 AT4/0.1 point2point 36 Multi-VC 11.0.0.0/30 0 AT4/0.1 point2point 37 Multi-VC 223.0.0.11/32 0 AT4/0.1 point2point Alcazaba#show tag-switching forwarding-table 2.2.2.2 32 detail Local Outgoing Prefix Bytes tag Outgoing Next Hop tag tag or VC or Tunnel Id switched interface 25 Multi-VC 2.2.2.2/32 0 AT4/0.1 point2point available 2/61(882), standard 2/62(883), premium 2/63(884), control 2/64(885), MAC/Encaps=4/8, MTU=4470, Tag Stack{Multi-VC} 04F48847 004F4000 Per-packet load-sharing
Su ciascun LSR ATM, è possibile anche mappare i diversi VC da un'interfaccia all'altra (con il comando show tag-switching atm-tdp bindings) con le rispettive classi di servizio (comando show atm vc interface<ATM interface> <vpi> <vci>).
Capri#show tag-switching atm-tdp bindings Destination: 2.2.2.2/32 Transit ATM3/0/2 2/61 Active -> ATM3/1/2 2/69 Active, CoS=available Transit ATM3/0/2 2/62 Active -> ATM3/1/2 2/70 Active, CoS=standard Transit ATM3/0/2 2/63 Active -> ATM3/1/2 2/71 Active, CoS=premium Transit ATM3/0/2 2/64 Active -> ATM3/1/2 2/72 Active, CoS=control Destination: 10.0.0.8/30 Tailend Switch ATM3/0/2 2/97 Active -> Terminating Active, CoS=available Tailend Switch ATM3/0/2 2/98 Active -> Terminating Active, CoS=standard Tailend Switch ATM3/0/2 2/99 Active -> Terminating Active, CoS=premium Tailend Switch ATM3/0/2 2/100 Active -> Terminating Active, CoS=control [...] Capri#show atm vc interface atm3/0/2 2 63 Interface: ATM3/0/2, Type: oc3suni VPI = 2 VCI = 63 Status: UP Time-since-last-status-change: 02:07:24 Connection-type: TVC(O) Cast-type: multipoint-to-point-output Packet-discard-option: enabled Usage-Parameter-Control (UPC): pass Wrr weight: 2 Number of OAM-configured connections: 0 OAM-configuration: disabled OAM-states: Not-applicable Cross-connect-interface: ATM3/1/2, Type: oc3suni Cross-connect-VPI = 2 Cross-connect-VCI = 147 Cross-connect-UPC: pass Cross-connect OAM-configuration: disabled Cross-connect OAM-state: Not-applicable Threshold Group: 9, Cells queued: 0 Rx cells: 0, Tx cells: 0 Tx Clp0:0, Tx Clp1: 0 Rx Clp0:0, Rx Clp1: 0 Rx Upc Violations:0, Rx cell drops:0 Rx pkts:0, Rx pkt drops:0 Rx connection-traffic-table-index: 63998 Rx service-category: WRR_3 (WRR Bit Rate) Rx pcr-clp01: none Rx scr-clp01: none Rx mcr-clp01: none Rx cdvt: 0 (from default for interface) Rx mbs: none Tx connection-traffic-table-index: 63998 Tx service-category: WRR_3 (WRR Bit Rate) Tx pcr-clp01: none Tx scr-clp01: none Tx mcr-clp01: none Tx cdvt: none Tx mbs: none
Nelle configurazioni di esempio, tutti i pacchetti conformi vengono inviati da LVC premium. Tutti i pacchetti che superano la regola CAR vengono inviati dal LVC standard. Nei primi output, viene eseguito un ping standard che viene ripetuto 158 volte:
rapid#ping Protocol [ip]: Target IP address: 2.2.2.2 Repeat count [5]: 158 Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 158, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!! Success rate is 100 percent (158/158), round-trip min/avg/max = 1/1/5 ms
È possibile controllare se tutti i pacchetti passano attraverso il sistema LVC premium con il comando show atm vc sull'LSR del bordo come nell'output di esempio. In questo esempio, il VCD di uscita premium è 884.
Alcazaba#show atm vc 884 ATM4/0.1: VCD: 884, VPI: 2, VCI: 63 UBR, PeakRate: 155000 AAL5-MUX, etype:0x8847, Flags: 0x40C84, VCmode: 0x0 OAM frequency: 0 second(s) InARP DISABLED InPkts: 0, OutPkts: 158, InBytes: 0, OutBytes: 17064 InPRoc: 0, OutPRoc: 0 InFast: 0, OutFast: 158, InAS: 0, OutAS: 0 Giants: 0 OAM cells received: 0 OAM cells sent: 0 Status: UP Tag VC: local tag: 0
È possibile controllare anche uno switch ATM con il comando show atm vc traffic interface <interface> <vpi/vci>. In questo esempio, ciascun pacchetto ping viene trasportato in tre celle: 158*3 = 474 celle.
Capri#show atm vc traffic interface atm 3/0/2 2 63 Interface VPI VCI Type rx-cell-cnts tx-cell-cnts ATM3/0/2 2 63 TVC(O) 0 0 ATM3/0/2 2 63 TVC(I) 474 0
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
20-Sep-2018 |
Versione iniziale |