Inhalt

Einleitung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Konventionen

QoS - Übersicht

Cisco Catalyst Switch der Serie 3750 ohne QoS

Cisco Catalyst 3750 Switch - QoS-Funktionen

Eingangs-QoS-Funktionen

QoS-Standardkonfiguration für den Eingang

Klassifizierung und Kennzeichnung

Klassifizierung und Markierung - Port-basiert

Klassifizierung - Port Trust-Konfiguration

Marking - Konfiguration der QoS-Zuordnungstabellen

Klassifizierung und Kennzeichnung - MQC-basiert

Richtlinien

Klassifizierung, Marking und Richtlinienvergabe (über Aktion - Drop hinausgehen)

Klassifizierung, Marking und Richtlinienzuweisung (Aktion überschreiten - policed-dscp-transmission)

Überlastungsmanagement und -vermeidung

Standardkonfiguration für Warteschlangenverwaltung, Löschung und Planung

Warteschlangenverwaltung und Terminierung

Warteschlangenverwaltung, Löschung und Terminierung

Ausgangs-QoS-Funktionen

Ausgangs-QoS-Befehle

Standardkonfiguration

Warteschlangenverwaltung, Löschung und Terminierung

Zugehörige Informationen

Einleitung

In diesem Dokument werden die QoS-Funktionen der Catalyst Switches der Serie 3750 beschrieben, z. B. Klassifizierung, Markierung, Festlegung von Richtlinien, Warteschlangenverwaltung und Terminierung.

Voraussetzungen

Anforderungen

Cisco empfiehlt, dass Sie über Kenntnisse in diesem Thema verfügen:

- Konfigurieren von QoS.

Verwendete Komponenten

Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:

- Cisco Catalyst Switches der Serie 3750

- Cisco IOS® Softwareversion 12.2(35)SE2

Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.

Konventionen

Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps von Cisco zu Konventionen).

QoS - Übersicht

Mit QoS können Sie bestimmte Datenverkehrstypen auf Kosten anderer bevorzugen. Durch die Verwendung von QoS-Labels kann der Datenverkehr differenziert werden. Die zwei am häufigsten verwendeten QoS-Labels im Layer-3-IP-Header sind das IP-Rangfolgefeld und das DSCP-Feld. Das QoS-Label im Layer-2-Frame-Header wird als Class of Service (CoS) bezeichnet. QoS-Tools für Catalyst Switches können die bevorzugte Behandlung auf der Grundlage von QoS-Labels auf Layer 3 oder Layer 2 bieten. In diesem Dokument finden Sie verschiedene Beispiele für die Verwendung der Layer-2- und Layer-3-QoS-Labels in Cisco Catalyst-Switches.

Verwendung von Layer-2- und Layer-3-QoS-Labels in Cisco Catalyst Switches

Cisco Catalyst Switch der Serie 3750 ohne QoS

QoS ist auf den Catalyst Switches der Serie 3750 standardmäßig deaktiviert. QoS ist deaktiviert, aber alle Frames/Pakete werden unverändert über den Switch übertragen. Wenn beispielsweise ein Frame mit CoS 5 und das Paket innerhalb des Frames mit DSCP EF in den Switch eintritt, werden die CoS- und DSCP-Labels nicht geändert. Der Datenverkehr wird mit den gleichen CoS- und DSCP-Werten weitergeleitet, wie er eingeht. Der gesamte Datenverkehr, einschließlich Sprachdatenverkehr, wird nach bestem Bemühen übertragen.

Switch#show mls qos

QoS is disabled

QoS ip packet dscp rewrite is enabled

!--- Even though it says QoS ip packet dscp rewrite is enabled,

!--- the switch does not alter the DSCP label on the packets when

!--- the QoS is disabled.

Cisco Catalyst 3750 Switch - QoS-Funktionen

Nachdem die QoS auf dem Switch der Serie 3750 aktiviert wurde, sind nur noch wenige Eingangs- und Ausgangs-QoS-Funktionen standardmäßig aktiviert. Dieses Diagramm zeigt die allgemeine Ansicht der QoS-Architektur des Switches:

Grundlegende Ansicht der Switch-QoS-Architektur

Dies ist eine Zusammenfassung der Punkte, die auf dem Diagramm basieren:

- Eingangs-QoS-Funktionen wie Klassifizierung, Marking und Richtlinienzuweisung können pro Port konfiguriert werden.

- Input Map-Tabellen und Eingangs-Queueing können global konfiguriert werden. Diese können nicht pro Port konfiguriert werden.

- SRR für die Eingangswarteschlange kann global konfiguriert werden.

- Die Bandbreite des Stack-Rings ist von der Verkabelung des Stacks abhängig. Wenn der Stack mit voller Bandbreite verbunden ist, erhalten Sie eine Bandbreite von 32 Gbit/s. Diese Bandbreite wird von allen Switches im Stack gemeinsam genutzt.

- Ausgabezuordnungstabellen und Ausgangswarteschlangen werden global konfiguriert. Sie können über zwei Warteschlangenkonfigurationen verfügen und eine der Warteschlangenkonfigurationen auf einen Port anwenden.

- SRR für die Ausgangswarteschlange kann auf Port-Basis konfiguriert werden.

Eingangs-QoS-Funktionen

In diesem Abschnitt werden die Konzepte verschiedener möglicher Eingangs-QoS-Konfigurationen erläutert. In diesem Abschnitt werden folgende Themen behandelt:

- QoS-Standardkonfiguration für den Eingang

- Klassifizierung und Kennzeichnung

- Richtlinien

- Überlastungsmanagement und -vermeidung

QoS-Standardkonfiguration für den Eingang

So behandelt der Switch Frames standardmäßig, nachdem die QoS aktiviert wurde:

- Ein Frame gelangt in den Switch-Port und hat keinen markierten Frame (d. h., der Port ist ein Access-Port, und der Frame gelangt in den Switch und hat keine ISL- oder dot1q-Kapselung).

- Der Switch kapselt den Frame mit dot1q (ignorieren Sie ISL, da dot1q der Standard auf allen neuen Switches ist).

- Innerhalb des dot1q-Frame-Tags sind drei Bits mit der Bezeichnung 802.1p-Prioritätsbits verfügbar, die auch als CoS bezeichnet werden. Diese Bits werden auf 0 gesetzt.

- Anschließend berechnet der Switch den DSCP-Wert anhand der CoS-DSCP-Zuordnungstabelle. Gemäß Tabelle setzt der Switch den DSCP-Wert auf 0. Der DSCP-Wert befindet sich am IP-Header des Pakets.

Insgesamt geben die CoS- und DSCP-Werte des Frames den Switch ein, der standardmäßig auf 0 festgelegt ist, wenn QoS auf dem Switch aktiviert ist.

Klassifizierung und Kennzeichnung

Anders als bei den Routern funktionieren QoS-Klassifizierung und -Markierung bei Cisco Catalyst Switches unterschiedlich. Bei Cisco Routern können Sie Pakete mit MQC entweder anhand des eingehenden Paket-DSCP-Werts oder anhand der Zugriffskontrollliste (ACL) klassifizieren. Dies hängt davon ab, ob Sie dem QoS-Label des eingehenden Pakets vertrauen oder nicht. Beim Cisco Catalyst Switch der Serie 3750 können Sie die Frames entweder anhand der eingehenden CoS/DSCP-Werte oder anhand der ACL klassifizieren.

Die Konfiguration auf Basis des eingehenden CoS/DSCP-Werts erfolgt auf drei verschiedene Arten:

- Portbasierte Konfiguration mit den Befehlen der mls qos-Schnittstelle

- MQC-basierte Konfiguration mit Klassenzuordnung und Richtlinienzuweisung

- VLAN-basierte Konfiguration

Sie können eine dieser drei Methoden verwenden. Sie können nicht mehr als eine Methode in einem Port verwenden. Sie haben beispielsweise den Befehl mls qos trust cosc auf einem Port konfiguriert. Wenn Sie den Port mit dem Befehl service-policy input <policy-map-name> konfigurieren, wird der Befehl mls qos trust cos automatisch entfernt.

Im Abschnitt Klassifizierung und Markierung - Port-basiert wird die Port-basierte Konfiguration erläutert.

Im Abschnitt Klassifizierung und Markierung - MQC-basiert wird die MQC-basierte Klassifizierung erläutert.

Klassifizierung und Markierung - Port-basiert

In diesem Abschnitt wird die Klassifizierung anhand der schnittstellenspezifischen Konfiguration erläutert. Eine Frage kann sich mit der Abschnittstitel-Klassifizierung und -Kennzeichnung ergeben. Dies liegt daran, dass im Cisco Catalyst 3750 Switch CoS- oder DSCP-Werte der Frames (Paket innerhalb des Frames) mit den Zuordnungstabellen gekennzeichnet werden. Zuordnungstabellen sind auf Cisco Routern nicht verfügbar. Diese sind nur für Cisco Catalyst Switches verfügbar. Sie können die Funktionen dieser Tabellen in diesem Abschnitt sehen.

In diesem Abschnitt werden die beiden folgenden Konfigurationen erläutert:

- Klassifizierung - Port Trust-Konfiguration

- Marking - Konfiguration der QoS-Zuordnungstabellen

Klassifizierung und Markierung - Port-basiert

Klassifizierung - Port Trust-Konfiguration

Einem eingehenden Paket oder Frame kann bereits ein QoS-Label zugewiesen sein. Diese Fragen können sich stellen:

- Vertrauen Sie dem QoS-Label des eingehenden Pakets/Frames an einem Port?

- Wenn ein IP-Telefon und ein PC mit einem Port verbunden sind, vertrauen Sie den QoS-Bezeichnungen des Telefons, PCs oder beider?

Wenn Sie den QoS-Labels des eingehenden Pakets/Frames nicht vertrauen, müssen Sie das Paket anhand einer Zugriffsliste klassifizieren und das QoS-Label markieren. Wenn Sie den QoS-Labels des eingehenden Pakets/Frames vertrauen, besteht eine weitere Frage darin, ob Sie dem CoS-Wert oder dem DSCP-Wert des eingehenden Pakets/Frames an einem Port vertrauen müssen? Das hängt vom Szenario ab. In diesem Abschnitt finden Sie Beispiele für die verschiedenen Szenarien.

Die Konfigurationsoptionen für die Port-Vertrauensstellung sind:

Switch(config-if)#mls qos trust ?

cos            cos keyword

device         trusted device class

dscp           dscp keyword

ip-precedence  ip-precedence keyword

<cr>

- Beispiel 1:Wenn der Port ein Zugriffsport oder ein Layer-3-Port ist, müssen Sie den Befehl mls qos trust dscp konfigurieren. Sie können den Befehl mls qos trust cos nicht verwenden, da der Frame vom Access-Port oder Layer-3-Port kein dot1q- oder ISL-Tag enthält. CoS-Bits sind nur im dot1q- oder ISL-Frame vorhanden.

interface GigabitEthernet1/0/1

description **** Layer 3 Port ****

no switchport

ip address 192.168.10.1 255.255.255.0

mls qos trust dscp

end

interface GigabitEthernet1/0/2

description **** Access Port ****

switchport access vlan 10

switchport mode access

mls qos trust dscp

end

