Linux Advanced Routing and Traffic Control list
 help / color / mirror / Atom feed
From: "Saad S. B. Faruque" <faruque@gmail.com>
To: lartc@vger.kernel.org
Subject: Re: [LARTC] HTB: Problem with excess bandwidth distribution
Date: Thu, 28 Oct 2004 17:20:03 +0000	[thread overview]
Message-ID: <1d7da3f404102810205d9c0b12@mail.gmail.com> (raw)
In-Reply-To: <41812464.8010207@gmx.net>

did u try it with sfq ?



On Thu, 28 Oct 2004 18:55:00 +0200, Leslie Patrick Polzer
<leslie.polzer@gmx.net> wrote:
> Hello,
> 
> I have a serious problem with HTB which I wasn't able to solve myself.
> 
> I run a masquerading router with ppp0 as interface to the Internet.
> Three clients need to share a downstream of 1 MBit, which I want
> to divide with tc.
> When I see a packet being forwarded to one of these clients, I give
> it the appropriate unique mark:
> 
> iptables -t mangle -A FORWARD -d 192.168.34.141 -j MARK --set-mark 1
> iptables -t mangle -A FORWARD -d 192.168.34.140 -j MARK --set-mark 2
> iptables -t mangle -A FORWARD -d 192.168.1.2 -j MARK --set-mark 3
> 
> Because it might be of interest: 192.168.34.0/24 is on network A
> with 10 MBit, 192.168.1.0/24 is on network B with 100 MBit.
> 
> I then attach an IMQ device imq0 to the FORWARD table:
> 
> # delegate all incoming on ppp+ to imq0
> iptables -t mangle -A FORWARD -i ppp+ -j IMQ --todev 0
> 
> After all this I create the actual tc setup:
> 
> # --- snip ---
> # clear root qdisc
>  tc qdisc del dev imq0 root
> 
> # add root qdisc (htb)
>  tc qdisc add dev imq0 root handle 1: htb default 40
> 
> # add root class (needed for bandwidth borrowing)
>  tc class add dev imq0 parent 1: classid 1:1 htb rate 1mbit ceil 1mbit
> 
> # set classes for users
>  tc class add dev imq0 parent 1:1 classid 1:10 htb rate 333kbit ceil 1mbit \
>         burst 15k
>  tc class add dev imq0 parent 1:1 classid 1:20 htb rate 333kbit ceil 1mbit \
>         burst 15k
>  tc class add dev imq0 parent 1:1 classid 1:30 htb rate 333kbit ceil 1mbit \
>         burst 15k
>  tc class add dev imq0 parent 1:1 classid 1:40 htb rate 5kbps
> 
> # set filters to direct ips to their classes
>  tc filter add dev imq0 protocol ip parent 1: prio 1 handle 1 fw flowid 1:10
>  tc filter add dev imq0 protocol ip parent 1: prio 1 handle 2 fw flowid 1:20
>  tc filter add dev imq0 protocol ip parent 1: prio 1 handle 3 fw flowid 1:30
> 
> # --- snap ---
> 
> 1:40 is just for testing.
> 
> The 'rate'-argument gets applied correctly if I don't use ceil - but I
> do, of
> course, want to let the classes borrow free bandwidth, so I use a ceiling
> of 1 MBit. And herein lies the problem:
> 
> If 1:10 and 1:30 both download a file with full speed, 1:10 gets about
> 20kb/s (which is under its guaranteed bandwidth!) and 1:30 gets
> 90 kb/s. What is going wrong here? The shortened output of tc:
> 
> class htb 1:1 root rate 1Mbit ceil 1Mbit burst 2909b/8 mpu 0b cburst
> 2909b/8 mpu 0b level 7
> class htb 1:10 parent 1:1 prio 0 quantum 4262 rate 333Kbit ceil 1Mbit
> burst 15Kb/8 mpu 0b cburst
> class htb 1:20 parent 1:1 prio 0 quantum 4262 rate 333Kbit ceil 1Mbit
> burst 15Kb/8 mpu 0b cburst
> class htb 1:30 parent 1:1 prio 0 quantum 4262 rate 333Kbit ceil 1Mbit
> burst 15Kb/8 mpu 0b cburst
> class htb 1:40 parent 1:1 prio 0 quantum 1000 rate 40Kbit ceil 40Kbit
> burst 1650b/8 mpu 0b cburst
> 
> ...shows that each class is configured equal.
> 
> Any clues? I'd be very, very grateful if anyone could point out errors.
> If more output is needed, just tell me.
> 
> Kind regards,
> 
> Leslie
> 
> _______________________________________________
> LARTC mailing list / LARTC@mailman.ds9a.nl
> http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
> 


-- 
Saad S. B. Faruque
MCSE, RHCT, CCNA
Head of NOC
MTL BD Ltd.
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

  reply	other threads:[~2004-10-28 17:20 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-28 16:55 [LARTC] HTB: Problem with excess bandwidth distribution Leslie Patrick Polzer
2004-10-28 17:20 ` Saad S. B. Faruque [this message]
2004-10-28 17:45 ` Zviad O. Giorgadze
2004-10-28 22:04 ` Andy Furniss
2004-10-29  6:11 ` Leslie Patrick Polzer
2004-10-29 11:17 ` Leslie Patrick Polzer
2004-10-29 15:29 ` Andy Furniss
2004-10-29 15:36 ` Leslie Patrick Polzer
2004-10-29 16:19 ` Jason Boxman
2004-10-29 17:40 ` Francisco Pereira
2004-10-29 22:03 ` Andy Furniss
2004-10-29 23:24 ` Andy Furniss
2004-10-31 12:03 ` Andy Furniss

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=1d7da3f404102810205d9c0b12@mail.gmail.com \
    --to=faruque@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox