Qualité de service (QoS) : Marquage des paquets QoS

Comparaison des commandes bandwidth et priority d'une stratégie de service QoS

18 octobre 2016 - Traduction automatique
Autres versions: PDFpdf | Anglais (22 avril 2015) | Commentaires


Contenu


Introduction

Les commandes bandwidth et priority définissent toutes les deux les actions qui peuvent être appliquées dans une interface de ligne de commande de qualité de service (MQC) modulaire, que vous appliquez à une interface, à une sous-interface ou à un circuit virtuel (VC) par l'intermédiaire de la commande service-policy. Spécifiquement, ces commandes fournissent une garantie de bande passante aux paquets qui correspondent aux critères d'une classe de trafic. Cependant, les deux commandes présentent d'importantes différences fonctionnelles dans ces garanties. Cette note technique explique lesdites différences et la façon dont la bande passante inutilisée d'une classe est distribuée à des flux qui correspondent à d'autres classes.

Conditions préalables

Conditions requises

Aucune spécification déterminée n'est requise pour ce document.

Composants utilisés

Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.

Les informations contenues dans ce document ont été créées à partir des périphériques d'un environnement de laboratoire spécifique. Tous les périphériques utilisés dans ce document ont démarré avec une configuration effacée (par défaut). Si votre réseau est opérationnel, assurez-vous que vous comprenez l'effet potentiel de toute commande.

Conventions

Pour plus d'informations sur les conventions de documents, reportez-vous à Conventions relatives aux conseils techniques Cisco.

Résumé des différences

Ce tableau présente les différences fonctionnelles entre les commandes bandwidth et priority :

Fonction commande bandwidth commande priority
Garantie de bande passante minimale Oui Oui
Garantie de bande passante maximale Non Oui
Contrôle intégré Non Oui
Fournit une faible latence Non Oui

De plus, les commandes bandwidth et priority sont conçues de façon à répondre à différents objectifs stratégiques de qualité de service (QoS). Ce tableau présente ces différents objectifs :

Application commande bandwidth commande priority
Gestion de la bande passante pour des liaisons WAN Oui En quelque sorte
Gérez le retard et les variations du retard (gigue) Non Oui
Améliorez le temps de réponse des applications Non Oui

Même avec des interfaces rapides, la plupart des réseaux ont toujours besoin d'un modèle solide de gestion QoS pour traiter efficacement des points d'encombrement et des étranglements qui se produisent inévitablement en raison d'incohérences de vitesse ou de structures de trafic diverses. Les véritables réseaux mondiaux disposent de ressources limitées et subissent des engorgements de ressources, nécessitant de stratégies QoS pour assurer l'allocation des ressources appropriées.

Configurer la commande bandwidth

Les guides de configuration de½ du¿Â du Cisco IOSï décrivent la commande bandwidth comme « quantité de bande passante, dans le Kbps, d'être assigné à la classe. Pour spécifier ou modifier la bande passante allouée à une classe appartenant à une carte de stratégie. »

Voyons ce que signifient ces définitions.

La commande bandwidth fournit une garantie de bande passante minimale pendant l'encombrement. La syntaxe de la commande peut revêtir trois formes, tel qu'illustré dans ce tableau :

Syntaxe de commande Description
bandwidth {kbps}
Spécifie l'allocation de bande passante en tant que débit binaire.
bandwidth percent {value}
Spécifie l'allocation de bande passante en tant que pourcentage du débit de base de la liaison.
bandwidth remaining percent {value}
Spécifie l'allocation de bande passante en tant que pourcentage de la bande passante qui n'a pas été allouée à d'autres classes.

Remarque: La commande bandwidth définit un comportement, qui est une garantie de bande passante minimale. Pas toutes les plates-formes de routage Cisco utilisent le weighted-fair queueing (WFQ) en tant qu'algorithme fondamental pour implémenter ce comportement. Pour plus d'informations, reportez-vous à Pourquoi utiliser CBWFQ ?.

Configurer la commande priority

Les guides de configuration Cisco IOS décrivent la commande priority comme réservant « une file d'attente prioritaire avec une quantité spécifique de bande passante disponible au trafic CBWFQ… pour accorder la priorité à une classe de trafic basée sur la quantité de bande passante disponible dans une stratégie de trafic. » Des explications sur la signification de ces définitions se trouvent ci-dessous.

Vous créez une file d'attente prioritaire avec ces ensembles de commandes :

Router(config)# policy-map policy-name
 
Router(config-pmap)# class class-name
 
Router(config-pmap-c)# priority kpbs [bytes]

Dans les situations d'encombrement, la classe de trafic est une bande passante garantie égale au débit spécifié. (Souvenez-vous que les garanties de bande passante sont seulement un problème quand une interface est congestionnée.) En d'autres termes, la commande priority fournit une garantie de bande passante minimale.

De plus, la commande priority implémente une garantie de bande passante maximale. À un niveau interne, la file d'attente prioritaire utilise un comptage de jeton qui mesure la charge offerte et s'assure que le flux de trafic est conforme au débit configuré. Seul le trafic qui est conforme au comptage de jeton est garanti de faible latence. Tout excès de trafic est envoyé si la liaison n'est pas congestionnée ou alors est abandonné si la liaison est congestionnée. Pour plus d'informations, reportez-vous à Qu'est-ce qu'un comptage de jeton ?.

Le but du contrôle intégré est de s'assurer que les autres files d'attente sont traitées par le programmateur de files d'attente. Dans la fonctionnalité initiale de mise en file d'attente par priorité de Cisco, qui utilise les commandes priority-group et priority-list, le programmateur traitait toujours de la file d'attente avec le plus haut degré de priorité en premier. Dans des cas extrêmes, les files d'attente de faible priorité étaient rarement traitées et étaient effectivement privées de bande passante.

L'avantage réel de la commande priority - et sa principale différence de la commande bandwidth - réside en la façon dont elle opère un strict retrait d'une file d'attente prioritaire afin de conférer une limite à la latence. Voici comment le guide de configuration Cisco IOS décrit cet avantage : « Une file d'attente par priorité stricte (PQ) permet à des données sensibles au retard, telles que la voix, d'être retirées de la file d'attente et envoyées avant que des paquets dans d'autres files d'attente soient retirés d'une file d'attente. » Voyons ce que cela signifie.

Chaque interface du routeur met à jour ces deux ensembles de files d'attente :

File d'attente Emplacement Méthodes de mise en file d'attente Les routages spécifiques de service s'appliquent Commande pour ajuster
File d'attente matérielle ou boucle de transmission Adaptateur de port ou module réseau FIFO uniquement. Non tx-ring-limit
File d'attente de la couche 3 Système de traitement de la couche 3 ou tampons d'interface WFQ, CBWFQ, LLQ basés sur le flux Oui Varie avec la méthode de mise en file d'attente. Utilisez la commande queue-limit avec une classe de bande passante.

Dans le tableau ci-dessus, nous pouvons voir qu'une stratégie de service s'applique seulement aux paquets dans la file d'attente de la couche 3.

Le retrait strict de la file d'attente fait référence au programmateur de file d'attente traitant de la file d'attente prioritaire et transférant ses paquets à la boucle de transmission en premier. La boucle de transmission est le dernier arrêt avant les médias physiques.

Dans l'illustration suivante, la boucle de transmission a été configurée pour porter quatre paquets. Si trois paquets sont déjà sur la boucle, alors au mieux nous pouvons mettre en file d'attente à la quatrième position, puis attendre que les trois autres se vident. Ainsi, le mécanisme Low Latency Queueing (LLQ) retire simplement de la file d'attente les paquets à la fin de la liste d'attente du niveau du pilote first-in, first-out (FIFO) sur la boucle de transmission.

/image/gif/paws/10100/priorityvsbw1.jpg

Utilisez la commande tx-ring-limit pour ajuster la taille de la boucle de transmission à une valeur non configurée par défaut. Cisco recommande d'ajuster la boucle de transmission en transmettant le trafic voix. Reportez-vous au Module de la fonctionnalité Low Latency Queueing.

La hiérarchisation du trafic est particulièrement importante pour des applications basées sur des transactions interactives et sensibles au retard. Pour réduire le retard et la gigue, les périphériques réseau doivent être capables de traiter de paquets de voix dès qu'ils arrivent, ou en d'autres termes, de façon strictement prioritaire. La stricte priorité est ni plus ni moins la seule qui fonctionne bien pour la voix. À moins que les paquets de voix soient immédiatement retirés de la file d'attente, chaque saut introduira plus de retard.

L'Union internationale des télécommunications (ITU) recommande un maximum de retard de bout en bout unidirectionnel de 150 millisecondes. Sans retrait immédiat de la file d'attente sur l'interface du routeur, un seul saut de routeur peut peser le plus dans ce budget de retard. Pour plus d'informations, reportez-vous aux Conseils techniques de qualité vocale.

Remarque: Avec les deux commandes, la valeur de kBps devrait prendre en considération la surcharge de la couche 2. En d'autres termes, si une garantie est faite pour une classe, cette garantie est, en ce qui concerne la couche 2, le débit. Pour plus d'informations, reportez-vous à Quels octets sont comptés par IP à la mise en file d'attente ATM CoS ? et Pourquoi utiliser LLQ ?.

Quelles classes de trafic peuvent utiliser la bande passante excessive ?

Bien que les garanties de bande passante fournies par les commandes bande passante et priority aient été décrites avec des mots comme « réservé » et la « bande passante à mettre de côté », ni l'une ni l'autre de ces commandes n'implémente une vraie réservation. En d'autres termes, si une classe de trafic n'utilise pas sa bande passante configurée, n'importe quelle bande passante inutilisée est partagée parmi les autres classes.

Le système de mise en file d'attente impose une importante exception à la règle avec une classe prioritaire. Comme noté ci-dessus, la charge offerte d'une classe prioritaire est dosée par un régulateur de trafic. Pendant les états d'encombrement, une classe prioritaire ne peut utiliser aucune bande passante excessive.

Ce tableau décrit quand une classe de bande passante et une classe prioritaire peuvent utiliser la bande passante excessive :

Commande Encombrement Non encombrement
commande bandwidth Autorisé à dépasser le débit alloué. Autorisé à dépasser le débit alloué.
commande priority Cisco IOS dose les paquets et applique un système de mesure du trafic par l'intermédiaire d'un comptage de jeton. Les paquets correspondants sont tenus au débit bps configuré et tous les paquets en excès sont jetés. La classe peut dépasser sa bande passante configurée.

Remarque: Une exception à ces lignes directrices pour LLQ est Frame Relay sur le routeur Cisco 7200 et d'autres plates-formes de processeur de commutation / non routage (RSP). L'implémentation originale de LLQ au-dessus de Frame Relay sur ces plates-formes n'a pas permis aux classes prioritaires de dépasser le débit configuré au cours des périodes de non encombrement. La version 12.2 du logiciel Cisco IOS ne contient plus cette exception et s'assure que des paquets non conformes sont seulement déposés s'il y a un encombrement. En outre, des paquets plus petits qu'une taille de fragmentation FRF.12 ne sont plus envoyés par le processus de fragmentation, réduisant l'utilisation du CPU.

Il ressort de la discussion ci-dessus qu'il est important de comprendre que puisque les classes prioritaires sont contrôlées pendant les situations d'encombrement, aucune bande passante restante n'est allouée depuis les classes de bande passante. Ainsi, la bande passante restante est partagée par toutes les classes de bande passante et classes par défaut.

Comment la bande passante inutilisée est-elle allouée ?

Cette section explique comment le système de mise en file d'attente distribue toute bande passante restante. Voici comment la section Vue d'ensemble des fonctionnalités basée sur Class-Based Weighted Fair Queueing décrit le mécanisme d'allocation : « Si la bande passante excessive est disponible, la bande passante excessive est divisée parmi les classes de trafic proportionnellement aux bandes passantes configurées. Si toute la bande passante n'est pas allouée, la bande passante restante est proportionnellement allouée parmi les classes, basées sur leur bande passante configurée. » Voyons deux exemples.

Dans le premier exemple, policy-map foo garantit 30 % de la bande passante à la classe « bar » et 60 % de bande passante à la classe « baz ».

policy-map foo 
  class bar 
    bandwidth percent 30 
 class baz 
  bandwidth percent 60

Si vous appliquez cette stratégie à une liaison à Mbits/s, cela signifie que 300 kBps sont garantis à la classe « bar », et 600 kBps sont garantis à la classe « baz ». Il est important de mentionner que 100 kBps restent pour la classe par défaut. Si la classe par défaut n'en a pas besoin, les 100 kPps inutilisés sont disponibles à l'usage de la classe « bar » et de la classe « baz ». Si les deux classes ont besoin de bande passante, elles la partagent proportionnellement aux débits configurés. Dans cette configuration, le taux de partage est 30:60 ou 1:2.

Le prochain exemple de configuration contient trois cartes de stratégie - barre, baz et poli. Dans la carte de stratégie appelée barre et la carte de stratégie appelée baz, la bande passante est spécifiée par pourcentage. Cependant, dans la carte de stratégie appelée poli, la bande passante est spécifiée en kBps.

