User Tools

Site Tools


informatique:cisco:qos

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
informatique:cisco:qos [2009/04/20 19:29] pteuinformatique:cisco:qos [2013/10/14 20:44] (current) – external edit 127.0.0.1
Line 3: Line 3:
 ======QoS====== ======QoS======
  
-La **QoS** (Quality Of Service) a pour but d'optimiser les ressources réseau : bandwidth, delay, jitter, packet loss pour les applications qui en ont le plus besoin (typiquement : de la voix). Le concept, c'est donc de détecter les paquets de VoIP et de les faire passer avant les autres moins "urgents".+La **QoS** (Quality Of Service) a pour but d'optimiser les ressources réseau : bandwidth, delay, jitter, packet loss pour les applications qui en ont le plus besoin (typiquement : la voix). Le concept, c'est donc de détecter les paquets de voix et de les faire passer avant les autres, considérés comme moins urgents.
  
 +====Leaky bucket VS token bucket====
 +
 +  * **leaky bucket**, algorithme du seau troué : il s'agit d'un seau percé. les flux (burst) arrrivent dans le seau qui les écoule à la vitesse du CIR (=du trou). La capacité de burst Bc (= le tampon) est la taille du seau. Le trafic qui dépasse (Be, exceed brust) est la plus part du temps droppé.
 +
 +  * **token bucket**, algorithme du seau à jeton : le seau à jeton démarre plein ; un jeton c'est un crédit de trafic, chaque paquet transmis consomme des jetons ; les jetons se régénèrent au rythme du CIR normalement. Quand il n'y a plus de jetons dans le seau, le trafic est "exceeded" (et souvent droppé).
 +Cet algorithme conserve les bursts (à la différence du lissage du shaping) mais permet d'écrêter tout le trafic excédant.
  
 =====Modèles de QOS===== =====Modèles de QOS=====
  
-  * **Best effort** c'est le comportement par défaut d'un routeur sur lequel est basé Internet ; il ne fournit pas de QoS+  * **Best effort** c'est le comportement par défaut d'un routeursur lequel est basé Internet ; il ne fournit pas de QoS
     * pas de garantie de service     * pas de garantie de service
     * pas de différenciation de service     * pas de différenciation de service
