Questo documento illustra l'ordine in cui le funzionalità QoS (Quality of Service) vengono eseguite quando applicate in entrata o in uscita a un'interfaccia di un router con software Cisco IOS®. I criteri QoS sono configurati con l'interfaccia della riga di comando (MQC) QoS modulare. In questo documento viene anche descritto il contrassegno dell'intestazione IP, ad esempio DSCP e IP Precedence, e l'ordine in cui i componenti di un criterio QoS vengono valutati dal router.
I lettori di questo documento dovrebbero conoscere:
Metodologie QoS di base
L'output di esempio nella sezione Configurazioni di questo documento è stato acquisito su una piattaforma Cisco serie 7513 con software Cisco IOS versione 12.2.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
La classificazione è il processo di definizione delle classi di traffico che suddividono il traffico in categorie e gruppi di flussi. La classificazione definisce i "criteri di corrispondenza" per ciascuna classe di traffico che deve essere gestita da un criterio QoS. In particolare, definisce il "filtro del traffico" in base al quale i pacchetti vengono confrontati quando viene applicata una policy sul servizio.
Sia le piattaforme distribuite che quelle non distribuite associano i pacchetti a una singola classe in una mappa dei criteri. La corrispondenza termina alla prima classe corrispondente. Se due classi all'interno di una mappa dei criteri corrispondono alla stessa precedenza IP o allo stesso intervallo di indirizzi IP, il pacchetto appartiene sempre alla prima classe corrispondente. Per questo motivo, l'ordine delle classi in una mappa dei criteri è molto importante.
Questo metodo di classificazione è denominato "classificazione comune" e presenta i seguenti vantaggi:
Accurata contabilizzazione ed evitare i problemi di doppia contabilizzazione che si sono verificati prima della "classificazione comune".
Riduce l'impatto degli Access Control List (ACL) sulla CPU, in quanto l'ACL viene controllato una volta per classe, anziché una volta per funzionalità.
Ricerca più rapida delle intestazioni dei pacchetti a causa della memorizzazione nella cache.
La classificazione comune viene attivata automaticamente quando si associa una mappa dei criteri di input o output con il comando service-policy.
La tabella mostra l'ordine delle operazioni con classificazione comune. È importante comprendere dalla tabella quando la classificazione avviene nel contesto di funzionalità QoS. Sul percorso in entrata, un pacchetto viene classificato prima di essere commutato. Sul percorso in uscita, un pacchetto viene classificato dopo essere stato commutato.
In entrata | In uscita |
---|---|
|
|
Nota: il riconoscimento NBAR (Network-Based Application Recognition) in entrata viene eseguito dopo gli ACL e prima del routing basato su criteri.
Sono state implementate modifiche importanti relative all'ordinamento delle funzionalità e all'utilizzo del valore contrassegnato. Queste modifiche includono lo spostamento delle funzioni di input CAR, input MAC e IP precedence accounting prima della classificazione dell'output MQC:
La limitazione della velocità di ingresso, o CAR, si applica ai pacchetti che seguono il percorso di commutazione del processo e destinati al router. In precedenza, solo i pacchetti scambiati attraverso il router utilizzando il protocollo CEF potevano avere limitazioni di velocità.
I nuovi valori di precedenza IP impostati dall'input CAR o QPPB possono essere utilizzati per selezionare un circuito virtuale (VC) in un bundle VC ATM.
Per la classificazione dei pacchetti di output MQC è possibile utilizzare i valori di IP precedence, DSCP (Differentiated Services Code Point) e QoS group impostati dall'CAR di input o dal QPB.
Un'applicazione frequente di QoS consiste nel contrassegnare un pacchetto e quindi applicare un'azione che tenga conto del valore contrassegnato sulla stessa interfaccia o sullo stesso router. È possibile configurare sia l'indicazione che altre azioni QoS con la classificazione comune.
È possibile notare i pacchetti con le seguenti funzioni QoS:
comando set con contrassegno basato su classi
comando di polizia con polizia basata su classi
AUTO
In questa tabella viene indicato se un valore contrassegnato viene considerato da un'azione QoS in un criterio servizio.
Posizione del criterio | Valore utilizzato dalle azioni dei criteri in uscita |
---|---|
Contrassegnare e applicare l'azione QoS nello stesso criterio. | Le azioni QoS utilizzano il valore originale del pacchetto quando è classificato in genere. Il pacchetto trasporterà il nuovo valore quando verrà trasmesso e il router successivo utilizzerà il nuovo valore. |
Contrassegna con criterio in ingresso e applica azione QoS con criterio in uscita. | Le azioni QoS utilizzano il valore nuovo o contrassegnato quando classificano il traffico in base al criterio in uscita. |
Sul percorso in uscita, la classificazione comune viene eseguita prima dell'applicazione di qualsiasi funzionalità QoS. Di conseguenza, tutte le funzionalità QoS applicate ai criteri in uscita agiscono sul valore di priorità originale. Se è necessario eseguire azioni basate su un valore contrassegnato sullo stesso router, contrassegnare i pacchetti sull'interfaccia in arrivo e applicare altre azioni QoS basate su questa nuova priorità sull'interfaccia in uscita.
Le configurazioni riportate in questa sezione utilizzano il seguente diagramma di rete:
Nota: il modulo Multilayer Switch Feature Card (MSFC) funziona come host.
In questo esempio viene mostrato come l'ordine delle operazioni può influire sul contrassegno dei pacchetti.
Configurazione separata dei criteri di contrassegno e forma |
---|
class-map match-all In_Mark match any policy-map In_Bound class In_Mark set ip precedence 5 !--- Use Private address below: interface FastEthernet4/0/0 ip address 10.20.3.2 255.255.255.0 ip route-cache distributed service-policy input In_Bound !--- Apply the input policy for class-based marking. class-map match-all Out_Shaper match ip precedence 5 ! policy Map Outbound_Shaper class Out_Shaper shape average 64000 256 256 !--- Use Private address below: interface Serial2/0/0 ip address 172.16.20.1 255.255.255.252 ip route-cache distributed service-policy output Outbound_Shaper !--- Apply the output policy for class-based shaping. |
Completare i seguenti passaggi per confermare le regole di marcatura e modellazione:
Usare il comando ping per individuare l'indirizzo di destinazione 172.16.20.2. Il ping corrisponde ai criteri della mappa di classe denominata "In_Mark".
msfc#ping 172.16.20.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 40.1.44.2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 8/9/12 ms
Utilizzare il comando show policy-map interface fast 4/0/0 per visualizzare i contatori delle corrispondenze del criterio di contrassegno basato su classi di input. Il meccanismo di classificazione viene associato correttamente ai pacchetti IP e il valore di precedenza IP viene contrassegnato con cinque.
7513#show policy-map interface fast 4/0/0 FastEthernet4/0/0 Service-policy input: In_Bound Class-map: In_Mark (match-all) 5 packets, 570 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: any QoS Set ip precedence 5 Packets marked 5 Class-map: class-default (match-any) 0 packets, 0 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: any
Utilizzare il comando show policy-map interface serial 2/0/0 per visualizzare i contatori delle corrispondenze del criterio di class-based shaping in uscita. Il meccanismo di classificazione corrisponde correttamente al valore di precedenza IP contrassegnato cinque nell'intestazione del pacchetto e accoda i pacchetti alla classe corretta.
7513#show policy-map interface serial 2/0/0 Serial2/0/0 Service-policy output: Outbound_Shaper Class-map: Out_Shaper(match-all) 5 packets, 520 bytes 5 minute offered rate 0 BPS, drop rate 0 BPSMatch: ip precedence 5 queue size 0, queue limit 16 packets output 5, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0 Shape: cir 64000, Bc 256, Be 256 output bytes 520, shape rate 0 BPS Class-map: class-default (match-any) 0 packets, 0 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: any (1327)
È possibile verificare cosa accade quando si configura una singola regola di servizio che applica sia il shaping che il contrassegno a una classe di traffico, come in questo esempio.
Configurazione del criterio di contrassegno e forma singoli |
---|
class-map match-all prec5 match any ! policy-map shape_five class prec5 set ip precedence 5 shape average 64000 256 256 int serial1/0/0 service-policy out shape_five |
L'output del comando show policy-map interface serial 2/0/0 mostra che il router ha contrassegnato i cinque pacchetti ping, ma questi sono stati accodati alla classe predefinita della classe. I meccanismi di classificazione QoS su questo router non hanno considerato il valore aggiunto nel campo della precedenza IP.
7513#show policy-map interface serial 2/0/0 Serial2/0/0 Service-policy output: shape_five Class-map: prec5 (match-all) 0 packets, 0 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: any queue size 0, queue limit 16 packets output 0, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0 QoS Set ip precedence 5 Packets marked 5 Shape: cir 64000, BC 256, Be 256 output bytes 0, shape rate 0 BPS Class-map: class-default (match-any) 5 packets, 520 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: any
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
15-Feb-2008 |
Versione iniziale |