All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Furniss <andy.furniss@dsl.pipex.com>
To: lartc@vger.kernel.org
Subject: Re: [LARTC] HTB + IMQ + IPtables marking.
Date: Thu, 19 May 2005 22:13:50 +0000	[thread overview]
Message-ID: <428D0F9E.5030702@dsl.pipex.com> (raw)
In-Reply-To: <200505182022.06063.rio@martin.mu>

Rio Martin. wrote:
> Folks,
> I'm so surprised what happened to my box just in the few weeks lately.
> Here is my setup:
> 
> INTERNET <----------> [eth0] SHAPER-BOX [eth1] <----------> USER-FARM
> both eth0 & eth1 got public ips (202.x.x.x)
> 
> Why traffic monitored at eth0 is bigger than eth1 ?
> eth1 shaped just exactly the same as rate i defined in HTB.
> 
> I just have 1024Kbps from my ISP and i defined the total parent rate for 
> 768Kbps. But what happened is the traffic monitored at eth0 almost all the 
> time eating all the bandwidth we have.
> 
> # DOWNSTREAM 768Kbps
> /sbin/ip link set imq1 up
> /sbin/tc qdisc add dev imq1 root handle 2: htb default 0
> /sbin/tc class add dev imq1 parent 2: classid 2:1 htb rate 768Kbit
> /sbin/tc class add dev imq1 parent 2:1 classid 2:10 htb rate 128kbit ceil 
> 768kbit
> /sbin/tc class add dev imq1 parent 2:1 classid 2:20 htb rate 128kbit ceil 
> 768kbit
> /sbin/tc filter add dev imq1 parent 2: protocol ip handle 10 fw classid 2:10
> /sbin/tc filter add dev imq1 parent 2: protocol ip handle 20 fw classid 2:20
> /usr/sbin/iptables -t mangle -A PREROUTING -i eth0 -j IMQ --todev 1
> /usr/sbin/iptables -t mangle -A PREROUTING -i eth0  -j IMQ --todev 1

You only need one -j IMQ here.

> 
> /usr/sbin/iptables -t mangle -A PREROUTING -i eth0 -d 202.x.1.0/24 -j MARK 
> --set-mark 10
> /usr/sbin/iptables -t mangle -A PREROUTING -i eth0 -d 202.x.2.0/24 -j MARK 
> --set-mark 20

You will get away with the mark after -j imq - but it doesn't look very 
elegant :-)

> 
> Please help me analyze whats wrong.

Assuming tc -s class or qdisc ls dev imq1 shows everything is getting 
there OK then I think the problem is that htbs quelength is far too long 
for your link.

You are also shaping from the wrong end of the bottleneck so the queues 
only fill slowly.

Add queues to your htb leaf classes so you can set the length, if you 
choose sfq use the limit option as the 128 packet default is too long.


Andy.

_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

  parent reply	other threads:[~2005-05-19 22:13 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-18 13:32 [LARTC] HTB + IMQ + IPtables marking Rio Martin.
2005-05-19  6:07 ` Krystian Antoni
2005-05-19 22:13 ` Andy Furniss [this message]
2005-05-20 10:51 ` Rio Martin.

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=428D0F9E.5030702@dsl.pipex.com \
    --to=andy.furniss@dsl.pipex.com \
    --cc=lartc@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.