web-dev-qa-db-fra.com

Comment puis-je limiter la bande passante Download / Upload?

Comment je peux limiter la bande passante Download/Upload pour:

  • OS complet.
  • Une interface réseau.
  • Une seule application.
77
yevhene

Limiter une seule interface est facile, mais les limites de débit globales nécessitent des règles plus complexes, tout comme les règles basées sur les applications. Je ne dis pas que cela ne peut pas être fait, mais cela nécessite un peu de fouille dans les éléments internes du réseau.

Voici un rapide Comment sur la configuration d’une limite par interface

Si vous voulez vraiment configurer des règles basées sur les applications, vous devriez vous pencher sur un framework de pare-feu, tel que shorewall , qui ont des fonctionnalités d'assistance pour configurer la mise en forme. Même avec ces outils, il faut un peu de prévoyance et de test pour le mettre en place. Faire quelque chose comme ceci ad-hoc n'est pas encore aussi facile.

42
Ressu

Bien que ce soit une vieille question, je l’ai trouvée en cherchant une réponse à la même question. Les limites du système d'exploitation et de l'interface sont déjà abordées dans une réponse précédente. Voici donc un moyen de définir des limites spécifiques à l'application. Utilisez une application appelée filet. Alors Sudo apt-get install trickle. Vous pouvez limiter le téléchargement pour une application spécifique en exécutant

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

Cela lancera l'application avec les limites spécifiées. Vous pouvez également spécifier le temps de "lissage", afin que les échantillons s'écoulent au cours de la période souhaitée si votre application consomme beaucoup de bande passante et souhaitez que les rafales soient autorisées tant que la moyenne correspond à vos spécifications.

66
SMeznaric

Si vous souhaitez limiter la bande passante pour une adresse IP spécifique, vous pouvez utiliser ceci:

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