- Beispiel 2:Wenn der Port ein Trunk-Port ist, können Sie entweder den Befehl mls qos trust cos oder den Befehl mls qos trust dscp konfigurieren. Die Tabelle "dscp-cos map" (dscp-cos-Zuordnung) dient zur Berechnung des CoS-Werts, wenn der Port als vertrauenswürdig für DSCP konfiguriert ist. Ebenso wird die cos-dscp-Zuordnungstabelle verwendet, um den DSCP-Wert zu berechnen, wenn der Port so konfiguriert ist, dass er CoS vertraut.

interface GigabitEthernet1/0/3

description **** Trunk Port ****

switchport trunk encapsulation dot1q

switchport mode trunk

switchport trunk native vlan 5

switchport trunk allowed vlan 5,10,20,30,40,50

mls qos trust cos

end

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

spanning-tree portfast

end

!--- The Cisco IP Phone uses IEEE 802.1Q frames for Voice

!--- VLAN traffic.

- Beispiel 3:Wenn der Port ein dot1q-Trunk-Port ist und der Port mit dem Befehl mls qos trust cos konfiguriert wurde, können native VLAN-Frames CoS- und DSCP-Werte als 0 haben. Da native VLAN-Frames nicht gekennzeichnet sind und der Frame markiert wird, nachdem er in den Switch gelangt, kann der Switch den CoS-Standardwert auf 0 und die CoS-zu-DSCP-Tabelle den DSCP-Wert auf 0 setzen.

Hinweis: Der DSCP-Wert des Pakets vom nativen VLAN wird auf 0 zurückgesetzt.

Mit dem Befehl mls qos cos <0-7> können Sie den Switch-Port auch so konfigurieren, dass der CoS-Standardwert der nicht markierten Frames von 0 auf einen beliebigen anderen Wert zwischen 0 und 7 geändert wird. Dieser Befehl ändert nicht die CoS-Werte der markierten Frames.

Beispielsweise wird der Port GigabitEthernet1/0/12 mit dem Zugriffs-VLAN 10 und dem Sprach-VLAN 20 konfiguriert.

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

spanning-tree portfast

!--- The Cisco IP Phone uses IEEE 802.1Q frames for Voice

!--- VLAN traffic. Voice VLAN is only supported on access ports and not

!--- on trunk ports, even though the configuration is allowed.

end

Standardmäßig sendet der PC Daten ohne Tags. Unmarkierter Datenverkehr vom Gerät, das an das Cisco IP-Telefon angeschlossen ist, durchläuft das Telefon unabhängig vom Vertrauensstatus des Zugangsports am Telefon unverändert. Das Telefon sendet mit dot1q gekennzeichnete Frames mit der Sprach-VLAN-ID 20. Wenn Sie den Port daher mit dem Befehl mls qos trust cos konfigurieren, vertraut er den CoS-Werten der Frames vom Telefon (markierte Frames) und setzt den CoS-Wert der Frames (nicht markierte Frames) vom PC auf 0. Danach setzt die CoS-DSCP-Zuordnungstabelle den DSCP-Wert des Pakets innerhalb des Frames auf 0, da die CoS-DSCP-Zuordnungstabelle den DSCP-Wert 0 für den CoS-Wert 0 aufweist. Wenn die Pakete vom PC einen bestimmten DSCP-Wert haben, kann dieser auf 0 zurückgesetzt werden. Wenn Sie den Befehl mls qos cos 3 am Port konfigurieren, wird der CoS-Wert aller Frames vom PC auf 3 festgelegt, ohne den CoS-Wert der Frames vom Telefon zu ändern.

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

mls qos cos 3

spanning-tree portfast

end

Wenn Sie den Port mit dem Befehl mls qos cos 3 override konfigurieren, werden die CoS-Werte aller Frames (sowohl getaggt als auch untagged) auf 3 festgelegt. Er überschreibt die zuvor konfigurierten Vertrauenswerte.

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

mls qos cos 3 override

!--- Overrides the mls qos trust cos.

!--- Applies CoS value 3 on all the incoming packets on both

!--- the vlan 10 and 20.

spanning-tree portfast

end

- Beispiel 4: Sehen Sie sich beispielsweise die Port-Gi-1/0/12-Konfiguration an:

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

spanning-tree portfast

end

Wenn der PC seinen Frame mit dem VLAN 20 taggt, wird auch der CoS-Wert auf 5 festgelegt. Der Switch verarbeitet getaggten Datenverkehr (Datenverkehr des IEEE 802.1Q- oder IEEE 802.1p-Frame-Typs) vom Gerät, das an den Zugangsport des Cisco IP-Telefons angeschlossen ist. Da die Schnittstelle so konfiguriert ist, dass sie dem CoS-Wert vertraut, wird der gesamte Datenverkehr, der über den Zugangsport auf dem Cisco IP-Telefon eingeht, unverändert über das Telefon geleitet. Der Switch vertraut dem Datenverkehr vom PC und lässt ihn zu. Er weist ihm dieselbe Priorität zu wie dem Datenverkehr des IP-Telefons. Dies ist kein wünschenswertes Ergebnis, das Sie sehen möchten. Dies kann mit dem Befehl switchport priority expand cos<cos-value> vermieden werden.

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

switchport priority extend cos 0

!--- Overrides the CoS value of PC traffic to 0.

spanning-tree portfast

end

Der Befehl switchport priority expand cos <cos-value> konfiguriert das Telefon so, dass das IP-Telefon den CoS-Wert des PC-Datenverkehrs auf 0 ändert.

- Beispiel 5:Beispielsweise verbindet jemand über dieselbe Schnittstelle den PC direkt mit dem Switch und kennzeichnet die PC-Daten mit einem dot1q-Frame mit einem höheren CoS-Wert. Dies kann mit dem Befehl mls qos trust device cisco-phone vermieden werden.

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

switchport priority extend cos 0

mls qos trust device cisco-phone

!--- Specify that the Cisco IP Phone is a trusted device.

spanning-tree portfast

end

- Beispiel 6:Beispielsweise müssen Sie in der Schnittstelle GigabitEthernet1/0/12 den QoS-Labels des PCs vertrauen. Außerdem ist der PC mit dem nativen VLAN 10 verbunden. In diesem Fall ist der Befehl mls qos trust cos nicht hilfreich, da das PC-Paket den CoS-Wert nicht kennzeichnet. Nur der DSCP-Wert wird mit Tags versehen. Aus diesem Grund fügt der Switch den dot1q-Frame hinzu und konfiguriert den CoS-Standardwert auf 0. Anschließend wird der DSCP-Wert in der CoS-DSCP-Tabelle berechnet und auf 0 zurückgesetzt.

Um dieses Problem zu beheben, haben Sie zwei Möglichkeiten. Eine Möglichkeit besteht darin, die Klassifizierung und Kennzeichnung mit MQC zu konfigurieren. Sie können eine ACL erstellen, die dem Datenverkehr Ihres PCs auf Basis der Quell- und Ziel-IP-Adresse sowie der Quell- und Ziel-Portnummern entspricht. Anschließend können Sie diese ACL in class-map zuordnen. Sie können eine Richtlinienzuweisung erstellen, um diesem Datenverkehr zu vertrauen. Diese Lösung wird im nächsten Abschnitt erläutert. In diesem Abschnitt wird die zweite Methode erläutert. Die zweite Methode besteht darin, dem DSCP-Label anstelle des CoS-Labels zu vertrauen. Anschließend berechnet das DSCP-CoS-Label den CoS-Wert, der dem DSCP-Wert entspricht, und legt diesen fest.

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust dscp

spanning-tree portfast

end

Die erste Methode wird bevorzugt, da es nicht empfohlen wird, allen QoS-Labels für den PC-Datenverkehr zu vertrauen.

Marking - Konfiguration der QoS-Zuordnungstabellen

Nachdem QoS aktiviert wurde, werden die Zuordnungstabellen mit den Standardwerten erstellt und aktiviert.

Distribution1#show mls qos maps cos-dscp

Cos-dscp map:

cos:   0  1  2  3  4  5  6  7

--------------------------------

dscp:   0  8 16 24 32 40 48 56

Distribution1#show mls qos maps dscp-cos

Dscp-cos map:

d1 :  d2 0  1  2  3  4  5  6  7  8  9

---------------------------------------

0 :    00 00 00 00 00 00 00 00 01 01

1 :    01 01 01 01 01 01 02 02 02 02

2 :    02 02 02 02 03 03 03 03 03 03

3 :    03 03 04 04 04 04 04 04 04 04

4 :    05 05 05 05 05 05 05 05 06 06

5 :    06 06 06 06 06 06 07 07 07 07

6 :    07 07 07 07

- Beispiel 1:Wenn der Port so konfiguriert ist, dass er CoS vertraut, sind alle eingehenden CoS-Werte vertrauenswürdig, und die DSCP-Werte werden auf Basis der CoS-DSCP-Tabelle gekennzeichnet. Gemäß der CoS-DSCP-Standardkonfiguration werden die Werte wie folgt zugeordnet:

CoS

DSCP (dezimal)

DSCP

0

0

Standard

1

8

CS1

2

16

CS2

3

24

CS3

4

32

CS4

5

40

CS5

6

48

CS6

7

56

CS7

Ein wichtiger Wert, den Sie hier beachten müssen, ist, dass der DSCP-Wert dem CoS-Wert 5 entspricht. Es ist CS5. In Beispiel 2 wird dieser Wert erläutert.

- Beispiel 2:Beispiel: Die Schnittstelle GigabitEthernet1/0/12 ist so konfiguriert, dass sie CoS vertraut.

interface GigabitEthernet1/0/12

description **** Cisco IP Phone  ****

switchport access vlan 10

switchport mode access

switchport voice vlan 20

mls qos trust cos

spanning-tree portfast

end

Das Cisco IP-Telefon markiert den Sprach-Payload mit CoS 5 und DSCP EF, wenn es den Datenverkehr an den Switch sendet. Wenn der Datenverkehr an Port Gi 1/0/12 eingeht, vertraut der Switch dem CoS-Wert. Anschließend leitet der Switch den DSCP-Wert CS5 (40) für den CoS-Wert 5 aus der CoS-DSCP-Tabelle ab. Alle Sprach-Payloads mit CoS 5 werden mit dem DSCP-Wert CS5 markiert. Dies ist nicht der wünschenswerte Wert. Der für die Sprach-Nutzlast erforderliche DSCP-Wert ist DSCP EF. Standardmäßig werden die anderen CoS-Werte den DSCP-Werten korrekt gemäß den RFCs zugeordnet.

- Mit dieser Konfiguration können Sie die CoS-DSCP-Zuordnungstabelle so konfigurieren, dass der DSCP-Wert EF, der CoS 5 entspricht, geändert wird.

Distribution1(config)#mls qos map cos-dscp 0  8 16 24 32 46 48 56

!--- DSCP 46 is EF

Nach dieser Konfiguration werden die Werte wie folgt zugeordnet:

CoS

DSCP (dezimal)

DSCP

0

0

Standard

1

8

CS1

2

16

CS2

3

24

CS3

4

32

CS4

5

46

EF

6

48

CS6

7

56

CS7

