Development issues regarding the cerowrt test router project
 help / color / mirror / Atom feed
From: Sebastian Moeller <moeller0@gmx.de>
To: Jesper Dangaard Brouer <jbrouer@redhat.com>
Cc: "cerowrt-devel@lists.bufferbloat.net"
	<cerowrt-devel@lists.bufferbloat.net>
Subject: Re: [Cerowrt-devel] some kernel updates
Date: Fri, 23 Aug 2013 21:51:27 +0200	[thread overview]
Message-ID: <33429532-7F55-4249-8E22-9E04B790D2BE@gmx.de> (raw)
In-Reply-To: <20130823092702.3171b5fd@redhat.com>

Hi Jesper hi List,


On Aug 23, 2013, at 09:27 , Jesper Dangaard Brouer <jbrouer@redhat.com> wrote:

> On Thu, 22 Aug 2013 22:13:52 -0700
> Dave Taht <dave.taht@gmail.com> wrote:
> 
>> On Thu, Aug 22, 2013 at 5:52 PM, Sebastian Moeller <moeller0@gmx.de> wrote:
>> 
>>> Hi List, hi Jesper,
>>> 
>>> So I tested 3.10.9-1 to assess the status of the HTB atm link layer
>>> adjustments to see whether the recent changes resurrected this feature.
>>>        Unfortunately the htb_private link layer adjustments still is
>>> broken (RRUL ping RTT against Toke's netperf host in Germany of ~80ms, same
>>> as without link layer adjustments). On the bright side the tc_stab method
>>> still works as well as before (ping RTT around 40ms).
>>>        I would like to humbly propose to use the tc stab method in
>>> cerowrt to perform ATM link layer adjustments as default. To repeat myself,
>>> simply telling the kernel a lie about the packet size seems more robust
>>> than fudging HTB's rate tables.
> 
> After the (regression) commit 56b765b79 ("htb: improved accuracy at
> high rates"), the kernel no-longer uses the rate tables.  
> 
> My commit 8a8e3d84b1719 (net_sched: restore "linklayer atm" handling),
> does the ATM cell overhead calculation directly on the packet length,
> see psched_l2t_ns() doing (DIV_ROUND_UP(len,48)*53).
> Thus, the cell calc should actually be more precise now.... but see below
> 
>>> Especially since the kernel already fudges
>>> the packet size to account for the ethernet header and then some, so this
>>> path should receive more scrutiny by virtue of having more users?
> 
> As you mention, the default kernel path (not tc stab) fudges the packet
> size for Ethernet headers, AND I made a mistake (back in approx 2006,
> sorry) that the "overhead" cannot be a negative number.  Meaning that
> some ATM encap overheads simply cannot be configured correctly (as you
> need to subtract the ethernet header). (And its quite problematic to
> change the kABI to allow for a negative overhead)
> 
> Perhaps we should change to use "tc stab" for this reason.  But I'm not
> sure "stab" does the right thing either, and its accuracy is also
> limited as its actually also table based.  We could easily change the
> kernel to perform the ATM cell overhead calc inside "stab", and we
> should also fix the GSO packet overhead problem.
> (for now remember to disable GSO packets when shaping)
> 
>> It's my hope that the atm code works but is misconfigured. You can output
>> the tc commands by overriding the TC variable with TC="echo tc" and paste
>> here.
> 
> I also hope is a misconfig.  Please show us the config/script.

	I guess you nailed it. While I got no output whatsoever from echo "func __detect_linklayer +p" /sys/kernel/debug/dynamic_debug/control. I also followed Dave's advise to dump the tc commands to file (see earlier mail). I turns out that the script only added the HTB link layer adjustments to egress and not to ingress as well, fixing that pushed the ping RTT for ht.'s link layer adjustemtes (at 95% of linerate) down to ~45ms which is close enough to what stab delivers.


> 
> I would appreciate a link to the scripts you are using... perhaps a git tree?
> 
> 
>>>        Now, I have been testing this using Dave's most recent cerowrt
>>> alpha version with a 3.10.9 kernel on mips hardware, I think this kernel
>>> should contain all htb fixes including commit 8a8e3d84b17 (net_sched:
>>> restore "linklayer atm" handling) but am not fully sure.
>>> 
>> 
>> It does.
> 
> It have not hit the stable tree yet, but DaveM promised he would pass it along.
> 
> It does seem Dave Taht have my patch applied:
> http://snapon.lab.bufferbloat.net/~cero2/patches/3.10.9-1/685-net_sched-restore-linklayer-atm-handling.patch
> 
>>> While I am not able to build kernels, it seems that I am able to quickly
>>> test whether link layer adjustments work or not. SO aim happy to help where
>>> I can :)
> 
> So, what is you setup lab, that allow you to test this quickly?
> 
> 
> -- 
> Best regards,
>  Jesper Dangaard Brouer
>  MSc.CS, Sr. Network Kernel Developer at Red Hat
>  Author of http://www.iptv-analyzer.org
>  LinkedIn: http://www.linkedin.com/in/brouer


  parent reply	other threads:[~2013-08-23 19:51 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-21 18:42 Dave Taht
     [not found] ` <56B261F1-2277-457C-9A38-FAB89818288F@gmx.de>
     [not found]   ` <CAA93jw6ku0OOXzNcAUtK4UL5uc7R2zVAOKo1+Fwzmr7gCH1pzA@mail.gmail.com>
     [not found]     ` <2148E2EF-A119-4499-BAC1-7E647C53F077@gmx.de>
2013-08-23  0:52       ` Sebastian Moeller
2013-08-23  5:13         ` Dave Taht
2013-08-23  7:27           ` Jesper Dangaard Brouer
2013-08-23 10:15             ` Sebastian Moeller
2013-08-23 11:16               ` Jesper Dangaard Brouer
2013-08-23 12:37                 ` Sebastian Moeller
2013-08-23 13:02                   ` Fred Stratton
2013-08-23 19:49                     ` Sebastian Moeller
2013-08-23 15:05                   ` Jesper Dangaard Brouer
2013-08-23 17:23                   ` Toke Høiland-Jørgensen
2013-08-23 20:09                     ` Sebastian Moeller
2013-08-23 20:46                       ` Toke Høiland-Jørgensen
2013-08-24 20:51                         ` Sebastian Moeller
2013-08-23 19:51             ` Sebastian Moeller [this message]
2013-08-23  9:16           ` Sebastian Moeller
2013-08-23 19:38           ` Sebastian Moeller
2013-08-23 19:47             ` Dave Taht
2013-08-23 19:56               ` Sebastian Moeller
2013-08-23 20:29                 ` Dave Taht
2013-08-24 20:51                   ` Sebastian Moeller
2013-08-24 20:51                   ` Sebastian Moeller
2013-08-25  9:21                     ` Fred Stratton
2013-08-25 10:17                       ` Fred Stratton
2013-08-25 13:59                         ` Sebastian Moeller
2013-08-25 14:26                           ` Fred Stratton
2013-08-25 14:31                             ` Fred Stratton
2013-08-25 17:53                             ` Sebastian Moeller
2013-08-25 17:55                               ` Dave Taht
2013-08-25 18:00                                 ` Fred Stratton
2013-08-25 18:30                               ` Fred Stratton
2013-08-25 18:41                                 ` Dave Taht
2013-08-25 19:08                                   ` Fred Stratton
2013-08-25 19:31                                     ` Fred Stratton
2013-08-25 21:54                                       ` Sebastian Moeller
2013-08-25 20:28                                     ` Dave Taht
2013-08-25 21:40                                       ` Sebastian Moeller
2013-08-25 21:50                                 ` Sebastian Moeller
2013-08-27 11:10                   ` Jesper Dangaard Brouer
2013-08-27 10:45                 ` Jesper Dangaard Brouer
2013-08-30 15:46                 ` [Cerowrt-devel] some kernel updates + new userspace patch Jesper Dangaard Brouer
2013-08-27 10:42             ` [Cerowrt-devel] some kernel updates Jesper Dangaard Brouer
2013-08-24 23:08           ` 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/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=33429532-7F55-4249-8E22-9E04B790D2BE@gmx.de \
    --to=moeller0@gmx.de \
    --cc=cerowrt-devel@lists.bufferbloat.net \
    --cc=jbrouer@redhat.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