General list for discussing Bufferbloat
 help / color / mirror / Atom feed
From: moeller0 <moeller0@gmx.de>
To: Alan Jenkins <alan.christopher.jenkins@gmail.com>
Cc: Brandon Applegate <brandon@burn.net>, Bloat@lists.bufferbloat.net
Subject: Re: [Bloat] Getting started with sqm-scripts - latency good, bandwidth decimated
Date: Wed, 20 Jan 2016 12:47:08 +0100	[thread overview]
Message-ID: <190D8532-09F7-4EBE-BF01-A00789D365C6@gmx.de> (raw)
In-Reply-To: <CANmMgnFAfOE4u=U5FqGozOiKt_rUgpx-UEQh4mb6fBTUhuGGJA@mail.gmail.com>

Hi Alan, hi Brandon:

> On Jan 20, 2016, at 11:15 , Alan Jenkins <alan.christopher.jenkins@gmail.com> wrote:
> 
> On 20/01/2016, Alan Jenkins <alan.christopher.jenkins@gmail.com> wrote:
>> On 19/01/2016, Brandon Applegate <brandon@burn.net> wrote:
>>> Disclaimer: if this is the wrong list for such a question - let me know.
>>> This is specifically about the sqm-scripts package...
>>> 
>>> Hello,
>>> 
>>> I’ve been reading all I can on the bufferbloat website and also trying to
>>> understand the evolution of the various scripts (debloat, sqm, etc).
>>> 
>>> I managed to get sqm-scripts on my firewall (Ubuntu linux on a PC - no
>>> *wrt
>>> etc).  Got it built with the ‘linux’ platform.  Since this is Ubuntu 12.04
>>> -
>>> I had to cheat a bit and pull down the iproute2 source from 14.04.  I’ve
>>> tweaked the main sqm script to reflect this for the tc bindary - this is
>>> working.  I also updated my kernel to a later version that supports
>>> fq_codel.
>>> 
>>> My topology is ‘on a stick’.  I have one gig interface to a managed
>>> switch,
>>> on which are eth0.666 (outside/wan) and eth0.10 (inside).
>>> 
>>> I have 30/5 cable service, and have tried both those values as well as
>>> 90%
>>> in my /etc/sqm/*conf file.
>>> 
>>> I’ve tried both eth0 (raw/parent interface) as well as eth0.666.
>>> 
>>> No matter what I do - my bandwidth is 10% of what it should be.  I get
>>> approx. 3/4mbit down + 2/3mbit up on dslreports speedtest.  Bufferbloat
>>> looks great though - A+.
>>> 
>>> Is there something inherent I’m doing wrong ?  Something to do with my ‘on
>>> a
>>> stick’ topology biting me ?  Kernel version (Ubuntu’s 3.13.0-74-generic
>>> btw).
>>> 
>>> Thanks in advance for any help or info (or pointer to a more appropriate
>>> list).
>> 
>> It doesn't sound like you're doing anything wrong :(.
>> 
>> I would make sure to check the rates on `tc class show dev eth0.666`
>> (and ifb4eth0.666).  Switching to `simplest.qos` could be easier to
>> debug.  With your simple.qos, there'll be several tracffic classes...
>> the `root` should be the specified `rate`, and it looks like all
>> classes save 1:11 should have a `ceil` just under the specified rate.
>> 
>> Not sure how to debug qos-scripts itself.  However the Gentoo wiki has
>> a 50-line script, which was corrected by dtaht :).  Like simplest.qos
>> this has a single class.
>> https://wiki.gentoo.org/wiki/Traffic_shaping
>> 
>> That would let you investigate the commands finely, as well as the
>> resulting state shown by `tc qdisc` and `tc class`, and really narrow
>> it down.
>> 
>> `dslreports.com` will show bandwidth and latency-under-load in each
>> direction independently, so you could work on a single direction.  I
>> would look at ingress only (the IFB) since that's where your bandwidth
>> decimation is so visible.  E.g. just comment out the egress section,
>> to avoid distractions.
>> 
>> I think you can run the htb without the fq_codel command at the end -
>> that is, it will default to a massive fifo, which will replace the
>> fq_codel in the output of `tc qdisc`, but to a first approximation it
>> will affect bandwidth.
>> 
>> Good luck
>> Alan
> 
> PS
> 
> The `ifb` part might be a bit mysterious.  If sqm-scripts is renaming
> them, you could just remove the IFB kernel module & reload it to clear
> the entire IFB config:
> 
> modprobe -r ifb
> 
> (the script includes "modprobe ifb" to load it as required)

Sqm is supposed to delete its ifb interfaces if they are not used anymore, to test whether an existing interface is redirected to an ifb (and if yes which ifb) just issue the following (pppoe-ge00 being the name of the interface in question):
root@computer:~# tc -p filter show parent ffff: dev pppoe-ge00
filter protocol all pref 10 u32 
filter protocol all pref 10 u32 fh 800: ht divisor 1 
filter protocol all pref 10 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 1:1 
  match 00000000/00000000 at 0
	action order 1: mirred (Egress Redirect to device ifb4pppoe-ge00) stolen
 	index 145 ref 1 bind 1

Best Regards
	Sebastian


> _______________________________________________
> Bloat mailing list
> Bloat@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/bloat


  reply	other threads:[~2016-01-20 11:47 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-19 23:33 Brandon Applegate
2016-01-20  0:09 ` Jonathan Morton
2016-01-20  0:14   ` Brandon Applegate
2016-01-20  2:36     ` Jonathan Morton
2016-01-20 17:32   ` Simon Barber
2016-01-20 10:12 ` Alan Jenkins
2016-01-20 10:15   ` Alan Jenkins
2016-01-20 11:47     ` moeller0 [this message]
2016-01-20 11:43   ` moeller0
2016-01-20 12:06     ` Alan Jenkins
2016-01-20 12:25       ` moeller0
2016-01-20 14:51       ` Brandon Applegate
2016-01-20 15:10         ` moeller0
2016-01-20 15:15   ` Brandon Applegate
2016-01-20 16:05     ` Sebastian Moeller
2016-01-20 16:10       ` Brandon Applegate
2016-01-20 16:32         ` Alan Jenkins
2016-01-20 16:34         ` Brandon Applegate
2016-01-20 16:47           ` Etienne Champetier
2016-01-20 16:54             ` Brandon Applegate
2016-01-20 17:09               ` Etienne Champetier
2016-01-20 17:42                 ` moeller0
2016-01-20 17:50                   ` Etienne Champetier
2016-01-20 17:40         ` moeller0
2016-01-20 11:30 ` moeller0
2016-01-20 12:37   ` Rich Brown
2016-01-20 14:42     ` Brandon Applegate
2016-01-20 15:30   ` Brandon Applegate
2016-01-20 16:09     ` Sebastian Moeller

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=190D8532-09F7-4EBE-BF01-A00789D365C6@gmx.de \
    --to=moeller0@gmx.de \
    --cc=Bloat@lists.bufferbloat.net \
    --cc=alan.christopher.jenkins@gmail.com \
    --cc=brandon@burn.net \
    /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