Nach zwei Jahren Entwicklung ist die Plattform LibreQoS 2.0 nun verfügbar. Sie wurde entwickelt, um eine faire Verteilung der verfügbaren Bandbreite zwischen den Nutzern zu ermöglichen und die negativen Effekte der Pufferung (Bufferbloat) durch Netzwerkgeräte zu reduzieren. Diese Plattform kann von Anbietern oder Administratoren privater Netzwerke zur Optimierung des Datenverkehrs, zur Minimierung von Latenzen und zur Bandbreitenverteilung basierend auf Prioritäten genutzt werden. Der Code des Projekts ist in C, JavaScript, Python und Rust geschrieben und wird unter der GPLv2-Lizenz verbreitet. Die Plattform wird installiert auf der Server, die zwischen dem Border-Router des Anbieters und dem Basis-Router des lokalen Netzwerks platziert ist.
LibreQoS ermöglicht es, Latenzen zu reduzieren und die Zuverlässigkeit von interaktiven Sitzungen, Spielen, Online-Lernplattformen, VoIP-Verkehr sowie Videokonferenzen unter hoher Netzwerkbelastung zu verbessern, etwa wenn einige Nutzer Filme in mehreren Streams herunterladen oder Torrent-Aktivitäten stattfinden (LibreQoS löst das Problem von Ruckeln bei Videokonferenzen, wenn jemand im selben Netzwerk mit dem Herunterladen von 4K-Videos beginnt). Der Einsatz von LibreQoS senkt die verfügbare Spitzenbandbreite für einen einzelnen Nutzer, ermöglicht jedoch eine signifikante Reduzierung der Latenzen und eine gerechte Verteilung der Ressourcen unter allen Teilnehmern des Datenaustauschs.
LibreQoS basiert auf der Anwendung des Netzwerk-Queue-Management-Systems CAKE (Common Applications Kept Enhanced) und des Packet-Schedulers fq_codel (Fair Queuing Controlled Delay). Zudem nutzt es eBPF und XDP (Express Data Path), um Handler auf der Ebene des Netzwerkdrivers auszuführen, mit der Möglichkeit des direkten Zugriffs auf die DMA-Paketpuffer. Der CAKE-Algorithmus ist darauf ausgelegt, komplexe Hierarchien der Paket-Queue-Verarbeitung zu ersetzen und zu vereinfachen. Er kann die maximal mögliche Bandbreite ausschöpfen und minimale Latenzen bieten, selbst auf langsamen Verbindungen zu Anbietern und bei der Nutzung von ressourcenschwachen Geräten.
Das Projekt bietet auch Werkzeuge zur Verfolgung der Latenzen zwischen der Anforderung und dem Erhalt einer Antwort (RTT, Round-Trip Time) in Bezug auf einzelne Benutzer, Zugangspunkte und Websites. Ein Web-Interface wurde entwickelt, um den Status zu analysieren und die Netzwerkauslastung sowie Latenzen anschaulich zu bewerten, wobei die aktivsten Benutzer identifiziert werden können. Es ist möglich, flexible hierarchische Traffic-Beschränkungen zu erstellen und die Integration mit UISP und Splynx zur Kartierung von Topologien und Kunden durchzuführen.
Die Veröffentlichung von LibreQoS 2.0 ist Dave Taht gewidmet, der vor einem Jahr im Alter von 59 Jahren überraschend verstorben ist. Dave leitete die Entwicklung von LibreQoS und war Mitbegründer des Projekts Bufferbloat, der Ersteller der Distribution CeroWrt und Autor zahlreicher RFCs im Zusammenhang mit der Verarbeitung von Netzwerkwarteschlangen.
Wesentliche Änderungen in der Version LibreQoS 2.0:
- Die Web-Oberfläche des Betreibers wurde aktualisiert, mit erweiterten Diagnosemöglichkeiten für Netzwerkprobleme sowie neuen Berichten und Grafiken.

- Im Baumansichtsmodus (Tree view) wird die hierarchische Netzwerkstruktur dargestellt, die Topologie-Bearbeitung verbessert und das Verhalten von Knoten detaillierter beschrieben.
- Neue Diagnosewerkzeuge zur Analyse des Zustands von Netzwerkwarteschlangen wurden hinzugefügt, die die Überwachung von Datenverkehrsströmen ermöglichen, den Verkehr visuell in Form von Sankey-Diagrammen darstellen, das Monitoring von Paketwiederholungen (retransmit) durchführen und die TCP-Round-Trip-Zeiten (RTT) visualisieren.

- Neue Visualisierungsmodi für Karten und Datenströme wurden hinzugefügt, sowie ein Analysewerkzeug für autonome Systeme (ASN-Analyse).

- Die Integration mit Kundenbeziehungsmanagement-Systemen (CRM) und Netzwerkmanagement-Systemen (NMS) wurde verbessert. Unterstützung für die Integration mit UISP, Splynx, Netzur, VISP, WISPGate, Powercode und Sonar hinzugefügt.
- Die Möglichkeiten zur Bandbreitenbeschränkung (Shaping) wurden verbessert, insbesondere in Bezug auf das Management von Warteschlangen und den Einsatz von TreeGuard und StormGuard zur Vermeidung von Überlastungen.
- Die Überwachung des Status des Planers und die Benachrichtigung über kritische Probleme wurden verbessert.
Quelle: opennet.ru



