Introduction
Ce document décrit comment placer les valeurs de point de code de services différenciés (DSCP) dans des configurations de qualité de service (QoS) sur un routeur de Cisco.
Conditions préalables
Exigences
Vous devez connaître les champs de l'en-tête IP et de l'interface de ligne de commande Cisco IOS®.
Composants utilisés
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Conventions
Pour plus d'informations sur les conventions des documents, reportez-vous àConventions relatives aux conseils techniques Cisco.
Informations générales
Les services différenciés (DiffServ) sont un nouveau modèle dans lequel le trafic est traité par des systèmes intermédiaires avec des priorités relatives basées sur le type de champ de services (ToS). Définie dans les documents RFC 2474 et RFC 2475, la norme DiffServ remplace la spécification initiale pour définir la priorité des paquets décrite dans le document RFC 791. DiffServ augmente le nombre de niveaux de priorité définissables lorsqu'il réaffecte des bits d'un paquet IP pour le marquer comme priorité.
L'architecture de DiffServ définit le champ du DiffServ (DS) qui remplace le champ ToS dans l'IPv4 pour prendre des décisions relative au comportement par saut(PHB) au sujet de la classification de paquets et de fonctions de conditionnement de trafic, telles que doser, marquer, former et maintenir l'ordre.
Les RFC ne dictent pas la manière d'implémenter les PHB ; c'est la responsabilité du fournisseur. Cisco met en application des techniques de mise en file d'attente qui peuvent baser leur PHB sur la Priorité IP ou la valeur DSCP dans l'en-tête IP d'un paquet. Basé sur le DSCP ou la Priorité IP, le trafic peut être mis dans un classe de service particulière. Les paquets étant dans une même classe de service sont traités de la même façon.
Point de code de services différenciés
Les six bits de poids fort du champ DiffServ s'appellent comme le DSCP. Les deux derniers bits actuellement inutilisés (CU) du champ DiffServ n'ont pas été définis dans l'architecture de champ DiffServ ; ils sont maintenant utilisés comme bits ECN (Explicit Congestion Notification). Les routeurs à la périphérie du réseau classent des paquets et les identifient soit par la Priorité IP soit par la valeur DSCP dans un réseau Diffserv. D'autres périphériques réseau dans le noyau qui prennent en charge Diffserv utilisent la valeur DSCP dans l'en-tête IP pour sélectionner un comportement PHB pour le paquet et fournir le traitement QoS approprié.
Les schémas de cette section montrent une comparaison entre l'octet ToS défini par RFC 791 et le champ DiffServ.
Octet ToS
P2 |
P1 |
P0 |
T2 |
T1 |
T0 |
UC1 |
UC0 |
-
Priorité IP : trois bits (P2 à P0)
-
Délai, débit et fiabilité : trois bits (T2 à T0)
-
CU (actuellement inutilisé) : deux bits (CU1-CU0)
Le champ DiffServ
DS5 |
DS4 |
DS3 |
DS2 |
DS1 |
DS0 |
ECN |
ECN |
Le champ normalisé DiffServ du paquet est identifié par une valeur de sorte que le paquet reçoive un traitement de transfert ou un PHB particulier, à chaque nœud de réseau.
Le DSCP par défaut est 000 000. Les DSCP sélecteurs de classe sont des valeurs rétrocompatibles avec la Priorité IP. Lorsque vous convertissez entre la priorité IP et le DSCP, faites correspondre les trois bits de poids fort. En d'autres termes :
IP Prec 5 (101) maps to IP DSCP 101 000
Octet ToS
Le champ DiffServ
La norme DiffServ utilise les mêmes bits de priorité (les bits les plus significatifs, DS5, DS4 et DS3) pour le réglage des priorités, mais elle clarifie davantage les définitions, ce qui permet d'obtenir une granularité plus fine en utilisant les trois bits suivants dans le DSCP. Le DiffServ réorganise et renomme les niveaux de priorité (toujours définis par les trois bits de poids fort du DSCP) dans ces catégories (les niveaux sont expliqués plus en détail dans ce document) :
Niveau de priorité |
Description |
7 |
Reste le même (couche de liaison et keep alive du protocole de routage) |
6 |
Reste le même (utilisé pour des protocoles de routage IP) |
5 |
Express Forwarding (EF) |
4 |
Classe 4 |
3 |
Classe 3 |
2 |
Classe 2 |
1 |
Classe 1 |
0 |
Meilleur effort |
Avec ce système, un périphérique donne la priorité du trafic par la classe d'abord. Ensuite, il différencie et hiérarchise le trafic de même classe, et prend en compte la probabilité d'abandon.
La norme de DiffServ ne spécifie pas une définition précise de probabilité de perte « faible », « moyenne » et « élevée ». Tous les périphériques ne reconnaissent pas les paramètres DiffServ (DS2 et DS1) et, même lorsque ces paramètres sont reconnus, ils ne déclenchent pas nécessairement la même action de transfert PHB au niveau de chaque noeud du réseau. Chacun nœud met en application sa propre réponse selon la façon dont il est configuré.
Transmission assurée
Le document RFC 2597 définit le PHB de transfert assuré (AF) et le décrit comme un moyen pour un domaine DS de fournisseur d'offrir différents niveaux d'assurance de transfert pour les paquets IP reçus d'un domaine DS client. Le PHB de transmission assurée garantit une certaine partie de la bande passante à une classe AF et permet l'accès à la bande passante supplémentaire si disponible. Il y a quatre classes AF, de AF1x à AF4x. Dans chaque classe, il y a trois probabilités de perte. Selon une politique de réseau donnée, les paquets peuvent être sélectionnés pour un PHB en fonction du débit requis, du délai, de la gigue, de la perte ou de la priorité d'accès aux services réseau.
Les classes de 1 à 4 sont désignées sous le nom de classes AF. Ce tableau illustre le code DSCP qui spécifie la classe AF avec la probabilité. Les bits DS5, DS4 et DS3 définissent la classe ; les bits DS2 et DS1 spécifient la probabilité de perte ; le bit DS0 est toujours égal à zéro.
Goutte |
Classe 1 |
Classe 2 |
Classe 3 |
Classe 4 |
Faible |
001010 AF11 DSCP 10 |
010010 AF21 DSCP 18 |
011010 AF31 DSCP 26 |
100010 AF41 DSCP 34 |
Moyen |
001100 AF12 DSCP 12 |
010100 AF 22 DSCP 20 |
011100 AF32 DSCP 28 |
100100 AF42 DSCP 36 |
Élevé |
001110 AF13 DSCP 14 |
010110 AF23 DSCP 22 |
011110 AF33 DSCP 30 |
100110 AF43 DSCP 38 |
Transmission expédiée
Le document RFC 2598 définit le PHB EF (Expeided Forwarding) : « Le PHB EF peut être utilisé pour créer un service de bout en bout à faible perte, faible latence, faible gigue, bande passante garantie via des domaines DS (Diffserv). Un tel service apparaît aux points d'extrémité comme une connexion point à point ou une « ligne louée virtuelle ». Ce service a également été décrit comme un service Premium. Le point de code 101110 est recommandé pour le PHB EF qui correspond à une valeur DSCP de 46.
De nouveau, des mécanismes constructeur spécifiques doivent être configurés pour mettre en application ces PHB. Référez-vous à RFC 2598 pour plus d'informations sur PHB EF.
Utiliser le champ DSCP
Il y a trois façons d'utiliser le champ DSCP :
-
Classifieur : sélectionnez un paquet en fonction du contenu de certaines parties de l'en-tête du paquet et appliquez PHB en fonction de la caractéristique de service définie par la valeur DSCP.
-
Marqueur : définissez le champ DSCP en fonction du profil de trafic.
-
Metering
: vérifie la conformité au profil de trafic à l'aide d'une fonction de mise en forme ou de suppression.
La plate-forme logicielle Cisco IOS prend en compte les bits de priorité du champ ToS si du trafic est mis en file d'attente dans Weighted Fair Queuing (WFQ), Weighted Random Early Detection (WRED) ou Weighted Round Robin (WRR). Les bits de priorité ne sont pas considérés quand le routage spécifique, la Mise en file d'attente par priorité (PQ), la Mise en file d'attente personnalisée (CQ), ou la Mise en file d'attente pondérée basée sur les classes (CBWFQ) sont configurés. Pour plus d'informations, consultez CBWFQ (Class Based Weighted Fair Queuing).
Classification de paquets
La classification des paquets implique l’utilisation d’un descripteur de trafic pour classer un paquet au sein d’un groupe spécifique et rendre le paquet accessible pour la QoS qui gère le réseau. Lorsque vous utilisez la classification de paquets, vous pouvez partitionner le trafic réseau en plusieurs niveaux de priorité ou en une classe de service (CoS).
Vous pouvez utiliser des Listes d'accès (ACL) ou la commande match dans le CLI QoS modulaire pour correspondre aux valeurs DSCP. La version 12.1(5)T du logiciel Cisco IOS a introduit la possibilité de sélectionner une valeur DSCP dans la commande match.
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
Quand vous spécifiez la valeur ip dscp dans la commande class map, vous avez ceci :
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
Marquage
Le DSCP peut être défini sur une valeur souhaitée à la périphérie du réseau afin de faciliter la classification du paquet par les périphériques principaux comme indiqué dans la section Packet Classification et de fournir un niveau de service approprié.Le marquage de paquet basé sur la classe peut être utilisé pour définir la valeur DSCP comme indiqué ici :
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
Utiliser le débit d'accès garanti ou la réglementation basée sur les classes
Le Committed Access Rate et le maintien de l'ordre basé sur les classes sont des mécanismes de régulation du trafic utilisés pour réguler le flux de trafic pour se conformer aux paramètres du service convenus. Ces mécanismes, ainsi que le DSCP, peuvent être utilisés pour fournir différents niveaux de service qui ne sont pas conformes au trafic lorsqu'il modifie de manière appropriée la valeur DSCP, comme indiqué dans cette section.
Référez Configuring
-vous à Trafic Policing
et Comparaison de la réglementation basée sur les classes et débit d'accès garanti pour plus d'informations.
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
WRED conforme DSCP
Le Weighted Random Early Detection (WRED) rejette sélectivement le trafic basse priorité quand l'interface commence à être congestionné. WRED peut fournir des caractéristiques de fonctionnement différenciées pour différents CoS. Ces services différenciés peuvent se faire sur la base du DSCP, comme montré ici :
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
Référez-vous à la section WRED conforme DiffServ de l'aperçu sur la Prévention de l'encombrement pour plus d'informations.
Problèmes identifiés dans le logiciel Cisco IOS séries de versions 12.2
L'accès aux informations et aux outils de bogue est uniquement disponible pour les clients Cisco enregistrés.
Vous pouvez rechercher ces bogues avec l'Outil de recherche de bogues.
-
ID de bogue Cisco CSCdt63295 — Si vous ne parvenez pas à définir l'octet ToS avec les nouvelles commandes de marquage DSCP sur les terminaux de numérotation dial-peer (défini sur 0) dans le logiciel Cisco IOS Version 12.2.2T, les paquets ne peuvent pas être marqués et ils peuvent rester avec un ToS défini sur 0.
-
ID de bogue Cisco CSCdt74738 — La prise en charge de la commande set ip dscp sur le routeur Cisco 7200 et les plates-formes d'extrémité inférieure pour les paquets de multidiffusion doivent être disponibles à partir de la version 12.2(3.6) du logiciel Cisco IOS.
Informations connexes