Bandwidth shaping help

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It seems I have quite a difficult (for me) bandwidth shaping problem.
What I want is this; 

Port 80 and port 21 will share 30 kilobytes of the 50kilobytes upstream
my ISP gives me, bittorrent will get 10 maximum (ports 6881-6890), and
all other ports get the full 100 mbits. 

I want any of the other ports to be able to steal the bandwidth of the
port 21 and port 80 as well as the bittorrent ports if they are not in
use, however bittorrent, or port 21 or 80 cannot exceed thier bandwidth
limitations.

This is because I use my server as a samba server as well as a vnc
server from within my network so I want as high a bandwidth as possible
on those, however my HTTP server and FTP server and Bittorrent can't
kill my internet connection for everyone else.

My current configuration looks like

tc qdisk add dev eth0 root handle 1: htb default 30
tc class add dev eth0 parent 1: classid 1:1 htb rate 95mbit burst 15k
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 320kbit burst 15k
tc class add dev eth0 parent 1:1 classid 1:20 htb rate 1kbit ceil 90mbit
burst 15k
tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1kbit ceil 90mbit
burst 15k
tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
tc qdisc add dev eth0 parent 1:30 handle 30: sfq perturb 10\

U32="tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32"
$U32 match ip sport 80 0xffff flowid 1:10
$U32 match ip sport 21 0xffff flowid 1:20

I sort of fiddled with one of the configurations in the book to get
this, also this does not include the bittorrent ports which is a
requirement I thought of just recently. 

I need, first a way to implement the bandwidth restrictions described
above, and second a way to remove my old configuration (if I can't just
overwrite it)

Thanks alot :)
-- 
Ryan Vilim <rvilim@xxxxxxxxxxx>

_______________________________________________
LARTC mailing list / LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux