General list for discussing Bufferbloat
 help / color / mirror / Atom feed
From: Sebastian Moeller <moeller0@gmx.de>
To: Rich Brown <richb.hanover@gmail.com>
Cc: bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] Question about fq_codel vs modem buffers
Date: Sat, 2 May 2015 13:35:28 +0200	[thread overview]
Message-ID: <01D09A76-21EC-449F-B208-D5D44004D4C8@gmx.de> (raw)
In-Reply-To: <A12346C7-149F-46FA-A698-69FA5AEF56A6@gmail.com>

Hi Rich,

On May 2, 2015, at 04:49 , Rich Brown <richb.hanover@gmail.com> wrote:

> I posted a message about using SQM & OpenWrt on Tom's Hardware, and got a response from someone who's somewhat knowledgeable. I'm not sure of the proper response, so I wanted to ask here first. Here's the question that has me stumped.
> 
> http://www.tomshardware.com/answers/id-2615979/high-latency-person-internet.html#15786081
> 
> My thoughts:
> 
> I know fq_codel takes control of the bottleneck by being set to a couple percent below the fastest link speeds observed in each direction.
> 
> The author of the rebuttal says that the (DSL or Cable) modem buffers will fill up if the "upload drops from 3 to 2mbps". I can think of two ways this can happen:
> 	- Actual link bit rate drops

	Yes that can happen, e.g. in oversubscribed cable systems; currently sqm-scripts and or qos-scripts can NOT deal with this, gargoyle arguable can with its active controller (which is ping based and will allow to control reasonably slow bandwidth fluctuations on the order of seconds). This should be quite uncommon for DSL-links (caveat: seamless rate adaptation would make this les rare, but I yet have to see proof f SRA deployment in the field ;) ).

> 	- Congestion/oversubscription in the head end causes effective data rate to drop

	This should not fill up the modem’s buffer, but the DSLAM’s/MMTS's; but no matter where as long as the buffers are badly controlled buffer bloat will rear its ugly head again ;) In my opinion, the poster is right in theory the shaper needs to be set at <= the effective max transmit rate. Now oversubscription of the DSLAM’s/CMTS’s uplink is somewhat tricky to handle as it it will result in wildly fluctuating rates that are hard to track from the CPE side, also I think there is no guarantee that each CPE gets the same % of the uplink, so shaping in the CPE to reduce buffer bloat might result in no latency under load improvement while still sacrificing bandwidth. One really hopes that the head-end manufacturers get fq_codel into those devices (and potentially not in a flow fair, but in a prefix fair way so that all CPEs/customers are treated equally).
> 
> But I don't know enough about the physical characteristics of cable/dsl links to understand how they actually work, nor how fq_codel can (or can't) accommodate degradation.

	So currently we relay on HTB (or in the near future cake) to shape the rate so that we make sure the bottleneck link stays under our control. Neither HTB nor cake have enough insight in the upstream network topology/traffic to adjust their shaper to counter degradation of effective bandwidth. I really should look into gargoyle’s controller to figure out whether we can borrow this easily and include this as an add-on to sqm-scripts (it should not be rocket science, just configure a target-IP for continuous ping probes and react to latency increases above a threshold with rate reductions; the devil will be in the details, like when to open up the bandwidth again, and how much to actually change the throttle, but these should be open to empiric research).

Best Regards
	Sebastian

> 
> Could someone help me shape a response? Thanks.
> 
> Rich
> 
> 
> _______________________________________________
> Bloat mailing list
> Bloat@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/bloat


  reply	other threads:[~2015-05-02 11:35 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-02  2:49 Rich Brown
2015-05-02 11:35 ` Sebastian Moeller [this message]
2015-05-02 11:42 ` Jan Ceuleers
2015-05-02 11:45 ` Alan Jenkins
2015-05-02 16:09   ` Dave Taht

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=01D09A76-21EC-449F-B208-D5D44004D4C8@gmx.de \
    --to=moeller0@gmx.de \
    --cc=bloat@lists.bufferbloat.net \
    --cc=richb.hanover@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