General list for discussing Bufferbloat
 help / color / mirror / Atom feed
From: Alan Jenkins <alan.christopher.jenkins@gmail.com>
To: Rosen Penev <rosenp@gmail.com>, bloat@lists.bufferbloat.net
Subject: Re: [Bloat] Kirkwood BQL?
Date: Wed, 29 Jul 2015 12:36:31 +0100	[thread overview]
Message-ID: <55B8BABF.8040708@gmail.com> (raw)
In-Reply-To: <55B8B7EE.3070401@gmail.com>

On 29/07/15 12:24, Alan Jenkins wrote:
> On 29/07/15 05:32, Rosen Penev wrote:
>> Anyone know what the situation is with kirkwood and BQL? I found a
>> patch for it but have no idea if there are any issues.
>>
>> I have such a system but have no idea how to ascertain the efficacy 
>> of BQL.
>
> To the latter:
>
> BQL works for transmissions that reach the full line rate (e.g. for 
> 1000MB ethernet).  It limits the queue that builds in the 
> driver/device to the minimum they need.  Then queue mostly builds in 
> the generic networking stack, where it can be managed effectively e.g. 
> by fq_codel.
>
> So a simple efficacy test is to run a transmission at full speed, and 
> monitor latency (ping) at the same time.  Just make sure the device 
> qdisc is set to fq_codel.  fq_codel effectively prioritizes ping, so 
> the difference will be very easy to see.
>
> I don't know if there's any corner cases that want testing as well.
>
> BQL can be disabled at runtime for comparison testing:
> http://lists.openwall.net/netdev/2011/12/01/112
>
> There's a BQL tool to see it working graphically (using readouts from 
> the same sysfs directory):
> https://github.com/ffainelli/bqlmon
>
> My Kirkwood setup at home is weak, I basically never reach full link 
> speed.  So this might be somewhat academic unless you set the link 
> speed to 100 or 10 using the ethtool command.  (It seems like a good 
> idea to test those speeds even if you can do better though).  You 
> probably also want to start with offloads (tso, gso, gro) disabled 
> using ethtool, because they aggregate packets.
>

a quick test with a 100M setting, connected to gigabit switch, and flent 
tcp_download, shows ping under load increases to about 8ms. Conclusion: 
the Debian kirkwood kernel probably isn't doing BQL for me :).

> Flent can do this test and generate pretty graphs, including a time 
> series (plot type "all_scaled") and frequency distribution for the 
> ping ("ping_cdf").  Flent is a frontend to the netperf network 
> performance tester.  You could use a directly connected laptop and run 
> your own netperf server (netserver command).  You'll need to set up 
> static IPs on both ends for the duration... if headless then make sure 
> you have an alternative console access :).
>
> The normal Flent test is RRUL, which is two-way.  tcp_2up would be 
> better, to avoid testing both end's BQL at the same time.  If you want 
> to run tcp_2up the other way round, so you only need netserver on the 
> ARM, try using '--swap-up-down'.
>
> Alan


  reply	other threads:[~2015-07-29 11:36 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-29  4:32 Rosen Penev
2015-07-29 11:24 ` Alan Jenkins
2015-07-29 11:36   ` Alan Jenkins [this message]
2015-07-29 17:07     ` David Lang
2015-07-29 17:42       ` Dave Taht
2015-07-29 17:56         ` Rosen Penev
2015-07-29 18:56         ` Alan Jenkins
2015-07-29 18:51       ` Alan Jenkins

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

  List information: https://lists.bufferbloat.net/postorius/lists/bloat.lists.bufferbloat.net/

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

  git send-email \
    --in-reply-to=55B8BABF.8040708@gmail.com \
    --to=alan.christopher.jenkins@gmail.com \
    --cc=bloat@lists.bufferbloat.net \
    --cc=rosenp@gmail.com \
    /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