[LARTC] LARTC digest, Vol 1 #361 - 8 msgs

Linux Advanced Routing and Traffic Control

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

 



Send LARTC mailing list submissions to
	lartc@xxxxxxxxxxxxxxx

To subscribe or unsubscribe via the World Wide Web, visit
	http://mailman.ds9a.nl/mailman/listinfo/lartc
or, via email, send a message with subject or body 'help' to
	lartc-request@xxxxxxxxxxxxxxx

You can reach the person managing the list at
	lartc-admin@xxxxxxxxxxxxxxx

When replying, please edit your Subject line so it is more specific
than "Re: Contents of LARTC digest..."


Today's Topics:

   1. Re: CBQ and all other qdiscs now REALLY completely documented (jamal)
   2. Re: more on cbq parameters (Michael T. Babcock)
   3. Re: Re: further CBQ/tc documentation ds9a.nl/lartc/manpages (Michael T. Babcock)
   4. Re: Re: further CBQ/tc documentation ds9a.nl/lartc/manpages (Michael T. Babcock)
   5. quit (johannes.ebenhoeh@xxxxxx)
   6. HTB burst, cburst parameters (Amit Kucheria)
   7. CBQ MANPAGE: I hear the theme of '2001, A Space Odyssey' (bert hubert)
   8. Re: CBQ MANPAGE: I hear the theme of '2001, A Space Odyssey' (jamal)

--__--__--

Message: 1
Date: Sun, 9 Dec 2001 16:45:01 -0500 (EST)
From: jamal <hadi@xxxxxxxxxx>
To: <kuznet@xxxxxxxxxxxxx>
Cc: <ahu@xxxxxxx>, <lartc@xxxxxxxxxxxxxxx>,
	<linux-kernel@xxxxxxxxxxxxxxx>, <netdev@xxxxxxxxxxx>
Subject: [LARTC] Re: CBQ and all other qdiscs now REALLY completely documented



On Sun, 9 Dec 2001 kuznet@xxxxxxxxxxxxx wrote:

> Hello!
>
> > > But to do this, you would need to be able to set skb->priority to a 32bit
> > > number:
> > >
> >
> > Cant think of a straight way to do this .... Alexey would know,
>
> SO_PRIORITY. Or I did not follow you?
>

So priority limits the size of skb->priority to be from 0..6; this wont
work with that check in cbq.

cheers,
jamal



--__--__--

Message: 2
Date: Sun, 9 Dec 2001 17:28:44 -0500
From: "Michael T. Babcock" <mbabcock@xxxxxxxxxxxxxx>
To: LARTC List <lartc@xxxxxxxxxxxxxxx>
Subject: Re: [LARTC] more on cbq parameters

On Sat, Dec 08, 2001 at 09:10:50PM +0100, bert hubert wrote:
> >  Notice above I supplied bandwidth 30kbit which is far from the actual
> >  physical bandwidth (100Mbit).  Maybe this is why I get good results.
> >  Maybe this is what you're SUPPOSED to do!
>
> Not that I'm aware of.

To agree with you, AFAICS, the correct way to deal with this is to specify
the root bandwidth as the maximum physical bandwidth on the interface, then
split it down using classes that have rates set to the expected rates.

On a 100Mbit card connected to a 256kbit line, I used something like:

tc qdisc add dev eth0 root handle 1: cbq \
	bandwidth 100Mbit avpkt 1000
tc class add dev eth0 parent 1:0 classid 1:1 cbq \
	bandwidth 100Mbit rate 256kbit [...]
tc qdisc add dev eth0 parent 1:1 handle 10: cbq \
	bandwidth 256kbit allot 1514 avpkt 1000

