All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Furniss <adf.lists@gmail.com>
To: lartc@vger.kernel.org
Subject: Re: [Cerowrt-devel] Correctly calculating overheads on unknown connections
Date: Mon, 22 Sep 2014 10:01:34 +0000	[thread overview]
Message-ID: <541FF37E.8080904@gmail.com> (raw)
In-Reply-To: <6DF5DFA0-D88E-470E-ACB6-37703EA964E7@gmx.de>

Sebastian Moeller wrote:
> Hi Dave, hi Andy,
>
>
>
>
> On Sep 20, 2014, at 19:55 , Dave Taht <dave.taht@gmail.com> wrote:
>
>> We'd had a very long thread on cerowrt-devel and in the end
>> sebastian (I think) had developed some scripts to exaustively (it
>> took hours) derive the right encapsulation frame size on a link. I
>> can't find the relevant link right now, ccing that list…
>
> I am certainly not the first to have looked at ATM encapsulation
> effects on DSL-links, e.g. Jesper Dangaard Brouer wrote a thesis
> about this topic (see http://www.adsl-optimizer.dk) and together with
> Russel Stuart (http://ace-host.stuart.id.au/russell/files/tc/tc-atm/)
> I believe they taught the linux kernel about how to account for
> encapsulation. What you need to tell the kernel is whether or not you
> have ATM encapsulation (ATM is weird in that each ip Packet gets
> chopped into 48 byte cells, with the last partially full cell padded)
> and the per packet overhead on your link. You can either get this
> information from your ISP and/or from the DSL-modem’s information
> page, but both are not guaranteed to be available/useful. So I set
> out to empirically deduce this information from measurements on my
> own link. I naively started out with using ICMP echo requests as
> probes (as I easily could generate probe packets with different sizes
> with the linux/macosx ping binary), as it turned out, this works well
> enough, at least for relatively slow ADSL-links. So ping_sweeper6.sh
> (attached) is the program I use (on an otherwise idle link, typically
> over night) to collect ~1000 repetitions of time stamped ping packets
> spanning two (potential) ATM cells. I then use
> tc_stab_parameter_guide.m (a matlab/octave program) to read in the
> output of the ping_sweeper script and process the data. In short if
> the link runs ATM encapsulation the plot of the data needs to look
> like a stair with 48 byte step width, if it is just smoothly
> increasing the carrier is not ATM. For ATM links and only ATM links,
> the script also tries to figure out the per packet overhead which
> always worked well for me. (My home-link got recently a silent
> upgrade where the encapsulation changed from 40 bytes to 44 bytes
> (probably due to the introduction of VLAN tags), which caused some
> disturbances in link capacity measurements I was running at the time;
> so I ran my code again and lo and behold the overhead had increased,
> which caused the issues with the measurements, as after taking the
> real overhead into account the disturbances went away, but I guess I
> digress ;) )

Sounds like a handy script, though I am not so sure it would help for
vdsl 64/65 (if that is actually used!). I don't think there is any
padding (but may be wrong!).

As for the history, Yea Jesper got his stuff in - but didn't allow
negative overheads so I still used to have to patch tc to workaround that.

Before his work there was some user space code by IIRC Dan Singletary
which I used for a while and later Ed Wildgoose analysed the kernel code
and posted patches for htb and tc on the original lartc list which I
used for some time before Jespers code got in.



  parent reply	other threads:[~2014-09-22 10:01 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-21 18:35 [Cerowrt-devel] Correctly calculating overheads on unknown connections Sebastian Moeller
2014-09-21 21:40 ` Alan Goodman
2014-09-22  9:05 ` Sebastian Moeller
2014-09-22 10:01 ` Andy Furniss [this message]
2014-09-22 10:20 ` Sebastian Moeller
2014-09-22 13:09 ` Alan Goodman
2014-09-22 19:52 ` Sebastian Moeller
2014-09-22 23:02 ` Alan Goodman
2014-09-23  9:32 ` Sebastian Moeller
2014-09-23 15:10 ` Andy Furniss
2014-09-23 17:47 ` Sebastian Moeller
2014-09-23 19:05 ` Andy Furniss
2014-09-23 22:16 ` Sebastian Moeller
2014-09-24  9:17 ` Andy Furniss
2014-09-24 16:23 ` Sebastian Moeller
2014-09-24 22:48 ` Andy Furniss

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

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

  git send-email \
    --in-reply-to=541FF37E.8080904@gmail.com \
    --to=adf.lists@gmail.com \
    --cc=lartc@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.