Souvenez-vous que les cartes de classe devraient déjà être créées avant que vous créiez les cartes de stratégie.

 
 policy-map bar
  class voice
   priority percent 10
  class data
   bandwidth percent 30
  class video
   bandwidth percent 20
 policy-map baz
  class voice
   priority percent 10
  class data
   bandwidth remaining percent 30
  class video
   bandwidth remaining percent 20
 policy-map poli
  class voice
  class data
   bandwidth 30
  class video
   bandwidth 20

Remarque: La commande bandwidth remaining percent a été introduite dans la version 12.2(T) de Cisco IOS. Reportez-vous à Low Latency Queueing avec prise en charge du pourcentage prioritaire pour une description détaillée de la commande bandwidth.

À l'aide de la commande police pour définir un maximum

Si une bande passante ou classe prioritaire ne devait pas dépasser sa bande passante allouée au cours des périodes sans encombrement, vous pouvez combiner la commande priority avec la commande police. Cette configuration impose un débit maximal qui est toujours en activité sur la classe. Choisir pour configurer une déclaration de régulation dans cette configuration dépend de l'objectif de la stratégie.

Comprendre la valeur de bande passante disponible

Cette section explique comment le système de mise en file d'attente dérive de la valeur de bande passante disponible, telle que présentée dans le résultat des commandes show interface ou show queueing.

Nous avons créé cette carte stratégique nommée Leslie :

7200-16# show policy-map leslie 
  Policy Map leslie 
    Class voice 
      Weighted Fair Queueing 
            Strict Priority 
            Bandwidth 1000 (kbps) Burst 25000 (Bytes) 
    Class data 
      Weighted Fair Queueing 
            Bandwidth 2000 (kbps) Max Threshold 64 (packets)

Nous avons alors créé un circuit virtuel permanent ATM (PVC), l'avons attribué à la catégorie de service ATM en temps non réel à débit variable, et avons configuré un taux de cellules soutenu de 6 Mbits/s. Nous avons alors appliqué la carte stratégique au PVC avec la commande service-policy output leslie.

7200-16(config)# interface atm 4/0.10 point 
7200-16(config-subif)# pvc 0/101 
7200-16(config-if-atm-vc)# vbr-nrt 6000 6000 
7200-16(config-if-atm-vc)# service-policy output leslie

La commande show queueing interface atm affiche la « bande passante disponible de 1500 kilobits/sec. »

7200-16# show queueing interface atm 4/0.10 
  Interface ATM4/0.10 VC 0/101 
  Queueing strategy: weighted fair 
  Output queue: 0/512/64/0 (size/max total/threshold/drops) 
     Conversations  0/0/128 (active/max active/max total) 
     Reserved Conversations 1/1 (allocated/max allocated) 
     Available Bandwidth 1500 kilobits/sec

Voyons comment cette valeur est dérivée :

  1. 6 Mbits/s est le taux de cellules soutenu (SCR). Par défaut, 75 % d'entre elles sont réservables :

    0.75 * 6000000 = 4500000
    
  2. 3000 Kbps sont déjà utilisés par la voix et les classes de données :

    4500000 - 3000000 = 1500000 bps
    
  3. La bande passante disponible est de 1500000 bps.

Le maximum par défaut de valeur de bande passante réservable de 75 % est conçu pour laisser la bande passante suffisante pour le trafic supplémentaire, tel que des mises à jour de protocoles de routage et des keepalives de la couche 2. Il couvre également la surcharge de la couche 2 pour des paquets correspondant aux classes de trafic définies ou à la classe par défaut. Vous pouvez maintenant augmenter la valeur de bande passante réservable maximale sur les ATM PVC à l'aide de la commande max-reserved-bandwidth. Pour les versions d'IOS prises en charge et d'autres informations contextuelles, reportez-vous à Comprendre la commande max-reserved-bandwidth sur les ATM PVC.

Sur des PVC en relais de trame, les commandes bandwidth et priority calculent la quantité totale de bande passante disponible de l'une des façons suivantes :

  • Si un débit minimum de données garanti acceptable (minCIR) n'est pas configuré, le CIR est divisé par deux.

  • Si un minCIR est configuré, le paramétrage de minCIR est utilisé dans le calcul. La bande passante complète du débit ci-dessus peut être allouée aux classes de bande passante et prioritaires.

Ainsi, la commande max-reserved-bandwidth n'est pas prise en charge sur les relais de trame PVC, bien que vous devriez vous assurer que la quantité de bande passante configurée est assez grande pour faciliter la surcharge de la couche 2. Pour plus d'informations, reportez-vous à Configurer CBWFQ sur des relais de trame PVC.


Informations connexes


Document ID: 10100