(PS, highly inspired by Stef and others' scripts of course)

All my other classes then hang off 10: instead of 1: and work quite well.
What I've considered doing a few times is adding an option to dump out
the values CBQ is looking at for idleness at each level as well as
dynamic avpkt values (based on reality).

HTB may do this, of course.
-- 
Michael T. Babcock
CTO, FibreSpeed Ltd.     (Hosting, Security, Consultation, Database, etc)
http://www.fibrespeed.net/~mbabcock/


--__--__--

Message: 3
Date: Sun, 9 Dec 2001 17:33:13 -0500
From: "Michael T. Babcock" <mbabcock@xxxxxxxxxxxxxx>
To: LARTC List <lartc@xxxxxxxxxxxxxxx>
Subject: Re: [LARTC] Re: further CBQ/tc documentation ds9a.nl/lartc/manpages

On Sat, Dec 08, 2001 at 03:43:05PM -0500, jamal wrote:
> - You keep saying "reodering" -- dont know what that means. Reordering is
> generally considered a Bad Thing(tm).

Reordering happens on a mass scale (packets often go out in a different order
than they were received / generated) but not on a per-qdisc scale (packets
go out 'in order' within an SFQ queue or within a CBQ queue).  Its quite
obvious that fairness causes overall reordering of the available packets
because you sometimes with to pass along (for example) an SSH packet before
the 10 waiting FTP packets even though the latter got there first.
-- 
Michael T. Babcock
CTO, FibreSpeed Ltd.     (Hosting, Security, Consultation, Database, etc)
http://www.fibrespeed.net/~mbabcock/


--__--__--

Message: 4
Date: Sun, 9 Dec 2001 17:36:52 -0500
From: "Michael T. Babcock" <mbabcock@xxxxxxxxxxxxxx>
To: LARTC List <lartc@xxxxxxxxxxxxxxx>
Subject: Re: [LARTC] Re: further CBQ/tc documentation ds9a.nl/lartc/manpages

On Sat, Dec 08, 2001 at 10:30:55PM +0100, bert hubert wrote:
> The ingress qdisc is a strange animal in that is not used to send packets
> out to the network adaptor. Instead, it allows you to apply tc filters to
> packets coming in over the interface, regardless of whether they have a
> local destination or are to be forwarded.

Opinions, opinions ... just the facts please.  My suggested paragraph:

The ingress qdisc allows the application of tc filters to the inbound
packets on an interface instead of the outgoing ones.  This filtering
is done to all incoming packets, whether destined for the local host or
to be forwarded.
-- 
Michael T. Babcock
CTO, FibreSpeed Ltd.     (Hosting, Security, Consultation, Database, etc)
http://www.fibrespeed.net/~mbabcock/


--__--__--

Message: 5
From: johannes.ebenhoeh@xxxxxx <johannes.ebenhoeh@xxxxxx>
To: LARTC@xxxxxxxxxxxxxxx
Date: Mon, 10 Dec 2001 00:14:19 +0100
Subject: [LARTC] quit





--__--__--

Message: 6
Date: Sun, 9 Dec 2001 18:27:43 -0600 (CST)
From: Amit Kucheria <amitk@xxxxxxxxxxx>
To: <lartc@xxxxxxxxxxxxxxx>
Subject: [LARTC] HTB burst, cburst parameters

Hi,

I am trying to understand the burst and cburst parameters in HTB. Can
somebody explain it. The docs arent very clear.

I am trying to throttle a 10Mbit link to a T1 link using HTB. I am using
the following:

------------------------------------------
DEVICE="dev eth1"
BANDWIDTH="bandwidth 10Mbit"
LIMITBW="1.536Mbit"
AVPKT="avpkt 1470"

# Root HTB qdisc 1:
$TC qdisc add $DEVICE root handle 1: htb

# This HTB class rate limits everyting to 1Mbit
$TC class add $DEVICE parent 1: classid 1:1 htb rate 1.536Mbps ceil
1.536Mbps burst 1k cburst 0.5k
------------------------------------------
Is this right ?

Also, can HTB take other qdiscs and classes ?

Regards,
Amit


-- 
The statement below is true.
The statement above is false.
^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^
                  Amit Kucheria
          EECS Grad. Research Assistant
         University of Kansas @ Lawrence
   (R)+1-(785)-830 8521 ||| (O)+1-(785)-864 7774
____________________________________________________



--__--__--

Message: 7
Date: Mon, 10 Dec 2001 01:41:30 +0100
From: bert hubert <ahu@xxxxxxx>
To: kuznet@xxxxxxxxxxxxx
Cc: jamal <hadi@xxxxxxxxxx>, lartc@xxxxxxxxxxxxxxx,
	linux-kernel@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx
Subject: [LARTC] CBQ MANPAGE: I hear the theme of '2001, A Space Odyssey'


--yrj/dFKFPuw6o+aM
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

... to the sound of 'Also sprach Zarathustra':

 After weeks of social deprivation and much digging through heaps of code, I
                                  bring you

                                  tc-cbq.8

       The CBQ manpage. Nearly 2500 words, 8 printed pages, of nearly
        unintelligible gobledygook, explaining mostly how CBQ works.

It is part of the Linux Advanced Routing & Traffic Control documentation
project which contains a HOWTO, a mailinglist, an IRC channel and now
manpages:

                            http://ds9a.nl/lartc

I want to thank Jamal for stubbornly straightening me out when I use messy
language and explaining how things work. The errors are mine though.

I *implore* ANK and others to read through this. I'm about exhausted and
running out of time (need to get on with work), and have a hard time
figuring out the exact details of the CBQ link sharing algorithm. I need
help, so to speak. The manpage indicates where.

Thanks for your attention. Please find tc-cbq.8 attached.

Regards,

bert hubert


-- 
http://www.PowerDNS.com          Versatile DNS Software & Services
Trilab                                 The Technology People
Netherlabs BV / Rent-a-Nerd.nl           - Nerd Available -
'SYN! .. SYN|ACK! .. ACK!' - the mating call of the internet

--yrj/dFKFPuw6o+aM
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="tc-cbq.8"

.TH CBQ 8 "8 December 2001" "iproute2" "Linux"
.SH NAME
CBQ \- Class Based Queueing
.SH SYNOPSIS
.B tc qdisc ... dev
dev
.B  ( parent
classid
.B | root) [ handle
major:
.B ] cbq avpkt
bytes
.B bandwidth
rate
.B [ cell
bytes
.B ] [ ewma
log
.B ] [ mpu
bytes
.B ]

.B tc class ... dev
dev
.B parent
major:[minor]
.B [ classid
major:minor
.B ] cbq allot
bytes
.B [ bandwidth
rate
.B ] [ rate
rate
.B ] prio
priority
.B [ weight
weight
.B ] [ minburst
packets
.B ] [ maxburst
packets
.B ] [ ewma
log
.B ] [ cell
bytes
.B ] avpkt
bytes
.B [ mpu
bytes
.B ] [ bounded isolated ] [ split
handle
.B & defmap
defmap
.B ] [ estimator
interval timeconstant
.B ]

.SH DESCRIPTION
Class Based Queueing is a classful qdisc that implements a rich
linksharing hierarchy of classes.  It contains shaping elements as
well as prioritizing capabilities.  Shaping is performed using link
idle time calculations based on the timing of dequeue events and
underlying link bandwidth.

.SH SHAPING ALGORITHM
Shaping is done using link idle time calculations, and actions taken if
these calculations deviate from set limits.

When shape a 10mbit/s connection to 1mbit/s, the link will
be idle 90% of the time. If it isn't, it needs to be throttled so that it
IS idle 90% of the time.


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