<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Dave, hi Fred,<div><br></div><div><br>On Aug 15, 2013, at 04:15 , Dave Taht <<a href="mailto:dave.taht@gmail.com">dave.taht@gmail.com</a>> wrote:<br><br><blockquote type="cite">0) What cero version is this? I have a slightle optimization for codel in 3.10.6 that I'd hoped would improve < 4mbit behavior... basically it turns off maxpacket (and was discussed earlier this month on the codel list) as not being useful outside of the ns2 environment. <br></blockquote><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Interesting, I did my latest tests wit 3.10.6-1 and saw decent behavior for 14.7Mbit/s down, 2.4Mbit/s up, 40ms ping RTTs from 25-30ms unloaded, alas I have no comparison data for 3.10.1-1, as my router wiped out while I wanted to run those tests and I had to ref lash it via TFTP (and I decided to go to 3.10.6-1 directly, not knowing about the differences in fq_codel, even though I think you announced them somewhere)</div><br><blockquote type="cite"><br>1) I kind of prefer graphs get stuck on a website somewhere, rather than email. Having to approve big postings manually adds to the 10 spams I have to deal with per day, per list. <br></blockquote><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>I will look around to find a way to post things, would google+ work?</div><br><blockquote type="cite"><br>We would certainly like to add an "upload this test" feature to rrul one day, that captures more data about the user's configuration and the test data (from both sides!), but that project and servers remain unfunded, and toke's really busy with his masters thesis... <br><br>2) Test #1 at T+48 or so appears to have a glitch - either caused by local traffic on the link or something else. The long diagonal lines that you see are bugs in the python-matplotlib library, they are fixed in ubuntu 13.4 and latest versions of arch. </blockquote><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Ah, but you can install matplotlib version 1.3 under ubuntu 12.04 in the terminal:</div><div>1) sudo apt-get build-dep python-matplotlib</div><div><br></div><div>2) potentially required:</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>sudo pip install --upgrade freetype-py</div><div><br></div><div>3) sudo pip install --upgrade matpltolib</div><br><div>(I might have forgotten a required step, so should anyone get stuck, just contact me)</div><div><br></div><br><blockquote type="cite">The choppy resolution of the second graph in each chart is due to the sample interval being kind of small relative to the bandwidth and the RTT. That's sort of fixable, but it's readable without it….<br></blockquote><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Is there a simple way to fix this in netperf-wrapper?</div><br><blockquote type="cite"><br>Moving to what I see here, you are approximately 50ms (?) or so from the <a href="http://icei.org">icei.org</a> server which is located on the east coast of the US (NJ, in linode's co-location facility) (services on this box are graciously donated by the icei organization that has been working in the background to help out in many ways) <br></blockquote><blockquote type="cite"><br>The black line is an average of 4 streams in the first and second graphs in each chart. So you can multiply by 4 to get a rough estimate of actual bandwidth on this link, but you do have to factor in the measurement streams (graph 3), and the overhead of acks in each direction (which is usually 66 bytes every other packet for ipv4), which are hard to measure. </blockquote><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Ah, so these ACKs will fill cause around 38 byte of padding in a packet of 3 ATM cells, leading to 26.4% increase in effective bandwidth used by the ATM stream versus what is send out over ge00 (ethernet). Together with the small ping and UDP RTT probes this explains nicely why proper link layer adjustments decrease ping time as well as decrease of the TCP rates. </div><br><blockquote type="cite">So you are showing 6Mbit of raw bandwidth down, and about 480 up. Factoring in the ack overhead of the the down, into the up, gets pretty close to your set limit of 700. You experienced packet loss at time T+6 (not unusual) that killed the non-ping measurement flows. (some day in the future we will add one way ping measurements and NOT stop measuring after the first loss) <br><br>(There are multiple other plot types. do a --list-plots rrul. You can generate a new plot on the same data by taking the *json.gz file and supplying a different output filename (-o filename.svg) and plot type (-p totals</blockquote><blockquote type="cite"><br>I regard the cdf plots as the most useful, but ALWAYS check this main graph type to see glitches. Otherwise a cdf can be very misleading.)<br></blockquote><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Ah, for one I can really relate, in MRI analysis the mantra to teach newcomers is always "look at your raw data".</div><div><br></div><br><blockquote type="cite"><br>So in this test latency spikes by about 100ms. Why does it do that? Well, you have to fit 6k bytes (4 1500 byte flows), + 122 bytes (2 acks), + 65 bytes (ping) into the queues, and at 700kb/second that queue is far less than the default 5ms target we start with. a 1500 byte packet takes 13ms to transmit at 1Mbit, so we are ending up here with sufficient "standing queue" to <br><br>Frankly, it should, eventually, achieve a tcp window size that will reduce the latency to something lower than 100ms, but it obviously isn't. nfq_codel is "tighter", but who knows, we're still in very early days of trying to optimize for these bandwidths, and, like I said, I just killed the maxpacket thing which might help some. A longer test (-l 300) at this rtt) might be more revealing.<br></blockquote><div><br></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>So here is my result against "an unnamed netperf server in Germany" for 300seconds using 3.10.6-1 with simple.qos and fq_codel. Ping times only increase from ~30ms to 40ms (the same link gets ~300ms ping RTT without AQM, and ~80ms without proper linklayer adaptation). (Plus you can see my Macbook obviously is doing some periodically things (roughly every 15 seconds) that eats bandwidth and causes RTTs to increase a lot). </div><div><br></div><div><img id="b0db9e7d-434f-4d09-8111-62ee3c6569af" height="368" width="641" apple-width="yes" apple-height="yes" src="cid:63FFFE7D-47BA-4380-9AA7-25D91D3C35FF@uni-tuebingen.de"></div><br><blockquote type="cite"><br>Clear as mud?<br><br><br><br>On Wed, Aug 14, 2013 at 2:28 PM, Fred Stratton <<a href="mailto:fredstratton@imap.cc">fredstratton@imap.cc</a>> wrote:<br><br><br><br>_______________________________________________<br>Cerowrt-devel mailing list<br>Cerowrt-devel@lists.bufferbloat.net<br>https://lists.bufferbloat.net/listinfo/cerowrt-devel<br><br><br><br><br>-- <br>Dave Täht<br><br>Fixing bufferbloat with cerowrt: http://www.teklibre.com/cerowrt/subscribe.html<br>_______________________________________________<br>Cerowrt-devel mailing list<br>Cerowrt-devel@lists.bufferbloat.net<br>https://lists.bufferbloat.net/listinfo/cerowrt-devel<br></blockquote><br></div></body></html>