Le contrôle de flux et de congestion
Les techniques de contrôle et de gestion de flux sont capitales dans le monde des réseaux. Les réseaux à transfert de paquets ou de cellules sont comme des autoroutes : s’il y a trop de trafic, plus personne ne peut avancer. Il faut donc contrôler le réseau et les flux qui y circulent. Le contrôle de flux est préventif, puisqu’il limite les flots d’information à la capacité de transport du support physique. Le contrôle de congestion a pour objet d’éviter la congestion dans les nœuds et de résoudre les embouteillages lorsqu’ils sont effectifs.La qualité de service est définie par la recommandation E.800 de l’UIT-T de la façon suivante : « Effet collectif du service de performance qui détermine le degré de satisfac- tion d’un utilisateur du système. » Cette définition très générale est précisée dans la recommandation I.350, qui définit la QoS et la performance de réseau, ou NP (Network Performance).La performance de réseau NP s’évalue en fonction de paramètres qui ont une significa- tion pour l’opérateur du réseau et qui sont utilisés pour jauger le système, sa configura- tion, son fonctionnement et sa maintenance. La NP est définie indépendamment des performances du terminal et des actions de l’utilisateur. La qualité de service se mesure à l’aide de variables d’état, qui peuvent être directement observées et mesurées à l’endroit où l’utilisateur accède au service.
Une matrice 3×3 a été développée par l’UIT-T dans l’annexe à la recommandation I.350 pour déterminer les paramètres à prendre en compte dans la valeur de la QoS et de la performance de réseau. Cette matrice est illustrée à la figure 28.2. Elle détermine six zones, qui doivent être définies explicitement. Par exemple, si l’on examine la première colonne, il faut déterminer la capacité des accès, celle du transfert d’informations utilisa- teur et enfin la capacité maximale susceptible d’être gérée lors du désengagement d’un utilisateur. La deuxième colonne correspond aux paramètres qui permettent d’assurer laLe contrôle de flux est une des fonctionnalités essentielles du transfert de trames ou de paquets. Il s’agit de gérer les paquets de façon qu’ils arrivent au récepteur dans le laps de temps le plus court et surtout en évitant les pertes, en cas de surcharge, par écrasement dans les mémoires tampons des nœuds intermédiaires.Le contrôle s’effectue par une contrainte sur le nombre de paquets qui circulent dans le réseau. Cette limitation s’exerce soit sur le nombre de paquets en transit d’une entrée à une sortie ou sur l’ensemble du réseau, soit sur le nombre de paquets ayant le droit d’entrer à l’intérieur du réseau par unité de temps. À ces contrôles peuvent s’ajouter des techniques d’allocation des ressources, de façon à garantir qu’il n’y aura pas de congestion. Les sections qui suivent détaillent quelques-uns de ces contrôles de flux.
Le contrôle par crédit
Le fonctionnement du contrôle de flux par crédit est très simple : un nombre N de crédits circulent dans le réseau. Pour qu’un paquet entre, il doit acquérir un crédit, qui est libéré une fois la destination atteinte. Le nombre total de paquets circulant dans le réseau est évidemment limité à N. Les crédits peuvent être banalisés ou dédiés. Une méthode isarythmique, c’est-à-dire qui limite le nombre d’entrants, est appliquée aux crédits totalement banalisés. La difficulté de cette méthode est de distribuer les crédits aux bonnes portes d’entrée afin d’offrir un débit maximal. C’est pourquoi elle est difficile à gérer. Par ailleurs, ses performances n’ont pas été prouvées comme opti- males.Dans les crédits dédiés par nœud d’entrée, une file d’attente de crédits associés au nœud d’entrée permet à un paquet d’être transmis. Une fois le paquet parvenu au nœud destina- taire, le crédit est libéré et réacheminé, avec l’acquittement, par exemple, vers l’émetteur. De nouveau, le contrôle est assez délicat puisqu’il ne s’exerce que localement et non à l’intérieur du réseau.
On utilise le plus souvent des crédits dédiés à un utilisateur, autrement dit des crédits qui ne peuvent être utilisés que par cet utilisateur ou, ce qui revient au même, des crédits dédiés au circuit virtuel de l’utilisateur. Cette méthode est connue sous le nom de fenêtre de contrôle de flux. Elle est illustrée à la figure 28.3. Dans cette figure, il est indiqué que le nombre de paquets qui circulent sur le circuit virtuel ne peut dépasser la fenêtre de N. La fenêtre représente le nombre de paquets qu’un utilisateur peut émettre avant d’être obligé de s’arrêter. Une fenêtre de 1 indique que l’émetteur peut émettre un paquet et est obligé de s’arrêter et d’attendre un acquittement avant d’envoyer un nouveau paquet. La fenêtre correspond exactement au nombre de paquets qui peuvent être émis avant de devoir stopper l’émission. Supposons que la fenêtre maximale soit de 8. Si l’émetteur a émis deux paquets, sa fenêtre n’est plus que de 6. Si l’émetteur émet encore 6 paquets sans recevoir d’acquittement, la fenêtre devient égale à 0, et plus aucun paquet ne peut être émis. Cette technique relativement efficace manque de souplesse, puisque le contrôle est effectué par l’utilisateur et non par le gestionnaire du réseau.