it-swarm-eu.dev

Wie kann ich die Download- / Upload-Bandbreite begrenzen?

Wie kann ich die Download-/Upload-Bandbreite begrenzen für:

  • Gesamtes Betriebssystem.
  • Eine Netzwerkschnittstelle.
  • Einzelanwendung.
77
yevhene

Die Beschränkung einer einzelnen Schnittstelle ist einfach, aber globale Ratenbeschränkungen erfordern komplexere Regeln wie anwendungsbasierte Regeln. Ich sage nicht, dass es nicht möglich ist, aber es erfordert einiges, sich mit den Interna des Netzwerks auseinanderzusetzen.

Hier ist eine kurze Anleitung zum Einrichten eines Grenzwerts pro Schnittstelle

Wenn Sie wirklich anwendungsbasierte Regeln einrichten möchten, sollten Sie sich mit einem Firewall-Framework wie shorewall befassen, das über Hilfsfunktionen zum Konfigurieren der Formgebung verfügt. Selbst mit diesen Werkzeugen ist einiges an Umdenken und Testen erforderlich, um es in Position zu bringen. So etwas ad-hoc zu machen ist noch nicht so einfach.

42
Ressu

Obwohl dies eine alte Frage ist, bin ich auf diese gestoßen, als ich nach einer Antwort auf dieselbe Frage gesucht habe. Die Betriebssystem- und Schnittstellenbeschränkungen wurden bereits in einer früheren Antwort behandelt. Hier finden Sie eine Möglichkeit, anwendungsspezifische Beschränkungen festzulegen. Verwenden Sie eine Anwendung namens Rinnsal. Also mach Sudo apt-get install trickle. Sie können den Upload/Download für eine bestimmte App einschränken, indem Sie ausführen

trickle -u (upload limit in KB/s) -d (download limit in KB/s) application

Dadurch wird die Anwendung mit den angegebenen Grenzwerten gestartet. Sie können auch die "Glättungs" -Zeit angeben, damit Stichproben über den gewünschten Zeitraum hinweg übertragen werden, falls Ihre Anwendung einen hohen Bandbreitenverbrauch aufweist und Sie möchten, dass die Bursts zugelassen werden, solange der Durchschnitt innerhalb Ihrer Spezifikationen liegt.

66
SMeznaric

Wenn Sie die Bandbreite für eine bestimmte IP-Adresse begrenzen möchten, können Sie dies verwenden:

tc qdisc add dev eth1 root handle 1: htb default 12
tc class add dev eth1 parent 1: classid 1:10 htb rate 2500kbps
tc class add dev eth1 parent 1: classid 1:11 htb rate 2500kbps
tc class add dev eth1 parent 1: classid 1:12 htb rate 5000kbps

tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.2.105 flowid 1:10
tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.2.106 flowid 1:11
5
billtian