netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Simon Horman <horms@verge.net.au>
To: Martin Devera <devik@cdi.cz>
Cc: Jarek Poplawski <jarkao2@gmail.com>,
	Patrick McHardy <kaber@trash.net>,
	netdev@vger.kernel.org, David Miller <davem@davemloft.net>
Subject: Re: Possible regression in HTB
Date: Thu, 9 Oct 2008 12:09:57 +1100	[thread overview]
Message-ID: <20081009010957.GB6342@verge.net.au> (raw)
In-Reply-To: <48EC8FDD.5030507@cdi.cz>

On Wed, Oct 08, 2008 at 12:47:57PM +0200, Martin Devera wrote:
>>> The algorithm samples queue states at deterministic but unregular
>>> intervals to see whose classes wants service and whose can lend.
>>>
>>> If you hold a packet outside, relevant class thinks that it is
>>> not backlogged - and if sampled at this time then the algorithm
>>> decides to lend classe's time.
>>
>> Right, but on the other hand I can't see any correction of these
>> times/tokens, so it seems this can't give us "right" results
>> anyway? E.g. with 100% requeuing (each packet requeued once) HTB
>> should think it "gave" the rate 2x higher than seen on the other
>> side - or I miss something?
>
> Yes, it is another problem - double acounting packet when requeued...
> Well, you are right, the number are not too supportive to this
> explanation...
> It seems that the first class didn't get its basic "rate", which
> is should be guaranteed.
>
> Simon, can you try to these things (separately):
> a/ increase quantum to the first class (say 10x)

Hi Martin,

Do you mean increase r2q ? If so, here are some results

r2q=10000 (original setting)
10194: 383950984bits/s 383Mbits/s
10197: 285071834bits/s 285Mbits/s
10196: 287241757bits/s 287Mbits/s
-----------------------------------
total: 956264576bits/s 956Mbits/s

r2q=25000
HTB: quantum of class 10012 is small. Consider r2q change.
HTB: quantum of class 10013 is small. Consider r2q change.
10194: 375149600bits/s 375Mbits/s
10197: 289728064bits/s 289Mbits/s
10196: 291783370bits/s 291Mbits/s
-----------------------------------
total: 956661034bits/s 956Mbits/s

r2q=50000
HTB: quantum of class 10012 is small. Consider r2q change.
HTB: quantum of class 10013 is small. Consider r2q change.
10194: 367905789bits/s 367Mbits/s
10197: 292223005bits/s 292Mbits/s
10196: 296510256bits/s 296Mbits/s
-----------------------------------
total: 956639050bits/s 956Mbits/s

r2q=100000
HTB: quantum of class 10011 is small. Consider r2q change.
HTB: quantum of class 10012 is small. Consider r2q change.
HTB: quantum of class 10013 is small. Consider r2q change.
10194: 367925416bits/s 367Mbits/s
10197: 293556834bits/s 293Mbits/s
10196: 295315384bits/s 295Mbits/s
-----------------------------------
total: 956797634bits/s 956Mbits/s

> b/ set ceil=rate on all three classes

This seems pretty close to the expected/ideal result.

10194: 496575074bits/s 496Mbits/s
10197:  96969861bits/s  96Mbits/s
10196:  96973002bits/s  96Mbits/s
-----------------------------------
total: 690517938bits/s 690Mbits/s


Kernel is net-next-2.6 071d7ab6649eb34a873a53e71635186e9117101d
("ipvs: Remove stray file left over from ipvs move"),
which is after Jarek's "pkt_sched: Update qdisc requeue stats in
dev_requeue_skb()" patch.

>
> The idea is to a/ make sure there is no requeue-related change
> to the drr pointer which could boost reqeued class,
> b/ to see whether priorized class has problems to send or
> other classes are sending even when they should not.
>
>>> Thus, from qdisc point, it is not good to keep a packet for
>>> more time out of the qdisc.
>>
>> Sure, the question is how much it's useful against associated
>> code complications and additional cpu usage.
>
> honestly, I'm not familiar with the new code. Can you tell me
> in short what is gso_skb and where the skb goes now if not requeued ?
>
> thanks, Martin

-- 
Simon Horman
  VA Linux Systems Japan K.K., Sydney, Australia Satellite Office
  H: www.vergenet.net/~horms/             W: www.valinux.co.jp/en


  parent reply	other threads:[~2008-10-09  1:09 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-07  1:15 Possible regression in HTB Simon Horman
2008-10-07  4:51 ` Simon Horman
2008-10-07  7:44   ` Jarek Poplawski
2008-10-07 12:03     ` Patrick McHardy
2008-10-08  0:09     ` Simon Horman
2008-10-08  6:37       ` Jarek Poplawski
2008-10-08  7:22         ` Simon Horman
2008-10-08  7:53           ` Jarek Poplawski
2008-10-07 12:20   ` Jarek Poplawski
2008-10-07 12:48     ` Patrick McHardy
2008-10-07 22:00       ` Jarek Poplawski
2008-10-08  0:21         ` Simon Horman
2008-10-08  0:31           ` Patrick McHardy
2008-10-08  0:40             ` Patrick McHardy
2008-10-08  7:34               ` Martin Devera
2008-10-08  8:53                 ` Jarek Poplawski
2008-10-08 10:47                   ` Martin Devera
2008-10-08 12:04                     ` Jarek Poplawski
2008-10-09  1:09                     ` Simon Horman [this message]
2008-10-09  6:22                       ` Martin Devera
2008-10-09  9:56                         ` Jarek Poplawski
2008-10-09 10:14                           ` Jarek Poplawski
2008-10-09 10:52                           ` Martin Devera
2008-10-09 11:04                             ` Jarek Poplawski
2008-10-09 11:11                         ` Simon Horman
2008-10-09 11:22                           ` Martin Devera
2008-10-08  6:55             ` Jarek Poplawski
2008-10-08  7:06               ` Denys Fedoryshchenko
2008-10-08  7:46                 ` [PATCH] " Jarek Poplawski
2008-10-08 18:36                   ` David Miller
2008-10-08  7:22               ` Simon Horman
2008-10-08  8:03                 ` Jarek Poplawski
2008-10-09  0:54                   ` Simon Horman
2008-10-09  6:21                     ` Jarek Poplawski
2008-10-09  6:53                       ` Martin Devera
2008-10-09 11:18                       ` Simon Horman
2008-10-09 11:58                         ` Patrick McHardy
2008-10-09 12:36                         ` Jarek Poplawski
2008-10-10  6:59         ` Jarek Poplawski
2008-10-10  8:57           ` Jarek Poplawski
2008-10-10 12:12             ` Jarek Poplawski
2008-10-08  0:10     ` Simon Horman

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=20081009010957.GB6342@verge.net.au \
    --to=horms@verge.net.au \
    --cc=davem@davemloft.net \
    --cc=devik@cdi.cz \
    --cc=jarkao2@gmail.com \
    --cc=kaber@trash.net \
    --cc=netdev@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;
as well as URLs for NNTP newsgroup(s).