Ich habe gesetzt
uci set simple-tc.mesh_vpn.limit_ingress=10000
uci set simple-tc.mesh_vpn.limit_egress=1000
uci commit simple-tc && /etc/init.d/tunneldigger restart
Wenn ich mit diesen Einstellungen einen Geschwindigkeitstest durchführe, erhalte ich eine Download-Geschwindigkeit von <3 MBit / s (und wie erwartet ~ 1 MBit / s Upload).
Bei einem Eingangslimit von 30000
erhöht sich die Download-Geschwindigkeit auf ~ 5 MBit / s.
Wenn ich simple-tc ausschalte, erhalte ich 25 MBit / s zum Herunterladen (meine DSL-Leitung hat 30 MBit / s, das ist also wie erwartet).
Scheint, als würde simple-tc die Download-Geschwindigkeit viel weiter reduzieren, als es sollte? Ich habe mir die Gerätelast während dieser Tests angesehen, aber es gab immer> 50% Leerlauf.
Dies ist mit einem WR841N / ND v10 und einer auf Gluon v2018.1.8 basierenden Firmware in einem Tunneldigger / l2tp-basierten Netzwerk möglich.
TL; DR: Eingangsfilter sind schlecht, das Verhalten ist bekannt.
Wir können nicht steuern, wie schnell ein VPN-Peer Datenverkehr sendet. Eine solche Funktion müsste in der VPN-Software oder möglicherweise in einer Schicht über dem VPN implementiert werden, die das Limit überträgt und auf der anderen Seite einen Ausgangsfilter installiert.
Das einzige, was unser Eingangsfilter tut, ist, Pakete zu verwerfen, wenn wir das Limit überschreiten, und zu hoffen, dass sich TCP-Verbindungen ordnungsgemäß verhalten und den Durchsatz reduzieren. Bei Nicht-TCP-Protokollen ist die Situation sogar noch schlimmer, da sie häufig keinerlei Kontrolle haben (so dass sie einfach einen Paketverlust erleiden, wenn der Eingangsfilter aktiviert wird). Und selbst für TCP kann das Verhalten bei Paketverlust bei einigen TCP-Implementierungen sehr schlecht sein, insbesondere wenn mehrere parallele TCP-Streams vorhanden sind.
Aha. Was man also möchte, ist, dass der Tunneldigger dem Broker auf der Gateway-Seite sagt, dass er bitte eine Ausgangsfilterung durchführen soll. Ich kann sehen, wie das sinnvoller ist. :) :)
Ich glaube, ich habe sogar irgendwo in den Tunneldigger-Quellen TODOs dafür gesehen.
Ich kann versuchen, dies in tunneldigger zu unterstützen. Hat simple-tc diesbezüglich Unterstützung für die Zusammenarbeit mit dem VPN-Client?
Tunneldigger hat diese Unterstützung bereits (das Flag -L auf dem Client bewirkt, dass der Server das angeforderte Downstream-Bandbreitenlimit festlegt). Es ist nur so, dass die Unterstützung auf der Gluon-Seite fehlt, um diese Flagge tatsächlich an den Tunneldigger zu übergeben, wenn
behoben durch d87c4b521b2e891155241c01b98a7ac90a8883b9
Super, vielen Dank!