Le celle ATM sono composte da 48 byte di payload e 5 byte di intestazione. Sia le intestazioni UNI (User-Network Interface) che NNI (Network-to-Network Interface) includono il campo CLP (Cell Loss Priority) a 1 bit, che indica la priorità di rilascio della cella in caso di congestione estrema durante il passaggio attraverso la rete ATM.
Un campo a 1 bit indica che esistono due valori: 0 per indicare una priorità più alta e 1 per indicare una priorità più bassa. In altre parole, impostando il bit CLP su 1 si riduce la priorità delle celle e si aumenta la probabilità che la cella venga eliminata quando la rete ATM sperimenta code e linee fisiche congestionate.
In genere, solo gli switch ATM impostano il bit CLP. L'interfaccia di un router Cisco ATM o il lato utente di un'interfaccia UNI non impostano mai questo bit. Di recente, come parte del set di funzionalità Cisco robuste Quality of Service (QoS), le interfacce del router Cisco ATM possono essere configurate per impostare il bit CLP come parte di una policy dei servizi applicata a un particolare circuito virtuale (VC).
In questo documento vengono illustrati i due comandi set-clp e set-clp-broadcast che possono essere usati per impostare il bit CLP sui router Cisco. Inoltre, viene chiarito come il bit CLP venga utilizzato da un router e da uno switch.
Nessun requisito specifico previsto per questo documento.
Il documento può essere consultato per tutte le versioni software o hardware.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Il flusso di cella di una connessione virtuale può essere suddiviso logicamente in tre flussi che considerano l'impostazione del bit CLP:
Il flusso di celle CLP=0+1 viene denominato flusso aggregato e include celle CLP=0 e celle CLP=1.
Sugli switch ATM Cisco campus come Catalyst serie 8500, il conteggio delle celle può essere ottenuto da un comando del software Cisco IOS® o tramite il polling Simple Network Management Protocol (SNMP). Usare il comando show atm vc interface atm per verificare il numero di celle per VC sulla riga di comando, come mostrato di seguito.
ls1010# show atm vc interface atm 0/0/0 0 50 Interface: atm0/0/0, Type: oc3suni VPI = 0 VCI = 50 Status: UP Time-since-last-status-change: 00:03:08 Connection-type: PVC Cast-type: point-to-point Packet-discard-option: disabled Usage-Parameter-Control (UPC): pass Wrr weight: 2 Number of OAM-configured connections: 0 OAM-configuration: disabled OAM-states: Not-applicable Cross-connect-interface: atm0/0/1, Type: oc3suni Cross-connect-VPI = 0 Cross-connect-VCI = 55 Cross-connect-UPC: pass Cross-connect OAM-configuration: disabled Cross-connect OAM-state: Not-applicable Threshold Group: 5, Cells queued: 0 Rx cells: 0, Tx cells: 80 TX Clp0:80, TX Clp1: 0 Rx Clp0:0, Rx Clp1: 0 !--- Per-VC cell counts based on CLP bit. Rx Upc Violations:0, Rx cell drops:0 Rx Clp0 q full drops:0, Rx Clp1 qthresh drops:0
Il comando CISCO-ATM-CONN-MIB gestisce le statistiche per VC nella tabella ciscoAtmVclTable. Questa tabella considera il valore del bit CLP quando incrementa il contatore per questi ID oggetto:
ciscoAtmVclInCells
ciscoAtmVclInClp0Celle
Celle ciscoAtmVclInClp1
Catalyst serie 8500 e Lightstream 1010 utilizzano i Connection Traffic Table Row (CTTR) per memorizzare i parametri del traffico assegnati a un circuito virtuale permanente (PVC). Quando si configura un CTTR PVC con velocità in bit variabile in tempo non reale (VBR-NRT), è possibile specificare se l'SCR (Sustainable Cell Rate) si applica al flusso cellulare scr0 o scr10.
Switch(config)# atm connection-traffic-table-row [index row-index] {vbr-rt | vbr-nrt} pcr pcr-value {scr0 | scr10} scr-value [mbs mbs-value] [cdvt cdvt_value]
I router Cisco ATM non supportano un comando equivalente che indica se modellare il flusso SCR=0 o SCR=1+0. Il comando vbr-nrt consente semplicemente di specificare una velocità di cella di picco (PCR) e un SCR.
Router(config)# interface atm 5/0 Router(config-if)# pvc 1/1 Router(config-if-atm-vc)# vbr-nrt ? <1-155000> Peak Cell Rate(PCR) in Kbps Router(config-if-atm-vc)# vbr-nrt 1000 ? <5-1000> Sustainable Cell Rate(SCR) in Kbps Router(config-if-atm-vc)# vbr-nrt 1000 500 ? <1-65535> Maximum Burst Size(MBS) in Cells
MQC (Cisco Modular QoS CLI) è un insieme speciale di comandi per la configurazione di criteri QoS su un'interfaccia o su una VC. Per ulteriori informazioni, fare riferimento al documento Cenni preliminari sull'interfaccia della riga di comando Modular Quality of Service. È possibile specificare una classe di traffico con il comando class-map, creare un criterio di traffico associando la classe di traffico a una o più funzionalità QoS utilizzando il comando policy-map, quindi collegare il criterio di traffico a un'interfaccia o a una VC con il comando service-policy.
MQC supporta due comandi per l'impostazione del bit CLP:
set atm-clp - Implementa una semplice marcatura dei pacchetti. Questo comando imposta il bit CLP su uno per tutti i pacchetti che corrispondono alla classe specificata. Non tiene conto del livello di congestione del PVC.
set-clp-transmission: implementa il monitoraggio del traffico. Questo comando non considera il livello di congestione sul PVC e imposta il bit CLP su 1 nel traffico corrispondente con una velocità che supera i valori configurati per i bit al secondo (bps). In altre parole, questo comando implementa un'azione di "violazione".
Questi comandi sono al centro delle due sezioni successive.
Il contrassegno pacchetti basato su classi è una funzione di Cisco IOS che imposta i valori nelle intestazioni dei pacchetti di livello 2 e 3 per distinguere i pacchetti in priorità più alte e più basse. Fare riferimento alla sezione Configurazione del contrassegno pacchetti basato su classi. Questa funzionalità supporta il comando set atm-CLP per contrassegnare il bit CLP su tutte le celle di un pacchetto che corrispondono alla classe specificata.
Router(config)# policy-map TEST Router(config-pmap)# class CLP Router(config-pmap-c)# set atm-clp
Per visualizzare il numero di pacchetti contrassegnati, usare il comando show policy-map interface atm.
È importante capire che il contrassegno pacchetti basato su classi non considera il livello di congestione del PVC ATM quando si imposta il bit CLP. Il comando set atm-CLP configura il router in modo che imposti il bit CLP su tutti i pacchetti corrispondenti durante i periodi di congestione e non congestione della rete VC.
A partire dal software Cisco IOS versione 12.1T, il comando set atm-CLP è supportato solo su un PA-A3 e solo sui PVC, non sugli SVC. Inoltre, è possibile contrassegnare solo i pacchetti che viaggiano sui percorsi di switching Cisco Express Forwarding (CEF). I pacchetti provenienti dal router utilizzano un metodo di commutazione Cisco IOS diverso e non possono essere contrassegnati.
A partire dal software Cisco IOS versione 12.0(23)S, la funzione di impostazione CLP ATM consente agli utenti di controllare l'impostazione del bit CLP ATM sulla scheda di linea OC-3 STM-1 ATM a 8 porte per router Internet Cisco serie 12000.
A partire dalla versione Cisco IOS 12.2(8)YN, il contrassegno di bit CLP ATM è disponibile nei router Cisco 3600 e 2600.
Nota: l'ID bug Cisco CSCdr19172 risolve un problema con i ricaricamenti del router quando si usa il comando set atm-CLP in una classe configurata per la corrispondenza nei bit sperimentali di Multiprotocol Label Switching (MPLS).
I meccanismi di monitoraggio del traffico determinano se il traffico è conforme ai valori del contratto configurato e quindi agiscono in caso di violazione del traffico eliminandolo o riscrivendo un valore di intestazione. Sui PVC ATM, è possibile configurare un router per impostare il bit CLP come azione di controllo utilizzando il comando set-CLP-transmission. Fare riferimento alla sezione Monitoraggio del traffico. Creare una mappa dei criteri, quindi configurare il comando Police con set-clp-transmission come azione.
7500(config)# policy-map police 7500(config-pmap)# class group2 7500(config-pmap-c)# police BPS burst-normal burst-max conform-action action exceed-action action violate-action action
Il comando set-clp-transmission è supportato dal software Cisco IOS versione 12.1(5)T sulle piattaforme Route Switch Processor (RSP) e dal software Cisco IOS versione 12.2(1)T sulle altre piattaforme.
Nota: in una particolare configurazione, i pacchetti con commutazione di contesto a un PVC ATM vengono sottoposti a policy. La configurazione del policer prevede una o più azioni con il parametro set-clp-transmission; tuttavia, per le celle ATM generate dai pacchetti, il bit CLP non è impostato. Questo problema si verifica solo con il policer basato su classi e i pacchetti a commutazione di contesto ed è risolto con l'ID bug Cisco CSCdw18196.
Gli switch ATM usano il bit CLP in due modi:
come azione violata con la sorveglianza del traffico.
come fattore determinante in cui le celle da rilasciare quando si verifica una congestione e le code superano una soglia.
Nelle due sezioni seguenti vengono descritti in dettaglio questi utilizzi.
Gli switch ATM del campus Cisco applicano algoritmi di controllo dei parametri di utilizzo (UPC) per determinare se la velocità delle celle provenienti da un dispositivo terminale come un router Cisco è conforme al contratto di traffico. Quando l'UPC determina che una cella non è conforme, lo switch esegue una delle seguenti azioni, a seconda della configurazione:
Passa (Pass) - Trasmette la cella senza modificare il valore CLP.
Tag - Imposta il bit CLP per indicare la priorità relativamente più bassa della cella.
Elimina (Drop) - Elimina la cella.
Pass è il comportamento UPC predefinito. Configurare un valore non predefinito su un PVC impostando il parametro upc come parte del comando atm pvc:
atm pvc vpi vci [cast-type type] [upc upc] [pd pd] [rx-cttr index] [tx-cttr index] [wrr-weight weight]
Il comando show atm vc interface atm visualizza l'impostazione UPC e il numero di violazioni Rx Upc.
ls1010# show atm vc interface atm 0/0/0 0 50 Interface: atm0/0/0, Type: oc3suni VPI = 0 VCI = 50 Status: UP Time-since-last-status-change: 00:03:08 Connection-type: PVC Cast-type: point-to-point Packet-discard-option: disabled Usage-Parameter-Control (UPC): pass !--- Confirm the correct UPC setting. Wrr weight: 2 Number of OAM-configured connections: 0 OAM-configuration: disabled OAM-states: Not-applicable Cross-connect-interface: atm0/0/1, Type: oc3suni Cross-connect-VPI = 0 Cross-connect-VCI = 55 Cross-connect-UPC: pass Cross-connect OAM-configuration: disabled Cross-connect OAM-state: Not-applicable Threshold Group: 5, Cells queued: 0 Rx cells: 0, TX cells: 80 TX Clp0:80, TX Clp1: 0 Rx Clp0:0, Rx Clp1: 0 Rx Upc Violations:0, Rx cell drops:0 !--- View the number of "Upc Violations". Rx Clp0 q full drops:0, Rx Clp1 qthresh drops:0 !--- Output suppressed.
È inoltre possibile eseguire il polling dell'oggetto gestito ciscoAtmVclUpcViolations di CISCO-ATM-CONN-MIB per raccogliere il numero totale di celle non conformi rilevate da UPC su un determinato VC.
Quando si implementano i processi di gestione del traffico e delle risorse, gli switch ATM prendono in considerazione l'impostazione CLP=1, in genere applicata solo agli switch ATM e ora ai router collegati ad ATM. L'eliminazione selettiva delle celle è il processo mediante il quale la rete elimina le celle CLP=1 quando le code di output raggiungono una soglia configurabile.
Gli switch ATM Cisco campus implementano l'eliminazione selettiva delle celle con lievi variazioni a seconda della scheda funzionalità e del modello di switch.
LightStream 1010 e Catalyst 8510 con una scheda funzionalità per accodamento di classe (FC-PCQ o FC1) supportano soglie di coda di interfaccia configurabili per ciascuna categoria di servizi ATM, ad esempio VBR-NRT o UBR. Il comando show atm interface resource atm visualizza il valore predefinito dell'87% per tutte le classi di servizio.
Switch> show atm interface resource atm 3/0/0 Resource Management configuration: Output queues: Max sizes(explicit cfg): 30000 cbr, none vbr-rt, none vbr-nrt, none abr-ubr Max sizes(installed): 30208 cbr, 256 vbr-rt, 4096 vbr-nrt, 12032 abr-ubr Efci threshold: 50% cbr, 25% vbr-rt, 25% vbr-nrt, 25% abr, 25% ubr Discard threshold: 87% cbr, 87% vbr-rt, 87% vbr-nrt, 87% abr, 87% ubr !--- Percent of queue full at which discard threshold starts. Abr-relative-rate threshold: 25% abr
Usare il comando atm output-threshold per configurare un valore non predefinito. Fare riferimento alla sezione Configurazione della gestione delle risorse.
Switch(config-if)# atm output-threshold {cbr | vbr-rt | vbr-nrt | abr | ubr} discard-threshold disc-thresh-num
Quando tutte le celle appartenenti a VC di una particolare categoria di servizi occupano per impostazione predefinita l'87% della memoria condivisa, le successive celle CLP=1 vengono eliminate.
LightStream 1010 e Catalyst 8510 con una funzione Feature Card per Flow Queuing (FC-PFQ) e Catalyst 8540, supportano dimensioni massime e minime dei limiti di coda per VC. Utilizzano la funzione dei gruppi di soglie per implementare queste code.
Un gruppo di soglia è composto da tutti i VC e i percorsi virtuali (VTP) di una singola categoria di servizi ATM. Il gruppo di soglie imposta i limiti sul numero cumulativo di celle nelle code delle connessioni virtuali nel gruppo di soglie. Quando un gruppo di soglie è congestionato (il numero cumulativo si avvicina al valore configurato delle celle massime), il numero massimo di celle nelle code per VC diminuisce dal limite di coda massimo per il gruppo al limite di coda minimo.
Nell'esempio viene mostrato come configurare un valore non predefinito del 95% per la categoria di servizi CBR, che per impostazione predefinita corrisponde al gruppo di soglie 1:
ls1010(config)# atm threshold-group 1 ? discard-threshold discard threshold as percent of queue full marking-threshold marking threshold as percent of queue full max-cells max number of cells in Threshold Group max-queue-limit max (uncongested) queue limit for this TG min-queue-limit min (congested) queue limit for this TG name name of TG ls1010(config)# atm threshold-group 1 discard-threshold ? <0-100> discard threshold percent ls1010(config)# atm threshold-group 1 discard-threshold 95
Usare il comando show atm resource per visualizzare la modifica della configurazione.
ls1010# show atm resource Resource configuration: Over-subscription-factor 8 Sustained-cell-rate-margin-factor 1% Abr-mode: relative-rate Service Category to Threshold Group mapping: cbr 1 vbr-rt 2 vbr-nrt 3 abr 4 ubr 5 Threshold Groups: Group Max Max Q Min Q Q thresholds Cell Name cells limit limit Mark Discard count instal instal instal --------------------------------------------------- 1 65535 63 63 25 % 95 % 0 cbr-default-tg 2 65535 127 127 25 % 87 % 0 vbrrt-default-tg 3 65535 511 31 25 % 87 % 0 vbrnrt-default-tg 4 65535 511 31 25 % 87 % 0 abr-default-tg 5 65535 511 31 25 % 87 % 0 ubr-default-tg 6 65535 1023 1023 25 % 87 % 0 well-known-vc-tg
Sugli switch ATM Cisco campus, è possibile visualizzare il numero di perdite da soglia della coda CLP=1 da un comando del software Cisco IOS o tramite il polling SNMP. Usare il comando show atm vc interface atm per visualizzare i valori per VC sulla riga di comando.
ls1010# show atm vc interface atm 0/0/0 0 50 Interface: atm0/0/0, Type: oc3suni VPI = 0 VCI = 50 Status: UP Time-since-last-status-change: 00:03:08 Connection-type: PVC Cast-type: point-to-point Packet-discard-option: disabled Usage-Parameter-Control (UPC): pass Wrr weight: 2 Number of OAM-configured connections: 0 OAM-configuration: disabled OAM-states: Not-applicable Cross-connect-interface: atm0/0/1, Type: oc3suni Cross-connect-VPI = 0 Cross-connect-VCI = 55 Cross-connect-UPC: pass Cross-connect OAM-configuration: disabled Cross-connect OAM-state: Not-applicable Threshold Group: 5, Cells queued: 0 Rx cells: 0, TX cells: 80 TX Clp0:80, TX Clp1: 0 Rx Clp0:0, Rx Clp1: 0 Rx Upc Violations:0, Rx cell drops:0 Rx Clp0 q full drops:0, Rx Clp1 qthresh drops:0 !--- View the number of "Rx Clp0 q full drops" and "Rx Clp1 qthresh drops." !--- Output suppressed.
Eseguire il polling dei seguenti ID oggetto di CISCO-ATM-CONN-MIB per acquisire i valori per VC con SNMP:
ciscoAtmVclClp0VcqFullCellDrops: numero totale di celle ricevute con il bit CLP non impostato, scartate perché viene superato il limite della coda per-VC. Questo contatore è valido solo se l'opzione Early Packet Discard (EPD) è disabilitata e solo nei sistemi con funzionalità FC-PFQ.
ciscoAtmVclVcqClpThreshCellDrops: numero totale di celle scartate perché la soglia di eliminazione (a differenza del limite di coda) viene superata nella coda per-VC e il bit CLP è impostato. Questo contatore è valido solo se EPD è disabilitato e solo su sistemi con funzionalità FC-PFQ.