In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
In diesem Dokument werden die QoS-Funktionen der Catalyst Switches der Serie 3750 beschrieben, z. B. Klassifizierung, Markierung, Festlegung von Richtlinien, Warteschlangenverwaltung und Terminierung.
Cisco empfiehlt, dass Sie über Kenntnisse in diesem Thema verfügen:
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.
Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps von Cisco zu Konventionen).
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.
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.
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:
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.
In diesem Abschnitt werden die Konzepte verschiedener möglicher Eingangs-QoS-Konfigurationen erläutert. In diesem Abschnitt werden folgende Themen behandelt:
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.
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.
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:
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 ist, können native VLAN-Frames CoS- und DSCP-Werte als 0 haben. Da native VLAN-Frames nicht gekennzeichnet sind und der Frame nach dem Eintritt in den Switch markiert wird, kann der Switch den CoS-Standardwert auf 0 und die CoS-zu-DSCP-Tabelle setzen. setzt den DSCP-Wert auf 0.
Anmerkung: 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 dot1q markierte Frames mit Sprach-VLAN-ID 20. Wenn Sie den Port mit dem Befehl mls qos trust cos konfigurieren, vertraut es 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 im Frame 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 aufweisen, kann dieser Wert 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 und die CoS wird nicht geändert. Wert der Frames vom Telefon.
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 gesetzt. Die zuvor konfigurierten Vertrauenswerte werden überschrieben.
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 der Frame-Typen IEEE 802.1Q oder IEEE 802.1p) von dem 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. Daher fügt der Switch den dot1q-Frame hinzu und konfiguriert den CoS-Standardwert auf 0. Anschließend berechnet die CoS-DSCP-Tabelle den DSCP-Wert und setzt ihn auf 0 zurück.
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.
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. Er lautet 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 gekennzeichnet. Dies ist nicht der gewünschte 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 |
Anmerkung: 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.
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.
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 die Subnetzadresse 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.
Der Datenverkehr entspricht Klasse B und wird so konfiguriert, dass der DSCP-Wert auf AF21 festgelegt wird. Wie im Diagramm dargestellt, 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 Standardklassendatenverkehr 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.
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
Dem Datenverkehr von TCP 1494 muss der DSCP-Wert CS4 zugewiesen werden:
Switch(config)#access-list 100 permit tcp 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
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
Anwendung unter relevanten Schnittstellen:
Switch(config)#interfaceSwitch(config-if)#service-policy
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)
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.
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 übermäßig großen 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 2 lautet. 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.
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:
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 z. B. 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 die 10 Mbit/s überschreitet, mit dem DSCP-Wert CS2 übertragen. Dies liegt daran, dass die Standardwerte der Richtlinienzuordnung DSCP 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-Nutzdatenverkehr hat den DSCP-Wert EF und die Sprachsteuerung den DSCP-Wert CS3. Entsprechend der Richtlinienzuordnungskonfiguration 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 Klasse-B-Datenverkehr wird mit einer Rate 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 überwachten DSCP-Tabelle 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.
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.
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
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 %.
Standardkonfiguration der Warteschlangenzuordnung:
Pakete mit CoS 5 (DSCP 40 bis 47) werden in die Warteschlange 2 gestellt. Die verbleibenden Pakete werden in die Warteschlange 1 gestellt.
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
Es gibt drei Schritte zum Konfigurieren der Warteschlangenverwaltung und der Planung. Dies sind:
Konfiguration der Warteschlangenzuordnung:
Die Konfiguration der Warteschlangenzuordnung ordnet die Pakete den beiden Eingangswarteschlangen basierend auf den DSCP- oder CoS-Werten zu.
Warteschlangenkonfiguration:
Die Warteschlangenkonfiguration definiert das Verhältnis (reservieren Sie den Speicherplatz), mit dem die Eingangspuffer zwischen den beiden Warteschlangen aufgeteilt werden.
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.
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. Entsprechend der Konfiguration wird die Warteschlange 1 zu 90 % von 8 Gbit/s und die Warteschlange 2 wiederum zu 10 % von 8 Gbit/s bedient. 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.
Anmerkung: 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)#
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.
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. Entsprechend der Konfiguration wird die Warteschlange 1 zu 90 % von 8 Gbit/s und die Warteschlange 2 wiederum zu 10 % von 8 Gbit/s bedient. 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.
Anmerkung: 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)#
Ü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.
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 der Warteschlangenzuordnung
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
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
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 Warteschlangengruppe 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 Null ist, geben Sie die Basiszahl nach der Portnummer 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. Nun können Sie die Warteschlangen-Drops der Schnittstelle fa 0/3 mit dem Befehl show platform port-asic stats drop port 4 sehen.
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.
Anmerkung: 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 (Quality of Service) entsprechen.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
2.0 |
31-May-2023 |
Rezertifizierung |
1.0 |
17-May-2007 |
Erstveröffentlichung |