Ich habe eine Linux-Box, die als Firewall / Router für unser Heimnetzwerk dient. Ich wohne in den Boonies, also habe ich eine relativ langsame Breitbandverbindung:
Downstream Rate 7616 Kbps
Upstream Rate 512 Kbps
Das ist realistischer etwa 5000 Kbit / s, 300 Kbit / s laut speedtest.net.
Meine Kinder spielen gerne Steam, Skype und Minecraft sowie Multiplayer-Spiele auf ihrer Playstation 3. Wir schauen gerne Hulu und Netflix.
Wenn unsere Kinder spielen, tötet dies häufig unser Videostreaming und im Allgemeinen auch die Internet-Reaktionsfähigkeit. Während solcher "Ausfälle" sehe ich oft hunderte von Verbindungen, die durch ihre Spielaktivitäten geschaffen wurden, und fand einen Weg, dies pro Host zu begrenzen, was enorm hilft. Eine sehr einfache IPTABLES-Regel zur Beschränkung auf 25 Verbindungen pro Host:
iptables -A INPUT -p tcp --syn -m connlimit --connlimit-above 25 -j REJECT
Hat seither eine Reihe von "Vorfällen" gelindert, aber wir haben immer noch Probleme, Hulu und Netflix zu sehen, wenn die Kinder neues Spiel herunterladen oder ihr aktuelles Heimvideo auf YouTube hochladen einige grundlegende verkehrsgestaltung.
tc qdisc add dev eth0 root tbf rate 5000Kbit latency 50ms burst 1540
Die Internet-Konnektivität wurde dadurch jedoch mehr oder weniger zunichte gemacht. Habe ich meine Zahlen falsch berechnet oder ist dies einfach der falsche Weg, um mein Problem zu lösen? Gibt es alternativ andere / bessere Techniken, um unser Internet für Netflix / Hulu-Streaming zu unterstützen? Ich lerne immer noch ein wenig über QoS und Traffic Shaping. Geben Sie daher bitte Referenzen an, wenn Sie über gute Ressourcen zur Dokumentation dieses Themas verfügen.
Ich arbeite meistens durch dieses Ungetüm: http://lartc.org/lartc.html#LARTC.IPROUTE2 versuchen, die Dinge herauszufinden.
quelle
Antworten:
Installieren Shorewall und verwenden Sie es einfache Leitfaden zur Verkehrsgestaltung . Es bietet eine einfache Schnittstelle zu iptables und verschiedenen Routenformungs- und Lastausgleichsfunktionen.
quelle
Leider hilft Ihnen QoS nur für OUTBOUND-Flows, da ich wirklich nicht glaube, dass Ihr ISP, NETLIX und das Spielernetzwerk Ihres Sohnes (PSN, XBoxLiv ...) QoS für Flows TOWARD verwenden.
Sie können ein wenig helfen, indem Sie eine niedrigere als die tatsächliche eingehende Geschwindigkeit formen. Dies funktioniert jedoch nur für den TCP-Verkehr (sobald Sie das von Ihnen festgelegte BW-Limit überschreiten, werden Sie einige Pakete verwerfen, und TCP wirkt sich darauf aus, um den Verkehrsfluss zu verringern). UDP wird immer noch alles verstopfen, da es meistens "Feuer & Vergessen" ist.
Da der Flaschenhals für Ihre eingehende Verbindung der letzte Abschnitt ist - Ihre DSL-Verbindung -, wird Ihr ISP immer noch den für Sie bestimmten zufälligen Datenverkehr verlieren (da für Sie sicherlich keine Warteschlangenpriorität und -formung für normale Benutzer konfiguriert ist).
quelle