Вы находитесь на странице: 1из 28

Chapitre 6

Contrôle de congestion et gestion de buffers

M2R IT – UE Réseaux et QoS – Z. MAMMERI


198

1. Principes d’allocation de ressources


Allocation de ressources (1/4)

Î Ressources = CPU, mémoire, bande passante…

Î QoS fournie dépend des ressources allouées pour le service.


service

Î Allocation de ressources ⇒ Politique d’allocation


(droits d’utiliser des ressources, coûts, …)

Î Allocation de ressources
– Sans Négociation : rigide (tout ou rien), sûre
– Avec Négociation : à la connexion, flexible, complexe
– Avec Renégociation : s’adapter au réseau à tout moment,
transmettre à moindre coût, (très) complexe

M2R IT – UE Réseaux et QoS – Z. MAMMERI


199

1
1. Principes d’allocations de ressources
Allocation de ressources (2/4)

Î Stratégies d’allocation de ressources : Allocation non statistique ou statistique

Î Allocation non statistique (“peak bandwidth allocation”)


z Allouer une capacité maximale s’il reste encore assez de bande passante
z Adaptée au trafic à rythme fixe (CBR)
z Risque de sous-utilisation du réseau

Î Allocation statistique

z L’allocation ne se fait pas sur la base du débit maximum de connexion


z La somme des débits correspondant aux connexions acceptées peut être supérieure à celui
des ports de sortie du nœud.
z Adaptée à des flux variables (VBR)
z Difficulté de prédire la garantie de QoS

M2R IT – UE Réseaux et QoS – Z. MAMMERI


200

1. Principes d’allocations de ressources


Allocation de ressources (3/4)
Î Problèmes de la réservation de ressources

■ Des ressources réservée mais non utilisées : Perte


■ Ressources minimales/moyennes à réserver : difficiles à déterminer

Demande réelle
Performances dégradées

Niveau réservé

Ressources gaspillées

Temps

M2R IT – UE Réseaux et QoS – Z. MAMMERI


201

2
1. Principes d’allocations de ressources
Allocation de ressources (4/4)
Î Gestion de buffers (tampons ou queues)

■ Gestion de buffers (un flux / une file, une file partagée entre plusieurs flux)
■ Mémoire de stockage
g des paquets
p q limitée ⇒ Contrôler son utilisation
■ Deux décisions majeures : Quand rejeter les paquets ?
Quels paquets rejeter ?

Î Contrôle et traitement de trafic

■ Contrôle de congestion

■ Contrôle
C ôl de
d trafic
fi dde l’
l’utilisateur
ili
■ Façonnage du trafic de l’utilisateur (« traffic shaping »)

■ Marquage de paquets

M2R IT – UE Réseaux et QoS – Z. MAMMERI


202

1. Principes d’allocations de ressources


Allocation adaptative (1/2)
Adaptation locale
QoS
désirée
+ Stratégie QoS demandée Architecture
locale support

Mesure de
QoS obtenue QoS Infos de QoS

Avantages
1. Chaque source connaît le meilleur moyen de réduire ses exigences.
2. Chaque source peut appliquer une stratégie qui dépend de sa classe.

Inconvénients
1. La dégradation de QoS peut venir d’autres sources “non disciplinées”.

M2R IT – UE Réseaux et QoS – Z. MAMMERI


203

3
1. Principes d’allocations de ressources
Allocation adaptative (2/2)
Adaptation globale
QoS QoS demandée
désirée
+ Fonction de Réduction Architecture
feedback de demandes support

Mesure de
QoS obtenue QoS Infos de QoS

Avantages
1. Meilleure utilisation des ressources.
2. Les surcharges de réseau peuvent être limitée par rédution des demandes.

Inconvénients
1. Surcoût important.

M2R IT – UE Réseaux et QoS – Z. MAMMERI


204

1. Principes d’allocations de ressources


Initiation de la réservation de ressources

■ Modèle orienté Emetteur

Emetteur Récepteur
1. réserver
é 2. réserver 3. réserver

Flux de données
■ Modèle orienté Récepteur
Emetteur Récepteur
3. réserver 2. réserver 1. réserver

Flux de données

M2R IT – UE Réseaux et QoS – Z. MAMMERI


205

4
2. Problème de congestion

„ Flux aléatoires + Mémoire limitée + bande passante limitée ⇒


Possibilité de congestion

„ Effets négatifs : taux de perte élevé,


élevé latence élevée

„ Nécessité de contrôle de congestion

Sans contrôle de congestion


Avec contrôle de congestion
Charge Charge
Bits/secc

Bits/sec
Throughput
Throughput

Temps Temps

M2R IT – UE Réseaux et QoS – Z. MAMMERI


206

2. Problème de congestion
Suppression de paquets

Standard … Premium

