I have a similar script but, I'm doing the filtering with iptables:
$iptables -t mangle -A FORWARD -s 192.168.2.100 -j MARK --set-mark 1
$iptables -t mangle -A FORWARD -d 192.168.2.100 -j MARK --set-mark 1
$iptables -t mangle -A FORWARD -d 192.168.2.101 -j MARK --set-mark 2
$iptables -t mangle -A FORWARD -d 192.168.2.101 -j MARK --set-mark 2
... and so on.....
$tc qdisc del dev eth1 root
$tc qdisc add dev eth1 root handle 1:0 htb default 20 r2q 1
# Class
$tc class add dev eth1 parent 1: classid 1:1 htb rate 384kbit ceil 384kbit
$tc class add dev eth1 parent 1:2 classid 1:2 htb rate 200kbit ceil 200kbit
$tc class add dev eth1 parent 1:3 classid 1:3 htb rate 100kbit ceil
150kbit
$tc qdisc add dev eth1 parent 1:2 handle 20: sfq perturb 10
$tc qdisc add dev eth1 parent 1:3 handle 30: sfq perturb 10
$tc filter add dev eth1 protocol ip parent 1:0 prio 1 handle 1 fw
classid 1:2
$tc filter add dev eth1 protocol ip parent 1:0 prio 1 handle 2 fw
classid 1:3
.... more filtering.....
############################
Everytime I test with squid running I don't get a correct speed I'm
supposed to obtain but, when I disable squid and run a test, I get the
correct speed on both computers: 194 - 200 max for 192.168.1.100 and 96
- 99 for 192.168.2.101. When I run the test with squid running I get
different speeds on both machines ranging from 50 to 300.
I know it sounds strange but, I've ran the tests too many times now and
I get the same results.
I'm using squid 3.0 STABLE 11.
Thanks.
Indunil Jayasooriya wrote:
> On Wed, Apr 22, 2009 at 2:55 PM, Amos Jeffries <squid3_at_treenet.co.nz> wrote:
>> Wilson Hernandez - MSD, S. A. wrote:
>>> Hello.
>>>
>>> I was writing a script to control traffic on our network. I created my
>>> rules with tc and noticed that it wasn't working correctly.
>>>
>>> I tried this traffic shaping on a linux router that has squid doing
>>> transparent cache.
>>>
>>> When measuring the download speed on speedtest.net the download speed is
>>> 70kbps when is supposed to be over 300kbps. I found it strange since
>>> I've done traffic shaping in the past and worked but not on a box with
>>> squid. I stopped the squid server and ran the test again and it gave me
>>> the speed I assigned to that machine. I assigned different bw and the
>>> test gave the correct speed.
>>>
>>> Have anybody used traffic shaping (TC in linux) on a box with squid? Is
>>> there a way to combine both a have them work side by side?
>
> About 2years ago, I used the below script on a CentOS 4.4 box acting
> as a firewall (iptables), routing (iproute2) and squid 2.5 transparent
> intercepting.
>
>
>
> #traffic shaping on eth1 - i.e: LAN INTERFACE (For Downloading). eth0
> is connected to the Internet
>
> INTERFAZ_LAN=eth1
> FULLBANDWIDTH=256
> BANDWIDTH4LAN=64
>
> tc qdisc del root dev $INTERFAZ_LAN
>
> tc qdisc add dev $INTERFAZ_LAN root handle 1: htb r2q 4
> tc class add dev $INTERFAZ_LAN parent 1: classid 1:1 htb rate
> "$FULLBANDWIDTH"Kbit
> tc class add dev $INTERFAZ_LAN parent 1:1 classid 1:10 htb rate
> "$BANDWIDTH4LAN"Kbit
> tc qdisc add dev $INTERFAZ_LAN parent 1:10 handle 10: sfq perturb 10
> tc filter add dev $INTERFAZ_LAN parent 1: protocol ip prio 1 u32 match
> ip dst 192.168.100.0/24 classid 1:10
>
>
>
> 192.168.100.0/24 is my LAN RANGE.
>
> According to the above script, My FULL bandwidth was 256 kbit. I
> allocated 64 kbit for downloading. it is actually NOTHING to do with
> squid for me. ALL went fine with iproute2 pkg.
>
>
>> I am also seeking a TC expert to help several users already needing to use
>> it with TPROXYv4 and/or WCCP setups.
>
> I am NOT a tc expert. just a guy with an interest.
>
>
>
>
>
-- *Wilson Hernandez* Presidente 829.848.9595 809.766.0441 www.msdrd.com <http://www.msdrd.com> Conservando el medio ambienteReceived on Thu Apr 23 2009 - 10:50:11 MDT
This archive was generated by hypermail 2.2.0 : Thu Apr 23 2009 - 12:00:01 MDT