Inhalt

Einführung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Konventionen

Konfigurieren

Netzwerkdiagramm

Beispielkonfiguration

Erweiterte CBWFQ-Konfiguration auf 7200-Routern

Überprüfen

Fehlerbehebung

Zugehörige Informationen

Einführung

Weighted Fair Queuing (WFQ) wurde für Verbindungen mit langsamer Geschwindigkeit (z. B. seriell) implementiert, um eine faire Behandlung für jede Art von Datenverkehr zu gewährleisten. Um diese Aufgabe zu erfüllen, klassifiziert WFQ den Datenverkehr in verschiedene Datenflüsse, basierend auf den zugehörigen Informationen zu Layer 3 und Layer 4 (IP-Adressen, TCP-Ports usw.). Damit dies funktioniert, müssen Sie keine Zugriffslisten definieren. Bei WFQ hat Datenverkehr mit niedriger Bandbreite gegenüber Datenverkehr mit hoher Bandbreite eine effektive Priorität. Der Datenverkehr mit hoher Bandbreite teilt sich die Übertragungsmedien proportional zu den zugewiesenen Gewichten.

WFQ unterliegt den folgenden Einschränkungen:

- Wenn der Datenverkehrsfluss erheblich zunimmt, kann WFQ nicht angepasst werden, da er nicht skalierbar ist.

- WFQ ist nicht für Hochgeschwindigkeitsschnittstellen wie ATM verfügbar.

Eine neue Funktion, Class-Based Weighted Fair Queuing (CBWFQ), wurde entwickelt, um den Einschränkungen von WFQ zu begegnen. Im Gegensatz zu WFQ können Sie mit CBWFQ Datenverkehrsklassen definieren. Nachdem Klassen definiert wurden, können Parameter angewendet werden. Diese Parameter umfassen Bandbreite und Warteschlangenlimit.

Bei Verwendung von CBWFQ wird das für eine Klasse angegebene Gewicht zum Gewicht jedes Pakets, das den Klassenkriterien entspricht. Dieses Gewicht wird von der Bandbreite abgeleitet, die Sie der Klasse zuweisen. WFQ wird dann auf diese Klassen angewendet, statt auf die Flüsse selbst angewendet zu werden. Die Klassen können mehrere Flüsse enthalten.

Im Folgenden finden Sie eine Zusammenfassung der CBWFQ-Verfügbarkeit pro VC für die Router 7200, 3600 und 2600:

- 7200: Cisco IOS® Versionen 12.0(5)T, 12.0(5)XE, 12.1(1), 12.1(1)T, 12.1(1)E und höher mit PA-A3.

- 7200 mit NSE: Cisco IOS Version 12.1(7)E und höher

- 7200 mit NSE-1 Services Accelerator: Cisco IOS Version 12.2(4)B1.

- 2600/3600 mit NM-1A-T3/E3-Modulen unterstützt LLQ/CBWFQ auf Cisco IOS-Version 12.1(5)T und höher.

- 2600/3600 mit DS3/E3-Netzwerkmodulen: Cisco IOS Version 12.1(2)T.

Hinweis: Die Cisco Express Forwarding (CEF)-Switching-Funktionalität muss verwendet werden, da CBWFQ nur CEF-Switched-Pakete überwacht.

Voraussetzungen

Anforderungen

Für dieses Dokument bestehen keine speziellen Anforderungen.

Verwendete Komponenten

Die Informationen in diesem Dokument basieren auf den folgenden Hardwareversionen:

- Cisco Router der Serien 7200, 3600 und 2600

Konventionen

Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions.

Konfigurieren

In diesem Abschnitt erhalten Sie Informationen zum Konfigurieren der in diesem Dokument beschriebenen Funktionen.

Hinweis: Um weitere Informationen zu den in diesem Dokument verwendeten Befehlen zu erhalten, verwenden Sie das Command Lookup Tool (nur registrierte Kunden).

Netzwerkdiagramm

In diesem Dokument wird die folgende Netzwerkeinrichtung verwendet:

- 1/130 ist der VPI/VCI-Wert, der an beiden Enden der PVC zwischen dem 7200 und Router A zugewiesen wird.

- Der Datenverkehrsgenerator ist an die Schnittstelle Fast-Ethernet 3/0 angeschlossen.

- Auf dem 7200 wird Cisco IOS Version 12.0(5)T ausgeführt.

- Router A wird als Empfängergerät für die Tests verwendet.

- Die Konfiguration wird auf einem 7200 durchgeführt, ist aber auf einem 2600/3600 ähnlich.

Beispielkonfiguration

Im Folgenden finden Sie die zur Implementierung von CBWFQ erforderliche Konfiguration für den 7200:

7200

class-map ixia

match input-interface FastEthernet3/0

class-map loopbacks

match access-group 102

!

policy-map mypol

class ixia

bandwidth 40000

queue-limit 40

class loopbacks

bandwidth 10000

class class-default

fair-queue

!

interface ATM2/0.130 point-to-point

ip address 14.0.0.2 255.0.0.0

no ip directed-broadcast

pvc 1/130

service-policy output mypol

vbr-nrt 100000 75000

broadcast

encapsulation aal5mux ip

!

access-list 102 permit ip host 10.0.0.1 host 11.0.0.1

Im Folgenden finden Sie einige Kommentare zur Konfiguration:

- Klassenzuordnungen klassifizieren und zuweisen Gewichtungen für Datenverkehr. Klassifizierungsparameter und Klassenzuordnungen werden an derselben Stelle definiert. In diesem Fall wird eine Klasse auf den gesamten eingehenden Datenverkehr über Fast-Ethernet 3/0 (den Datenverkehr vom Datenverkehrsgenerator) angewendet. Die andere Klasse bezieht sich auf den Datenverkehr zwischen den Loopbacks (definiert auf dem 7200 und Router A).

- Nach dem Definieren der Klassifizierungsparameter können Sie mithilfe einer Richtlinienzuordnung Datenverkehrsparameter auf diese klassifizierten Datenflüsse anwenden. In diesem Fall wird dem Datenverkehrsgenerator eine Bandbreite von 40 Mbit/s und eine Warteschlangentiefe von 40 Paketen "zugewiesen". Dem Datenverkehr zwischen Loopbacks wird eine Bandbreite von 10 Mbit/s zugewiesen.

- Die Warteschlangentiefe ist die Anzahl der Pakete, die für eine bestimmte Klasse gespeichert werden können, bevor Verwerfen eintritt. Der Standardwert ist 64 (dies ist auch die maximale Warteschlangentiefe).

- Nachdem die Datenverkehrsparameter für jede Klasse definiert wurden, wird die CBWFQ auf VC-Basis mithilfe des folgenden Befehls angewendet: service-policy [input|output] policy-map-name.

- Datenverkehr, der keiner der definierten Klassenzuordnungen entspricht, wird eine Standardklassenzuordnung (Klassenstandard) zugewiesen, die in der Richtlinienzuordnung definiert ist. Der gesamte nicht klassifizierte Datenverkehr wird mit den in dieser Standardklasse definierten Parametern verarbeitet. In diesem Fall wird das normale Weighted Fair Queuing konfiguriert.

- Für diese Beispielkonfiguration wird CBWFQ auf einem VC angewendet, kann aber auch auf einem PVC-Paket verwendet werden. Darüber hinaus kann CBWFQ als Drop-Mechanismus (wenn die Warteschlangengrenze erreicht ist) mit einer Weighted Random Early Discard (WRED) verknüpft werden.

Wichtig:

Bevor Sie die Konfigurationsaufgaben in diesem Abschnitt durchführen, müssen Sie zunächst die Klassen erstellen, die zur Unterscheidung des Datenverkehrs auf dem VC verwendet werden, und dann eine Richtlinienzuordnung definieren, die diese Klassen enthält. Sie können Klassenrichtlinien für so viele Klassen konfigurieren, wie auf dem Router definiert sind - bis zu maximal 64. Die gesamte zugewiesene VC-Bandbreite (für alle in einer Richtlinienzuordnung enthaltenen Klassen) darf jedoch 75 Prozent der verfügbaren Bandbreite des VC nicht überschreiten.

Da die CBWFQ eine garantierte Mindestbandbreite bereitstellt, können Sie CBWFQ nur auf VCs anwenden, deren Serviceklassen andere sind als UBR und UBR+.

Sie können VC WFQ und CBWFQ nicht auf UBR- und UBR+-VCs anwenden, da beide Serviceklassen Best-Effort-Klassen sind, die keine Mindestbandbreite garantieren. Wenn CBWFQ für eine VC aktiviert ist, werden alle als Teil der Service-Richtlinie konfigurierten Klassen im Fair Queuing-System installiert.

Wenn Sie eine Service-Richtlinie auf einen ATM-VC anwenden und die Richtlinie eine Funktion enthält, die nicht für die parallele Express Forwarding (PXF) aktiviert ist, werden die Pakete auf den nächsten niedrigeren Switching-Pfad angewendet. Führen Sie den Befehl show pxf acc summ aus, und suchen Sie nach einem inkrementellen Wert für Staffeln aufgrund von "Ausgabefunktion".

router#show pxf acc sum

Pkts             Dropped   RP Processed             Ignored

Total                 242      328395045                   0

10 second averages: PXF complex busy:       28%  PXF read pipeline full:   0%

PXF Statistic:

Packets RP -> PXF:

switch ip:                       0

switch raw:              556612940

qos fastsend:                    0

qos enqueue:                     0

Total:                       556612940

Packets PXF -> RP:

qos pkts:                        0

fast pkts:               228217649

drops: total                   242

"    no route               :         242

punts: total             328395045

"    not IP                 :         597

"    IP options             :         676

"    CEF no adjacency       :      186770

"    CEF receive            :      265306

"    output feature         :   327916956

Erweiterte CBWFQ-Konfiguration auf 7200-Routern

Auf Cisco 7200-Routern mit Cisco IOS 12.1(5)E, 12.1(5)T und höher können wir die Zuordnungsklassen gruppieren, um kompliziertere Klassenzuordnungen zu erstellen. Zusätzlich können wir logische Operationen Klassenzuordnungsparametern zuordnen (um zu bestimmen, ob der Datenverkehr mit einer Klasse übereinstimmt).

Sehen wir uns die folgenden Klassenzuordnungen an, um dieses Konzept zu verdeutlichen:

Erweiterte CBWFQ-Konfiguration

class-map match-all ixia

description traffic from Ixia

match input-interface FastEthernet1/0

class-map match-all ftp1

description ftp traffic initiated by the traffic generator

match class-map ixia

match class-map ftp2

class-map match-all ftp2

match access-group 103

class-map match-any test

match access-group 102

match input-interface Ethernet0/0

!

access-list 103 permit tcp any any eq ftp

!

access-list 102 permit ip host 10.1.1.1 any

Der Unterschied zwischen "match-all" und "match-any" ist wie folgt:

- Match-All: Ein Fluss wird einer Klassenzuordnung zugeordnet, wenn ALLE zugeordneten Bedingungen überprüft werden.

- match-any: Ein Fluss wird einer Klassenzuordnung zugeordnet, wenn EINE der verknüpften Bedingungen überprüft wird (nicht unbedingt alle Bedingungen).

Hier sehen Sie, dass eine Klassenzuordnung Tests mit anderen konfigurierten Klassenzuordnungen enthalten kann. In diesem Fall wird ein Flow mit ftp1 verknüpft, wenn er alle Bedingungen erfüllt, die unter class map ixia und class map ftp2 definiert sind.

Überprüfen

Dieser Abschnitt enthält Informationen, mit denen Sie überprüfen können, ob Ihre Konfiguration ordnungsgemäß funktioniert.

Bestimmte show-Befehle werden vom Output Interpreter Tool (nur registrierte Kunden) unterstützt, mit dem Sie eine Analyse der show-Befehlsausgabe anzeigen können.

- show policy-map interface atm x/y[.z] - Mit diesem Befehl können Sie Statistiken pro Warteschlange anzeigen, z. B. die Drops. Sie ist hilfreich, um die Ergebnisse einer mit der modularen Quality of Service (QoS)-Befehlszeilenschnittstelle (CLI) (MQC) von Cisco erstellten Service-Richtlinie zu überwachen. Weitere Informationen zum Interpretieren der Ausgabe dieses Befehls finden Sie unter Understanding Packet Counters in show policy-map interface Output.

7200#show policy-map interface atm 2/0.130

ATM2/0.130: VC 1/130 - output : mypol

Weighted Fair Queueing

Class ixia

Output Queue: Conversation 264

Bandwidth 40000 (kbps) Packets Matched 0 Max Threshold 40(packets)

(discards/tail drops) 0/0

Class loopbacks

Output Queue: Conversation 265

Bandwidth 10000 (kbps) Packets Matched 0 Max Threshold 64(packets)

(discards/tail drops) 0/0

Class class-default

Output Queue: Conversation 266

Bandwidth 0 (kbps) Packets Matched 0 Max Threshold 64 (packets)

(discards/tail drops) 0/0

Hinweis: Beachten Sie die folgenden Erläuterungen zu den beiden Typen von Tropfen:

- Rückwürfe: aus dieser Warteschlange gelöscht werden.

- Schwanzfallen: wird nur dann aus dieser Warteschlange verworfen, wenn eine andere Warteschlange ein eingehendes Paket mit einer "niedrigeren" WFQ-Sequenznummer hat und das WFQ-System die maximale Anzahl an Paketen für die Warteschlange erreicht.

- show policy-map interface atm x/y[.z] vc [vcd] | vpi/vci] - Dieser Befehl bietet mehr Präzision für bestimmte VCs.

7200#show policy-map interface atm 2/0.130 vc 1/130

ATM2/0.130: VC 1/130 - output : mypol

Weighted Fair Queueing

Class ixia

Output Queue: Conversation 264

Bandwidth 40000 (kbps) Packets Matched 0 Max Threshold 40(packets)

(discards/tail drops) 0/0

Class loopbacks

Output Queue: Conversation 265

Bandwidth 10000 (kbps) Packets Matched 0 Max Threshold 64(packets)

(discards/tail drops) 0/0

Class class-default

Output Queue: Conversation 266

Bandwidth 0 (kbps) Packets Matched 0 Max Threshold 64 (packets)

(discards/tail drops) 0/0

Sie können auch andere Befehle wie show class-map oder show policy-map class verwenden, um detailliertere Informationen zu den Zuordnungsklassen zu erhalten.

Fehlerbehebung

Für diese Konfiguration sind derzeit keine spezifischen Informationen zur Fehlerbehebung verfügbar.

Zugehörige Informationen

- Klassenbasiertes Weighted Fair Queueing

- Technischer ATM-Support

- Technischer Support - Cisco Systems