Rejet

M2R IT – UE Réseaux et QoS – Z. MAMMERI


207

5
2. Problème de congestion
Stratégies de suppression de paquets

■ Politique de suppression de paquets


(Quels paquets supprimer et dans quelles conditions ?)
• Rejeter sans distinction les paquets arrivant en fonction de l’état courant des buffers
• Utiliser des seuils de congestion (anticiper les situations de congestion)
• Utiliser les données des contrats utilisateur pour rejeter les paquets hors profil
• Affecter des priorités basses aux paquets hors profil

■ Méthodes : réactives vs préventives

■ Techniques de contrôle de congestion Compromis


p :
– RED (“Random Early Detection”) Complexité/ Performance/Prévision
&
– Variantes de RED (FRED, WRED…) Détermination des seuils
– ECN (“Explicit Congestion Notification”)
– Autres

M2R IT – UE Réseaux et QoS – Z. MAMMERI


208

2. Problème de congestion
Propriétés de stratégies de contrôle de congestion

„ Anticipation des situations de congestion (aspects probabilistes)


„ Notification aux sources qui persistent à dépasser leur limite
„ Rendement du réseau (‘throughput’) élevé
„ Latence limitée

„ Adaptation aux bursts (rafales de paquets)

„ Taille des queues appropriée (pas de surdimensionnement inutile)

„ Équité au niveau du rejet de paquets

„ Complexité d’implantation réduite

M2R IT – UE Réseaux et QoS – Z. MAMMERI


209

6
3. Technique FIFO
Mise en queue (‘bufferisation’) dans les routeurs IP

Routeur Internet Routeur

Interface
réseau

Î Taille de queue (buffer) Î Rejet de paquets


z Suffisamment d’espace pour les rafales – Quand ?
z Latence – Lesquels ?

M2R IT – UE Réseaux et QoS – Z. MAMMERI


210

3. Technique FIFO
Technique FIFO pour la gestion de queue
„ FIFO : technique la plus simple pour gérer les files d’attente de routeurs.
– une seule queue par interface de sortie
– servir le ppaquet
q en tête
– mettre en queue le paquet arrivant si file non pleine
– rejeter le dernier paquet si queue pleine

Interface
réseau

„ FIFO a le mérite de ne pas poser de problème au fonctionnement d’Internet fondé sur


le principe du meilleur effort. Pas de contraintes pour l’implantation de routeurs IP.

M2R IT – UE Réseaux et QoS – Z. MAMMERI


211

7
3. Technique FIFO
„ Limites (inconvénients) de FIFO :
– Impossible de différencier les trafics (car on a une seule queue) : les paquets
arrivant sont rejetés sans distinction en cas de queue saturée. Donc on ne prend pas en
compte l’importance des paquets.
– Il n’y a pas d’isolation de flux. Un flux qui persiste à envoyer plus de paquets finit
par avoir plus de service par rapport aux autres qui s’auto limitent.

„ Inconvénients du rejet en fin de queue (‘drop-tail’):


– Les routeurs doivent avoir des queues de taille importante pour maintenir un taux
d’utilisation élevé.
– Des buffers larges impliquent des latences importantes.

⇒ Nécessité d’utiliser des méthodes de gestion actives

M2R IT – UE Réseaux et QoS – Z. MAMMERI


212

4. Technique RED (Random Early Detection)


„ RED : technique la plus populaire pour l’évitement de congestion
„ Proposée par Floyd et Jacobson (1993) pour gérer les flux TCP
„ Gestion de queue avec des seuils - technique de gestion active (préventive)
Taille moyenne Probabilité de
Queue rejet/marquage
Taille Max
Rejet/marquage
forcé
SeuilMax

Rejet/marquage
probabiliste

SeuilMin Pas de
rejet/marquage

Temps
Trafic reçu par le routeur
(avant application de RED)

M2R IT – UE Réseaux et QoS – Z. MAMMERI


213

8
4. Technique RED
Algorithme de la technique RED (1/2)
Î Pour chaque paquet arrivant
„ Estimation d’une taille moyenne de queue Qmoy :
Qmoy = (1-w)Qmoy + w*Qreel w<<1 (ex. w=0.002)
/* Qreel : taille réelle de la queue de paquets acceptés et non encore transmis.
Cette variable est incrémentée à chaque acceptation de nouveau paquet et
décrémentée à chaque transmission de paquet. */

Qreel Qmoy

SeuilMax

SeuilMin

Temps

M2R IT – UE Réseaux et QoS – Z. MAMMERI


214

4. Technique RED
Algorithme de la technique RED (2/2)

„ Rejet/marquage probabiliste en fonction de la taille moyenne de queue


