QoS sur les cisco 3560

Transcription

QoS sur les cisco 3560
QoS sur les cisco 3560
Catalyst 3560 : switch/routeur
niveaux 2 et 3
mls : multilayer switch
2010
QoS sur 3560
Principe général
• en entrée (ingress)
–
–
–
–
paquet classifié
paquet policé (limitation débit)
paquet marqué ou jeté
paquet => files d’attente entrée ingress puis
• Le scheduler (SRR) envoie vers sortie via
anneau (transferts entre entrées et sorties)
• en sortie
– paquet => files d’attentes (egress queue) ou jeté
– puis scheduling (SRR) : partage entre files egress
2010
QoS sur 3560
Architecture en anneau
Stack interface seulement sur le 3750 (stackable)
TCAM
Ethernet
Port ASIC
TCAM
TCAM
Ethernet
Port ASIC
Ethernet
Port ASIC
Stack
Interface
CPU
Switch 1
Fast or
Gigabit
Ethernet
Interfaces
2010
Fast or
Gigabit
Ethernet
Interfaces
Fast or
Gigabit
Ethernet
Interfaces
Stack
Rings
QoS sur 3560
1
Shaped Round Robin (SRR)
Q1
Q2
Q3
Weight = 2
Weight = 3
Weight = 4
Q4
Weight = 1
Round-robin
Packets order after round-robin:
Weighted Round-robin(WRR) : Q1, Q1, Q2, Q2, Q2, Q3, Q3, Q3, Q3, Q4, …..
Shaped Round Robin (SRR): Q1, Q2, Q3, Q4, Q1, Q2, Q3, Q2, Q3, Q3, …..
Le SRR diminue les bursts par rapport au WRR
2010
QoS sur 3560
Entrée 1
Sortie 1
…
…
Sortie n
Entrée n
2010
QoS sur 3560
Chaîne de traitement d’un paquet
2010
QoS sur 3560
2
Mise en place Qos
• Par défaut Qos inactivée
mls qos ! activer qos
• A l’entrée
classifier (Dscp ou ACL)
policer (optionnel)
marquer et/ou jeter
paramétrer les files ingress
2010
QoS sur 3560
Classification des paquets entrants
• soit garder marquage paquet (Cos, DSCP) :
problème de confiance (trust)
int fa 0/1
mls qos trust dscp
! le dscp des paquets entrants servira de label de
Qos dans le switch */
• soit utiliser des ACL ou extended ACL
– de niveau IP ou Mac
– conditions sur différents champs
adresses, port, …
2010
QoS sur 3560
ACL : access-list
ACL simples IP (numéro 1 à 99, 1300 à
1999)
access-list 1 permit 130.79.59.0 0.0.0.255
access-list 1 permit 130.79.90.0 0.0.1.255
! filtre sur l’adresse IP source
ACL étendue IP (numéro 100 à 199, 2000 à
2699)
access-list num {deny|permit} protocole src mask dest mask param
2010
QoS sur 3560
3
ACL étendues
access-list 101 permit ip 130.79.200.1 0.0.0.0 130.79.90.153 0.0.0.0
precedence 3
access-list 101 permit ip any 130.79.90.0 0.0.1.255
access-list 101 permit tcp 130.79.90.153 0.0.0.0 gt 1000 any eq 80
! tout trafic tcp venant de la machine 130.79.90.153
! de port source superieur a 1000 et a destination du port http
any = toute adresse <=> 0.0.0.0 255.255.255.255
protocoles : ip tcp udp …
test des ports tcp ou udp : comparaison eq gt lt neq range
autres : precedence, dscp, tos, SYN …
2010
QoS sur 3560
ACL niveau MAC
mac access-list extended mac-liste
permit 1234.5678.9ABC 0.0.0 5678.ABCD.1234
0.0.0
remarque : si la source (resp. destination) du paquet
est en dehors du sous réseau, adresse Mac
source (resp. destination) = adresse mac routeur
2010
QoS sur 3560
Définir des classes (= agrégat )
class-map classe1
match ip dscp 40
class-map classe2
match access-group 101
class-map classe3
match access-group mac-liste
attention : un seul match par classe sur 3560
2010
QoS sur 3560
4
Créer une politique
• policy-map police1 ! nom police
class classe1 ! class-map définie au préalable
trust dscp ! garde le dscp entrant
ou
set ip dscp xx ! label QoS de la classe
[ police débit rafale [ exceed-action {drop |
policed-dscp-transmit}] ! policer optionnel ]
class classe2
…
etc
2010
QoS sur 3560
Policer
– Paramètres :
débit en b/s > 8000 b/s
rafale en octets > 8000 octets
– paquets qui dépassent limite du policer
drop par défaut sinon si
policed-dscp-transmit : réduire le dscp suivant map
• champ dscp modifié (à priori moins prioritaire)
mls qos map policed-dscp 30 31 32 33 to 0
! les dscp 30 à 33 deviennent 0
! configuration globale du switch
! pour visualiser la map
sho mls qos map policed-dscp
2010
QoS sur 3560
Appliquer politique aux ports d’entrée
int fa 0/1
service-policy input police1 ! entrée only
• Visualiser
sho policy-map [police1 ]
sho mls qos int fa 0/1
2010
QoS sur 3560
5
Paramétrage des files
• Quels paquets dans quelle file ?
• Propriétés file
• la table dscp-cos
– Défaut : cos = dscp / 8 ( dscp 15 => cos 1)
2010
QoS sur 3560
Files d’entrée
• 2 files (par port d’entrée)
• Par défaut
– file 2 prioritaire (expedite), et 10 % BP réservée
– reste du trafic réparti suivant les poids des 2 files
mls qos srr-queue input priority-queue 1 bandwidth 15
mls qos srr-queue input bandwidth 4 2
! 15% prioritaire puis 2/3 file 1 1/3 file 2
– 3 seuils de drop WTD1 < WTD2 < WTD3 = 100%
mls qos srr-queue input threshold 1 40 80
! seuils de queue 1 mis à 40% et 80% (défaut 100% et
100%)
2010
– paramètres globaux toutes entrées
QoS sur 3560
paquet => ingress queue
mls qos srr-queue input dscp-map queue 1
threshold 1 33 34 35
! paquets de dscp 33 34 35 sont mis dans queue 1
si le threshold 1 n’est pas dépassé sinon drop
mls qos srr-queue input dscp-map queue 1
threshold 2 40 41
! paramètres globaux
– par défaut
• DSCP 0-39 et 48-63 => ingress 1
• DSCP 40-47 => ingress 2 (prioritaire)
2010
QoS sur 3560
6
Files de sortie
• Globalement 2 ensembles de files
– queue-set 1 ou 2 : port sortie affecté à un queueset
– toutes les files du même queue-set gérées même
façon, même pool de buffer
• 4 files par sortie
• Possibilité d’une file prioritaire (file 1)
int fa 0/1
priority-queue out ! file 1 prioritaire
2010
QoS sur 3560
Seuils files de sortie
mls qos queue-set output 1 threshold 2 40 60 100 400
! queues 2 de queue-set 1
! seuil 1 40% seuil 2 60% seuil-réservé 100%
! seuil-max 400%
seuil-max et seuil-réservé décrivent partage des
buffers entre les différentes files du même queueset
Allouer un port à un queue-set
int fa 0/1
queue-set 2
! le port est dans le queue-set 2 (par défaut 1)
2010
QoS sur 3560
Files en mode shaped ou shared
• répartition entre les files :
– shaped : trafic garanti et limité jusqu’à %
BP
• leaky bucket
– shared : trafic partagé entre files au prorata
des % BP (BP inutilisée récupérée autres
files ~WFQ)
2010
QoS sur 3560
7
Poids files sortie
int fa 0/1
srr-queue bandwidth shape 5 0 0 0
! queue 1 en shaping avec 1/5 = 20% BP
! il s’agit de 20% BP physique (ex 10 M)
! avant limitation par bandwidth limit
! files 2 3 et 4 en sharing
srr-queue bandwidth share 1 1 1 2
! proportions 20 % 20% 20% 40% partagés
• Par défaut les poids sont
• shaped 4 0 0 0 ! 25%
•2010shared 4 4 4 4 ! 25QoS%sur par
file
3560
paquet => file sortie
• paramètre global pour toutes les sorties
mls qos srr-queue output dscp-map
queue 1 threshold 2 30 31
! paquets de dscp 30 et 31 vont dans file de
sortie 1 avec seuil numéro 2
2010
QoS sur 3560
8