Après deux ans de développement, la version 2.0 de la plateforme LibreQoS est maintenant disponible. Elle est destinée à organiser une répartition équitable de la bande passante disponible entre les utilisateurs et à réduire les effets négatifs causés par le buffering intermédiaire des paquets (Bufferbloat) dans le matériel réseau. La plateforme peut être utilisée par les fournisseurs ou les administrateurs de réseaux privés pour optimiser les flux de trafic, maintenir les retards au minimum et répartir la bande passante en tenant compte des priorités. Le code du projet est écrit en C, JavaScript, Python et Rust, et est distribué sous la licence GPLv2. La plateforme s'installe sur serveur, placée entre le routeur front-end du fournisseur et le routeur de base du réseau local.
LibreQoS permet de réduire les temps de latence et d'améliorer la fiabilité des sessions interactives, des jeux, des plateformes d'apprentissage en ligne, du trafic VoIP et des vidéoconférences en cas de forte charge sur le réseau, par exemple à cause de certains utilisateurs téléchargeant des films en plusieurs flux ou de l'activité des amateurs de torrents (LibreQoS résout le problème de saccades lors des vidéoconférences lorsque quelqu'un sur le même réseau commence à télécharger des vidéos en 4K). L'utilisation de LibreQoS réduit la bande passante de pointe disponible pour un utilisateur, mais permet de réduire considérablement la latence et de répartir équitablement les ressources entre tous les participants à l'échange de données.
LibreQoS repose sur l'utilisation du système de gestion des files d'attente réseau CAKE (Common Applications Kept Enhanced) et du planificateur de paquets fq_codel (Fair Queuing Controlled Delay), et utilise également eBPF et XDP (Express Data Path) pour exécuter des gestionnaires au niveau du pilote réseau avec un accès direct au tampon DMA des paquets. L'algorithme CAKE est conçu pour remplacer et simplifier la complexe hiérarchie des disciplines de traitement des files d'attente de paquets, capable d'optimiser la bande passante maximale et d'offrir un niveau de latence minimal même sur les canaux de communication les plus lents avec le fournisseur et lors de l'utilisation de dispositifs peu puissants.
Le projet propose également des outils pour suivre les délais entre l'envoi de la demande et la réception de la réponse (RTT, round-trip time), en lien avec des utilisateurs spécifiques, des points d'accès et des sites web. Une interface web a été développée pour analyser l'état du réseau, permettant d'évaluer visuellement le trafic, de suivre l'évolution de la charge et des délais, et d'identifier les utilisateurs les plus actifs. Il est possible de créer des schémas hiérarchiques flexibles de limitation de trafic et d'intégration avec UISP et Splynx pour le mappage des topologies et des clients.
La sortie de LibreQoS 2.0 est dédiée à Dave Taht, décédé prématurément l'année dernière à l'âge de 59 ans. Dave a dirigé le développement de LibreQoS et était cofondateur du projet Bufferbloat, créateur de la distribution CeroWrt et auteur de nombreux RFC liés à la gestion des files d'attente réseau.
Les changements clés de la version LibreQoS 2.0 :
- L'interface web de l'opérateur a été modernisée, enrichissant les capacités de diagnostic des problèmes réseau et ajoutant de nouveaux rapports et graphiques.

- Le mode d'affichage en arborescence (Tree view) permet de visualiser la structure hiérarchique du réseau, améliorant le traitement de la topologie et détaillant le comportement des nœuds.
- De nouveaux outils de diagnostic ont été ajoutés, permettant d'analyser l'état des files d'attente réseau, de suivre les flux de trafic, de représenter visuellement le trafic sous forme de diagrammes de Sankey, de surveiller les retransmissions de paquets et de visualiser les cycles de transmission TCP (RTT).

- De nouveaux modes de visualisation des cartes et des flux de trafic ont été ajoutés, ainsi qu'un analyseur des systèmes autonomes (ASN Analysis).

- L'intégration avec les systèmes de gestion de la relation client (CRM) et les systèmes de gestion de réseau (NMS) a été améliorée. La prise en charge de l'intégration avec UISP, Splynx, Netzur, VISP, WISPGate, Powercode et Sonar a été ajoutée.
- Les fonctionnalités de limitation de bande passante (shaping) ont été améliorées, concernant la gestion des files d'attente et l'utilisation de TreeGuard et StormGuard pour éviter les surcharges.
- La surveillance de l'état du planificateur et les notifications des problèmes critiques ont été améliorées.
Source : opennet.ru



