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/06/08 20:15] – édition externe 127.0.0.1informatique:cisco:qos [2013/10/14 20:44] (current) – external edit 127.0.0.1
Line 5: Line 5:
 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. 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=====
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 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 tous les paquets sauf les paquets telnet initiés dans le 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.
informatique/cisco/qos.1244492135.txt.gz · Last modified: 2013/10/14 20:52 (external edit)