rate limit / bandwidth throttling / shaping

I have been trying to use TC example from this thread but it does not seem to be working. The inbound and the outbound are the same and it give an error trying to add the outbound(already exist). It also looks like this was design for a router and I am trying to use this in a public server and limit all traffic to 512kb. I tried the to replace the private address with our public but still can't get it to work in any direction.

I am using RH ES4

http://www.experts-exchange.com/Networking/Linux_Networking/Q_20819743.html
redbaran28Asked:
Who is Participating?
 
ravenplConnect With a Mentor Commented:
In the previous thread there's nothing about inbound limiting.
http://lartc.org/howto/lartc.imq.html # needs kernel pathing, but really works
http://tldp.org/HOWTO/Adv-Routing-HOWTO/lartc.adv-qdisc.ingress.html # it's really unusable, but...

For full examples refer
http://lartc.org/howto/lartc.cookbook.ultimate-tc.html
http://www.faqs.org/docs/Linux-HOWTO/Traffic-Control-tcng-HTB-HOWTO.html
use htb. If You need just limit outbound traffic to 512k

TC=/sbin/tc
DEV="dev eth0"
#flush qdisc
$TC qdisc del $DEV root 2>&1>/dev/null

#exit if $0 stop
[ _$1 = _stop ] && exit 0

#init qdisc, set default class for traffic
$TC qdisc add $DEV root handle 1:0 htb default 2
#root class with full NIC speed
$TC class add $DEV parent 1:0 classid 1:1 htb rate 100mbit ceil 100mbit burst 64k

#default class, general porpouse
$TC class add $DEV parent 1:1 classid 1:2 htb rate 512kbit ceil 512kbit burst 32k

#optionally attach SFQ to default class
$TC qdisc add dev eth2 parent 1:2 handle 20: sfq perturb 15
0
All Courses

From novice to tech pro — start learning today.