Hi, The Description --------------- Am making a package for a VSAT ISP. Running Red Hat 8.0 with the updated kernel (2.4.20) and patched for HTB on the bandwidth management system (BMS). BMS has two ethernet interfaces: eth1 at 192.168.0.1/24 going to the LAN with PCs and eth0 at 10.9.25.34/28 going to the VSAT uplink. Kernel HTB version: HTB init, kernel part version 3.10 Using the htb.init script v0.8.4 Throttling total outgoing VSAT bandwidth on eth0 at 64 Kbps. Throttling total incoming VSAT bandwidth on eth1 at 256 Kbps. Throttling total incoming/outgoing bandwidth for sets of PCs on the LAN on eth1/eth0 respectively using netfilter marks. PC pools on the LAN (IP, Min/Max download bandwidth allocated): (a) 192.168.0.64/31 (32/128) (b) 192.160.0.2/32 (128/256) (c) 192.168.0.3 (32/128) The Problem ----------- Throttling is working fine in both directions. However, when the link is choked the PCs do not get bandwidth proportional to their RATEs or CEILs. So if all the PCs start downloading simultaneously, each pool gets ~85 Kbps, instead of pools (a) and (c) getting 64 Kbps each and (b) getting 128 Kbps. Enclosing the files from /etc/sysconfig/htb and the htb compile output. Thanks in advance for any help. Regards, -- Raju -- Raj Mathur raju@xxxxxxxxxxxxx http://kandalaya.org/ GPG: 78D4 FC67 367F 40E2 0DD5 0FEF C968 D0EF CC68 D17F It is the mind that moves *** eth0 *** DEFAULT=30 *** eth0-0003,upload *** RATE=64Kbps PRIO=5 *** eth0-0003:0003.192.168.0.64.upload *** RATE=8Kbit CEIL=20Kbit PRIO=5 LEAF=sfq MARK=3 *** eth0-0003:0004.192.168.0.2.upload *** RATE=32Kbit CEIL=64Kbit PRIO=5 LEAF=sfq MARK=1 *** eth0-0003:0005.192.168.0.3.upload *** RATE=8Kbit CEIL=20Kbit PRIO=5 LEAF=sfq MARK=2 *** eth1 *** DEFAULT=30 *** eth1-0002.download *** RATE=256Kbps PRIO=5 *** eth1-0002:0003.192.168.0.64.download *** RATE=32Kbit CEIL=128Kbit PRIO=5 LEAF=sfq MARK=65539 *** eth1-0002:0004.192.168.0.2.download *** RATE=128Kbit CEIL=256Kbit PRIO=5 LEAF=sfq MARK=65537 *** eth1-0002:0005.192.168.0.3.download *** RATE=32Kbit CEIL=128Kbit PRIO=5 LEAF=sfq MARK=65538 *** htb compile *** tc qdisc del dev eth0 root tc qdisc add dev eth0 root handle 1 htb default 30 tc qdisc del dev eth1 root tc qdisc add dev eth1 root handle 1 htb default 30 tc class add dev eth0 parent 1: classid 1:0003 htb rate 64Kbps prio 5 tc class add dev eth0 parent 1:0003 classid 1:0003 htb rate 8Kbit ceil 20Kbit prio 5 tc qdisc add dev eth0 parent 1:0003 handle 0003 sfq perturb 10 tc filter add dev eth0 parent 1:0 protocol ip prio 200 handle 3 fw classid 1:0003 tc class add dev eth0 parent 1:0003 classid 1:0004 htb rate 32Kbit ceil 64Kbit prio 5 tc qdisc add dev eth0 parent 1:0004 handle 0004 sfq perturb 10 tc filter add dev eth0 parent 1:0 protocol ip prio 200 handle 1 fw classid 1:0004 tc class add dev eth0 parent 1:0003 classid 1:0005 htb rate 8Kbit ceil 20Kbit prio 5 tc qdisc add dev eth0 parent 1:0005 handle 0005 sfq perturb 10 tc filter add dev eth0 parent 1:0 protocol ip prio 200 handle 2 fw classid 1:0005 tc class add dev eth1 parent 1: classid 1:0002 htb rate 256Kbps prio 5 tc class add dev eth1 parent 1:0002 classid 1:0003 htb rate 32Kbit ceil 128Kbit prio 5 tc qdisc add dev eth1 parent 1:0003 handle 0003 sfq perturb 10 tc filter add dev eth1 parent 1:0 protocol ip prio 200 handle 65539 fw classid 1:0003 tc class add dev eth1 parent 1:0002 classid 1:0004 htb rate 128Kbit ceil 256Kbit prio 5 tc qdisc add dev eth1 parent 1:0004 handle 0004 sfq perturb 10 tc filter add dev eth1 parent 1:0 protocol ip prio 200 handle 65537 fw classid 1:0004 tc class add dev eth1 parent 1:0002 classid 1:0005 htb rate 32Kbit ceil 128Kbit prio 5 tc qdisc add dev eth1 parent 1:0005 handle 0005 sfq perturb 10 tc filter add dev eth1 parent 1:0 protocol ip prio 200 handle 65538 fw classid 1:0005