- Beispiel 3:Wenn der Port für die Vertrauenswürdigkeit gegenüber DSCP konfiguriert ist, werden alle eingehenden DSCP-Werte als vertrauenswürdig eingestuft, und die CoS-Werte werden basierend auf der DSCP-CoS-Tabelle gekennzeichnet. Gemäß der DSCP-CoS-Standardkonfiguration werden die Werte wie folgt zugeordnet:

DSCP

DSCP (dezimal)

CoS

Standard

0-7

0

CS1 AF 11 AF 12 AF 13

8-15

1

CS2 AF 21 AF 22 AF 23

16-23

2

CS3 AF 31 AF 32 AF 33

24-31

3

CS4 AF 41 AF 42 AF 43

32-39

4

CS5 EF

40-47

5

CS6

48-55

6

CS7

56-63

7

Sie müssen diese Standardwerte nicht ändern.

In dieser Tabelle werden die DSCP- und CoS-Werte nur zu Referenzzwecken zusammengefasst:

DSCP (dezimal)

DSCP

CoS

0

Standard

0

8

CS1

1

10

AF11

1

12

AF12

1

14

AF13

1

16

CS2

2

18

AF21

2

20

AF22

2

22

AF23

2

24

CS3

3

26

AF31

3

28

AF32

3

30

AF33

3

32

CS4

4

34

AF41

4

36

AF42

4

38

AF43

4

40

CS5

5

42

5

44

5

46

EF

5

48

CS6

6

56

CS7

7

Hinweis: In einem Netzwerk müssen alle Cisco Catalyst Switches über identische Zuordnungstabellen verfügen. Unterschiedliche Zuordnungstabellenwerte in verschiedenen Switches verursachen ein unerwünschtes QoS-Verhalten.

Klassifizierung und Kennzeichnung - MQC-basiert

Wie im Abschnitt Klassifizierung und Markierung erläutert, können Sie MQC verwenden, um das Paket zu klassifizieren und zu markieren. Sie können MQC anstelle der portspezifischen Konfiguration verwenden. Sie können die eingehenden Pakete auch mit der Richtlinienzuordnung markieren.

Für dieses Beispiel gelten folgende Anforderungen:

- Vertraut den CoS-Werten des Datenverkehrs des IP-Telefons.

- Markieren Sie den DSCP-Wert der Softphone-Anwendungspakete vom PC, der mit dem IP-Telefon verbunden ist.

- Geben Sie die Vertrauenswürdigkeit des anderen Datenverkehrs vom PC wieder.

Klassifizierung und Kennzeichnung - MQC-basiert

Dieses Diagramm zeigt, dass eine Richtlinienzuordnung mit der Eingabe einer Schnittstelle verknüpft ist. Sie können keine Richtlinienzuweisung auf die Ausgabe von Schnittstellen im Catalyst 3750-Switch anwenden. Die nächste Konfiguration stellt das Diagramm dar. Dieser Abschnitt behandelt nicht die Warteschlangenkomponente der QoS-Funktion. Im vorliegenden Abschnitt geht es nur um den auf der Schnittstelle angewendeten MQC.

Es wird angenommen, dass das Daten-VLAN 10 und die Subnetzadresse 172.16.10.0/24 ist. Das Sprach-VLAN ist 100, und seine Subnetzadresse lautet 192.168.100.0/24.

!--- Section A

Distribution1(config)#ip access-list extended voice-traffic

Distribution1(config-std-nacl)#permit ip 192.168.100.0 0.0.0.255 any

Distribution1(config-std-nacl)#ip access-list extended

database-application

Distribution1(config-ext-nacl)#permit tcp any any eq 1521

Distribution1(config-ext-nacl)#permit tcp any any eq 1810

Distribution1(config-ext-nacl)#permit tcp any any eq 2481

Distribution1(config-ext-nacl)#permit tcp any any eq 7778

Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map  Class-A

Distribution1(config-cmap)#match access-group name voice-traffic

Distribution1(config-cmap)#exit

Distribution1(config)#class-map  Class-B

Distribution1(config-cmap)#match access-group name

database-application

Distribution1(config-cmap)#exit

!--- Section B

Distribution1(config)#policy-map sample-policy1

Distribution1(config-pmap)#class Class-A

Distribution1(config-pmap-c)#trust cos

Distribution1(config-pmap-c)#exit

Distribution1(config-pmap)#class Class-B

Distribution1(config-pmap-c)#set dscp af21

Distribution1(config-pmap-c)#exit

Distribution1(config-pmap)#exit

!--- Section C

Distribution1(config)#interface gigabitEthernet 1/0/13

Distribution1(config-if)#switchport access vlan 10

Distribution1(config-if)#switchport mode access

Distribution1(config-if)#switchport voice vlan 100

Distribution1(config-if)#spanning-tree portfast

Distribution1(config-if)#service-policy input sample-policy1

Distribution1(config-if)#exit

Abschnitt A:

- Klassifiziert den IP-Telefonverkehr in Klasse A. Das IP-Telefon gehört zum Sprach-VLAN und hat eine IP-Adresse im Subnetz 192.168.100.0.

- Klassifiziert den Datenverkehr der Datenbankanwendung in Klasse B. Der PC-Datenverkehr (gemäß der Konfiguration auch Datenverkehr), der an ein beliebiges Ziel mit den Portnummern 1521, 1810, 2481 und 7778 gerichtet ist, wird in die Class-B-Klassenzuordnung klassifiziert.

Abschnitt B:

- Der Datenverkehr entspricht Klasse A und ist so konfiguriert, dass er dem CoS-Label vertraut. Dies bedeutet, dass die CoS-Werte des gesamten Datenverkehrs vom IP-Telefon vertrauenswürdig sind. Wie im Diagramm gezeigt, wird der DSCP-Wert aus der CoS-DSCP-Zuordnungstabelle für den Datenverkehr der Klasse A abgeleitet.

- Die Übereinstimmung des Datenverkehrs mit Klasse B wird so konfiguriert, dass der DSCP-Wert auf AF21 festgelegt wird. Wie im Diagramm gezeigt, wird der DCoS-Wert aus der DSCP-CoS-Zuordnungstabelle für den Datenverkehr der Klasse B abgeleitet.

- Die Konfigurationen unter den einzelnen Klassen der Richtlinienzuweisung werden als PHB-Aktionen bezeichnet. Marking, Queuing, Policing, Shaping und Überlastungsvermeidung sind die unterstützten PHB-Aktionen in Cisco Routern. Marking und Richtlinienvergabe sind die einzigen unterstützten PHB-Aktionen auf dem Cisco Catalyst 3750 Switch.

Distribution1(config)#policy-map test

Distribution1(config-pmap)#class test

Distribution1(config-pmap-c)#?

QoS policy-map class configuration commands:

exit            Exit from QoS class action configuration mode

no              Negate or set default values of a command

police          Police

service-policy  Configure QoS Service Policy

set             Set QoS values

trust           Set trust value for the class

<cr>

Die Befehle set und trust sind Marking PHB actions. Sie können die PHB-Aktion set oder trust konfigurieren. Sie können nicht beide Aktionen in einer Klasse von Richtlinienzuweisung konfigurieren. Sie können set jedoch in einer Klasse konfigurieren und einer anderen Klasse in derselben Richtlinienzuordnung vertrauen.

Der Befehl police ist die Aktion Policing PHB. Dies wird im nächsten Abschnitt ausführlich behandelt.

Shaping wird auf dem Cisco Catalyst Switch der Serie 3750 nicht unterstützt. Warteschlangenverwaltung und Überlastungsvermeidung werden vom Cisco Catalyst Switch der Serie 3750 unterstützt, sind jedoch nicht mit MQC konfigurierbar. Warteschlangenkonfigurationen und Konfigurationen zur Vermeidung von Überlastungen werden später in diesem Dokument ausführlich behandelt.

Abschnitt C:

- Die Richtlinienzuweisung kann nur auf die Eingaben auf der Schnittstelle angewendet werden. Wenn Sie die Anwendung auf die Ausgabeschnittstelle anwenden, wird die folgende Fehlermeldung angezeigt:

Distribution1(config)#interface gigabitethernet 1/0/3

Distribution1(config-if)#service-policy output test

Warning: Assigning a policy map to the output side of an

interface not supported

Service Policy attachment failed

Warning: Assigning a policy map to the output side of an

interface not supported

- Wenn andere QoS-Klassifizierungsmethoden, z. B. Port- oder VLAN-basiert, für Port Gi 1/0/3 konfiguriert sind, werden diese Konfigurationen entfernt, wenn Sie die Richtlinienzuweisung anwenden. Beispiel: Port Gi 1/0/13 ist so konfiguriert, dass er CoS vertraut, wie hier gezeigt:

interface GigabitEthernet1/0/13

description **** Access Port ****

switchport access vlan 10

switchport mode access

switchport voice vlan 100

mls qos cos 3

mls qos trust cos

spanning-tree portfast

- Wenn Sie die Richtlinienzuweisung auf die Schnittstelle anwenden, wird der Befehl trust entfernt.

Distribution1(config)#interface gigabitethernet 1/0/13

Distribution1(config-if)#service-policy input sample-policy1

Distribution1(config-if)#do show run int gi 1/0/13

Building configuration...

Current configuration : 228 bytes

!

interface GigabitEthernet1/0/13

description **** Access Port ****

switchport access vlan 10

switchport mode access

switchport voice vlan 100

service-policy input sample-policy1

!--- It replaces the mls qos trust or mls qos

!--- vlan-based command.

mls qos cos 3

!--- This command is not removed.

spanning-tree portfast

end

Sie können sehen, dass die Eingabe für die Dienstrichtlinie nur den Befehl mls qos trust oder den Befehl mls qos vlan-based ersetzt. Die anderen Befehle wie mls qos cos oder mls qos dscp-mutation werden nicht geändert. Zusammenfassend wird der QoS-Klassifizierungsbefehl ersetzt, jedoch nicht die QoS-Markierungsbefehle.

- In der Richtlinienzuordnung werden nur zwei Klassenzuordnungen angezeigt. Klasse A vergleicht den Datenverkehr des IP-Telefons, Klasse B den Datenverkehr der Datenbankanwendung vom PC. Der gesamte sonstige PC-Datenverkehr (mit Ausnahme der in der Zugriffsliste definierten Datenbankanwendung) wird der Standardklassenklasse der Richtlinienzuweisung zugeordnet. Hierbei handelt es sich um einen catch-all-Datenverkehr, der den Datenverkehr erfasst, der nicht den definierten Klassenzuordnungen entspricht, die der Richtlinienzuordnung angefügt sind. Daher wird dieser Datenverkehr, der zur Standardklasse gehört, vom Port nicht als vertrauenswürdig eingestuft, und für diese Pakete werden die CoS- und DSCP-Standardbeschriftungen auf 0 festgelegt. Sie können konfigurieren, dass jeder CoS- oder DSCP-Standardwert auf diesen Standardklassenverkehr festgelegt wird.

Sie können den DSCP-Standardwert mithilfe von MQC festlegen. Der CoS-Wert wird aus der DSCP-CoS-Zuordnungstabelle abgeleitet.

Distribution1(config)#policy-map sample-policy1

Distribution1(config-pmap)#class class-default

Distribution1(config-pmap-c)#set dscp af13

Distribution1(config-pmap-c)#exit

