La qualité de service permet de prioriser certains flux de données vis à vis d’autres afin de garantir son acheminement à son point de destination. Le meilleur exemple à mon sens est d’imaginer un stade plein à craquer de supporters où il n’y a qu’une seul seule sortie et où nous devons nous assurer que les VIP puissent sortir avant les autres en bon état.

Ci-dessous la représentation d’une priorisation de flux :

QOS_Coupe_Tuxeo

 

Intéressons-nous dès à présent aux configurations à pousser sur vos équipements, les abaques présentées ci-dessous ont été testées sur les releases 12.X et 15.X IOS et IOS-XE. Elles présentent un traitement des flux dans le sens entrant.

Dans un soucis de simplicité  afin que cet article soit accessible au plus grand nombre de personne, ce post présentera une configuration généraliste de base, pouvant répondre à un besoin de priorisation simple.

 

A – Identification du flux

Afin de pouvoir identifier le trafic à prioriser l’utilisation ACL est nécessaire, vous pouvez identifier un flux de plusieurs façon, nous allons voir dans ce tutoriel une identification par IP et par ports

1) Identification par IP

2) Identification par ports

 💡 Notez que vous pouvez indiquer le nom du protocole à la place du port comme indiqué ci-dessous

Voici un exemple :

B- Classification des flux

Une fois l’identification des flux réalisées il faut pouvoir les classer dans des conteneurs afin de pouvoir les différencier et les traiter,  nous allons utiliser le concept de class-map afin de réaliser cette opération.

Il existe deux types de class-map :

  • class-map match-all : Il est nécessaire de valider toutes les conditions de la class-map pour l’appliquer
  •  class-map match-any : Il est nécessaire de valider au minimum une condition pour l’appliquer
Une fois que vous êtes en mode de configuration de la classe, vous allez indiquer à l’aide de la commande match les critères qui permettent d’identifier les paquets.
L’IOS propose une multitude de choix, vous trouverez-ci dessous l’extraction des options que j’utilise quotidiennement :
Nous allons dans notre exemple nous intéresser aux cas les plus communs, c’est à dire l’identification par la valeur DSCP et par ACL

1) Match DSCP

Vous pouvez soit utiliser la valeur DSCP directe ou son expression préformatée (ef, af11,cs1,default,…)

2) Match par ACL

Voici un exemple qui se base sur l’utilisation d’ACL, c’est la façon la plus simple de maîtriser un traffic

C- Ordonnancement des flux

QOS_Gendarme_Tuxeo

Afin d’appliquer une priorité aux paquets nous allons utiliser des policy-map, imaginez un videur d’une boite de nuit qui régule les entrées  et vous aurez saisi le principe de fonctionnement. Les policy-map prennent en entrée le nom de la class-map à utiliser pour identifier le paquet et appliquent en sortie une priorisation et/ou un marquage des flux.

1) Marquage des paquets

Les policy-map permettent de marquer un paquet avec une priorisation particulière, prenons l’exemple d’un périphérique qui ne supporte pas le marquage des paquets. Lorsque le flux va arriver sur un routeur qui gère la QOS ce dernier va le classer dans sa catégorie la plus basse, les flux de plus haute importance passerons avant. Afin de pouvoir augmenter la priorité de ces paquets, la commande set permet de remodeler le champs de priorité, vous pouvez utiliser divers attributs tel que les champs cos (Qos L2) ou dscp (Qos L3)

Vous pouvez soit utiliser la valeur DSCP directe ou son expression préformatée (ef, af11,cs1,default,…)

2) Priorisation des paquets

Les policy-map permettent aussi de réserver une certaine quantité de bande passante à un flux spécifique, cela permet en cas de saturation de supprimer des paquets considérés comme non importants afin de faire passer ceux qui le sont.

L’option police permet de fixer une limite de débit et de ne pas la dépasser en supprimant les paquets supplémentaires:

D- Exemple de configuration

Ci-dessous un exemple de configuration:

Ce tutoriel ne présente qu’une très faible portion des possibilités offertes par l’IOS, n’hésitez donc pas à poser des questions dans les commentaires afin de trouver la configuration qui s’adaptera la mieux à vos besoins.

Sam

Categorized in:

Cisco, Réseau, Tutoriaux,