Hi there list, I got stuck when making tc rules to divide bandwidth between RDP client and the rest of our Internet traffic. Given the following problem: We have a school with around 900 students and staff in a temporary location (an old wodka factory ;)) on around 100 workstations. The maximum bandwidth we could get was 1536 kbit. So we decided to let the staff work in our normal network via remote desktop. Around 90 students using the Internet would fill up the bandwidth real soon... so I decided to use tc/htb to split up the bandwidth: RDP would get a rate of 768kbit ceiling 1536kbit The rest would get a rate of 768kbit ceiling 768kbit To accomplish this I wrote te following script: ====================snip=====================# /bin/sh # eth0: Internet uplink # root # 1: # | # base # 1536/1536kbit # _1:1_ # / \ # / \ # / \ # RDP Rest # 768/1536kbit 768/768bit # 1:10 1:20 # # root qdisc /sbin/tc qdisc add dev eth0 root handle 1: htb default 20 # root class for borrow 1536/1536mbit /sbin/tc class add dev eth0 parent 1: classid 1:1 htb rate 1536kbit ceil 1536kbit # class for RDP 768/1536kbit /sbin/tc class add dev eth0 parent 1:1 classid 1:10 htb rate 768kbit ceil 1536kbit # class for Rest 768/1536kbit /sbin/tc class add dev eth0 parent 1:1 classid 1:20 htb rate 768kbit ceil 768kbit # filters # HTB rules should be attached to the root # RDP traffic goes to class 1:10 /sbin/tc filter add dev eth0 protocol ip parent 1:1 prio 1 u32 match ip sport 3389 0xffff flowid 1:10 /sbin/tc filter add dev eth0 protocol ip parent 1:1 prio 1 u32 match ip dport 3389 0xffff flowid 1:10 ======================snap=====================But this does not seem to work... and I would very much like to have some help on this... starting to feel like I have lost my sanity. Peter PS In the traffic shaping HOWTOs I see a graphing tool being used to demonstrate the working.... what tool is that? I''ve wipped up something with Perl and RRDtools to accomplish this.... but I am always wondering if I am looking at the right data. PPS The original filter rules were: /sbin/tc filter add dev eth0 protocol ip parent 1: prio 1 u32 match ip sport 3389 0xffff flowid 1:10 /sbin/tc filter add dev eth0 protocol ip parent 1: prio 1 u32 match ip dport 3389 0xffff flowid 1:10 I changed the parent.