-  * **IntServ** Integrated Services (RFC 1633) : permet de fournir de la QoS par réservation de ressource (~réservation de circuit / pour faire du CAC Call Admission Control) ; garantit l'arrivée des paquets+  * **IntServ** Integrated Services (RFC 1633) : permet de fournir de la QoS par réservation de ressource (~réservation de circuit / pour faire du **CAC** (Call Admission Control)) ; garantit l'arrivée des paquets
     * basé sur RSVP/CAC pour réserver les ressources     * basé sur RSVP/CAC pour réserver les ressources
     * débit garanti     * débit garanti
     * problème de scalabilité (//ne passe pas l'échelle//)     * problème de scalabilité (//ne passe pas l'échelle//)
- 
   * **DiffServ** Differenciated Services (RFC 2474 et 2475) : Utilisation de classes de services (typiquement le champ TOS/DSCP du paquet IP) qui sont reconnues par les routeurs du réseau ; c'est un traitement routeur par routeur sans pré-signalisation que l'on nomme **PHB** (Per Hop Behaviour)   * **DiffServ** Differenciated Services (RFC 2474 et 2475) : Utilisation de classes de services (typiquement le champ TOS/DSCP du paquet IP) qui sont reconnues par les routeurs du réseau ; c'est un traitement routeur par routeur sans pré-signalisation que l'on nomme **PHB** (Per Hop Behaviour)
     * pas de garantie absolue de service     * pas de garantie absolue de service
Line 24: Line 29:
  
   * Legacy QoS CLI : peu pratique, configuration interface par interface   * Legacy QoS CLI : peu pratique, configuration interface par interface
-  * **MQC** Modular QoS CLI : configuration modulaire, personnalisable (utilise des //class-map// et des //policy-map//+  * **MQC** (Modular QoS CLI: configuration modulaire, personnalisable (utilise des //class-map// et des //policy-map//
-  * Cisco AutoQoS : simple à mettre en place car il s'agit d'un modèle pré-conçu pour la VoIP. Il utilise : +  * Cisco AutoQoS : simple à mettre en placeil exite 2 variantes : VoIP et Enterprise (cf plus bas)L'autoQoS utilise : 
-    * NBAR, CEF et champ DSCP pour la classification+    * NBAR, CEF et le champ DSCP pour la classification
     * LLQ et WRR     * LLQ et WRR
     * shaping, FRTS     * shaping, FRTS
-    * compression d'entêtes (cRTP) +    * la compression d'entêtes (cRTP) 
-    * fragmentation des gros paquets (LFI ?) +    * la fragmentation de paquets (LFI)
-  Pour le mettre en place il faut activer le cef et préciser la bandwidth de l'interface+
   * Cisco SDM QoS Wizard : assistant graphique (via HTTP) de configuration de la QoS   * Cisco SDM QoS Wizard : assistant graphique (via HTTP) de configuration de la QoS
  
Line 37: Line 41:
 =====Les différents délais d'acheminement===== =====Les différents délais d'acheminement=====
  
-  * **processing delay** : temps de traitement d'un paquet par le routeur, à partir du moment ou il est reçu sur l'interface "in" jusqu'au moment ou il est déposé dans la file d'attente de l'interface "out" +  * **processing delay** : temps de traitement d'un paquet par le routeur, à partir du moment ou il est reçu sur l'interface "ingress(d'entrée) jusqu'au moment ou il est déposé dans la file d'attente de l'interface egress (interface de sortie)
-  * **end-to-end delay** : temps que met un paquet de bout en bout (de l'émetteur au récepteur)+
   * **queuing delay** : temps passé par un paquet dans la file d'attente d'une interface "out"   * **queuing delay** : temps passé par un paquet dans la file d'attente d'une interface "out"
-  * **serialisation delay** : temps pour émettre un paquet sur le lien ; cela dépend de la bande passante de celui-ci +  * **serialisation delay** : temps mis par le routeur pour émettre un paquet sur le lien ; cela dépend de la bande passante de ce dernier 
-  * **propagation delay** : temps mis par un paquet pour traverser un lien ; cela dépend don du média (les transmissions satellite par exemple ont un temps de propagation beaucoup plus long que de la fibre optique) +  * **propagation delay** : temps mis par un paquet pour traverser un lien ; cela dépend donc du média (ex : les transmissions satellite ont un temps de propagation beaucoup plus grand que de la fibre optique) 
-  * **transmission delay** pour moi c'est le même que le temps de sérialisation (à vérifier)+  * **transmission delay** pour moi c'est le même que le temps de sérialisation (à vérifier
 +  * **end-to-end delay** : temps que met un paquet de bout en bout (du début de la sérialisation de la machine émettrice à la fin de la réception du paquet chez le récepteur)
  
  
Line 74: Line 78:
   * application (ports tcp et udp)   * application (ports tcp et udp)
  
-Le marquage peut se faire à différentes couches OSI, dans différents chaps en fonction du protocole :+Le marquage peut se faire à différentes couches OSI, dans différents champs en fonction du protocole :
   * champ COS (3 bits) en Ethernet (802.1q/p ou ISL)   * champ COS (3 bits) en Ethernet (802.1q/p ou ISL)
   * champ EXP de l'entête MPLS   * champ EXP de l'entête MPLS
Line 81: Line 85:
   * bit DE (Discard Eligible) en Frame Relay   * bit DE (Discard Eligible) en Frame Relay
  
-L'**IP precedence** est l'ancienne utilisation du champ TOS d'IP : on n'utilisait que les 3 bits de poids fort (bits 7 à 5) ce qui faisait 6 classes (2 combinaisons étant réservées).+L'**IP precedence** est l'ancienne utilisation du champ TOS d'IP : on n'utilisait que les 3 bits de poids fort (bits 7 à 5) ce qui faisait 6 classes (2 combinaisons étant réservées : 111 et 110).
  
-**EF** PHB : Expedited Forwarding = low-delay service (VoIP) +  * **EF** PHB : Expedited Forwarding = low-delay service (VoIP) 
-**AF** PHB : Assured Forwarding = guaranted bandwidth service +  **AF** PHB : Assured Forwarding = guaranted bandwidth service 
-**default PHB** : on fait du best-effort+  **default PHB** : on fait du best-effort
  
 ===Le champ TOS ou DSCP=== ===Le champ TOS ou DSCP===
 C'est un champ de 8 bits codées ainsi : C'est un champ de 8 bits codées ainsi :
  
-  * Les bits 1 et 0 sont //réservés pour un usage futur// donc on ne les fait pas apparaitre. C'est ce qui explique pourquoi on note toujours la valeur du champ TOS sur 6 bits.+  * Les bits 1 et 0 sont "réservés pour un usage futurdonc on ne les fait pas apparaitre. C'est ce qui explique pourquoi on note toujours la valeur du champ TOS sur 6 bits.
  
   * Le bit n°2 est toujours à 0   * Le bit n°2 est toujours à 0
Line 99: Line 103:
 |1|1|1|            | |1|1|1|            |
 |1|1|0|            | |1|1|0|            |
-|1|0|1|EF          | +|1|0|1|ef          | 
-|1|0|0|AF 4        | +|1|0|0|af 4        | 
-|0|1|1|AF 3        | +|0|1|1|af 3        | 
-|0|1|0|AF 2        | +|0|1|0|af 2        | 
-|0|0|1|AF 1        |+|0|0|1|af 1        |
 |0|0|0|default PHB | |0|0|0|default PHB |
  
-  * Les bits de 4 à 3 définissent le pourcentage de chance de drop par classe (si on utilise AF car en EF les 2 bits valent "1") ; donc la valeur la plus faible est la "mieux". Les valeurs possibles sont 01 10 ou 11 (pas 00). +  * Les bits de 4 à 3 définissent le pourcentage de chance de drop par classe (si on utilise AFcar en EF on ne drop pas (logique !), les 2 bits valent "1") ; donc la valeur la plus faible est la meilleure. Les valeurs possibles sont 01 10 ou 11 (pas 00). 
  
 Une exception existe pour la valeur "001 000" qui code le trafic **scavenger** (less-than-best-effort, souvent du P2P). Une exception existe pour la valeur "001 000" qui code le trafic **scavenger** (less-than-best-effort, souvent du P2P).
  
-Exemple : Si le champ TOS vaut 100010 (on omet les bits 1 et 0 car on ne s'en sert pas), le paquet correspond à de l'AF41 (on découpe ainsi : 100-01-0). +Exemple : Si le champ TOS vaut 100010, le paquet correspond à de l'af41 (on découpe ainsi : 100-01-0). Ces 6 bits peuvent se lire en décimal : "PHB af41" correspond à "DSCP 34" (ces notations sont équivalentes).
-Ces 6 bits peuvent se lire en décimal : "PHB AF41" correspond à "DSCP 34" (ces notations sont équivalentes).+
  
-Il existe une notation de classes "CS" (IPP), qui vaut xxx000 pour la compatibilité avec l'IP Precedence. Elle est donc codée sur 3 bits ; les valeures 7 et 6 sont réservées (comme pour PHB).+Il existe une notation de classes "CS" (IPP), qui vaut xxx000 pour la compatibilité avec l'IP Precedence. Elle est donc codée sur 3 bits ; les valeurs 7 et 6 sont réservées (comme pour PHB)
 + 
 +TODO : insérer la table d'équivalence entre notation DSCP et CS.
  
 ===Mise en place du marquage=== ===Mise en place du marquage===
Line 141: Line 146:
  
   * En utilisant des ACLs on peut affiner le "match" dans les class-maps.   * En utilisant des ACLs on peut affiner le "match" dans les class-maps.
-  * dans une class-map on peut spécifier plusieurs paramètres "match". Dans ce cas on doit choisir la condition ET (''match-all'') ou OU (''match-any'') pour indiquer si le trafic doit matcher chaque clause (ET) ou ou moins une (OU).+  * dans une class-map on peut spécifier plusieurs paramètres "match". Dans ce cas on doit choisir la condition ET (''match-all'') ou OU (''match-any'') pour indiquer si le trafic doit matcher chaque clause (ET) ou au moins une (OU).
  
 ==Vérifications== ==Vérifications==
Line 149: Line 154:
  
 ===QoS pre-classify=== ===QoS pre-classify===
 +
 Dans le cas de VPN, les entêtes IPs sont modifiées donc la classification peut être écrasée. Cisco utilise la fonction **qos pre-clasify** (ou **QoS for VPNs**) pour gérer ce problème. Dans le cas de VPN, les entêtes IPs sont modifiées donc la classification peut être écrasée. Cisco utilise la fonction **qos pre-clasify** (ou **QoS for VPNs**) pour gérer ce problème.
  
Line 155: Line 161:
   * Apply the policy to a physical interface and enable ''qos pre-classify'' when you want to classify packets based on the pretunnel header.   * Apply the policy to a physical interface and enable ''qos pre-classify'' when you want to classify packets based on the pretunnel header.
  
 +Cette fonctionnalité est appelée **QoS for Virtual Private Networks (VPNs)** par Cisco ; certaines versions d'IOS un peu anciennes ne l'implémentent pas. En outre, cette commande est disponible uniquement sur les interfaces tunnel, virtual template interfaces, et sur les crypto map.
  
 ====Mécanismes de queuing==== ====Mécanismes de queuing====
Line 160: Line 167:
 Il s'agit du mécanisme d'ordonnancement des files d'attentes. Il s'agit du mécanisme d'ordonnancement des files d'attentes.
  
-  * **FIFO** First In First Out, mécanisme par défaut, très simple peu consommateur de CPU : "premier arrivé, premier sorti". Il n'y a pas de classification donc pas de QoS. +  * **FIFO** (First In First Out), mécanisme par défaut, très simple peu consommateur de CPU : "premier arrivé, premier sorti". Il n'y a pas de classificationdonc pas de QoS. 
-  * **PQ** Priority Queuing : on vide en priorité la file de plus haute priorité => peut induire la famine (starving) des autres files, moins prioritaires, qui ne se vident pas tant que les files plus prioritaires sont remplies. +  * **PQ** (Priority Queuing : on vide en premier toute la file de plus haute priorité => peut créer une situation de famine (starving) des autres files, moins prioritaires, qui ne se videront pas tant que les files plus prioritaires sont encore remplies. 
-  * **RR** Round Robin : méthode de partage équitable entre chaque file (on pioche un paquet dans chaque file à tour de rôle : ABCABCABC...+  * **RR** (Round Robin: méthode de partage équitable entre chaque file (on pioche un paquet dans chaque file à tour de rôle) 
-  * **WRR** Weighted RR : associe des priorités par file au RR = permet de donner plus de priorité à une file +  * **WRR** (Weighted RR: associe des priorités par file au RR = permet de donner plus de priorité à une file 
-  * **CQ** Custom Queuing c'est l'implémentation Cisco du WRR+  * **CQ** (Custom Queuingc'est l'implémentation Cisco du WRR
   * **WFQ** (Weighted Fair-Queuing) : priorisation automatique, non modifiable de certains flux, basé sur un hash de certains champs de l'entête des paquets.   * **WFQ** (Weighted Fair-Queuing) : priorisation automatique, non modifiable de certains flux, basé sur un hash de certains champs de l'entête des paquets.
-  * **CBWFQ** (Class-Based WFQ) : c'est du WFQ personnalisable : on définit des classes associées à une bande passante qui joue aussi le rôle de priorité (= CQ + WFQ). Le WFQ chez Cisco utilise du CBWRED pour chaque file d'attente. +  * **CBWFQ** (Class-Based WFQ) : c'est la version personnalisable du WFQ : on définit des classes associées à une bande passante qui joue aussi le rôle de priorité (= CQ + WFQ). Le WFQ chez Cisco utilise du CBWRED pour chaque file d'attente. 
-  * **LLQ** (Low Latency Queuing) = du CBWFQ avec une file spéciale (prioritaire) pour limiter la latence (PQ) pour la voix par exemple. Cela définit une file qui est vidée en priorité avant toutes les autres. (= CBWFQ + CQ + PQ)+  * **LLQ** (Low Latency Queuing) = du CBWFQ avec une file spéciale (prioritaire) pour limiter la latence (PQ)pour la voix par exemple. Cela définit une file qui est vidée en priorité avant toutes les autres. (= CBWFQ + PQ)
  
-Les mécanismes de gestion de file d'attente software, qui servent à la QoS, ne sont utilisés que lorsque la file d'attente hardware de l'interface est pleine. Cette dernière est toujours en FIFO ; pour connaitre la taille du buffer __hardware__ d'une interface (ici 128 max, et contient actuellement 0 paquet) :+Les mécanismes de gestion de file d'attente software, qui servent à la QoS, ne sont utilisés que lorsque la file d'attente hardware de l'interface est pleine. Cette dernière est toujours en mode FIFO ; pour connaitre la taille du buffer __hardware__ d'une interface (ici 128 max, et contient actuellement 0 paquet) :
  
   show controller se0/1/0 | i tx_limited   show controller se0/1/0 | i tx_limited
Line 177: Line 184:
   tx-ring-limit <taille>   tx-ring-limit <taille>
  
-Cependant il faut prendre garde car une mauvaise configuration de ce dernier peut annuler toute la politique de QoS (s'il est trop important ou pas assez).+Cependant il faut faire attention car une mauvaise configuration de ce dernier peut annuler toute la politique de QoS (s'il est trop important ou pas assez).
  
 ===Mise en place du WFQ=== ===Mise en place du WFQ===
  
   * classification : en fonction de certains champs de l'entête des paquets IP ; puis calcul d'un checksum pour reconnaitre le flux   * classification : en fonction de certains champs de l'entête des paquets IP ; puis calcul d'un checksum pour reconnaitre le flux
-  * drop policy : CDT (Congestive Discard Threshold) (nb de messages permis dans la queue) ; HQO (limite le nombre max de paquets dans toutes les files d'une interface)+  * drop policy : **CDT** (Congestive Discard Threshold) (nb de messages permis dans la queue) ; **HQO** (limite le nombre max de paquets dans toutes les files d'une interface)
   * scheduling   * scheduling
   * c'est la méthode de queuing par défaut chez Cisco pour les interfaces série et les liaisons E1 et inférieures (< 2048 Kbps)   * c'est la méthode de queuing par défaut chez Cisco pour les interfaces série et les liaisons E1 et inférieures (< 2048 Kbps)
  
-Le WFQ priorise les flux qui ont un petit **finish time** càd les paquets qui mettent le moins de temps à être émis sur le lien. Cela prend en compte la taille du paquet (+ vite émis qu'un gros) ainsi que le remplissage de sa file (on privilégie les files les moins remplie quand on doit déterminer quel paquet dropper si le HQO  (nombre max de paquets) est atteind, quitte a dropper un paquet déjà empilé dans une autre file).+Le WFQ priorise les flux qui ont un petit **finish time** càd les paquets qui mettent le moins de temps à être émis sur le lien. Cela prend en compte la taille du paquet (+ vite émis qu'un gros) ainsi que le remplissage de sa file (on privilégie les files les moins remplies quand on doit déterminer quel paquet dropper si le HQO  (nombre max de paquets) est atteind, quitte a dropper un paquet déjà empilé dans une autre file plus longue).
  
-La mise en place est très simple mais n'est possible que sur une interface de moins de 2 Mbps.+La mise en place est très simple mais n'est possible que sur une interface de moins de 2 Mbps (à valider).
   fair-queue [CDT [conversation dynamic-queues [conversation reservable-queues]]]   fair-queue [CDT [conversation dynamic-queues [conversation reservable-queues]]]
  
Line 201: Line 208:
 ===Mise en place de LLQ=== ===Mise en place de LLQ===
  
-On travaille sur des paquets déjà taggués et on leur applique une politique de gestion de file d'attente en fonction de leur marquage.+On travaille sur des paquets déjà taggués en amont et on leur applique une politique de gestion de file d'attente en fonction de leur marquage.
  
 Les classes reconnues sont définies dans des class-map : Les classes reconnues sont définies dans des class-map :
Line 218: Line 225:
  
 On définit l'action dans une policy-map globale, dans laquelle on va définir : On définit l'action dans une policy-map globale, dans laquelle on va définir :
-  * la **file prioritaire** (~VoIP, propre au LLQ, introduit par la commande ''priority'')) pour la classe ef-traffic ; en limitant son débit à 168 Kbps max (on insère aussi l'ICMP pour faire des tests de ping) +  * la **file prioritaire** (~VoIP, propre au LLQ, introduit par la commande ''priority'')) pour la classe ef-traffic ; en limitant son débit à 168 Kbps **maximum** (j'insère aussi l'ICMP pour faire des tests de ping) 
-  * les files af31, af21, af11 et cs1 auront respectivement 40, 20, 13 et 2 % de la bande passante __restante__ (remaining) du lien minimum+  * les files af31, af21, af11 et cs1 auront respectivement 40, 20, 13 et 2 % de la bande passante __restante__ (remaining) du lien **minimum**
   * le reste (class-default) aura 25% du reste de la bande passante. 2 paramètres sont également présents : l'activation du WFQ (uniquement possible sur la classe class-default) avec 1024 files maximum et une seuil de drop de 50 paquets par file.   * le reste (class-default) aura 25% du reste de la bande passante. 2 paramètres sont également présents : l'activation du WFQ (uniquement possible sur la classe class-default) avec 1024 files maximum et une seuil de drop de 50 paquets par file.
  
Line 242: Line 249:
     bandwidth remaining percent 25     bandwidth remaining percent 25
  
-On applique (en __output__) sur une interface, par exemple la se0/1/0 (toute la QoS précédemment configurée est basée sur le paramètre bandwidth 384 (384 Kbps) de l'interface) :+On applique (en output) sur une interface, par exemple la se0/1/0 (toute la QoS précédemment configurée est basée sur le paramètre bandwidth 384 (384 Kbps) de l'interface) :
  
   interface Serial0/1/0   interface Serial0/1/0
Line 283: Line 290:
  
 ====Shaping/policing==== ====Shaping/policing====
-ou //trafic conditioner//Objectif réguler le trafic+ou //trafic conditioner//il s'agit de mécanismes de régulation de trafic. 
 + 
 +Policing VS Shaping 
 +{{http://www.cisco.com/image/gif/paws/19645/policevsshape-a.gif}} 
 + 
 +===Lexique=== 
 +>GTS : Generic Traffic Shaping 
 +>CIR Commited Information Rate = mean rate, ou débit souscrit 
 +>CAR Committed Access Rate 
 +>Bc conform burst 
 +>Be excess burst 
 +>pir Peak Information Rate 
 +>conform-action : action lorsque le débit est inférieur au Bc 
 +>exceed-action : action lorsque le débit est compris entre Bc et Bc+Be 
 +>violate-action : action lorsque le débit est supérieur à Bc+Be 
 +
 +>Cisco recommends the following values for the normal and extended burst parameters: 
 +>normal burst = configured rate * (1 byte)/(8 bits) * 1.5 seconds 
 +>extended burst = 2 * normal burst 
  
 ===shaping=== ===shaping===
-Le shaping c'est du lissage de trafic = étalement des bursts qui dépassent le **CIR** (Commited Information Rate, càd le débit souscrit d'une liaison louée) en remplissant un tampon (peu conseillé pour les liaisons rapides). Ce tampon se vide lorsque la liaison est libre.+Le **shaping** c'est du lissage de trafic = étalement des bursts qui dépassent le **CIR** (Commited Information Rate, c'est-à-dire le débit souscrit d'une liaison louée) en remplissant un tampon (c'est peu conseillé pour les liaisons rapides car le tampon saturerait immédiatement). Ce tampon se vide lorsque la liaison est libre, c'est le concept du **leaky bucket** (seau troué). 
 + 
 +{{http://www.cisco.com/image/gif/paws/19645/policevsshape-c.gif}}
  
   * bufferisation jusqu'au remplissage du buffer alloué   * bufferisation jusqu'au remplissage du buffer alloué
   * réduit les réémissions TCP en évitant le drop systématique de l'**EIR** (Excess Information Rate = le trafic excédant le CIR)   * réduit les réémissions TCP en évitant le drop systématique de l'**EIR** (Excess Information Rate = le trafic excédant le CIR)
-  * applicable uniquement sur une interface "out" +  * applicable uniquement sur une interface "out" (en sortie de l'interface) 
-  * pas de marking+  * pas de marking (marquage des paquets) 
 + 
 +==Mise en place== 
 +Il existe 2 manières de mettre en place du shaping : 
 + 
 +  * directement sur une interface 
 + 
 +S'applique sur tout le trafic sortant de l'interface : 
 +<code> 
 +int xxx 
 + traffic-shape rate CIR [Bc [Be [buffer limit]]] 
 +</code> 
 + 
 +ou en utilisant une ACL pour sélectionner le trafic sur lequel s'appliquera le shaping : 
 +<code> 
 +int xxx 
 + traffic-shape groupe ACL CIR [Bc [Be]] 
 +</code> 
 + 
 +  * ou passer par une class-map (sélection du trafic concerné) et une policy-map (définition de l'action à appliquer sur le trafic) ; puis l'appliquer sur une ou des interface(s) 
 + 
 +<code> 
 +class-map match-all toto_class-map 
 + description class-map all traffic 
 + match any 
 +
 +policy-map toto_policy-map 
 + class toto_class-map 
 +  ! envoyer Bc par intervalle 
 +  shape average CIR Bc Be 
 +  ! envoyer Bc+Be par intervalle 
 +  shape peak CIR Bc Be 
 +
 +int xxx 
 + service-policy {input|output} toto_policy-map 
 +</code>
  
 ===policing=== ===policing===
-Écrêtement du trafic qui dépasse le CIR.+Le **policing** est l'écrêtement du trafic qui dépasse le CIR.
  
   * on peut définir différentes actions (drop, mark + transmit)   * on peut définir différentes actions (drop, mark + transmit)
 +  * s'applique sur une interface en "in" ou en "out"
 +
 +Le policing utilise le concept du **token bucket** (seau à jetons) = les jetons se régénèrent à la vitesse du CIR = Bc / Tc
 +
 +===Liens===
  
-Le shaping s'appliquent sur une interface en "out" uniquement ; le policying s'applique sur une interface en "in" ou en "out".+  * [[http://www.cisco.com/en/US/docs/ios/12_2/qos/configuration/guide/qcfpolsh.html|Policing and Shaping Overview]] chez cisco 
 +  * [[http://www.cisco.com/en/US/tech/tk543/tk545/technologies_tech_note09186a00800a3a25.shtml|Comparing Traffic Policing and Traffic Shaping for Bandwidth Limiting]] chez cisco
  
-Notions de token bucket = les jetons se régénèrent à la vitesse du CIR = Bc / Tc 
  
 ====Link efficiency==== ====Link efficiency====
Line 350: Line 418:
 =====Mise en place du control-plane===== =====Mise en place du control-plane=====
  
-Le CoPP (Control Plane Policingest un mécanisme censé protéger un routeur des attaques de type DoS en définissant des règles de priorité en cas de forte charge. Il protège le //control plane// et le //management plane//.+Le **CoPP** ou **Control Plane Policing** est un mécanisme censé protéger un routeur des attaques de type DoS en définissant des règles de priorité en cas de forte charge. Il protège le **control plane** (flux faisant fonctionner le réseau, comme les protocoles de routage OSPF ou BGP) et le **management plane** (flux d'administration : SSH, SNMP, etc...) en dépriorisant (mince, ce mot n'existe pas - mais vous devinez le sens ;) le **service plane** (services réseau comme les flux VPN par exemple) et le **data plane** (tous les autres flux = flux utilisateurs).
  
-L'exemple ci-dessous permet, en cas de surcharge du routeur, de dropper les paquets telnet qui ne viennent pas du LAN 192.168.0.0 /24.+L'exemple ci-dessous permet, en cas de surcharge du routeur, de dropper tous les paquets sauf les paquets telnet initiés dans le LAN 192.168.0.0 /24.
  
   access-list 110 deny tcp 192.168.0.0 0.0.0.255 any eq telnet   access-list 110 deny tcp 192.168.0.0 0.0.0.255 any eq telnet
Line 371: Line 439:
 =====Cisco AutoQoS===== =====Cisco AutoQoS=====
  
-Il existe 2 type d'autoQoS : **VoIP** et **Enterprise**. VoIP implémente un modèle statique pour la voix alors qu'Enterprise passe par une période de découverte (écoute passive) des flux afin d'affiner des classes en fonction du trafic réel de l'interface (avec NBAR). AutoQoS Enterprise permet de créer jusqu'à 10 classes de trafic.+Il existe 2 types d'autoQoS : **VoIP** et **Enterprise**. VoIP implémente un modèle statique pour la voix alors qu'Enterprise passe par une période de découverte (écoute passive) des flux afin d'affiner des classes en fonction du trafic réel de l'interface (avec NBAR). AutoQoS Enterprise permet de créer jusqu'à 10 classes de trafic.
  
 L'AutoQoS Enterprise met en place les méthodes de QoS suivantes : LLQ, cRTP et LFI. L'AutoQoS Enterprise met en place les méthodes de QoS suivantes : LLQ, cRTP et LFI.
Line 404: Line 472:
   show mls qos interface se0/1/0   show mls qos interface se0/1/0
   show mls qos maps   show mls qos maps
- 
- 
-=====Protocoles de signalisation===== 
- 
-  * H.323 
-  * **RSVP** (Ressource Reservation Protocol) : protocole (IP proto=46) pour réserver les ressources d'un flux RTP (modèle IntServ) ; il utilise tcp-udp/3455. 
-  * SCCP 
-  * MGCP 
-  * SIP 
  
  
informatique/cisco/qos.1240255771.txt.gz · Last modified: 2013/10/14 20:52 (external edit)