Sie können den CoS-Standardwert wie hier dargestellt festlegen. Der DSCP-Wert wird aus der CoS-DSCP-Zuordnungstabelle abgeleitet.

Distribution1(config)#interface gigabitethernet 1/0/13

Distribution1(config-if)#mls qos cos 3

Distribution1(config-if)#do show run int gi 1/0/13

Building configuration...

Current configuration : 228 bytes

!

interface GigabitEthernet1/0/13

description **** Access Port ****

switchport access vlan 10

switchport mode access

switchport voice vlan 100

service-policy input sample-policy1

mls qos cos 3

spanning-tree portfast

Höchste Priorität für Datenverkehr festlegen

In diesem Beispiel wird die höchste Priorität für den Datenverkehr von TCP-Port 1494 festgelegt.

1. Dem VoIP-Datenverkehr muss ein DSCP-Wert von EF zugewiesen werden:

!--- Classifying all traffic coming with dscp value of EF

!--- under this class-map.

Switch(config)#class-map match-all AutoQoS-VoIP-RTP-Trust

Switch(config-cmap)#match ip dscp ef

Switch(config)#policy-map AutoQoS-Police-CiscoPhone

Switch(config-pmap)#class AutoQoS-VoIP-RTP-Trust

!--- Again setting the dscp value back to EF.

Switch(config-pmap-c)#set dscp ef

Switch(config-pmap-c)#police 320000 8000 exceed-action policed-dscp-transmit

2. Dem Datenverkehr von TCP 1494 muss der DSCP-Wert CS4 zugewiesen werden:

Switch(config)#access-list 100 permit tcp <source source-wildcard> <destination destination-wildcard> eq 1494

Switch(config)#class-map tcp

Switch(config-cmap)#match access-group 100

Switch(config)#policy-map AutoQoS-Police-CiscoPhone

Switch(config-pmap)#class tcp

Switch(config-pmap-c)#set dscp cs4

3. Allen anderen Datenverkehr muss CS3 zugewiesen werden:

Switch(config)# access-list 200 permit ip any any

Switch(config)# class-map default

Switch(config-cmap)# match access-group 200

Switch(config)#policy-map AutoQoS-Police-CiscoPhone

Switch(config-pmap)#class default

Switch(config-pmap-c)#set dscp cs3

4. Anwendung unter relevanten Schnittstellen:

Switch(config)#interface <interface-type><interface number>

Switch(config-if)#service-policy <policy-map-name>

Richtlinien

Auf dem Cisco Catalyst Switch der Serie 3750 kann die Richtlinienvergabe nur auf dem Eingangsport konfiguriert werden. Das Policing kann nur über MQC konfiguriert werden. Dies bedeutet, dass es keinen schnittstellenspezifischen Befehl zur Steuerung des Datenverkehrs gibt. Sie können die Richtlinienzuweisung in der Richtlinienzuweisung konfigurieren und die Richtlinienzuweisung nur mit dem Befehl service-policy input <policy-name> anwenden. Sie können keine Richtlinienzuordnung auf die Ausgabeseite einer Schnittstelle anwenden.

Distribution1(config-if)#service-policy output test

police command is not supported for this interface

Configuration failed!

Warning: Assigning a policy map to the output side of an

interface not supported.

In diesem Abschnitt werden folgende Themen behandelt:

- Klassifizierung, Marking und Richtlinienvergabe (über Aktion - Drop hinausgehen)

- Klassifizierung, Marking und Richtlinienzuweisung (Aktion überschreiten - policed-dscp-transmission)

Klassifizierung, Marking und Richtlinienvergabe (über Aktion - Drop hinausgehen)

In diesem Abschnitt wird die Richtlinienkonfiguration erläutert, durch die übermäßiger Datenverkehr verworfen wird. Bei der Richtlinienvergabe wird der eingehende Datenverkehr gemessen und die eingehende Rate auf die konfigurierten Bits pro Sekunde aufrecht erhalten. Der Cisco Catalyst Switch der Serie 3750 unterstützt nur Single-Rate-Policing mit einem Bucket. Das bedeutet, dass der Switch Meter mit nur einer Rate und kann das Profil des Datenverkehrs in zwei Farben passen und Aktion überschreiten. Das Diagramm zeigt eine Richtlinienzuordnung sample-policy2 mit drei Klassenzuordnungen.

Für dieses Beispiel gelten folgende Anforderungen:

- Überwachung von FTP, POP3, IMAP-Datenverkehr auf 10 Mbit/s

- Vertraut dem DSCP-Wert der IP Communicator-Anwendungspakete vom PC, der mit dem IP-Telefon verbunden ist. Außerdem muss dieser Datenverkehr auf 1 Mbit/s geregelt werden.

- Markieren und kontrollieren Sie die Filetanwendung.

Policing (Nichteinhaltung der Aktion)

Diese Konfiguration stellt die im Diagramm erwähnte Richtlinienzuweisung dar:

!--- Create Access-list and Class map Class-A

Distribution1(config)#ip access-list extended BULK-DATA

Distribution1(config-ext-nacl)#permit tcp any any eq ftp

Distribution1(config-ext-nacl)#permit tcp any any eq ftp-data

Distribution1(config-ext-nacl)#permit tcp any any eq pop3

Distribution1(config-ext-nacl)#permit tcp any any eq 143

Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-A

Distribution1(config-cmap)#match access-group name BULK-DATA

Distribution1(config-cmap)#exit

!--- Create Access-list and Class map Class-B

Distribution1(config)#ip access-list extended IP-Communicator

Distribution1(config-ext-nacl)#remark *** Voice Payload ***

Distribution1(config-ext-nacl)#permit udp any any range 16384 32767

Distribution1(config-ext-nacl)#remark *** Voice Signalling ***

Distribution1(config-ext-nacl)#permit tcp any any range 2000 2002

Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-B

Distribution1(config-cmap)#match access-group name IP-Communicator

Distribution1(config-cmap)#exit

!--- Create Access-list and Class map Class-C

Distribution1(config)#ip access-list extended application

Distribution1(config-ext-nacl)#remark *** Application for example ***

Distribution1(config-ext-nacl)#permit tcp any any eq 32768

Distribution1(config-ext-nacl)#permit udp any any eq 32768

Distribution1(config-ext-nacl)#permit tcp any any eq 32769

Distribution1(config-ext-nacl)#permit udp any any eq 32769

Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-C

Distribution1(config-cmap)#match access-group name application

Distribution1(config-cmap)#exit

!--- Create Policy map

Distribution1(config-cmap)#policy-map sample-policy2

Distribution1(config-pmap)#class Class-A

Distribution1(config-pmap-c)#police 10000000 8000 exceed-action drop

Distribution1(config-pmap-c)#class Class-B

Distribution1(config-pmap-c)#trust dscp

Distribution1(config-pmap-c)#police 256000 8000 exceed-action drop

Distribution1(config-pmap-c)#class Class-C

Distribution1(config-pmap-c)#set dscp CS2

Distribution1(config-pmap-c)#police 25000000 8000 exceed-action drop

Distribution1(config-pmap-c)#exit

Distribution1(config-pmap)#exit

!--- Apply Policy map to the interface

Distribution1(config)#interface GigabitEthernet1/0/20

Distribution1(config-if)#service-policy input sample-policy2

Die Konfiguration in der Richtlinienzuweisung wird hier erläutert:

- Klasse A: Der Datenverkehr, der Klasse A entspricht, wird mit einer Geschwindigkeit von 10 Mbit/s geregelt. Die QoS-Labels für Datenverkehr der Klasse A sind nicht vertrauenswürdig. Die CoS- und DSCP-Werte sind mit 0 gekennzeichnet. Die überhöhten Pakete werden von der Überwachung verworfen.

- Klasse B: Für den Datenverkehr, der Klasse B entspricht, werden zwei PHB-Aktionen ausgeführt. Die eine ist Vertrauen und die zweite ist Polizeiarbeit. Der DSCP-Wert für Datenverkehr der Klasse B ist vertrauenswürdig. Der CoS-Wert kann aus der DSCP-CoS-Tabelle abgeleitet werden. Anschließend wird der Datenverkehr der Klasse B mit einer Rate von 256 Kbit/s geregelt. Die überhöhten Pakete werden von der Überwachung verworfen.

- Klasse C:Für den Datenverkehr, der Klasse B entspricht, werden zwei PHB-Aktionen ausgeführt. Die eine ist Marking, die andere die Richtlinienvergabe. Die eingehenden Pakete, die Klasse C entsprechen, werden mit dem DSCP-Wert CS2 markiert, und der CoS-Wert wird aus der DSCP-CoS-Tabelle abgeleitet, die den Wert 2 aufweist. Anschließend wird der Datenverkehr der Klasse C mit einer Rate von 25 Mbit/s geregelt. Die überhöhten Pakete werden von der Überwachung verworfen.

Klassifizierung, Marking und Richtlinienzuweisung (Aktion überschreiten - policed-dscp-transmission)

In diesem Abschnitt wird die Richtlinienkonfiguration erläutert, die den übermäßigen Datenverkehr markiert und überträgt. Dieses Diagramm zeigt ein Richtlinienzuordnungs-Beispiel für policy3 mit zwei Klassenzuordnungen:

Policing (Überschreiten der Aktion policed-dscp-send)

Der Switch markiert den Datenverkehr, der die konfigurierte Regelungsrate überschreitet, basierend auf den Werten der Tabelle mit den per Richtlinie gesteuerten DSCP-Zuordnungen. Die per Richtlinie gesteuerte DSCP-Zuordnung wird nur verwendet, wenn sie in der Richtlinienkonfiguration konfiguriert ist. Die standardmäßige Tabelle der per Richtlinie gesteuerten DSCP-Zuordnung ist hier aufgeführt:

Distribution1(config)#do show mls qos map policed-dscp

Policed-dscp map:

d1 :  d2 0  1  2  3  4  5  6  7  8  9

---------------------------------------

0 :    00 01 02 03 04 05 06 07 08 09

1 :    10 11 12 13 14 15 16 17 18 19

2 :    20 21 22 23 24 25 26 27 28 29

3 :    30 31 32 33 34 35 36 37 38 39

4 :    40 41 42 43 44 45 46 47 48 49

5 :    50 51 52 53 54 55 56 57 58 59

6 :    60 61 62 63

Aus dieser Tabelle können Sie sehen, dass die gleichen DSCP-Werte zugeordnet sind. DSCP 34 wird beispielsweise DSCP 34 zugeordnet. Der Datenverkehr, der der Regelungsrate entspricht, wird ohne Änderung des DSCP-Werts übertragen. Der Datenverkehr, der die Policer-Rate überschreitet, kann mit einem anderen DSCP-Wert übertragen werden. Sie kann beispielsweise mit dem DSCP-Wert markiert werden, bei dem die Wahrscheinlichkeit, dass er verworfen wird, größer ist.

