2 votes

La classe HTB n'emprunte pas la bande passante disponible.

J'utilise iptables + htb pour gérer la bande passante du trafic Internet. J'ai un lien de 17mbit DSL. Actuellement, j'ai défini les règles ci-dessous :

# Interface eth0 (Donwload)
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root handle 1:0 htb default 10
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 17mbit
tc class add dev eth0 parent 1:0 classid 1:10 htb rate 8mbit ceil 17mbit # Default Class
tc class add dev eth0 parent 1:0 classid 1:20 htb rate 1mbit ceil 17mbit # RDP Class
tc class add dev eth0 parent 1:0 classid 1:30 htb rate 7mbit ceil 17mbit # HTTP/HTTPS Class
tc class add dev eth0 parent 1:0 classid 1:40 htb rate 1mbit ceil 17mbit # DNS Class

La classe HTTP/HTTPS ne concerne que nos serveurs dédiés externes. Ces serveurs ont un trafic élevé de HTTP/HTTPS alors je garantis un taux minimum de 7mbit avec un plafond de 17mbit. Mais le problème est que lorsque les autres classes n'utilisent pas pleinement leur bande passante, la classe HTTP/HTTPS n'augmente pas son débit pour atteindre 17mbit. C'est le cas pour toutes les classes. Voir le résultat de la commande "tc -s -d class show dev eth0".

Veillez à ce qu'aucune classe n'emprunte la bande passante disponible à d'autres classes, même si elles en ont.

class htb 1:1 root prio 0 quantum 200000 rate 17000Kbit ceil 17000Kbit   linklayer ethernet burst 1598b/1 mpu 0b overhead 0b cburst 1598b/1 mpu 0b overhead 0b level 0 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 0 borrowed: 0 giants: 0
 tokens: 11750 ctokens: 11750

class htb 1:10 root prio 0 quantum 100000 rate 8000Kbit ceil 17000Kbit linklayer ethernet burst 1600b/1 mpu 0b overhead 0b cburst 1598b/1 mpu 0b overhead 0b level 0 
 Sent 3188470523 bytes 3905364 pkt (dropped 2262, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 3883404 borrowed: 0 giants: 0
 tokens: 23406 ctokens: 11000

class htb 1:20 root prio 0 quantum 12500 rate 1000Kbit ceil 17000Kbit linklayer ethernet burst 1600b/1 mpu 0b overhead 0b cburst 1598b/1 mpu 0b overhead 0b level 0 
Sent 5229133 bytes 11151 pkt (dropped 0, overlimits 0 requeues 0) 
rate 0bit 0pps backlog 0b 0p requeues 0 
lended: 10898 borrowed: 0 giants: 0
tokens: 169125 ctokens: 9933

class htb 1:30 root prio 0 quantum 87500 rate 7000Kbit ceil 17000Kbit linklayer ethernet burst 1598b/1 mpu 0b overhead 0b cburst 1598b/1 mpu 0b overhead 0b level 0 
Sent 24636498 bytes 27360 pkt (dropped 0, overlimits 0 requeues 0) 
rate 0bit 0pps backlog 0b 0p requeues 0 
lended: 26923 borrowed: 0 giants: 0
tokens: -19199 ctokens: 3823

class htb 1:40 root prio 0 quantum 12500 rate 1000Kbit ceil 17000Kbit linklayer ethernet burst 1600b/1 mpu 0b overhead 0b cburst 1598b/1 mpu 0b overhead 0b level 0 
Sent 11785726 bytes 84162 pkt (dropped 0, overlimits 0 requeues 0) 
rate 0bit 0pps backlog 0b 0p requeues 0 
lended: 84162 borrowed: 0 giants: 0
tokens: 188000 ctokens: 11044

Qu'est-ce qu'il y a ? Pouvez-vous m'aider ? Merci à vous tous !

1voto

setenforce 1 Points 898

Votre classe de feuilles est attachée à 1:0 au lieu de 1:1, donc le parent n'a pas de bande passante disponible à emprunter.

Réglez vos classes de feuilles sur "parent 1:1" et ça devrait être bon.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X