Hello,
Cela est une fonction que l’on trouve sous différents noms. C’est appelé QOS ou traffic shapping (mise en forme du trafic) ou encore traffic engineering.
Généralement, cela se fait sur le routeur. Mais je pense que la freebox ne sera pas d’accord. (C’est une demande mise dans les boîtes à idées de Free depuis des lustres)
Le traffic shapping est un mécanisme relativement compliqué à utiliser sous Linux. Sans compter quelques erreurs par ci/par là dans la documentation.
Je déconseille fortement de s’en servir sans avoir creusé le sujet un minimum. Voir le chapitre dédié du LARTC : lartc/qdisc .
Eventuellement, tu peux essayer le script ci-dessous. Fourni sans la moindre garantie.
[code]#!/bin/bash
DEV=eth0
Nettoie les gestionnaires de sortie et d’entrees, cache les erreurs
tc qdisc del dev $DEV root 2> /dev/null > /dev/null
Flux montant (uplink)
installe HTB a la racine, le trafic ira par defaut vers 1:10 :
tc qdisc add dev $DEV root handle 1: htb default 1
la classe 1:1 :
tc class add dev $DEV parent 1: classid 1:1 htb rate 1gbit burst 6k
la classe 1:10
tc class add dev $DEV parent 1:1 classid 1:10 htb rate 100mbit ceil 1gbit burst 6k prio 1
la classe 1:20 :
tc class add dev $DEV parent 1:1 classid 1:20 htb rate 500kbit burst 6k prio 2
Si on ne configure pas le “ceil”, il n’y a pas de “borrowing”, CAD pas d’utilisation de la bande passante supplémentaire disponible
Gerees par SFQ :
tc qdisc add dev $DEV parent 1:10 handle 10: sfq perturb 10
tc qdisc add dev $DEV parent 1:20 handle 20: sfq perturb 10
Le traffic à destination du port 25 est envoye vers 1:20
tc filter add dev $DEV parent 1: prio 1 protocol ip u32 match ip dport 25 0xffff flowid 1:20
[/code]
Mais le fait que je fournisse un exemple ne t’exonère en aucun cas de la lecture de la documentation. J’insiste.
Régulièrement, cela arrive même à crasher l’interface réseau, qui fige pendant 30 secondes avant d’être remise à zéro. Et il faut alors penser à utiliser ethtool pour dégager les options “tso gso gro lro” (de mémoire).
Pour vérifier le bon fonctionnement du truc, tu peux éventuellement utiliser iftop pour mesurer en temps réel la bande passante utilisée par ta machine.
–
AnonymousCoward