From: Aaron Wood <woody77@gmail.com>
To: "Dave Täht" <dave@taht.net>
Cc: bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] iperf3 and packet bursts
Date: Wed, 21 Sep 2016 21:58:37 -0000 [thread overview]
Message-ID: <CALQXh-NyqfM0Xy1du=bHB3rOfno0DTWkXahXQdkhbWeKtk7UdQ@mail.gmail.com> (raw)
In-Reply-To: <CALQXh-Mdfmjt0DYcM9uOgJUEQiAEXfjFJosB5F-Nu7G9XfHCDg@mail.gmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 1552 bytes --]
And I just pushed a branch that calculates a timer interval based on the
throttle rate and the buffer size, with a cap on the timer frequency that
can be changed via the command-line. It _seems_ to work well, and give
really smooth pacing. Incredibly smooth pacing, actually (at least at 1ms
time bucket intervals).
The branch is here: https://github.com/woody77/iperf/tree/pacing_timer
-Aaron
On Tue, Sep 20, 2016 at 4:32 PM, Aaron Wood <woody77@gmail.com> wrote:
> On Tue, Sep 20, 2016 at 3:03 PM, Dave Täht <dave@taht.net> wrote:
>
>> Groovy. I note that I am really fond of the linux "fdtimer" notion for
>> tickers, we use that throughout the high speed stats gathering code in
>> flent.
>>
>> I'd really like a voip or ping tool that used those, and I've always
>> worried about iperf's internal notion of a sampling interval.
>>
>> On 9/20/16 3:00 PM, Aaron Wood wrote:
>> > I modified iperf3 to use a 1ms timer, and was able to get things much
>> > smoother. I doubt it's as smooth as iperf3 gets on Linux when fq pacing
>> > is used, but it's a big improvement vs. the nice small buffers in
>> switches.
>>
>
> Thanks!
>
> For rates of <1000 packets per second, the 1ms timer I put in will give
> something like that (it fires every ms, but that's just a check for sending
> or not). If you want to use it to model a 120pps flow of 64-byte packets:
>
> iperf3 -c <host> -u -l 64 -b 61440
>
> And then it will pace those out at roughly every 80ms (just verified this
> on my box)
>
> -Aaron
>
[-- Attachment #1.2: Type: text/html, Size: 2591 bytes --]
[-- Attachment #2: sub-millisecond-pacing.png --]
[-- Type: image/png, Size: 41630 bytes --]
prev parent reply other threads:[~2016-09-21 21:58 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-20 22:00 Aaron Wood
2016-09-20 22:03 ` Dave Täht
2016-09-20 23:32 ` Aaron Wood
2016-09-21 21:58 ` Aaron Wood [this message]
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='CALQXh-NyqfM0Xy1du=bHB3rOfno0DTWkXahXQdkhbWeKtk7UdQ@mail.gmail.com' \
--to=woody77@gmail.com \
--cc=bloat@lists.bufferbloat.net \
--cc=dave@taht.net \
/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