• Si Qmoy < SeuilMin : pas de rejet/marquage du paquet arrivant
• Si Qmoy ≥ SeuilMax
S ilM : rejet/marquage
j t/ systématique
té ti d paques arrivant
du i t
• Si SeuilMin ≤ Qmoy < SeuilMax : rejet/marquage avec une probabilité pa
calculée comme suit :
pb = Pmax*(Qmoy - SeuilMin)/(SeuilMax – SeuilMin)
pa = pb/(1 – pb*compte)

/ * Compte = nombre de paquets reçus depuis le dernier paquet


marqué/rejeté pendant que la condition SeuilMin ≤ Qmoy < SeuilMax reste
satisfaite. */

M2R IT – UE Réseaux et QoS – Z. MAMMERI


215

9
4. Technique RED
Explication des paramètres de RED
Î Si l’on admet que l’on peut accepter des rafales de L paquets au maximum, alors le
poids w doit respecter : L +1
(1 − w) −1
L +1+ < SeuilMin
w
Par exemple : SeuilMin = 5 et L = 50,
50 conduit à choisir w ≤ 0.0042
0 0042
La variation de Qmoy (i.e. la sensibilité de Qmoy aux rafales) dépend de la valeur de w.
Si w est très petit alors, Qmoy répond lentement aux changements de la queue réelle.

Î Les valeurs de SeuilMin et SeuilMax dépendent de la taille moyenne de queue


désirée. Cette taille influe sur le délai moyen d’attente en queue. En général,
SeuilMax est fixé au moins au double de SeuilMin.

Î Pmax désigne une borne supérieure pour la probabilité de marquage de paquet. Le


nombre de paquets marqués/rejetés avant d’atteindre le seuil de congestion dépend
de cette valeur. Pmax est fixée selon les besoins (est-ce que l’on veut anticiper de
manière forte ou non les situations de congestion). Les auteurs de RED (Floyd et
Jacobson) préconisent que la valeur de Pmax ne doit pas être supérieure à 0.1.

M2R IT – UE Réseaux et QoS – Z. MAMMERI


216

Algorithme de la technique RED détaillé


/* Initialisation */
Qreel := 0 ; /* Taille -en nombre de paquets- de la queue réelle */
Qmoy := 0 ; /* Taille moyenne estimée de la queue */
Compte := -1 ; /* Nombre de paquets reçus depuis le dernier paquet marqué. Ce nombre
s’incrémente uniquement quand la condition SeuilMin ≤ Qmoy < SeuilMax est satisfaite */
s := /* durée de transmission d’un paquet typique */
Répéter indéfiniment :
Chaque fois que Qreel passe à 0 alors /* i.e. quand la queue réelle devient vide */
Q instant :
Q_instant := InstantCourant ; /*
/ Instant lu à partir de l’horloge
l horloge du système */
/
/* Q_instant indique l’instant de début de période d’oisiveté de la queue */
|| /* en parallèle avec ce qui suit */

Pour chaque arrivée de paquet :