Wenn Sie die Standardwerte für "policed-DSCP" verwenden, ist die Verwendung der Richtlinienzuweisung nicht sinnvoll. Sie haben beispielsweise die Konfiguration vorgenommen, dass der Datenverkehr mit einer Geschwindigkeit von 10 Mbit/s geregelt wird. Das eingehende Paket hat den DSCP-Wert CS4. Wenn Sie den DSCP-Standardwert beibehalten, wird der Datenverkehr, der 10 Mbit/s entspricht, mit dem DSCP-Wert CS2 übertragen. Außerdem wird der Datenverkehr, der 10 Mbit/s überschreitet, mit dem DSCP-Wert CS2 übertragen. Dies liegt daran, dass die Standardwerte der DSCP-Zuordnung mit Richtlinien dieselben Werte zuordnen. Es wird daher empfohlen, die Tabelle für die DSCP-Zuordnung mit Richtlinien entsprechend zu konfigurieren, um die DSCP-Werte zu differenzieren.

Für dieses Beispiel gelten folgende Anforderungen:

- Konfigurieren Sie die Tabelle mit der DSCP-Zuordnung mit Richtlinien für die Zuordnung:

- EF bis AF31

- CS3 bis AF13

- CS2 bis AF11

- Vertrauen Sie den DSCP-Werten der IP Communicator-Pakete, und stellen Sie sie auf 256 Kbit/s ein. Wenn der Datenverkehr 256 Kbit/s überschreitet, notieren Sie die DSCP-Werte mithilfe der Tabelle mit der DSCP-Zuordnung mit Richtlinie.

- Markieren und kontrollieren Sie die Filetanwendung. Wenn der Datenverkehr 25 Mbit/s überschreitet, notieren Sie die DSCP-Werte mithilfe der Tabelle mit der DSCP-Zuordnung mit Richtlinie.

Diese Konfiguration stellt die im Diagramm erwähnte Richtlinienzuweisung dar:

!--- Policed DSCP table Configuration

Distribution1(config)#mls qos map policed-dscp 46 to 26

Distribution1(config)#mls qos map policed-dscp 24 to 14

Distribution1(config)#mls qos map policed-dscp 16 to 10

!--- Create Access-list and Class map Class-A

Distribution1(config)#ip access-list extended IP-Communicator

Distribution1(config-ext-nacl)#remark *** Voice Payload ***

Distribution1(config-ext-nacl)#permit udp any any range 16384 32767

Distribution1(config-ext-nacl)#remark *** Voice Signalling ***

Distribution1(config-ext-nacl)#permit tcp any any range 2000 2002

Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-A

Distribution1(config-cmap)#match access-group name IP-Communicator

Distribution1(config-cmap)#exit

!--- Create Access-list and Class map Class-C

Distribution1(config)#ip access-list extended application

Distribution1(config-ext-nacl)#remark *** Application for example ***

Distribution1(config-ext-nacl)#permit tcp any any eq 32768

Distribution1(config-ext-nacl)#permit udp any any eq 32768

Distribution1(config-ext-nacl)#permit tcp any any eq 32769

Distribution1(config-ext-nacl)#permit udp any any eq 32769

Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-B

Distribution1(config-cmap)#match access-group name application

Distribution1(config-cmap)#exit

!--- Create Policy map

Distribution1(config-cmap)#policy-map sample-policy3

Distribution1(config-pmap-c)#class Class-A

Distribution1(config-pmap-c)#trust dscp

Distribution1(config-pmap-c)#police 256000 8000 exceed-action policed-dscp-transmit

Distribution1(config-pmap-c)#class Class-B

Distribution1(config-pmap-c)#set dscp CS2

Distribution1(config-pmap-c)#police 25000000 8000 exceed-action policed-dscp-transmit

Distribution1(config-pmap-c)#exit

Distribution1(config-pmap)#exit

!--- Apply Policy map to the interface

Distribution1(config)#interface GigabitEthernet1/0/21

Distribution1(config-if)#service-policy input sample-policy3

Die Konfiguration in der Richtlinienzuweisung wird hier erläutert:

- Policed-DSCP: Die Tabelle mit der Richtlinienzuweisung für DSCP enthält drei geänderte Werte.

- EF bis AF31

- CS3 bis AF13

- CS2 bis AF11

Die ersten beiden Werte werden auf der Grundlage der in den Klassenzuordnungen der Klassen A und B klassifizierten Datenverkehrstypen geändert.

- Klasse-A: Die Sprachnutzlast und die Sprachsteuerung vom Softphone werden in der Class-A-Klassenzuordnung klassifiziert. Der Sprach-Nutzlastverkehr hat den DSCP-Wert EF, und die Sprachsteuerung hat den DSCP-Wert CS3. Entsprechend der Konfiguration der Richtlinienzuweisung sind diese DSCP-Werte vertrauenswürdig. Der Datenverkehr wird mit einer Geschwindigkeit von 256 Kbit/s geregelt. Der Datenverkehr, der dieser Rate entspricht, kann mit dem eingehenden DSCP-Wert gesendet werden. Der Datenverkehr, der diese Rate überschreitet, kann von der DSCP-Tabelle mit Richtlinien gekennzeichnet und übertragen werden. Die DSCP-Tabelle mit Richtlinien kann EF bis AF31 und CS3 bis AF13 gemäß den konfigurierten Werten markieren. Anschließend können die entsprechenden CoS-Werte aus der DSCP-CoS-Tabelle abgeleitet werden.

- Klasse-B:Eingehende Pakete, die Klasse-B entsprechen, werden mit dem DSCP-Wert CS2 markiert. Der Datenverkehr der Klasse B wird mit einer Geschwindigkeit von 25 Mbit/s geregelt. Der Datenverkehr, der dieser Rate entspricht, kann mit dem DSCP-Wert 2 gesendet werden, und der CoS-Wert wird aus der DSCP-CoS-Tabelle abgeleitet, die den Wert 2 aufweist. Der Datenverkehr, der diese Rate überschreitet, kann von der DSCP-Tabelle mit Richtlinien gekennzeichnet und übertragen werden. Die per Richtlinie gesteuerte DSCP-Tabelle kann EF mit AF31 und CS3 mit AF13 entsprechend den konfigurierten Werten kennzeichnen. Anschließend können die entsprechenden CoS-Werte aus der DSCP-CoS-Tabelle abgeleitet werden.

Überlastungsmanagement und -vermeidung

Das Engpassmanagement und die Vermeidung von Überlastung sind ein dreistufiger Prozess. Dazu gehören Warteschlangenverwaltung, Löschung und Terminierung. Beim Queueing werden die Pakete auf Basis der QoS-Labels in die verschiedenen Softwarewarteschlangen gestellt. Der Cisco Catalyst Switch 3750 verfügt über zwei Eingangswarteschlangen. Nachdem der Datenverkehr klassifiziert und mit QoS-Labels gekennzeichnet wurde, können Sie ihn basierend auf den QoS-Labels zwei verschiedenen Warteschlangen zuweisen.

Weighted Tail Drop (WTD) dient zum Verwalten der Warteschlangenlängen und zum Bereitstellen von Drop-Precedences für verschiedene Datenverkehrsklassifizierungen.

Sowohl die Eingangs- als auch die Ausgangswarteschlange werden von SRR bedient, das die Rate steuert, mit der Pakete gesendet werden. In den Eingangswarteschlangen sendet SRR Pakete an den Stack-Ring. SRR kann in zwei Modi betrieben werden, die als Shaped und Shared bezeichnet werden. Bei Eingangswarteschlangen ist die Freigabe der Standardmodus, der einzige unterstützte Modus. Im Shared-Modus teilen sich die Warteschlangen die Bandbreite basierend auf den konfigurierten Gewichtungen untereinander auf. Die Bandbreite ist auf dieser Ebene garantiert, aber nicht darauf beschränkt.

In diesem Abschnitt werden drei Arten von Konfigurationen erläutert.

- Standardkonfiguration für Warteschlangenverwaltung, Löschung und Planung

- Warteschlangenverwaltung und Terminierung

- Warteschlangenverwaltung, Löschung und Terminierung

Folgende Befehle stehen zur Konfiguration zur Verfügung:

Distribution1(config)#mls qos srr-queue input ?

!--- Queueing

buffers         Configure buffer allocation

cos-map         Configure cos-map for a queue id

dscp-map        Configure dscp-map for a queue id

!--- Scheduling

bandwidth       Configure SRR bandwidth

priority-queue  Configure priority scheduling

!--- Dropping

threshold       Configure queue tail-drop thresholds

Standardkonfiguration für Warteschlangenverwaltung, Löschung und Planung

Diese Ausgabe zeigt die Standard-QoS-Label-Zuordnung zu Warteschlangen. Jede Warteschlange kann drei Schwellenwertstufen unterstützen. Standardmäßig hat jede Warteschlangenunterstützung nur einen Schwellenwert von 100 %.

Standard-Queuing, -Dropping und -Scheduling

- Standardkonfiguration der Warteschlangenzuordnung:

Pakete mit CoS 5 (DSCP 40 bis 47) werden in die Warteschlange 2 gestellt. Die verbleibenden Pakete werden in Warteschlange1 gesetzt.

Distribution1#show mls qos maps cos-input-q

Cos-inputq-threshold map:

cos:  0   1   2   3   4   5   6   7

------------------------------------

queue-threshold: 1-1 1-1 1-1 1-1 1-1 2-1 1-1 1-1

Distribution1#show mls qos maps dscp-input-q

Dscp-inputq-threshold map:

d1 :d2  0    1    2    3    4    5    6    7    8    9

------------------------------------------------------------

0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

1 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

2 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

3 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01

5 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

6 :  01-01 01-01 01-01 01-01

Diese Tabelle stellt die Standardzuordnung von CoS/DSCP zu Eingangswarteschlangen dar:

CoS

DSCP

Eingangswarteschlange

0

0 bis 7

1

1

8 bis 15

1

2

16 bis 23

1

3

24 bis 31

1

4

32 bis 39

1

5

40 bis 47

2

6

48 bis 55

1

7

56 bis 63

1

- Standard-Warteschlangenkonfiguration:

Der Puffer der Eingangswarteschlange wird zu 90 % von Warteschlange 1 und zu 10 % von Warteschlange 2 gemeinsam genutzt. Die Schwellenwertstufen 1, 2 und 3 sind 100 %.

Distribution1#show mls qos input-queue

Queue     :       1       2

----------------------------------------------

buffers   :      90      10

bandwidth :       4       4

priority  :       0      10

threshold1:     100     100

threshold2:     100     100

- Standard-Scheduler-Konfiguration:

Warteschlange 2 ist die Prioritätswarteschlange. Der SRR verarbeitet die Prioritätswarteschlange für ihre konfigurierte Gewichtung, die 10 % beträgt. Anschließend nutzt der SRR die restliche Bandbreite (90 %) für die Eingangswarteschlangen und übernimmt die Services für diese, wie durch die konfigurierten Gewichtungen angegeben. In diesem Fall werden die Warteschlange 1 und die Warteschlange 2 jeweils mit einer Rate von 45 % bedient.

Distribution1#show mls qos input-queue

Queue     :       1       2

----------------------------------------------

buffers   :      90      10

bandwidth :       4       4

priority  :       0      10

threshold1:     100     100

threshold2:     100     100

Warteschlangenverwaltung und Terminierung

Es gibt drei Schritte zum Konfigurieren der Warteschlangenverwaltung und der Planung. Dies sind:

1. Konfiguration der Warteschlangenzuordnung:

Die Konfiguration der Warteschlangenzuordnung ordnet die Pakete den beiden Eingangswarteschlangen basierend auf den DSCP- oder CoS-Werten zu.

