Question

Où puis-je en apprendre davantage sur le contrôle / interroger l'interface réseau sous Linux? Je voudrais obtenir l'application spécifique des vitesses de chargement / de téléchargement, et de faire respecter une limite de vitesse pour une application spécifique.

Je aime particulièrement les informations qui peuvent me aider à écrire une application de mise en forme de trafic en utilisant Python.

Était-ce utile?

La solution

Vous voulez la suite iproute2, dans lequel vous utilisez la commande tc . commandes de tc ressemblent

tc class add dev eth2 parent 1: classid 1:1 htb rate 100Mbit ceil 100Mbit quantum 1600

Voici une application trafic de mise en forme Python existant iproute2 utilise.

Autres conseils

Il est en fait assez difficile façonner par application à l'aide des outils du noyau Linux, à moins que l'application utilise des adresses IP spécifiques et / ou ports que vous pouvez apparier.

En supposant que c'est le cas, alors vous aurez besoin de lire sur iptables et en particulier fwmarks. Vous aurez également besoin de lire sur tc. En combinaison de ces deux outils peuvent faire ce que vous voulez. Linux Advanced Routing & Traffic Control est un bon endroit pour commencer.

En supposant que votre application ne pas utiliser un ensemble prévisible de ports / adresses IP, alors vous aurez besoin d'utiliser un shaper comme userspace Trickle . Cela s'insère entre l'application et le noyau et façonne le trafic pour cette application dans l'espace utilisateur.

Je ne pense pas qu'il y ait des liaisons python direct pour l'un de ces outils, mais il serait simple de les utiliser de script python et simplement appeler les executables directement.

Y at-il une raison quelconque vous souhaitez utiliser python? Comme mentionné précédemment, il sera probablement seulement main-off aux outils déjà mis au point à cet effet. Toutefois, si vous regardez autour, vous pouvez trouver des choses telles que Click! modular router, XORP, et d'autres qui offrent une halte-accueil pour les choses que vous voulez faire - sans parler de toutes les suggestions déjà fournies (telles que iptables et tc)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top