/* calculer la nouvelle valeur de taille moyenne de queue */
Si Qreel > 0 alors {Qmoy := (1 – w)Qmoy + Qreel*w ;}
Sinon { m = f(InstantCourant – Q_instant) ; /* Généralement f(x) = x/s */
Qmoy := (1-w)mQmoy ; } /* m représente le nombre de paquets qui auraient pu arriver
pendant la période d’inactivité de la queue */
FinSi
Si SeuilMin ≤ Qmoy < SeuilMax alors
{ Compte := Compte + 1 ;
pb :=
: Pmax*(Qmoy - SeuilMin)/(SeuilMax - SeuilMin) ; pa :=
: pb/(1 – Compte*pb) ;
Avec une probabilité pa { Rejeter le paquet arrivant ; Compte := 0 ; }
Sinon
Si SeuilMax ≤ Qmoy alors {Rejeter le paquet arrivant ; Compte := 0 ; }
Sinon { Accepter le paquet ; Compte := -1 ; }
FinSi
FinSi
Fin Pour
Fin Répéter

M2R IT – UE Réseaux et QoS – Z. MAMMERI


217

10
4. Technique RED
Exemple de fonctionnement de RED (1/6)
SeuilMin = 2 On suppose qu’il y a
SeuilMax = 7 une rafale et qu’il n’y a
pas de transmission de
Pmax = 0.1 paquets acceptés
w = 1/4

Interface
réseau

Compte = -1 Qmoy = 0 Qreel = 0


Queue vide à l’initialisation

1 Interface
1 réseau

Compte = -1 Qmoy = 0 Qreel = 1


Mise en queue d’un paquet

M2R IT – UE Réseaux et QoS – Z. MAMMERI


218

4. Technique RED
Exemple de fonctionnement de RED (2/6)
2 2 1
Interface
réseau

Compte
p = -1 Qmoy = 0.25 Qreel = 2

Après le 2ème paquet

3 3 2 1
Interface
réseau

Compte = -1 Qmoy = 0.69 Qreel = 3

Après le 3ème paquet

M2R IT – UE Réseaux et QoS – Z. MAMMERI


219

11
4. Technique RED
Exemple de fonctionnement de RED (3/6)
4 4 3 2 1
Interface
réseau

Compte
p = -1 Qmoy = 1.27 Qreel = 4

Après le 4ème paquet

5
5 4 3 2 1
Interface
réseau

Compte = -1 Qmoy = 1.95 Qreel = 5

Après le 5ème paquet

M2R IT – UE Réseaux et QoS – Z. MAMMERI


220

4. Technique RED
Exemple de fonctionnement de RED (4/6)
6 6 5 4 3 2 1
Interface
réseau

Compte
p =0 Qmoy = 2.71 Qreel = 6
Le SeuilMin est dépassé, on calcule pa = 0,014. On tire une valeur aléatoire pour savoir si
on rejette ou non le paquet. On suppose ici que l’on ne rejette pas le paquet.
Après le 6ème paquet

7 7 6 5 4 3 2 1
Interface
réseau

Compte = 1 Qmoy = 3.53 Qreel = 6

Le SeuilMin est dépassé, on calcule pa = 0,03. On tire une valeur aléatoire pour savoir si on
rejette ou non le paquet. On suppose ici que l’on ne rejette pas le paquet.
Après le 7ème paquet

M2R IT – UE Réseaux et QoS – Z. MAMMERI


221

12
4. Technique RED
Exemple de fonctionnement de RED (5/6)
8 8
Interface
7 6 5 4 3 2 1 réseau

Compte
p =2 Qmoy = 4.40 Qreel = 8
Le SeuilMin est dépassé, on calcule pa = 0,05. On tire une valeur aléatoire pour savoir si on
rejette ou non le paquet. On suppose ici que l’on ne rejette pas le paquet.
Après le 8ème paquet

9 9 8 7 6 5 4 3 2 1
Interface
réseau

Compte = 3 Qmoy = 5.30 Qreel = 9

Le SeuilMin est dépassé, on calcule pa = 0,087. On tire une valeur aléatoire pour savoir si
on rejette ou non le paquet. On suppose ici que l’on ne rejette pas le paquet.
Après le 9ème paquet

M2R IT – UE Réseaux et QoS – Z. MAMMERI


222

4. Technique RED
Exemple de fonctionnement de RED (6/6)
10 10 9 8
Interface
7 6 5 4 3 2 1 réseau

Compte
p =4 Qmoy = 6.23 Qreel = 10
Le SeuilMin est dépassé, on calcule pa = 0,127. On tire une valeur aléatoire pour savoir si
on rejette ou non le paquet. On suppose ici que l’on ne rejette pas le paquet.
Après le 10ème paquet

11 10 9 8 7 6 5 4 3 2 1
Interface
réseau

Compte = 4 Qmoy = 7.17 Qreel = 10

Le SeuilMax est dépassé. On rejette le paquet.

Après le 11ème paquet

M2R IT – UE Réseaux et QoS – Z. MAMMERI


223

13
4. Technique RED
RED est vulnérable en présence de flux agressifs
(exemple de résultat d’expérimentation)
1,400
Rafale UDP

1,200
FIFO
1,000 RED
TCP Throughput
(Kbytes/s)

800
Ceci est dû au fait que TCP
600 est un protocole adaptatif
qui arrête de transmettre
quand il y a des pertes de
400 paquets, alors que UDP
continue à transmettre
même si les routeurs
rejettent ses paquets.
200 Ainsi, il va conduire TCP à
réduire considérablement
son débit.
0
0 10 20 30 40 50 60 70 80 90 100
Temps (secondes)

M2R IT – UE Réseaux et QoS – Z. MAMMERI


224

4. Technique RED

Limites (inconvénients de RED)


„ Perturbation par les flux qui se comportent mal
„ Sensible au nombre de sources
„ Difficultés de choisir les paramètres (seuils et Pmax)
„…

Variantes de RED
„ FRED (Flow RED)
„ CBT RED ((Class Based Threshold RED)) : analogue
g à FRED
„ SRED (Stabilized RED)
„ DRED (Dynamic RED)
„ WRED (Weighted RED)
„ ARED (Adaptative RED)

M2R IT – UE Réseaux et QoS – Z. MAMMERI


225

14
4. Technique RED
Rejet selon Drop-tail, RED, WRED

Probabilité
Drop-tail de rejet

Taille de
P

queue
Queue Max
Probabilité
de rejet

Avec RED “enveloppe”


adjustable
Taille de
queue
Queue Max

Service
Probabilité

premium
de rejet

Avec WRED Service standard

Taille de
Std. Min. Prem. Min. Queue Max queue

M2R IT – UE Réseaux et QoS – Z. MAMMERI


226

5. Technique Flow RED (FRED)


„ FRED : une extension de RED proposée par Lin et Morris (1997)

„ Objectif : protéger les flux TCP des flux agressifs

„ Principe de base :
• Maintenir une seule queue FIFO, mais garder la trace du nombre de paquets
issus de chaque connexion

• Rejeter les paquets issus d’une connexion quand celle-ci dépasse sa capacité
de partage de la queue
– Les rejets sont proportionnels à la bande passante utilisée
– Les flux agressifs sont identifiés et pénalisés

• Le principe de calcul de la taille moyenne de queue estimée, Qmoy, est optimisé


par rapport à RED : évaluation de Qmoy à chaque arrivée et départ de paquet,
Qmoy n’est pas mis à jour en cas de rejet de paquet.

M2R IT – UE Réseaux et QoS – Z. MAMMERI


227

15
5. Technique Flow RED (FRED)
„ Paramètres de FRED (en plus de ceux de RED) :
Min_Q : nombre minimum de paquets dans la queue par flux. Aucun rejet ne peut être
appliqué à un flux qui n’a pas plus de Min_Q paquets dans la queue.
Max_Q : nombre maximum de paquets dans la queue par flux.
Countf : nombre de paquets dans la queue pour le flux f.
Strikesf : nombre de fois que le flux f a émis un paquet en excès.
Les flux avec une valeur élevée de Strike sont pénalisés en premier.
NbFlux : nombre de flux actifs.
MoyFlux : estimation d’une taille moyenne de queue par flux. Les flux qui ont moins de
paquets que MoyFlux sont favorisés par rapport à ceux qui en ont plus.

Bases de données des connexions


f1 f2 f3 fN
Countf 3 1 3 ... 1
Strikef 1 0 0 ... 1

Interface
Classificateur
réseau

M2R IT – UE Réseaux et QoS – Z. MAMMERI


228

5. Technique FRED
Algorithme détaillé de FRED (1/3)
/* Paramètres et variables utilisés */
SeuilMax, SeuilMin /* seuils de la queue */
w /* poids du filtre d’estimation */
Pmax /* probabilité maximum de rejet */
Min_Q, Max_Q /* nombre minimum et maximum de paquets par connexion */
Qreel /* taille –en nombre de paquets- de la queue réelle */
Qmoy /* taille moyenne estimée de la queue */
Compte /* nombre de paquets reçus depuis le dernier paquet marqué. Ce nombre
s’incrémente uniquement quand la condition SeuilMin ≤ Qmoy < SeuilMax est satisfaite */
s /* durée de transmission d’un paquet typique */
MoyFlux /* taille moyenne de queue par flux */
Strike /* tableau qui compte les nombres de débordements pour les flux */
Count /* tableau qui compte les nombres de paquets dans la queue pour les flux */
NbFlux /* nombre de flux (ou connexions) actifs */

/* Initialisation */
Qreel := 0 ;
Qmoy := 0 ;
C
Compte
t := -1 1 ;
NbFlux := 0 ;

Répéter indéfiniment
{ Bloc_Arrivée
|| /* l’un ou l’autre des deux blocs peut s’exécuter */
Bloc_Départ }
Fin Répéter

M2R IT – UE Réseaux et QoS – Z. MAMMERI


229

16
5. Technique FRED
Algorithme détaillé de FRED (2/3)
Bloc_Arrivée
Pour chaque arrivée de paquet en provenance du flux i :
Si le flux i n’a pas d’état alors {Count[i] :=0 ; Strike[i] :=0 } FinSi
Si Qreel = 0 alors Calculer_la_nouvelle_taille_moyenne_de_queue FinSi

/* identifier et gérer les flux non adaptatifs, ceux qui poussent vers la congestion */
Si ( (Count[i] >= Max_Q) || ( (Qmoy >= SeuilMax)&&(Count[i] > 2*MoyFlux) ) ||
( (C t[i] >=
(Count[i] > MoyFlux)
M Fl ) && (St ik [i] > 1)) )
(Strike[i]
alors { Strike[i]++ ; Rejet paquet arrivant ; Return }
FinSi

/* Opérer selon la technique RED pour choisir un paquet à rejeter au hasard */


Si SeuilMin ≤ Qmoy < SeuilMax alors { Compte := Compte + 1 ;
/* Rejeter en priorité les paquets issus de flux qui ont le plus de paquets */
Si Count[i] >= Max(Min_Q, MoyFlux) alors
{ pb := Pmax*(Qmoy - SeuilMin)/(SeuilMax - SeuilMin) ;
pa := pb/(1 – Compte*pb) ;
Avec une probabilité pa { Rejeter le paquet arrivant ; Compte := 0; Return ;}
FinSi
Sinon Si Qmoy < S
Si SeuilMin
ilMi alors
l { C
Compte
t := -11 ; }
Sinon { Compte := 0; Rejeter le paquet arrivant ; Return }
FinSi
FinSi
Si Count[i] = 0 alors { NbFlux++ } FinSi
Count[i]++ ; Accepter le paquet ;
Calculer_la_taille_moyenne_de_queue ;
FinSi
FinPour

M2R IT – UE Réseaux et QoS – Z. MAMMERI


230

5. Technique FRED
Algorithme détaillé de FRED (3/3)

Bloc_Départ
Pour chaque départ (i.e transmission par le routeur) de paquet issu du flux i :
Count[i]--;
Calculer_la_nouvelle_taille_moyenne_de_queue ;
Si Count[i] = 0 alors { NbFlux-- ; Effacer l’état du flux i }
Fi P
Fin Pour

Procédure Calculer_la_nouvelle_taille_moyenne_de_queue :
Si ((Qreel > 0) || (Départ de paquet))
alors {Qmoy := (1- w)Qmoy + w*Qreel}
Sinon { m = f(InstantCount – Q_instant) ; /* Généralement f(x) = x/s */
Qmoy := (1-w)mQmoy ; /* m : même sens que pour RED */
Q_instant := InstantCourant ;}
FinSi

Si NbFlux > 0 alors {MoyFlux := Qmoyy/NbFlux }


Sinon {MoyFlux := Qmoy}
FinSi
MoyFlux := Max(MoyFlux, 1) ;
Si ((Qreel = 0) && Départ de paquet) alors {Q_instant := InstantCourant} FinSi
FinProcedure

M2R IT – UE Réseaux et QoS – Z. MAMMERI


231

17
5. Technique FRED
Exemple de fonctionnement de FRED (1/12)
/* Initialisation */ SeuilMin = 2
Qreel := 0 ;
Qmoy := 0 ; SeuilMax = 6
Compte := -1 ;
NbFlux := 0 ;
Pmax = 0.1
W = 1/4
+ f1 – Min_Q = 2
1 Max_Q = 3
0

Interface
Classificateur réseau

Arrivée du 1er ppaquet


q du flux 1 NbFlux = 1
Qmoy = 0 Count[1] = 1
MoyFlux = max(Qmoy / NbFlux, 1) = 1 Accepter paquet : Qreel = 1
Aucun seuil n’est atteint Qmoy = 0,25
Compte = -1 MoyFlux = max(Qmoy / NbFlux, 1) = 1

M2R IT – UE Réseaux et QoS – Z. MAMMERI


232

5. Technique FRED
Exemple de fonctionnement de FRED (2/12)

Connection Database
+ f1 –
2
0

Interface
Classificateur réseau

Arrivée du 2ème paquet du flux 1 Accepter paquet : Qreel = 2


Aucun seuil n’est atteint
Qmoy = 0,69
Compte = -1
MoyFlux = max(Qmoy / NbFlux, 1) = 1
Count[1] = 2

M2R IT – UE Réseaux et QoS – Z. MAMMERI


233

18
5. Technique FRED
Exemple de fonctionnement de FRED (3/12)

Connection Database
+ f1 f2 –
2 1
0 0

Interface
Classificateur réseau

Arrivée du 1er paquet du flux 2 Accepter paquet : Qreel = 3

Aucun seuil n’est atteint Count[2] = 1

Compte = -1
Qmoy = 1,27

NbFlux = 2 MoyFlux = max(Qmoy / NbFlux, 1) = 1

M2R IT – UE Réseaux et QoS – Z. MAMMERI


234

5. Technique FRED
Exemple de fonctionnement de FRED (4/12)

Connection Database
+ f1 f2 f3 f4 –
2 1 1 1
0 0 0 0

Interface
Classificateur réseau

Après les arrivées du 1er paquet du flux 3 et du 1er paquet du flux 4.


Aucun seuil n’a été dépassé. Les deux paquets sont acceptés.
NbFlux = 4
Qreel = 5
Qmoy = 2,71
MoyFlux = Max(Qmoy / NbFlux, 1) = 1

M2R IT – UE Réseaux et QoS – Z. MAMMERI


235

19
5. Technique FRED
Exemple de fonctionnement de FRED (5/12)

Connection Database
+ f1 f2 f3 f4 f5 –
32 1 1 1 1
0 0 0 0 0

Interface
Classificateur réseau

Arrivée du 3ème paquet du flux 1. Arrivée du 1er paquet du flux 5.


SeuilMin est dépassé. SeuilMin est dépassé.
On calcule
calc le la probabilité Pa. On calcule la probabilité Pa.
On ne rejette pas le paquet. On ne rejette pas le paquet.
Compte = -1
Compte = -1 Qmoy = 4,40
NbFlux = 5 Qreel = 7
Qreel = 6 Qmoy = 3,53
MoyFlux = Max(Qmoy / NbFlux, 1) = 1
MoyFlux = Max(Qmoy / NbFlux, 1) = 1

M2R IT – UE Réseaux et QoS – Z. MAMMERI


236

5. Technique FRED
Exemple de fonctionnement de FRED (6/12)

Connection Database
+ f1 f2 f3 f4 f5 –
32 2 1 1 1
0 0 0 0 0

Interface
Classificateur réseau

Arrivée du 2ème paquet du flux 2.


SeuilMin est dépassé. Qmoy = 5,30
On calcule
calc le la probabilité Pa. M Fl = Max(Q
MoyFlux M (Qmoy / NbFlux,
NbFl 1) = 1,06
1 06
On ne rejette pas le paquet.
Compte = -1
NbFlux = 5
Qreel = 8

M2R IT – UE Réseaux et QoS – Z. MAMMERI


237

20
5. Technique FRED
Exemple de fonctionnement de FRED (7/12)

Connection Database
+ f1 f2 f3 f4 f5 –
32 2 1 1 1
1 0 0 0 0

Interface
Classificateur réseau

Arrivée du 4ème paquet du flux 1.


Count[1] >= Max_Q : test Ok
On rejette le paquet.
Strike[1] = 1

M2R IT – UE Réseaux et QoS – Z. MAMMERI


238

5. Technique FRED
Exemple de fonctionnement de FRED (8/12)

Connection Database
+ f1 f2 f3 f4 f5 –
2 2 1 1 1
1 0 0 0 0

Interface
Classificateur réseau

Départ du 1er paquet du flux 1


Qreel = 7
Count[1] = 2
Qmoy = 5,73
MoyFlux = Max(Qmoy / NbFlux, 1) = 1.15

M2R IT – UE Réseaux et QoS – Z. MAMMERI


239

21
5. Technique FRED
Exemple de fonctionnement de FRED (9/12)

Connection Database
+ f1 f2 f3 f4 f5 –
2 2 1 1 1
1 0 0 0 0

Interface
Classificateur réseau

Arrivée du 3ème ppaquet


q du flux 2.
On applique RED.
SeuilMax <= Qmoy < SeuilMax : test OK
On calcule Pa et on rejette le paquet arrivant

Compte = 0

M2R IT – UE Réseaux et QoS – Z. MAMMERI


240

5. Technique FRED
Exemple de fonctionnement de FRED (10/12)

Connection Database
+ f1 f2 f3 f4 f5 –
2 2 1 1 2
1 0 0 0 0

Interface
Classificateur réseau

Arrivée du 2ème paquet du flux 5.


On applique RED.
SeuilMax <= Qmoy < SeuilMax : test OK
On calcule Pa et on ne rejette pas le paquet arrivant
Qreel = 8
Qmoy = 6,30
MoyFlux = Max(Qmoy / NbFlux, 1) = 1.26

M2R IT – UE Réseaux et QoS – Z. MAMMERI


241

22
5. Technique FRED
Exemple de fonctionnement de FRED (11/12)

Connection Database
+ f1 f2 f3 f4 f5 –
12 1 1 1 2
1 0 0 0 0

Interface
Classificateur réseau

Départ d’un paquet du flux 1. Départ d’un paquet du flux 2.


Qreel = 6
Qreel = 7
Count[1] = 1 Count[2] = 1
Qmoy = 6,48 Qmoy = 6,36

MoyFlux = Max(Qmoy / NbFlux, 1) = 1.3 MoyFlux = Max(Qmoy / NbFlux, 1) = 1.27

M2R IT – UE Réseaux et QoS – Z. MAMMERI


242

5. Technique FRED
Exemple de fonctionnement de FRED (12/12)

Connection Database
+ f1 f2 f4 f5 –
12 1 1 2
1 0 0 0

Interface
Classificateur réseau

Départ du paquet du flux 3. Comme Count[3] = 0 on effaffe l’état du flux 3

Qreel = 5
Count[3] = 0
Qmoy = 6,02
MoyFlux = Max(Qmoy / NbFlux, 1) = 1.0

M2R IT – UE Réseaux et QoS – Z. MAMMERI


243

23
5. Technique FRED
Performance TCP avec FRED
(résultat d’expérimentation)
1,400
Rafale UDP

1,200

1,000
TCP Throughput

FIFO
(Kbytes/s)

800
RED
FRED
600

400

200

0
0 10 20 30 40 50 60 70 80 90 100
Temps (secondes)
M2R IT – UE Réseaux et QoS – Z. MAMMERI
244

6. Contrôle de trafic utilisateur

Î Protection du réseau contre les abus des utilisateurs

Î Contrôle de conformité du trafic de ll’utilisateur


utilisateur

Î Deux techniques d’implantation du contrôle du trafic


– Seau percé (« leacky bucket »)
– Seau à jetons (« token bucket »)

M2R IT – UE Réseaux et QoS – Z. MAMMERI


245

24
6. Contrôle de trafic utilisateur
Contrôle du trafic de l’utilisateur – Seau percé (‘Leacky Bucket’)

Arrivée de paquets

B : taille maxi (burst Size)


p : débit moyen

Sortie avec rythme régulier


Débit de
p
Sortie fixe
t

M2R IT – UE Réseaux et QoS – Z. MAMMERI


246

6. Contrôle de trafic utilisateur


Contrôle du trafic de l’utilisateur – Seau à jetons (‘Token bucket’)

Arrivée de paquets

t
Jetons
en excès P Jetons
B : taille maxi (burst Size)
p : débit moyen

Fil
File
Jetons
FIFO Sortie avec rythme régulier
p
t

M2R IT – UE Réseaux et QoS – Z. MAMMERI


247

25
6. Contrôle de trafic utilisateur
Mise en œuvre du seau percé pour ATM (1/2)

– ATM véhicule des cellules de taille fixe égale à 53 octets.

– Les cellules ATM sont déposées dans un tampon à M places au maximum


( correspond
(M d au paramètre
è MBS S – ‘Maximum
‘ i Busrt Size’).
Si ’)

– Les cellules sont vidées du buffer avec un débit constant de S cellules/s


(S correspond au paramètre SCR – ‘Sustainable Cell Rate’).

– Dans le cas où certaines rafales contiennent trop de cellules pour tenir dans
le tampon, il y a rejet de certaines cellules (on parle dans ce cas de
débordement du seau).

– Un seau est défini par deux paramètres :


I (incrément) : I = 1/S
L (Limite) : L = (M-1)*(1/S) M≥1

M2R IT – UE Réseaux et QoS – Z. MAMMERI


248

6. Contrôle de trafic utilisateur


Mise en œuvre du seau percé pour ATM (2/2)

Notations :
TTA : temps théorique d’arrivée (c-à-d temps d’arrivée normalement prévu)
ta(k) : temps d’arrivée effectif de la kème cellule
I : Incrément
L : Limite

TTA = ta(1) + I /* TTA initialisé à l’instant de l’arrivée de la


première cellule */
Répéter indéfiniment
Arrivée de la cellule k (k>1)
Si TTA < ta(k)
alors TTA = ta(k) + I
Sinon Si TTA > ta(k) + L
Alors cellule non conforme
Sinon TTA = TTA + I
FinSi
FinSi
FinRépéter

M2R IT – UE Réseaux et QoS – Z. MAMMERI


249

26
6. Contrôle de trafic utilisateur
Façonnage de trafic (« traffic shaping ») (1/3)
„ Arrivée avec rythme régulier

M2R IT – UE Réseaux et QoS – Z. MAMMERI


250

6. Contrôle de trafic utilisateur


Façonnage de trafic (2/3)
„ Arrivée avec rythme irrégulier

M2R IT – UE Réseaux et QoS – Z. MAMMERI


251

27
6. Contrôle de trafic utilisateur
Façonnage de trafic (3/3)

ÎObjectif : Contrôle du rythme de la circulation des informations entre liens


– Eviter la congestion
– Absorber la ggigue
g

ÎDeux techniques d’implantation du façonnage du trafic


– Seau percé
– Seau à jetons

ÎProblèmes
– Surcoût du « traffic shaping
p g » : maintient d’info d’état sur les flux
– Où placer les « shapers » ?
– Agrégation de flux et traffic shaping

M2R IT – UE Réseaux et QoS – Z. MAMMERI


252

7. Conclusion
„ Gestion de ressources et contrôle de congestion : fonctions vitales pour la QoS
„ Internet actuel : techniques utilisées simples, mais vulnérables

Des problèmes à résoudre


„ Utilisation des techniques de prévention
– Choix des indicateurs de charge et leur mesure
– Choix des seuils de congestion (statique, dynamique)
– Agrégation et dégradation de QoS pour les flux individuels
– Maîtrise de l’analyse statistique de la charge dynamique

„ Gestion efficace de buffers pour les flux agrégés


„ Techniques
T h i d’i l ti de
d’isolation d flux
fl ett pénalisation
é li ti des d flux
fl agressifs
if
„ Applications adaptatives à l’écoute du réseau
„ Gestion de buffers adaptive en fonction des applications (différenciation)
„ Combinaison : CA/Ordonnancement/Contrôle de congestion

M2R IT – UE Réseaux et QoS – Z. MAMMERI


253

28

Вам также может понравиться