Découvrez comment fonctionne le contrôle de la qualité de service et de la bande passante
Avec l’intégration croissante d’Internet et des réseaux dans nos vies sous toutes ses facettes, divers types d’applications ont été générés, et avec elles, il existe actuellement plusieurs types de trafic qui nécessitent une bande passante différente pour circuler à travers nos réseaux et Internet. . Puisque nous exigeons toujours la capacité maximale de notre réseau, notamment la connexion Internet, il est important de contrôler l’usage qui est fait de ce « facteur rare », de le gérer correctement en fonction de nos besoins. À ces fins, divers outils qui jusqu’à récemment étaient réservés aux environnements d’entreprise, sont maintenant rendus accessibles en tant que nouvelles fonctionnalités de nos routeurs domestiques, il est donc intéressant de comprendre en général comment ils fonctionnent afin d’en tirer le meilleur parti.
Nous voyons fréquemment une fonction appelée QoS, acronyme de Quality of Service ou Quality of Service, qui fait référence à divers mécanismes conçus pour assurer le flux agile des données dans le réseau, en utilisant des mécanismes pour attribuer des priorités à différents types de trafic qui nécessitent des traitement. Nous traiterons le concept de QoS comme un contrôle de bande passante différencié et complet, c’est-à-dire ce dernier comme faisant partie de la qualité de service.
Le but de cet article est de faire une brève description des principaux éléments de ces systèmes pour comprendre leur fonctionnement général et qu’après avoir configuré notre routeur, nous abordons cette tâche dans une meilleure position pour pouvoir obtenir les meilleures performances possibles. donne nous.
Qu’est-ce que la QoS et à quoi sert-elle ?
La QoS (Quality of Service) est une caractéristique des routeurs et des commutateurs qui va nous permettre de prioriser certains trafics de données. Normalement, le trafic réseau est mis en file d’attente pour le traitement et l’envoi des différents paquets, cependant, la QoS nous permet de prioriser certains paquets afin qu’ils soient gérés avant les autres dans la file d’attente. De cette façon, nous aurons une latence plus faible car ils atteindront la destination plus tôt. La fonctionnalité QoS est largement utilisée dans les routeurs de jeu pour hiérarchiser les paquets de jeu et, de cette manière, avoir la latence la plus faible possible et la gigue la plus faible possible (variation de latence), afin que le jeu ait la meilleure expérience utilisateur possible.
L’opération de haut niveau est basée sur le fait que les packages de jeu auront une priorité plus élevée que les autres packages qui atteignent le routeur, tels que les packages de programmes P2P, la lecture vidéo 4K à partir de services de streaming, etc. La QoS peut également être configurée pour prioriser les paquets VoIP, aujourd’hui avec le télétravail, cette fonctionnalité est essentielle pour avoir la meilleure expérience lors des appels ou des appels vidéo sur Internet.
Au sein des technologies QoS, nous avons également un contrôle de la bande passante, il existe des routeurs qui nous permettent de limiter la vitesse de téléchargement et de téléchargement des différents clients, à la fois filaires et sans fil, dans le but de ne pas réduire toute la largeur de la bande lors du téléchargement. via les réseaux P2P. Ce contrôle de la bande passante n’est pas seulement effectué sur les routeurs, mais peut également être effectué directement sur les commutateurs et même les points d’accès. Par exemple, les commutateurs gérés ont une QoS basée sur la norme DSCP et également sur le CoS, en plus, ils peuvent limiter la vitesse maximale de transmission par port. Enfin, les points d’accès WiFi professionnels disposent également d’une QoS pour prioriser certains paquets, et on peut même limiter la bande passante par SSID,
Éléments
Facteur rare
L’idée sous-jacente à tous ces systèmes de QoS est un déficit de la bande passante nécessaire pour atteindre ce que l’on veut en termes de vitesse, de latence ou de « jitter » (variations de latence). Si cette rareté n’existait pas (dans notre réseau, dans notre connexion ou dans d’autres réseaux traversés par nos paquets) et que la bande passante était illimitée, tous les types de trafic obtiendraient plus que ce dont ils ont besoin pour atteindre leur qualité et nous ne serions pas parler pour parvenir à une meilleure qualité de service.
Privilèges
Comme ce déficit ne peut pas être remédié pour le moment, nous sommes contraints de définir différents degrés d’importance ou de priorité pour différents types de trafic, de sorte qu’un type est privilégié au détriment d’un autre. Nous essaierons toujours de minimiser ce préjudice afin qu’il soit le moins perceptible possible et s’il est très perceptible, qu’il n’affecte que les types de trafic où cela nous dérange le moins.
Par exemple, si je sers un fichier sur un réseau P2P qui consomme une grande partie de la bande passante de téléchargement de ma connexion et que je dois passer un appel avec mon téléphone IP qui fonctionne sur la même connexion Internet, alors je prétends que mon appel n’aurai-je pas des problèmes de connexion, même si cela signifie que le fichier que je télécharge prend un peu plus de temps que prévu. Cela m’amène à décider que mon trafic VoIP devrait avoir des privilèges plus élevés que mon trafic P2P. Autre exemple : si je télécharge un gros volume de données sur mon PC ou un autre de mon réseau et que je dois vérifier le courrier, je souhaite que l’opération de courrier se déroule sans heurts même si cela ralentit le téléchargement. Définir quel trafic nous voulons prioriser au détriment de quel autre est la définition politique que nous devons faire et ensuite nous mettre au travail avec la technique.
Classification
Afin d’attribuer des privilèges ou d’effectuer d’autres types d’opérations avec un certain trafic, il doit y avoir un moyen non ambigu de le classer, au sens de le cataloguer et de l’identifier dans l’ensemble du trafic qui passe par le routeur. Identifier correctement le trafic qui nous intéresse par le routeur est une opération vitale pour que nous puissions ensuite lui donner ou supprimer la priorité. Tous les paquets qui répondent à certains critères seront considérés comme appartenant à une certaine «Classe» de trafic et non à une autre.
En général, plusieurs classes sont définies et il est précisé quels critères seront utilisés pour inclure chaque package dans l’un ou l’autre. Le nombre de critères permettant de classer et d’identifier le trafic est énorme, même s’il dépend de chaque routeur. Le trafic réseau est toujours basé sur un flux de paquets de données et les classificateurs analysent toujours individuellement certaines caractéristiques de ces paquets, en les classant un par un. Ce n’est pas le but de cet article d’approfondir ces détails, mais il convient de mentionner comme exemples de critères par lesquels le trafic est identifié : adresse MAC, IP ou port, à la fois source et destination, protocole, taille de paquet, bouche physique par celui qui entre dans le routeur, SSID (en cas de routeurs avec plusieurs SSID),
Actions
Une fois le paquet classé, le routeur lui attribue le traitement que nous avons configuré pour la classe spécifique à laquelle le paquet appartenait. L’action principale que le routeur effectue afin de contrôler la bande passante est de mettre le paquet dans l’une de ses «files d’attente» de sortie. En raison du fait que la bande passante sortante disponible au routeur pour envoyer les paquets est limitée, ce qu’il fait est de planifier la sortie en forçant les paquets à former différentes rangées ou files d’attente pour pouvoir sortir, et tous doivent passer par la même » porte » (la file d’attente de transmission de l’interface de sortie).
Pour chaque interface de sortie (nous verrons plus loin que seul le trafic qui «sort» peut être contrôlé), le routeur a prédéfini ces différentes files d’attente de sortie qu’il avance à des vitesses différentes, en envoyant les paquets un par un, en utilisant différents schémas de hiérarchisation pour chaque file d’attente, qui fait circuler les différents « flux » à des rythmes différents, dans un processus qui vise à attribuer la bande passante rare aux flux les plus privilégiés. Ce processus est connu sous le nom de gestion de la bande passante, mise en forme de la bande passante ou gestion de la bande passante et ils constituent la partie principale des systèmes de qualité de service. En général, la configuration du routeur nous permet de choisir une «priorité» pour chaque classe que nous définissons et avec cela elle se charge de mettre le paquet dans la file d’attente qui correspond à notre priorité.
Avec l’augmentation de la puissance de traitement obtenue grâce aux progrès de la technologie, certains routeurs ont ajouté, en tant que partie intégrante du processus QoS, d’autres fonctions, en plus de la gestion de la bande passante susmentionnée, étant donné qu’une grande partie des tâches lourdes (qui est classer les colis selon les différents critères) c’est fait. De cette façon, il est utilisé pour « marquer » le paquet de différentes manières qui sont interprétées par les réseaux et appareils suivants par lesquels le paquet passera lorsqu’il quittera le routeur. Nous n’entrerons pas dans les différents protocoles impliqués, mais il convient de mentionner certaines marques courantes telles que TOS (Type of Service) et DSCP (Differentiated Services Code Point) dans l’en-tête IP des paquets, et les marques VLAN dans l’en-tête Ethernet.
L’objectif de ces marques est d’établir des priorités différenciées dans les réseaux suivants, afin que ces autres appareils traitent le paquet de la même manière que notre routeur l’a fait, ou d’établir des conditions de routage particulières. Bien entendu, lorsque notre routeur envoie des paquets aux réseaux de nos FAI dans des connexions domiciliaires domestiques, ils ignorent complètement ces marques et leur attribuent leur propre priorité au lieu de respecter celle que nous desservons, ces marques finissent donc par remplir leur fonction uniquement circonscrite à réseaux d’entreprise ou à des appareils que nous configurons nous-mêmes dans nos propres réseaux.
Limite de puissance du routeur
Il est très important de noter que le routeur ne peut agir (quoi qu’il fasse du paquet) sur les paquets qu’il a déjà reçus, qu’il les ait reçus du LAN ou d’Internet ou du WAN. Comprendre cela est important pour pouvoir configurer les systèmes QoS car cela signifie que le routeur ne peut jamais contrôler le trafic qu’il reçoit, mais plutôt le trafic qu’il envoie, quelle que soit l’interface (WAN ou LAN) qu’il reçoit ou par laquelle il l’envoie. Il existe une tendance erronée à supposer que le concept de «reçu» est équivalent à «depuis Internet» et que «envoyé» signifie «envoyé vers Internet», ce qui, du point de vue du routeur, n’est pas tout à fait vrai. Pour le voir graphiquement, analysons le schéma suivant. Nous supposerons une connexion ADSL, mais il en est de même pour le câble, la fibre ou toute autre technologie.
À travers les points 1 et 2, le routeur envoie le trafic sur les sections B et D, et du point de vue du routeur, les deux sont «envoyés», étant B vers notre réseau interne ou LAN et D vers Internet ou WAN. Le segment D est ce que nous appelons communément « Amont » ou Ascension. Le trafic qui traverse le segment A est celui que le routeur « reçoit » d’Internet, et celui qui traverse le segment C est celui que le routeur « reçoit » de notre réseau local.
Le routeur ne peut pas contrôler ce qui se passe en A ou ce qui se passe en C, car ce n’est pas lui, mais un autre appareil, qui prend la décision de transmettre et d’occuper la bande passante. Le routeur n’a le pouvoir de décision qu’aux points 1 et 2, contrôlant la bande passante utilisée dans les segments B et D. C’est-à-dire qu’il ne peut contrôler que ce qu’il transmet lui-même (B pour l’interface LAN ; D pour l’interface WAN), que c’est-à-dire uniquement le trafic qui « sort » du routeur, puisque ce sont les seuls cas où le routeur lui-même prend les décisions de transmettre ou non, ou d’utiliser une certaine vitesse. Lorsque nous allouons la bande passante disponible pour chacune des interfaces, nous faisons toujours référence à B ou D, jamais A ou C, simplement parce que ces deux derniers sont des segments qui échappent au contrôle du routeur.
Lorsque nous essayons de réguler ce que nous appelons la vitesse de TÉLÉCHARGEMENT du PC, où les segments A + B sont impliqués, nous le faisons en régulant le débit au point 1, c’est-à-dire au point où le trafic SORT du routeur (le seul point où le routeur est souverain dans ce sens de trafic). A ce stade, selon les critères définis pour la gestion de la bande passante, le routeur peut, pour chaque paquet, décider entre FORWARD (envoi), DELAY (délai) ou DROP (rejet). Vous pouvez décider de DELAY si vous disposez d’une capacité de stockage libre pour le package, car il doit le garder en mémoire jusqu’à ce qu’il soit autorisé à sortir. Si vous ne pouvez pas le stocker, car votre capacité à le conserver est très faible, vous devez décider de DROP (jeter).
Le problème qui se pose à ce moment est qu’au moment où le routeur peut prendre la décision de rejeter le paquet (car sinon, il dépasse la bande passante attribuée au destinataire, et il ne peut pas non plus le stocker), la bande passante qui nous intéresse en optimisant, en raison de la rareté du segment A (pas du segment B), il était déjà occupé lorsque le DSLAM a envoyé le paquet, et si le routeur le rejette, ce que nous aurons obtenu, c’est que le paquet doit être envoyé à nouveau du DSLAM, occupant la bande passante de ce segment critique (A). Ici, nous pouvons faire une considération particulière. Si le trafic est TCP, nous savons que le destinataire doit envoyer une confirmation (ACK) à l’expéditeur au fur et à mesure qu’il reçoit les envois,
Cependant, et en raison du comportement du protocole TCP (qui n’a rien à voir avec la gestion de la bande passante), il peut arriver que l’expéditeur arrête d’envoyer du trafic en raison du retard de réception des confirmations de réception par le destinataire des envois précédents (cela dépend de de nombreux facteurs, dont la valeur RWIN du protocole TCP), provoquant une interruption du flux de données avant qu’il ne renvoie les données non confirmées. Ce petit retard dans l’acheminement du trafic va générer un certain espace ou bande passante disponible pour d’autres trafics, et constitue un moyen INDIRECT d’obtenir un certain effet dans le segment A en opérant sur le segment B, mais c’est un moyen très peu fiable, inefficace et très coûteux en termes de bande passante, puisque les paquets qui avaient déjà été envoyés et consommés de la bande passante à ce moment-là, ont été rejetés par le routeur et doivent maintenant être envoyés à nouveau, consommant à nouveau de la bande passante. Bref, le destinataire reçoit les informations les plus espacées dans le temps sur le segment B, mais au prix de multiplier le trafic total sur le segment A, créant l’illusion que sa bande passante a été optimisée.
Dans le cas d’un trafic qui n’est pas transporté avec le protocole TCP, mais principalement avec UDP, la notion de «traitement indirect» évoquée au paragraphe précédent ne s’applique pas, car le protocole UDP est plus rudimentaire et n’a pas les caractéristiques de récupération mentionnées . Il est important de mentionner que plusieurs protocoles de streaming importants sont transportés sur la base d’UDP, ce qui implique qu’une mauvaise gestion de la bande passante peut entraîner des déficiences de streaming et ne rien économiser en consommation de bande passante.
Lorsqu’il s’agit de réguler le UPLOAD, c’est-à-dire le téléchargement du PC vers Internet, c’est lorsque le mécanisme de gestion de la bande passante du routeur est le plus efficace, puisque tous les concepts mentionnés pour le trafic de téléchargement sont applicables au trafic de montée. Dans ce cas, le segment critique pour nous est D, qui peut être facilement contrôlé par le routeur en raison de la souveraineté qu’il a au point 2, car à ce point, tout dépend de lui et non de tiers. D’autre part, l’asymétrie caractéristique de nos connexions domestiques fait que le segment D a toujours beaucoup moins de bande passante que tous les autres, il est donc particulièrement important d’utiliser correctement la bande passante disponible. Il en est ainsi au point qu’un grand nombre de systèmes QoS dans les routeurs domestiques n’envisagent que la gestion de ce segment. Ici, il est particulièrement important de rappeler le fonctionnement bidirectionnel du protocole TCP, qui fait également un usage important du canal amont même si un seul téléchargement est effectué. Contrairement au modèle de trafic descendant, dans ce cas, nous ne nous soucions pas du fait que la régulation de la bande passante du segment D se fasse avec un surcoût pour le segment C, car ce dernier a une bande passante beaucoup plus élevée que D et nous pouvons nous permettre ce «gaspillage».
Ici, il serait nécessaire de représenter l’interface WLAN sans fil, que les routeurs WiFi intègrent en tant que troisième interface physique et possède sa propre bande passante, mais il convient de mentionner qu’elle se comporte exactement de la même manière que le LAN et le WAN en termes de trafic. celui qui est contrôlé, c’est-à-dire celui qui SORT du routeur via WiFi.
En résumé, afin de concevoir un schéma de QoS efficace, nous devons assimiler le concept selon lequel le routeur ne peut contrôler que le trafic qu’il envoie lui-même, c’est-à-dire celui qui SORT du routeur via l’une de ses interfaces, pas celui qui reçoit ou entre par d’autres côtés.
conclusion
En raison du facteur rare qui s’avère être la bande passante disponible dans diverses conditions, les systèmes QoS qui intègrent les routeurs modernes ont été conçus pour pouvoir pallier cette pénurie d’une manière ou d’une autre. Ces systèmes nécessitent la définition de privilèges à attribuer aux différents types de trafic. Afin d’attribuer ces privilèges différenciés, le routeur doit classer les paquets de trafic en différentes catégories ou classes auxquelles il accordera une bande passante différente et ne marquera différemment qu’au moment où ces paquets quittent le routeur.