Einleitung
Dieses Dokument beschreibt, wie Sie die Differentiated Services Code Point(DSCP) -Werte in Quality of Service (QoS)-Konfigurationen auf einem Cisco Router festlegen.
Voraussetzungen
Anforderungen
Sie sollten mit den Feldern im IP-Header und in der Cisco IOS®-CLI vertraut sein.
Verwendete Komponenten
Dieses Dokument ist nicht auf bestimmte Software- und Hardware-Versionen beschränkt.
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.
Hintergrundinformationen
Differentiated Services (DiffServ) ist ein neues Modell, bei dem der Traffic von Zwischensystemen mit relativen Prioritäten basierend auf dem Typ der Services (ToS) behandelt wird. Der in RFC 2474 und RFC 2475 definierte DiffServ-Standard ersetzt die ursprüngliche Spezifikation zur Definition der in RFC 791 beschriebenen Paketpriorität. DiffServ erhöht die Anzahl der definierbaren Prioritätsstufen, wenn Bits eines IP-Pakets neu zugewiesen werden, um es als Priorität zu markieren.
Die DiffServ-Architektur definiert das DiffServ(DS)-Feld, das das ToS-Feld in IPv4 ersetzt, um Per-Hop-Behavior (PHB)-Entscheidungen über Paketklassifizierungs- und Traffic-Aufbereitungsfunktionen wie Metering, Marking, Shaping und Policing zu treffen.
Die RFCs geben nicht vor, wie PHBs implementiert werden sollen. Hierfür ist der Anbieter verantwortlich. Cisco implementiert Warteschlangentechniken, die ihren PHB in der IP-Priorität oder dem DSCP-Wert im IP-Header eines Pakets basieren können. Basierend auf dem DSCP-Wert oder der IP-Priorität kann der Traffic einer bestimmten Serviceklasse zugeordnet werden. Pakete innerhalb einer Serviceklasse werden auf die gleiche Weise behandelt.
Differentiated Services Code Point
Die sechs wichtigsten Bits des DiffServ-Felds werden als DSCP bezeichnet. Die letzten beiden CU-Bits (Current Unused) im DiffServ-Feld wurden nicht in der DiffServ-Feldarchitektur definiert. Diese Bits werden jetzt als ECN-Bits (Explicit Congestion Notification) verwendet. Router am Netzwerk-Edge klassifizieren Pakete und markieren diese mit der IP-Priorität oder dem DSCP-Wert in einem Diffserv-Netzwerk. Andere Netzwerkgeräte im Core, die Diffserv unterstützen, verwenden den DSCP-Wert im IP-Header, um ein PHB-Verhalten für das Paket auszuwählen und die entsprechende QoS-Behandlung bereitzustellen.
Die Diagramme in diesem Abschnitt zeigen einen Vergleich zwischen dem in RFC 791 definierten ToS-Byte und dem DiffServ-Feld.
ToS-Byte
P2 |
P1 |
P0 |
T2 |
T1 |
T0 |
CU1 |
CU0 |
-
IP-Priorität – drei Bit (P2 bis P0)
-
Verzögerung, Durchsatz und Zuverlässigkeit – drei Bit (T2 bis T0)
-
CU (Currently Unused, derzeit nicht verwendet) – zwei Bits (CU1 bis CU0)
DiffServ-Feld
DS5 |
DS4 |
DS3 |
DS2 |
DS1 |
DS0 |
ECN |
ECN |
Das standardisierte DiffServ-Feld des Pakets ist mit einem Wert markiert, damit das Paket an jedem Netzwerkknoten eine bestimmte Weiterleitungsbehandlung (Particular Forwarding Treatment, kurz PHB) erhält.
Der Standard-DSCP ist 000 000. Klassenauswahl-DSCPs sind Werte, die abwärtskompatibel mit der IP-Rangfolge sind. Bei der Konvertierung zwischen IP-Priorität und DSCP-Wert müssen die drei wichtigsten Bits zugeordnet werden. So
IP Prec 5 (101) maps to IP DSCP 101 000
ToS-Byte
DiffServ-Feld
Der DiffServ-Standard verwendet dieselben Prioritätsbits (die wichtigsten Bits – DS5, DS4 und DS3) zur Prioritätsfestlegung, präzisiert jedoch die Definitionen, was eine feinere Granularität durch die Verwendung der nächsten drei Bits im DSCP bietet. DiffServ ordnet die Prioritätsstufen (die noch durch die drei wichtigsten Bits des DSCP-Werts definiert werden) neu an und benennt sie in folgende Kategorien um (die Stufen werden in diesem Dokument ausführlicher erläutert):
Prioritätsstufe |
Beschreibung |
7 |
Bleibt gleich (Verbindungsschicht und Routing-Protokoll bleiben erhalten) |
6 |
Bleibt gleich (wird für IP-Routing-Protokolle verwendet) |
5 |
Express Forwarding (EF) |
4 |
Klasse 4 |
3 |
Klasse 3 |
2 |
Klasse 2 |
1 |
Klasse 1 |
0 |
Best Effort (BE) |
Bei diesem System priorisiert ein Gerät den Traffic zunächst nach Klasse. Anschließend wird der Traffic der gleichen Klasse unter Berücksichtigung der Drop-Wahrscheinlichkeit differenziert und priorisiert.
Der DiffServ-Standard gibt keine genaue Definition der „niedrigen“, „mittleren“ und „hohen“ Drop-Wahrscheinlichkeit vor. Nicht alle Geräte erkennen die DiffServ-Einstellungen (DS2 und DS1), und selbst wenn diese Einstellungen erkannt werden, lösen sie nicht notwendigerweise dieselbe PHB-Weiterleitungsaktion an jedem Netzwerkknoten aus. Jeder Knoten implementiert je nach Konfiguration seine eigene Antwort.
Assured Forwarding
RFC 2597 definiert den Assured Forwarding (AF)-PHB und beschreibt ihn als Mittel für eine DS-Domain des Anbieters, um verschiedene Ebenen der Weiterleitungszusicherungen für IP-Pakete anzubieten, die von einer DS-Kunden-Domain empfangen werden. Der Assured Forwarding-PHB garantiert einer AF-Klasse eine bestimmte Bandbreite und ermöglicht den Zugriff auf zusätzliche Bandbreite, sofern verfügbar. Es gibt vier AF-Klassen: AF1x bis AF4x. Innerhalb jeder Klasse gibt es drei Drop-Wahrscheinlichkeiten. Abhängig von der Richtlinie eines bestimmten Netzwerks können Pakete für einen PHB basierend auf dem erforderlichen Durchsatz, der Verzögerung, dem Jitter, dem Verlust oder der Priorität des Zugriffs auf Netzwerkservices ausgewählt werden.
Die Klassen 1 bis 4 werden als AF-Klassen bezeichnet. Diese Tabelle zeigt den DSCP-Code, der die AF-Klasse mit der Wahrscheinlichkeit angibt. Die Bits DS5, DS4 und DS3 definieren die Klasse; die Bits DS2 und DS1 geben die Tropfwahrscheinlichkeit an; das Bit DS0 ist immer Null.
Verwerfen |
Klasse 1 |
Klasse 2 |
Klasse 3 |
Klasse 4 |
Niedrig |
001010 AF11 DSCP 10 |
010010 AF21 DSCP 18 |
011010 AF31 DSCP 26 |
100010 AF41 DSCP 34 |
Mittel |
001100 AF12 DSCP 12 |
010100 AF 22 DSCP 20 |
011100 AF32 DSCP 28 |
100100 AF42 DSCP 36 |
Hoch |
001110 AF13 DSCP 14 |
010110 AF23 DSCP 22 |
011110 AF33 DSCP 30 |
100110 AF43 DSCP 38 |
Expedited Forwarding
RFC 2598 definiert das Expedited Forwarding (EF) PHB: "Das EF PHB kann verwendet werden, um einen verlustarmen End-to-End-Service über DS (Diffserv)-Domänen mit niedriger Latenz und geringem Jitter sowie gesicherter Bandbreite zu erstellen. Ein solcher Service erscheint den Endpunkten wie eine Punkt-zu-Punkt-Verbindung oder eine „virtuelle Mietleitung“. Dieser Service wurde auch als Premium-Service bezeichnet.“ Codepoint 101110 wird für den EF-PHB empfohlen, was einem DSCP-Wert von 46 entspricht.
Auch hier müssen für die Implementierung dieser PHBs herstellerspezifische Mechanismen konfiguriert werden. In RFC 2598 finden Sie weitere Informationen zu EF-PHB.
Verwenden des DSCP-Felds
Es gibt drei Möglichkeiten, das DSCP-Feld zu verwenden:
-
Classifier (Klassifizierung): Wählen Sie ein Paket basierend auf den Inhalten einiger Teile des Paket-Headers aus und wenden Sie den PHB basierend auf den durch den DSCP-Wert definierten Serviceeigenschaften an.
-
Marker (Markierung): Legen Sie das DSCP-Feld basierend auf dem Traffic-Profil fest.
-
Metering
- Überprüfen Sie die Konformität mit dem Datenverkehrsprofil mit einer Shaper- oder Dropper-Funktion.
Die Cisco IOS-Software berücksichtigt die Prioritäts-Bits des ToS-Feldes, wenn Traffic mit Weighted Fair Queuing (WFQ), Weighted Random Early Detection (WRED) oder Weighted Round Robin (WRR) in die Warteschlange gestellt wird. Die Prioritäts-Bits werden nicht berücksichtigt, wenn Policy Routing, Priority Queuing (PQ), Custom Queuing (CQ) oder Class Based Weighted Fair Queuing (CBWFQ) konfiguriert ist. Weitere Informationen finden Sie unter Class Based Weighted Fair Queuing (CBWFQ).
Paketklassifizierung
Die Paketklassifizierung beinhaltet die Verwendung eines Traffic-Deskriptors zur Kategorisierung eines Pakets innerhalb einer bestimmten Gruppe sowie das Zugänglichmachen des Pakets für das QoS-Management im Netzwerk. Mithilfe der Paketklassifizierung können Sie den Netzwerk-Traffic in mehrere Prioritätsstufen oder Serviceklassen (Class of Service, kurz CoS) aufteilen.
Sie können zum Abgleich von DSCP-Werten entweder Zugriffslisten (Access Lists, kurz ACLs) oder den Befehl match in der modularen QoS-CLI verwenden. Die Auswahl eines DSCP-Werts im Befehl „match“ wurde in Cisco IOS-Softwareversion 12.1(5)T eingeführt.
Router1(config)#access-list 101 permit ip any any ?
dscp Match packets with given dscp value
fragments Check non-initial fragments
log Log matches against this entry
log-input Log matches against this entry, including input interface
precedence Match packets with given precedence value
time-range Specify a time-range
tos Match packets with given TOS value
Wenn Sie den Wert ip dscp im Befehl class map angeben, wird Folgendes ausgegeben:
Router(config)#class-map match-all VOIP
1751-uut1(config-cmap)#match ip dscp ?
<0-63> Differentiated services codepoint value
af11 Match packets with AF11 dscp (001010)
af12 Match packets with AF12 dscp (001100)
af13 Match packets with AF13 dscp (001110)
af21 Match packets with AF21 dscp (010010)
af22 Match packets with AF22 dscp (010100)
af23 Match packets with AF23 dscp (010110)
af31 Match packets with AF31 dscp (011010)
af32 Match packets with AF32 dscp (011100)
af33 Match packets with AF33 dscp (011110)
af41 Match packets with AF41 dscp (100010)
af42 Match packets with AF42 dscp (100100)
af43 Match packets with AF43 dscp (100110)
cs1 Match packets with CS1(precedence 1) dscp (001000)
cs2 Match packets with CS2(precedence 2) dscp (010000)
cs3 Match packets with CS3(precedence 3) dscp (011000)
cs4 Match packets with CS4(precedence 4) dscp (100000)
cs5 Match packets with CS5(precedence 5) dscp (101000)
cs6 Match packets with CS6(precedence 6) dscp (110000)
cs7 Match packets with CS7(precedence 7) dscp (111000)
default Match packets with default dscp (000000)
ef Match packets with EF dscp (101110)
Router1(config-cmap)#match ip dscp af31
Markierung
Der DSCP kann am Netzwerk-Edge auf einen gewünschten Wert eingestellt werden, damit Core-Geräte das Paket, wie im Abschnitt Paketklassifizierung dargestellt, auf einfache Weise klassifizieren und einen geeigneten Servicelevel bereitstellen können.Mithilfe der klassenbasierten Paketmarkierung kann der DSCP-Wert wie folgt festgelegt werden:
policy-map pack-multimedia-5M
!--- Creates a policy map named pack-multimedia-5M.
class management
!--- Specifies the policy to be created for the !--- traffic classified by class management.
bandwidth 50
set ip dscp 8
!--- Sets the DSCP value of the packets matching !--- class management to 8.
class C1
priority 1248
set ip dscp 40
class voice-signalling
bandwidth 120
set ip dscp 24
Verwenden der Committed Access Rate oder des Class-Based Policing
Committed Access Rate und Class-Based Policing sind Mechanismen zur Traffic-Regulierung, die verwendet werden, um den Traffic-Fluss so zu regeln, dass er den vereinbarten Serviceparametern entspricht. Diese Mechanismen können zusammen mit dem DSCP verwendet werden, um verschiedene Services für nicht konformen und konformen Traffic bereitzustellen, indem der DSCP-Wert entsprechend geändert wird (siehe dieser Abschnitt).
Weitere Informationen finden Sie unter Configuring
Traffic Policing
and Comparing Class-Based Policing and Committed Access Rate.
interface Serial1/0.1 point-to-point
bandwidth 5000
ip address 192.168.126.134 255.255.255.252
rate-limit output access-group 150 8000 1500 2000 conform-action
set-dscp-transmit 10 exceed-action set-dscp-transmit 20
!--- For traffic matching access list 150, sets the DSCP value of conforming traffic !--– to 10 and that of non-conforming traffic to 20.
rate-limit output access-group 152 8000 1500 2000 conform-action
set-dscp-transmit 15 exceed-action set-dscp-transmit 25
rate-limit output access-group 154 8000 1500 2000 conform-action
set-dscp-transmit 18 exceed-action set-dscp-transmit 28
frame-relay interface-dlci 17
class shaper-multimedia-5M
DSCP-konformes WRED
Weighted Random Early Detection (WRED), verwirft selektiv Traffic mit niedrigerer Priorität, wenn die Schnittstelle überlastet wird. WRED kann unterschiedliche Performance-Merkmale für verschiedene CoS bereitstellen. Dieser differenzierte Service kann auf dem DSCP basieren, wie hier dargestellt:
class C2
bandwidth 1750
random-detect dscp-based
!--- Enable dscp-based WRED as drop policy.
random-detect exponential-weighting-constant 7
!--- Specifies the exponential weight factor for the !--- average queue size calculation for the queue.
random-detect dscp 16 48 145 10
!--- Specifies the minimum and maximum queue thresholds !--- for each DSCP value.
random-detect dscp 32 145 435 10
Weitere Informationen finden Sie im Abschnitt WRED zur DiffServ-konformen Überlastungsvermeidung im Überblick.
Bekannte Probleme in Cisco IOS-Software Schulungsversion 12.2
Der Zugriff auf Bug-Tools und -Informationen ist nur für registrierte Cisco Kunden verfügbar.
Sie können mit dem Bug Search Tool nach diesen Fehlern suchen.
-
Cisco Bug-ID CSCdt63295 - Wenn Sie das ToS-Byte mit den neuen DSCP-Markierungsbefehlen für die DFÜ-Peers (auf 0 eingestellt) in Cisco IOS Software, Version 12.2.2T, nicht festlegen, können Pakete nicht markiert werden, und sie können mit einem ToS von 0 erhalten bleiben.
-
Cisco Bug-ID CSCdt74738: Die Unterstützung für den Befehl set ip dscp auf dem Router der Cisco 7200-Serie und einfachen Plattformen für Multicast-Pakete muss ab Cisco IOS-Software Version 12.2(3.6) verfügbar sein.
Zugehörige Informationen