Development issues regarding the cerowrt test router project
 help / color / mirror / Atom feed
From: David Lang <david@lang.hm>
To: Sebastian Moeller <moeller0@gmx.de>
Cc: cerowrt-devel@lists.bufferbloat.net
Subject: Re: [Cerowrt-devel] Ideas on how to simplify and popularize bufferbloat control for consideration.
Date: Sat, 26 Jul 2014 14:45:59 -0700 (PDT)	[thread overview]
Message-ID: <alpine.DEB.2.02.1407261434570.19912@nftneq.ynat.uz> (raw)
In-Reply-To: <E0E72F83-F4E5-4912-A9D3-F421640B6C7F@gmx.de>

On Sat, 26 Jul 2014, Sebastian Moeller wrote:

> On Jul 26, 2014, at 22:39 , David Lang <david@lang.hm> wrote:
>
>> by how much tuning is required, I wasn't meaning how frequently to tune, but 
>> how close default settings can come to the performance of a expertly tuned 
>> setup.
>
> 	Good question.
>
>>
>> Ideally the tuning takes into account the characteristics of the hardware of 
>> the link layer. If it's IP encapsulated in something else (ATM, PPPoE, VPN, 
>> VLAN tagging, ethernet with jumbo packet support for example), then you have 
>> overhead from the encapsulation that you would ideally take into account when 
>> tuning things.
>>
>> the question I'm talking about below is how much do you loose compared to the 
>> idea if you ignore this sort of thing and just assume that the wire is dumb 
>> and puts the bits on them as you send them? By dumb I mean don't even allow 
>> for inter-packet gaps, don't measure the bandwidth, don't try to pace inbound 
>> connections by the timing of your acks, etc. Just run BQL and fq_codel and 
>> start the BQL sizes based on the wire speed of your link (Gig-E on the 3800) 
>> and shrink them based on long-term passive observation of the sender.
>
> 	As data talks I just did a quick experiment with my ADSL2+ koine at 
> home. The solid lines in the attached plot show the results for proper shaping 
> with SQM (shaping to 95% of del link rates of downstream and upstream while 
> taking the link layer properties, that is ATM encapsulation and per packet 
> overhead into account) the broken lines show the same system with just the 
> link layer adjustments and per packet overhead adjustments disabled, but still 
> shaping to 95% of link rate (this is roughly equivalent to 15% underestimation 
> of the packet size). The actual theist is netperf-wrappers RRUL (4 tcp streams 
> up, 4 tcp steams down while measuring latency with ping and UDP probes). As 
> you can see from the plot just getting the link layer encapsulation wrong 
> destroys latency under load badly. The host is ~52ms RTT away, and with 
> fq_codel the ping time per leg is just increased one codel target of 5ms each 
> resulting in an modest latency increase of ~10ms with proper shaping for a 
> total of ~65ms, with improper shaping RTTs increase to ~95ms (they almost 
> double), so RTT increases by ~43ms. Also note how the extremes for the broken 
> lines are much worse than for the solid lines. In short I would estimate that 
> a slight misjudgment (15%) results in almost 80% increase of latency under 
> load. In other words getting the rates right matters a lot. (I should also 
> note that in my setup there is a secondary router that limits RTT to max 
> 300ms, otherwise the broken lines might look even worse...)

what is the latency like without BQL and codel? the pre-bufferbloat version? 
(without any traffic shaping)

I agree that going from 65ms to 95ms seems significant, but if the stock version 
goes into up above 1000ms, then I think we are talking about things that are 
'close'

assuming that latency under load without the improvents got >1000ms

fast-slow (in ms)
ideal=10
untuned=43
bloated > 1000

fast/slow
ideal = 1.25
untuned = 1.83
bloated > 19

slow/fast
ideal = 0.8
untuned = 0.55
bloated = 0.05

rather than looking at how much worse it is than the ideal, look at how much 
closer it is to the ideal than to the bloated version.

David Lang


  reply	other threads:[~2014-07-26 21:46 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-24 14:03 R.
2014-07-25 18:37 ` Valdis.Kletnieks
2014-07-25 21:03   ` David Lang
2014-07-26 11:30     ` Sebastian Moeller
2014-07-26 20:39       ` David Lang
2014-07-26 21:25         ` Sebastian Moeller
2014-07-26 21:45           ` David Lang [this message]
2014-07-26 22:24             ` David Lang
2014-07-27  9:50               ` Sebastian Moeller
2014-07-26 22:39             ` Sebastian Moeller
2014-07-26 22:53               ` David Lang
2014-07-26 23:39                 ` Sebastian Moeller
2014-07-27  0:49                   ` David Lang
2014-07-27 11:17                     ` Sebastian Moeller
2014-08-01  4:21       ` Michael Richardson
2014-08-01 18:28         ` Sebastian Moeller
2014-07-25 20:48 ` Wes Felter
2014-07-25 20:57   ` David Lang
2014-07-26 11:18     ` Sebastian Moeller
2014-07-26 20:21       ` David Lang
2014-07-26 20:54         ` Sebastian Moeller
2014-07-26 21:14           ` David Lang
2014-07-26 21:48             ` Sebastian Moeller
2014-07-26 22:23               ` David Lang
2014-07-26 23:08                 ` Sebastian Moeller
2014-07-27  1:04                   ` David Lang
2014-07-27 11:38                     ` Sebastian Moeller
2014-08-01  4:51                       ` Michael Richardson
2014-08-01 18:04                         ` Sebastian Moeller
2014-08-02 20:17                           ` Michael Richardson
2014-08-01  4:40       ` Michael Richardson
2014-07-26 11:01   ` Sebastian Moeller
  -- strict thread matches above, loose matches on Subject: below --
2014-05-24 14:12 R.
2014-05-24 17:31 ` Sebastian Moeller
2014-05-24 19:05 ` David P. Reed
2014-05-20 22:11 Frits Riep
2014-05-20 23:14 ` Dave Taht
2014-05-21 11:42   ` Frits Riep
2014-05-21 14:51     ` dpreed
2014-05-21 15:19       ` Dave Taht
2014-05-21 16:03         ` dpreed
2014-05-21 16:30           ` Dave Taht
2014-05-21 17:55             ` dpreed
2014-05-21 17:47           ` Jim Gettys
2014-05-21 17:53             ` Dave Taht
2014-05-21 17:56               ` dpreed
2014-05-21 17:57                 ` Jim Gettys
2014-05-21 18:31                   ` Dave Taht
2014-05-21 15:07     ` Dave Taht
2014-05-21 16:50       ` Michael Richardson
2014-05-21 17:58       ` David Lang

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/cerowrt-devel.lists.bufferbloat.net/

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

  git send-email \
    --in-reply-to=alpine.DEB.2.02.1407261434570.19912@nftneq.ynat.uz \
    --to=david@lang.hm \
    --cc=cerowrt-devel@lists.bufferbloat.net \
    --cc=moeller0@gmx.de \
    /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