HTB + ESFQ in nat router for shape incoming by ip

Linux Advanced Routing and Traffic Control

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

 



Hi, i´ve read about this problem but i didn´t find any solution.

I have a router with nat like that:
internet - eth0 - Router - eth1 - Lan

I made a htb script for shaping outgoing in eth0 and it works great. The
problem begin with the incoming traffic... Like other people said, when
somebody in the lan uses the tipical download accelerator, the line is
out because the bandwidth is divided by conexions. So, i decided to use
htb (with one class, filter and iptables mark per ip) for shaping an
ceil traffic if it isn´t in use. All ok. Now i need to shape by ip, so i
use esfq... but nothing happend.
A few lines of my script can be read here: (Only for 2 ips, there are a
lot of them, but i do the test with two machines, one with daccelerator
an other with simple download).

 $tc qdisc add dev eth1 root handle 2:0 htb default 20
 $tc class add dev eth1 parent 2:0 classid 2:2 htb rate 10mbit ceil 100mbit
 $tc class add dev eth1 parent 2:2 classid 2:9 htb rate 10mbit prio 2
 $tc class add dev eth1 parent 2:2 classid 2:10 htb rate $DOWN ceil
$TDOWN prio 2
 $tc class add dev eth1 parent 2:2 classid 2:11 htb rate $DOWN ceil
$TDOWN prio 2
 $tc class add dev eth1 parent 2:2 classid 2:20 htb rate 10kbit ceil
100mbit prio 2

 $tc qdisc add dev eth1 parent 2:10 handle 10: esfq perturb 10 hash dst
 $tc qdisc add dev eth1 parent 2:11 handle 11: esfq perturb 10 hash dst

 $tc filter add dev eth1 parent 2:0 protocol ip prio 2 handle 1 fw
classid 2:9
 $tc filter add dev eth1 parent 2:0 protocol ip prio 2 handle 10 fw
classid 2:10
 $tc filter add dev eth1 parent 2:0 protocol ip prio 2 handle 11 fw
classid 2:11

 iptables -A POSTROUTING -t mangle -o eth1 -p tcp --destination
192.168.1.88 -j MARK --set-mark 10
 iptables -A POSTROUTING -t mangle -o eth1 -p tcp --destination
192.168.1.222 -j MARK --set-mark 11

I  know rates  are a bit stranges, but its only a test  and htb works
fine. The problem is the esfq, not work!

Has anybody make to work esfq? In this case, could you put a real script
with it?
Or... anybody knows any metod to split incoming traffic by ip testing
and working?

Thanks.


_______________________________________________ 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