2. Warteschlangenkonfiguration:

Die Warteschlangenkonfiguration definiert das Verhältnis (reservieren Sie den Speicherplatz), mit dem die Eingangspuffer zwischen den beiden Warteschlangen aufgeteilt werden.

3. Scheduler-Konfiguration:

SRR konfiguriert das Verhältnis der Gewichtungen, die die Häufigkeit der Entnahme von Paketen aus der Warteschlange zum Stack-Ring steuern.

Warteschlangen- und Planerkonfigurationen steuern, wie viele Daten gepuffert werden können, bevor Pakete verworfen werden.

Warteschlangenverwaltung und Terminierung

In diesem Abschnitt sind die WTD-Drop-Level nicht konfiguriert. Das bedeutet, dass die Pakete verworfen werden können, wenn die Warteschlange zu 100 % besteht.

- Konfiguration der Warteschlangenzuordnung:

Zuerst werden den Warteschlangen CoS-Werte zugeordnet. In diesem Abschnitt sind die Schwellenwerte nicht konfiguriert.

!--- Assign the frames into the queue based on the CoS value.

Distribution1(config)#mls qos srr-queue input cos-map queue 1 0 1

Distribution1(config)#mls qos srr-queue input cos-map queue 2 2 3 4 5 6 7

!--- Show output.

Distribution1#show mls qos maps cos-input-q

Cos-inputq-threshold map:

cos:  0   1   2   3   4   5   6   7

------------------------------------

queue-threshold: 1-1 1-1 2-1 2-1 2-1 2-1 2-1 2-1

Distribution1#show mls qos maps dscp-input-q

Dscp-inputq-threshold map:

d1 :d2   0    1    2    3    4    5    6    7    8    9

------------------------------------------------------------

0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

1 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

2 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

3 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01

5 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

6 :  01-01 01-01 01-01 01-01

Sie können den Konflikt in den Karten Cos-inputq-threshold und Dscp-inputq-threshold sehen. CoS 3 wird beispielsweise der Warteschlange 2 in der Tabelle "Cos-inputq-threshold" zugeordnet. Der DSCP-Wert 24 (der CoS 3 entspricht) wird jedoch der Warteschlange 1 in der Dscp-Inputq-Threshold-Map zugeordnet. Tatsächlich überschreibt die Dscp-inputq-threshold-Map die Cos-inputq-threshold-Map. Diese Zuordnungen müssen so konsistent wie möglich sein, um ein vorhersagbares Verhalten zu gewährleisten und die Fehlerbehebung zu vereinfachen. Aus diesem Grund ist die Dscp-inputq-threshold-Map so konfiguriert, dass sie mit der Cos-inputq-threshold-Map synchronisiert wird.

!--- Assign the frames into the queue based on the DSCP value.

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 16 17 18 19 20 21 22 23

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 24 25 26 27 28 29 30 31

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 32 33 34 35 36 37 38 39

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 48 49 50 51 52 53 54 55

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 56 57 58 59 60 61 62 63

Distribution1#show mls qos maps dscp-input-q

Dscp-inputq-threshold map:

d1 :d2  0   1   2    3    4    5    6    7    8    9

------------------------------------------------------------

0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

1 :  01-01 01-01 01-01 01-01 01-01 01-01 02-01 02-01 02-01 02-01

2 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01

3 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01

4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01

5 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01

6 :  02-01 02-01 02-01 02-01

- Warteschlangenkonfiguration:

Das Cisco IOS weist nach Aktivierung von QoS den Standardspeicherplatz im Puffer für eingehende Pakete der Warteschlange zu. Sowohl die Eingangswarteschlangen queue1 als auch queue 2 nutzen diesen Pufferspeicher gemeinsam. Auf dem Catalyst 3750-Switch können Sie den prozentualen Anteil dieses Pufferspeicherplatzes konfigurieren, den jede Warteschlange nutzen kann. 67 % des gesamten verfügbaren Speichers für die Eingangswarteschlange ist der Warteschlange 1 und 33 % der Warteschlange 2 zugewiesen.

Distribution1(config)#mls qos srr-queue input buffers 67 33

Distribution1(config)#do show mls qos input

Queue     :       1       2

----------------------------------------------

buffers   :      67      33

bandwidth :       4       4

priority  :       0      10

threshold1:     100     100

threshold2:     100     100

- Scheduler-Konfiguration:

Diese Konfiguration wird mit dem Befehl themls qos srr-queue input bandwidth durchgeführt. Diese Bandbreite gibt an, wie viele Bits von der SRR in den Warteschlangen verarbeitet werden.

Distribution1(config)#mls qos srr-queue input bandwidth 90 10

Distribution1(config)#mls qos srr-queue input priority-queue 2

bandwidth 20

Distribution1(config)#do show mls qos input

Queue     :       1       2

----------------------------------------------

buffers   :      67      33

bandwidth :      90      10

priority  :       0      20

threshold1:     100     100

threshold2:     100     100

Standardmäßig ist Warteschlange 2 die Prioritätswarteschlange, und 10 % der gesamten internen Ringbandbreite wird der Prioritätswarteschlange zugewiesen. Sie können die Warteschlange 1 auch als Prioritätswarteschlange konfigurieren. Sie können jedoch nicht beide Warteschlangen als Prioritätswarteschlange konfigurieren.

- Wenn die Bandbreite des Rings 10 Gbit/s beträgt, werden 20 % der 10 Gbit/s vom SRR für die Warteschlange 2 bereitgestellt, also 2 Gbit/s. Die restliche Ringbandbreite von 8 Gbit/s wird von Warteschlange 1 und Warteschlange 2 gemeinsam genutzt. Gemäß Konfiguration wird für Warteschlange 1 ein Service mit 90 % von 8 Gbit/s und für Warteschlange 2 ein Service mit 10 % von 8 Gbit/s bereitgestellt. Diese Bandbreite von 8 Gbit/s wird vom SRR im Shared-Modus bedient. Dies bedeutet, dass der Anteil der konfigurierten Bandbreite garantiert, aber nicht darauf beschränkt ist.

Hinweis: Sie können die Prioritätswarteschlange mit dem Befehl mls qos srr-queue input priority-queue 2 bandwidth 0 deaktivieren.

Distribution1(config)#do show mls qos input

Queue     :       1       2

----------------------------------------------

buffers   :      90      10

bandwidth :      90      10

priority  :       0       0

threshold1:     100     100

threshold2:     100     100

Distribution1(config)#

Warteschlangenverwaltung, Löschung und Terminierung

In diesem Abschnitt werden zusätzlich zur Größe des Warteschlangenpuffers WTD-Schwellenwerte konfiguriert. Sie können jedes Paket, das über den Switch übertragen wird, einer Warteschlange und einem Schwellenwert zuweisen.

Warteschlangenverwaltung, Verwerfen und Ansetzen

Nachfolgend finden Sie die Konfigurationsbeispiele und -erklärungen:

- Konfiguration der Warteschlangenzuordnung:

Zuerst werden die CoS-Werte den Warteschlangen zugeordnet.

!--- Assign the frames into the queue based on the CoS value.

Distribution1(config)#mls qos srr-queue input cos-map queue 1 threshold 2  1

Distribution1(config)#mls qos srr-queue input cos-map queue 1 threshold 3  0

Distribution1(config)#mls qos srr-queue input cos-map queue 2 threshold 1  2

Distribution1(config)#mls qos srr-queue input cos-map queue 2 threshold 2  4 6 7

Distribution1(config)#mls qos srr-queue input cos-map queue 2 threshold 3  3 5

!--- Show output.

Distribution1(config)#do show mls qos maps cos-input-q

Cos-inputq-threshold map:

cos:  0   1   2   3   4   5   6   7

------------------------------------

queue-threshold: 1-3 1-2 2-1 2-3 2-2 2-3 2-2 2-2

Distribution1(config)#do show mls qos maps dscp-input-q

Dscp-inputq-threshold map:

d1 :d2  0    1    2    3    4    5    6    7    8    9

------------------------------------------------------------

0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

1 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

2 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

3 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01

5 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01

6 :  01-01 01-01 01-01 01-01

Sie können den Konflikt in den Karten Cos-inputq-threshold und Dscp-inputq-threshold sehen. Beispielsweise wird CoS 3 der Warteschlange 2 in der Cos-inputq-threshold-Tabelle zugeordnet, aber der DSCP-Wert 24 (der CoS 3 entspricht) wird der Warteschlange 1 in der Dscp-inputq-threshold-Map zugeordnet. Tatsächlich überschreibt die Dscp-inputq-threshold-Map die Cos-inputq-threshold-Map. Diese Zuordnungen müssen so konsistent wie möglich sein, um ein vorhersagbares Verhalten zu gewährleisten und die Fehlerbehebung zu vereinfachen. Aus diesem Grund ist die Dscp-inputq-threshold-Map so konfiguriert, dass sie mit der Cos-inputq-threshold-Map synchronisiert wird.

!--- Assign the frames into the queue based on the DSCP value.

Distribution1(config)#mls qos srr-queue input dscp-map queue 1 threshold 2 9 10 11 12 13 14 15

Distribution1(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 0 1 2 3 4 5 6 7

Distribution1(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 32

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 1 16 17 18 19 20 21 22 23

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 2 33 34 35 36 37 38 39 48

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 2 49 50 51 52 53 54 55 56

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 2 57 58 59 60 61 62 63

Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 3 24 25 26 27 28 29 30 31

Distribution1(config)#do show mls qos maps dscp-input-q

Dscp-inputq-threshold map:

d1 :d2  0    1    2    3    4    5    6    7    8    9

------------------------------------------------------------

0 :  01-03 01-03 01-03 01-03 01-03 01-03 01-03 01-03 01-01 01-02

1 :  01-02 01-02 01-02 01-02 01-02 01-02 02-01 02-01 02-01 02-01

2 :  02-01 02-01 02-01 02-01 02-03 02-03 02-03 02-03 02-03 02-03

3 :  02-03 02-03 01-03 02-02 02-02 02-02 02-02 02-02 02-02 02-02

4 :  02-03 02-03 02-03 02-03 02-03 02-03 02-03 02-03 02-02 02-02

5 :  02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02

6 :  02-02 02-02 02-02 02-02

- Warteschlangenkonfiguration:

Der Schwellenwert 3 ist standardmäßig 100 % und kann nicht geändert werden.

Distribution1(config)#mls qos srr-queue input buffers 67 33

Distribution1(config)#mls qos srr-queue input threshold 1 8 16

Distribution1(config)#mls qos srr-queue input threshold 2 34 66

Distribution1(config)#do show mls qos input

Queue     :       1       2

----------------------------------------------

buffers   :      67      33

bandwidth :       4       4

priority  :       0      10

threshold1:       8      34

threshold2:      16      66

- Scheduler-Konfiguration:

Das Cisco IOS weist jedem Eingangsport nach Aktivierung von QoS Standardspeicherplatz im Puffer zu. Beide Warteschlangen teilen sich diesen Pufferspeicher. Auf dem Catalyst 3560/3750-Switch können Sie den Prozentsatz dieses Pufferspeicherplatzes konfigurieren, den jede Warteschlange nutzen kann.

Distribution1(config)#mls qos srr-queue input bandwidth 90 10

Distribution1(config)#mls qos srr-queue input priority-queue 2 bandwidth 20

Distribution1(config)#do show mls qos input

Queue     :       1       2

----------------------------------------------

buffers   :      67      33

bandwidth :      90      10

priority  :       0      20

threshold1:       8      34

threshold2:      16      66

Standardmäßig ist Warteschlange 2 die Prioritätswarteschlange, und 10 % der gesamten internen Ringbandbreite wird der Prioritätswarteschlange zugewiesen. Sie können die Warteschlange 1 auch als Prioritätswarteschlange konfigurieren. Sie können jedoch nicht beide Warteschlangen als Prioritätswarteschlange konfigurieren.

Wenn die Bandbreite des Rings 10 Gbit/s beträgt, werden 20 % der 10 Gbit/s vom SRR für die erste Warteschlange 2 bereitgestellt, d. h. 2 Gbit/s. Die verbleibende Ringbandbreite von 8 Gbit/s wird von Warteschlange 1 und Warteschlange 2 gemeinsam genutzt. Gemäß Konfiguration wird für Warteschlange 1 ein Service mit 90 % von 8 Gbit/s und für Warteschlange 2 ein Service mit 10 % von 8 Gbit/s bereitgestellt. Diese Bandbreite von 8 Gbit/s wird vom SRR im Shared-Modus bedient. Dies bedeutet, dass der Anteil der konfigurierten Bandbreite garantiert, aber nicht darauf beschränkt ist.

Hinweis: Sie können die Prioritätswarteschlange mit dem Befehl mls qos srr-queue input priority-queue 2 bandwidth 0 deaktivieren.

Distribution1(config)#do show mls qos input

Queue     :       1       2

----------------------------------------------

buffers   :      90      10

bandwidth :      90      10

priority  :       0       0

threshold1:     100     100

threshold2:     100     100

Distribution1(config)#

Ausgangs-QoS-Funktionen

Überlastungsmanagement und -vermeidung sind die von den Cisco Catalyst Switches der Serie 3750 unterstützten QoS-Ausgangsfunktionen. Das Engpassmanagement und die Vermeidung von Überlastung sind ein dreistufiger Prozess. Dazu gehören Warteschlangenverwaltung, Löschung und Terminierung.

Beim Queueing werden die Pakete auf Basis der QoS-Labels in die verschiedenen Softwarewarteschlangen gestellt. Der Cisco Catalyst Switch der Serie 3750 verfügt über 4 Ausgangswarteschlangen mit 3 Schwellenwerten pro Warteschlange. Nachdem der Datenverkehr klassifiziert und mit QoS-Labels gekennzeichnet wurde, können Sie ihn basierend auf den QoS-Labels vier verschiedenen Warteschlangen zuweisen.

Für jede Warteschlange können die Puffergröße, der reservierte Grenzwert, die Schwellenwertstufen und der maximale Grenzwert konfiguriert werden. Weighted Tail Drop (WTD) dient zum Verwalten der Warteschlangenlängen und zum Bereitstellen von Drop-Precedences für verschiedene Datenverkehrsklassifizierungen. Die Parameter der Eingangswarteschlange werden global konfiguriert. Die Parameter der Eingangswarteschlange sind nicht Port-basiert. Die Parameter der Ausgangswarteschlange werden jedoch auf Port-Basis konfiguriert. Auch dann gilt die Konfiguration pro Port. Sie können die Ports nicht einzeln konfigurieren. Sie können jeden Port auf zwei verschiedene Arten konfigurieren. Dies wird als Warteschlangengruppe bezeichnet. Sie können in der globalen Konfiguration maximal zwei verschiedene Warteschlangengruppen konfigurieren. Anschließend können Sie einen dieser beiden Sätze auf die Schnittstelle anwenden.

Sowohl die Eingangs- als auch die Ausgangswarteschlange werden von SRR bedient, das die Rate steuert, mit der Pakete gesendet werden. In den Eingangswarteschlangen sendet SRR Pakete an den Stack-Ring. SRR kann in zwei Modi betrieben werden, die als Shaped und Shared bezeichnet werden. Bei Eingangswarteschlangen ist die Freigabe der Standardmodus, der einzige unterstützte Modus. Im Shared-Modus teilen sich die Warteschlangen die Bandbreite basierend auf den konfigurierten Gewichtungen untereinander auf. Die Bandbreite ist auf dieser Ebene garantiert, aber nicht darauf beschränkt. Im Shaping-Modus wird den Ausgangs-Datenpuffern ein bestimmter Prozentsatz der Bandbreite garantiert, und die Datenrate ist auf diesen Wert begrenzt. Shaped-Datenverkehr nutzt nicht mehr als die zugewiesene Bandbreite, selbst wenn die Verbindung inaktiv ist. Shaping sorgt für einen gleichmäßigeren Verkehrsfluss im Zeitverlauf und reduziert die Spitzen und Täler des ruckartigen Verkehrs. Die Warteschlange 1 kann als Prioritätswarteschlange konfiguriert werden.

Ausgangs-QoS-Befehle

In diesem Abschnitt werden alle verfügbaren Egress-QoS-Befehle kategorisiert.

- Konfiguration der Warteschlangenzuordnung:

So ordnen Sie die CoS-Werte den Ausgangswarteschlangen zu:

Rack1SW1(config)#mls qos srr-queue output cos-map queue ?

<1-4>  enter cos-map output queue id

Rack1SW1(config)#mls qos srr-queue output cos-map queue 1

threshold ? <1-3>  enter cos-map threshold id

Rack1SW1(config)#mls qos srr-queue output cos-map queue 1

threshold 1 ? <0-7>  8 cos values separated by spaces

So ordnen Sie die DSCP-Werte den Ausgangswarteschlangen zu:

Rack1SW1(config)#mls qos srr-queue output dscp-map queue ?

<1-4>  enter dscp-map output queue id

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1 threshold ?

<1-3>  enter dscp-map threshold id

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1threshold 1 ?

<0-63>  dscp values separated by spaces

(up to 8 values total)

- Warteschlangenkonfiguration:

Mit der Konfiguration der Ausgangs-Warteschlange können Sie zwei Warteschlangengruppen konfigurieren. Für jeden Warteschlangensatz können die Puffergröße und der Schwellenwert für die vier Ausgangswarteschlangen konfiguriert werden. Anschließend können Sie einen beliebigen Warteschlangensatz auf einen beliebigen Port anwenden. Standardmäßig wird Warteschlangensatz 1 allen Ports zugewiesen, wenn Sie QoS auf dem Switch aktivieren.

Rack1SW1(config)#mls qos queue-set output ?

<1-2>  queue-set id

Rack1SW1(config)#mls qos queue-set output 1 ?

buffers    assign buffers to each egress queue

threshold  Assign threshold values to a queue

So konfigurieren Sie die Puffergröße für alle vier Ausgangswarteschlangen:

Rack1SW1(config)#mls qos queue-set output 1 buffers ?

<0-99>  enter buffer percentage for queue 1 0-99

Rack1SW1(config)#mls qos queue-set output 1 buffers 10 ?

<1-100>  enter buffer percentage for queue 2 1-100

(includes CPU buffer)

Rack1SW1(config)#mls qos queue-set output 1 buffers 10 20 ?

<0-99>  enter buffer percentage for queue 3 0-99

Rack1SW1(config)#mls qos queue-set output 1 buffers 10 20 30 ?

<0-99>  enter buffer percentage for queue 4 0-99

Um zwei Schwellenwerte zu konfigurieren, reservierte und maximale Schwellenwerte für jede Warteschlange (Schwellenwert 3 ist standardmäßig 100 % und kann nicht geändert werden):

Rack1SW1(config)#mls qos queue-set output 1 threshold ?

<1-4>  enter queue id in this queue set

Rack1SW1(config)#mls qos queue-set output 1 threshold 1 ?

<1-400>  enter drop threshold1 1-400

Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 ?

<1-400>  enter drop threshold2 1-400

Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 60 ?

<1-100>  enter reserved threshold 1-100

Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 60 100 ?

<1-400>  enter maximum threshold 1-400

Um den Warteschlangensatz auf die Schnittstelle anzuwenden (standardmäßig wird Warteschlangensatz 1 allen Ports zugewiesen, wenn Sie QoS auf dem Switch aktivieren):

Rack1SW1(config-if)#queue-set ?

<1-2>  the qset to which this port is mapped

- Scheduler-Konfiguration:

Für die Switch-Schnittstelle sind drei verschiedene Konfigurationen verfügbar. Bei den Konfigurationen handelt es sich um Bandbreitenform, -freigabe und -grenze. Sie können die Ausgangs-Warteschlange 1 auch als Prioritätswarteschlange konfigurieren. Wenn die Prioritätswarteschlange aktiviert ist, wird sie von der SRR so lange bearbeitet, bis sie leer ist, bevor die anderen drei Warteschlangen bedient werden. In der Eingangsprioritätswarteschlange verarbeitet SRR die Prioritätswarteschlange jedoch mit dem konfigurierten Wert.

Rack1SW1(config-if)#srr-queue bandwidth ?

limit  Configure bandwidth-limit for this interface

shape  Configure shaping on transmit queues

share  Configure shared bandwidth

Rack1SW1(config-if)#priority-queue ?

out  egress priority queue

Konfiguration des Bandbreitenlimits:

Rack1SW1(config-if)#srr-queue bandwidth limit ?

<10-90>  enter bandwidth limit for interface  as percentage

Konfiguration der Bandbreitenform:

Rack1SW1(config-if)#srr-queue bandwidth shape ?

<0-65535>  enter bandwidth weight for queue id 1

Rack1SW1(config-if)#srr-queue bandwidth shape 10 ?

<0-65535>  enter bandwidth weight for queue id 2

Rack1SW1(config-if)#srr-queue bandwidth shape 10 20 ?

<0-65535>  enter bandwidth weight for queue id 3

Rack1SW1(config-if)#srr-queue bandwidth shape 10 20 30 ?

<0-65535>  enter bandwidth weight for queue id 4

Konfiguration der gemeinsamen Bandbreitennutzung:

Rack1SW1(config-if)#srr-queue bandwidth share ?

<1-255>  enter bandwidth weight for queue id 1

Rack1SW1(config-if)#srr-queue bandwidth share 10 ?

<1-255>  enter bandwidth weight for queue id 2

Rack1SW1(config-if)#srr-queue bandwidth share 10 20 ?

<1-255>  enter bandwidth weight for queue id 3

Rack1SW1(config-if)#srr-queue bandwidth share 10 20 30 ?

<1-255>  enter bandwidth weight for queue id 4

Alle vier Warteschlangen nehmen am SRR teil, es sei denn, die Prioritätswarteschlange ist aktiviert. In diesem Fall wird die erste Bandbreitengewichtung ignoriert und nicht für die Verhältnisberechnung verwendet. Die Prioritätswarteschlange wird so lange bearbeitet, bis sie leer ist, bevor die anderen Warteschlangen bedient werden. Sie aktivieren die Prioritätswarteschlange mit dem Konfigurationsbefehl priority-queue out-Schnittstelle.

Standardkonfiguration

Standardkonfiguration der Warteschlangenzuordnung

Standard-Queuing, -Dropping und -Planung 2

Diese Standardzuordnungen können nach Bedarf geändert werden:

!--- Map CoS to Egress Queue

Distribution1#show mls qos maps cos-output-q

Cos-outputq-threshold map:

cos:  0   1   2   3   4   5   6   7

------------------------------------

queue-threshold: 2-1 2-1 3-1 3-1 4-1 1-1 4-1 4-1

!--- Map DSCP to Egress Queue

Distribution1#show mls qos maps dscp-output-q

Dscp-outputq-threshold map:

d1 :d2  0    1    2    3    4    5    6    7    8    9

------------------------------------------------------------

0 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01

1 :  02-01 02-01 02-01 02-01 02-01 02-01 03-01 03-01 03-01 03-01

2 :  03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01

3 :  03-01 03-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01

4 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 04-01 04-01

5 :  04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01

6 :  04-01 04-01 04-01 04-01

Standard-Warteschlangenkonfiguration

Standard-Pufferzuweisungsschema

Die Standardeinstellungen der Egress-Warteschlange sind für die meisten Situationen geeignet. Sie müssen diese nur ändern, wenn Sie die Ausgangswarteschlangen genau kennen und wenn diese Einstellungen nicht Ihrer QoS-Lösung entsprechen.

Es werden zwei Warteschlangengruppen konfiguriert, und Warteschlangengruppe 1 wird standardmäßig allen Ports zugewiesen. Jeder Warteschlange werden 25 % des gesamten Pufferspeicherplatzes zugewiesen. Jede Warteschlange ist zu 50 % reserviert, d. h. zu 12,5 % des gesamten Pufferspeicherplatzes. Die Summe aller reservierten Puffer stellt den reservierten Pool dar, und die übrigen Puffer sind Teil des gemeinsamen Pools. Die Standardkonfiguration legt 400 Prozent als maximalen Speicher fest, den diese Warteschlange haben kann, bevor Pakete verworfen werden.

Distribution1#show mls qos queue-set 1

Queueset: 1

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      25      25      25      25

threshold1:     100     200     100     100

threshold2:     100     200     100     100

reserved  :      50      50      50      50

maximum   :     400     400     400     400

Distribution1#show mls qos queue-set 2

Queueset: 2

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      25      25      25      25

threshold1:     100     200     100     100

threshold2:     100     200     100     100

reserved  :      50      50      50      50

maximum   :     400     400     400     400

Distribution1#show mls qos int gigabitEthernet 1/0/20 buffers

GigabitEthernet1/0/20

The port is mapped to qset : 1

The allocations between the queues are : 25 25 25 25

Standard-Scheduler-Konfiguration:

Die Prioritätswarteschlange ist deaktiviert. Sowohl der Shaping- als auch der Shared-Modus werden für den SRR konfiguriert. Shaped Mode-Gewichtungen überschreiben den Shared Mode-Wert. Das Endergebnis ist, dass die Warteschlange 1 im Shaped-Modus und die Warteschlangen 2, 3 und 4 im Shared-Modus bedient werden. Das bedeutet, dass die Warteschlange 1 mit einem absoluten Wert bedient wird, der 1/25 Prozent oder vier Prozent der Bandbreite beträgt. Die Warteschlangen 2, 3 und 4 werden mit 25 % der Bandbreite bedient. Wenn die Bandbreite verfügbar ist, können die Warteschlangen 2, 3 und 4 mit mehr als 25 % der Bandbreite bedient werden.

Distribution1#show mls qos int gigabitEthernet 1/0/20 queueing

GigabitEthernet1/0/20

Egress Priority Queue : disabled

Shaped queue weights (absolute) :  25 0 0 0

Shared queue weights  :  25 25 25 25

The port bandwidth limit : 100  (Operational Bandwidth:100.0)

The port is mapped to qset : 1

Warteschlangenverwaltung, Löschung und Terminierung

Dies sind die Beispielkonfigurationen:

- Konfiguration der Warteschlangenzuordnung:

Rack1SW1(config)#mls qos srr-queue output cos-map queue 1 threshold 3 5

Rack1SW1(config)#mls qos srr-queue output cos-map queue 1 threshold 1 2 4

Rack1SW1(config)#mls qos srr-queue output cos-map queue 2 threshold 2 3

Rack1SW1(config)#mls qos srr-queue output cos-map queue 2 threshold 3 6 7

Rack1SW1(config)#mls qos srr-queue output cos-map queue 3 threshold 3 0

Rack1SW1(config)#mls qos srr-queue output cos-map queue 4 threshold 3 1

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1 threshold 3  46

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  16

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  18 20 22

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  25

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  32

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  34 36 38

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 2  24 26

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 3  48 56

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 3 threshold 3  0

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 4 threshold 1  8

Rack1SW1(config)#mls qos srr-queue output dscp-map queue 4 threshold 3  10 12 14

- Warteschlangenkonfiguration:

Diese Konfiguration zeigt die Konfiguration der beiden Warteschlangengruppen 1 und 2. Standardmäßig wird Warteschlangensatz 1 auf alle Schnittstellen angewendet.

Rack1SW3(config)#mls qos queue-set output 1 buffers 10 10 26 54

Rack1SW3(config)#mls qos queue-set output 2 buffers 16 6 17 61

Rack1SW3(config)#mls qos queue-set output 1 threshold 2 70 80 100 100

Rack1SW3(config)#mls qos queue-set output 1 threshold 4 40 100 100 100

Rack1SW3(config)#mls qos queue-set output 2 threshold 1 149 149 100 149

Rack1SW3(config)#mls qos queue-set output 2 threshold 2 118 118 100 235

Rack1SW3(config)#mls qos queue-set output 2 threshold 3 41 68 100 272

Rack1SW3(config)#mls qos queue-set output 2 threshold 4 42 72 100 242

Rack1SW3(config)#interface fastethernet 1/0/11

Rack1SW3(config-if)#queue-set 2

Schnittstelle 1/0/11 wird mit Warteschlangensatz 2 angewendet.

Rack1SW3(config-if)#do show mls qos interface fastethernet 1/0/10 buffers

FastEthernet1/0/10

The port is mapped to qset : 1

The allocations between the queues are : 10 10 26 54

Rack1SW3(config-if)#do show mls qos interface fastethernet 1/0/11 buffers

FastEthernet1/0/11

The port is mapped to qset : 2

The allocations between the queues are : 16 6 17 61

- Scheduler-Konfiguration:

Rack1SW3(config-if)#srr-queue bandwidth share 1 75 25 5

Rack1SW3(config-if)#srr-queue bandwidth shape  3  0  0  0

Die Cisco Catalyst 3750 Egress-Warteschlange unterstützt kein Low Latency Queueing (LLQ). Er unterstützt das Prioritätswarteschlangenmanagement. Wenn Sie das Verlassen der Prioritätswarteschlange konfigurieren, wird die Warteschlange 1 immer dann bedient, wenn sie ein Paket enthält.

Rack1SW3(config-if)#srr-queue bandwidth share 1 75 25 5

Rack1SW3(config-if)#srr-queue bandwidth shape  3  0  0  0

Rack1SW3(config-if)#priority-queue out

Wenn Sie diesen Befehl konfigurieren, sind die SRR-Gewichts- und Warteschlangengrößenverhältnisse betroffen, da es eine weniger Warteschlangen gibt, die am SRR teilnehmen. Das bedeutet, dass weight1 in der srr-queue-Bandbreitenform oder im srr-queue-Bandbreitenfreigabebefehl ignoriert wird (wird bei der Verhältnisberechnung nicht verwendet).

Mit diesem Befehl werden Verwerfungen in bestimmten Warteschlangen angezeigt:

Schritt 1:

1/ #show platform pm if-numbers

Verwenden Sie den Befehl show platform pm if-numbers und überprüfen Sie die Port-Informationen, die Ihrer Schnittstelle entsprechen (dies ist die ausgehende Schnittstelle auf Ihrem 3750). Beispiel: fas 0/3 kann port 0/4 sein. Behalten Sie 4 als Port-Wert bei. Wenn der erste Wert nicht 0 ist, geben Sie die Basiszahl nach der Port-Nummer an.

interface gid gpn lpn port slot unit slun port-type lpn-idb gpn-idb

------------------------------------------------------------------------

---------

Gi0/1     1    1    25   0/1  1    1    1    local     Yes     Yes

Gi0/2     2    2    26   0/0  1    2    2    local     Yes     Yes

Fa0/1     3    3    1    0/2  1    1    3    local     Yes     Yes

Fa0/2     4    4    2    0/3  1    2    4    local     Yes     Yes

Fa0/3     5    5    3    0/4  1    3    5    local     Yes     Yes

Fa0/4     6    6    4    0/5  1    4    6    local     Yes     Yes

Fa0/5     7    7    5    0/6  1    5    7    local     Yes     Yes

Fa0/6     8    8    6    0/7  1    6    8    local     Yes     Yes

Der Port-Wert, der der Schnittstelle fa 0/3 entspricht, ist 0/4. Jetzt können Sie die Warteschlangen-Drops der Schnittstelle fa 0/3 mit dem Befehl show platform port-asic stats drop port 4 anzeigen.

2/ #show platform port-asic stats drop port 4

Port-asic Port Drop Statistics - Summary

========================================

RxQueue 0 Drop Stats: 0

RxQueue 1 Drop Stats: 0

RxQueue 2 Drop Stats: 0

RxQueue 3 Drop Stats: 0

...

Port 4 TxQueue Drop Statistics

Queue 0

Weight 0 Frames 0

Weight 1 Frames 0

Weight 2 Frames 0

Queue 1

Weight 0 Frames 0

Weight 1 Frames 2755160   <--- Here is an example of drops

Weight 2 Frames 0

Queue 2

Weight 0 Frames 0

Weight 1 Frames 0

Weight 2 Frames 0

Queue 3

Weight 0 Frames 0

Weight 1 Frames 0

Weight 2 Frames 8

Phase 2:

- Konfiguration des Bandbreitenlimits:

Um die maximale Ausgabe auf einem Port zu begrenzen, konfigurieren Sie den Konfigurationsbefehl srr-queue bandwidth limit interface. Wenn Sie diesen Befehl auf 80 % konfigurieren, ist der Port 20 % der Zeit inaktiv. Die Leitungsgeschwindigkeit sinkt auf 80 Prozent der verbundenen Geschwindigkeit. Diese Werte sind nicht exakt, da die Hardware die Leitungsgeschwindigkeit in Sechserschritten anpasst. Dieser Befehl ist für eine 10-Gigabit-Ethernet-Schnittstelle nicht verfügbar.

srr-queue bandwidth limit weight1

wobeiWeight1 der Prozentsatz der Portgeschwindigkeit ist, auf den der Port beschränkt werden muss. Der Bereich liegt zwischen 10 und 90.

Hinweis: Die Standardeinstellungen der Ausgangswarteschlange sind für die meisten Situationen geeignet. Sie müssen diese nur ändern, wenn Sie die Ausgangswarteschlangen genau kennen und wenn diese Einstellungen nicht Ihrer QoS-Lösung (Quality of Service) entsprechen.

Zugehörige Informationen

- Konfigurieren von QoS

- Cisco Catalyst Switches der Serie 3750 - Support-Dokumentation

- Support für Wireless-Produkte

- Technischer Support und Downloads von Cisco