Bonjour!
J'essaye de faire de la gestion de bande passante avec le script HTB.init qui permet de générer les commandes TC qui vont bien.
Après de nombreuses recherches, je suis tombé sur un article de lea-linux: http://rene-descartes.dyndns.org/bts...pro/index.html
J'ai toujours le même problème qui me semble très important, et cet article (tout comme tous les autres que j'ai trouvé) l'ignore. ;-)
Voilà.....
Mon interface de sortie est eth1. Elle est à 100Mbit.
Je paye à mon fournisseur pour 10Mbit, mais physiquement l'interface n'est pas limitée.
Si je dépasse 10Mbit je paye des suppléments.
Je souhaite donc m'en tenir à 10Mbit.
Par ailleur (pour cette maquette) j'ai 2 machines:
192.168.0.8 et 192.168.0.9
Voici mes classes (eth1 eth1-2:30.default eth1-2:3.download eth1-2:4.download eth1-2.root):
Donc chaque fils doit avoir 8Mbit, et aller jusqu'à 10Mbit s'il y a de la BP disponible.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 eth1 DEFAULT=30 R2Q=1000 #Classe root, je veux limiter le débit à 10Mbit pour l'esemble des fils eth1-2.root RATE=10Mbit CEIL=10Mbit LEAF=sfq PRIO=0 RULE=192.168.0.0/24 ,* #Fils 1: je veux lui donner 8Mbit si possible, ou plus eth1-2:3.download RATE=8Mbit CEIL=prate LEAF=sfq PRIO=5 RULE=192.168.0.8, #Fils 2: je veux aussi lui donner 8Mbit si possible, ou plus eth1-2:4.download RATE=8Mbit CEIL=prate LEAF=sfq PRIO=10 RULE=192.168.0.9,
Logiquement, la classe root qui les contient et qui a le paramètre CEIL=10Mbit devrait bloquer le tout.
Or si chaque fils télécharge, le débit grimpera à 8+8=16Mbit voir 20Mbit (vu le ceil de chaque fils).
J'aurai cru que la classe mère aurait limité le total à 10Mbit, mais vu que physiquement elle peut ateindre 100Mbit, elle ne s'en prive pas.
Après de nombreux tests (et à moins d'avoir un problème au niveau du noyau), une classe root ne limite pas le total du débit de ses classes filles.
Donc:
- Faut il rétrogérer tout ça, à savoir un calcul manuel pour pas dépasser le total dans les classes filles (mais on perd en dynamisme)
- Ou y a t'il un moyen que HTB gère bien tout ça? Ce qui devrait être NORMAL!!!
Dans votre article il est sous-entendu qu'une classe root limite le total de la BP de ses classes filles, mais les tests prouvent le contraire.
J'ai d'ailleurs trouvé dans la FAQ de HTB (http://luxik.cdi.cz/~devik/qos/htb/htbfaq.htm) ceci:
Apparemment ceci serait normal? ?-(
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 What if sum of child rates is greater than parent rate ? Then interesting things can happen. Total rate delivered by children can be higher that parent's rate (thus its rate is not respected). However when sum of actual child rates are under parent's rate then borrowing will occur like in regular case. I use setup with 4 classes, parent has rate=ceil=6kbps, child "mail" has rate=1kbps ceil=4kbps, "web" has rate=ceil=15kbps and "other" has rate=2kbps ceil=4kbps. HTB is attached to an PPP interface with compressed multilink pair of modems which can go from 6kbps to cca 16kbps (depends on compresability of data). When "web" traffic is present it can go as high as compression allows while still allowing mail 1kbps and other 2kbps. When "web" traffic is smaller than 6kbps then "mail" and "other" can borrow more bw up to 4k each. Parent's class it not set to 18k because then "mail" and "other" could get as much as 8k which is more that link's minimum and would saturate the link. Thus I set parent to 6k so that "mail"+"other" are limited to 6k while "web" can go over.
Un guru qui puisse m'éclairer? :-)
Merci beaucoup!
Partager