From: Sebastian Moeller <moeller0@gmx.de>
To: "Toke Høiland-Jørgensen" <toke@toke.dk>
Cc: Mikael Abrahamsson <swmike@swm.pp.se>,
Matt Taggart <matt@lackof.org>,
cerowrt-devel <cerowrt-devel@lists.bufferbloat.net>,
bloat@lists.bufferbloat.net
Subject: Re: [Cerowrt-devel] [Bloat] Ubiquiti Launches a Speed Test Network
Date: Sat, 7 Sep 2019 00:56:13 +0200 [thread overview]
Message-ID: <E24351AA-3E9E-4643-B884-EA03FD1810B8@gmx.de> (raw)
In-Reply-To: <875zm5yr8m.fsf@toke.dk>
Hi Toke,
> On Sep 7, 2019, at 00:50, Toke Høiland-Jørgensen <toke@toke.dk> wrote:
>
> Sebastian Moeller <moeller0@gmx.de> writes:
>
>> Hi Toke,
>>
>>
>>> On Sep 6, 2019, at 19:59, Toke Høiland-Jørgensen <toke@toke.dk> wrote:
>>>
>>> Sebastian Moeller <moeller0@gmx.de> writes:
>>>
>>>> Hi Toke,
>>>>
>>>>> On Sep 6, 2019, at 10:27, Toke Høiland-Jørgensen <toke@toke.dk> wrote:
>>>>>
>>>>> Mikael Abrahamsson <swmike@swm.pp.se> writes:
>>>>>
>>>>>> On Wed, 4 Sep 2019, Matt Taggart wrote:
>>>>>>
>>>>>>> So an interesting idea but they have some things they could improve.
>>>>>>
>>>>>> I've been considering what one should run in parallel with the speed test
>>>>>> to get an impression if the speedtest impacts performance of other flows /
>>>>>> realtime flows, similar to what dslreports speedtest does.
>>>>>>
>>>>>> I've considered running one or several simulated voip calls (50pps) and
>>>>>> record RTT, PDV, packet loss etc for this session.
>>>>>>
>>>>>> It would be interesting to hear any suggestions people have for a fairly
>>>>>> simple codebase that does this that can be included in these kinds of test
>>>>>> clients (both server and client end, and of course one that protects
>>>>>> against reflection attacks etc).
>>>>>>
>>>>>> iperf3 can be used for this, but from what I can see the iperf3 server
>>>>>> code isn't very friendly to multiple parallel tests or even resilient
>>>>>> against hung clients that doesn't close the test nicely.
>>>>>>
>>>>>> I also considered using WebRTC or VoIP libraries, does anyone know what
>>>>>> RTT/PDV/packet loss data can be extracted from some common ones?
>>>>>
>>>>> Pete coded up this wonderful tool for UDP-based latency testing; it's
>>>>> even supported in Flent, and available on some (all?) the public-facing
>>>>> servers:
>>>>>
>>>>> https://github.com/heistp/irtt
>>>>
>>>> This reminds of a tangentially related question, do we/could we
>>>> actually write the requested DSCP into the packet payloads so we could
>>>> see/display dscp bleaching/remapping packets experience during
>>>> transit? For irtt, ping and even netperf TCP/UDP flows?
>>>
>>> irtt could definitely do this; not sure if it does. Ping and Netperf,
>>> probably not...
>>
>> From man ping (on linux):
>> -p pattern
>> You may specify up to 16 ``pad'' bytes to fill out the packet you send. This is useful for diagnosing data-depen‐
>> dent problems in a network. For example, -p ff will cause the sent packet to be filled with all ones.
>>
>> From man ping (macosx 10.14):
>> -p pattern
>> You may specify up to 16 ``pad'' bytes to fill out the packet you send. This is useful for diagnosing
>> data-dependent problems in a network. For example, ``-p ff'' will cause the sent packet to be filled
>> with all ones.
>
> Yeah, but you can't read back the output...
Yes, unfortunatley.
>
>> With fping I come up empty
>>
>> From man netperf (not sure how this wirks for servers):
>> -F fill_file
>> Pre-fill the send buffers with data from the named file. This is intended to provide a means for avoid-
>> ing buffers that are filled with data which is trivially easy to compress. A good choice for a file that
>> should be present on any system is this manpage - netperf.man. Other files may be provided as part of
>> the distribution.:
>> (so this would require us to distribute/generate 63 files for each dscp?)
>
> We're already using -F /dev/urandom to prevent the netperf data from
> being compressible... And also, this cannot be read back
Well, we could do 8 bytes DSCP in ASCII followed by ~1498Bytes randomness, but really which uploads actually use compression?
>
>> From irtt help client:
>> --fill=fill fill payload with given data (default none)
>> none: leave payload as all zeroes
>> rand: use random bytes from Go's math.rand
>> pattern:XX: use repeating pattern of hex (default 69727474)
>> --fill-one fill only once and repeat for all packets
>> --sfill=fill request server fill (default not specified)
>> see options for --fill
>> server must support and allow this fill with --allow-fills
>
> As above, we're doing --fill=rand today.
Sama as above, but maybe Pete could be convinced to do the read back of the first X bytes automatically.
>
>> This might actually work, and if it required a packetdump to compare
>> DSCP and intended DSCP that would already be much better than what we
>> have today, no?
>
> Well, I'm sorta skeptical that anyone would actually look at those
> packet dumps ;)
Oh, I promise I will do this, occasionally ;)
Best Regards
Sebastian
next prev parent reply other threads:[~2019-09-06 22:56 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-04 19:51 [Cerowrt-devel] " Matt Taggart
2019-09-06 8:15 ` Mikael Abrahamsson
2019-09-06 8:27 ` [Cerowrt-devel] [Bloat] " Toke Høiland-Jørgensen
2019-09-06 9:56 ` Sebastian Moeller
2019-09-06 12:18 ` Mikael Abrahamsson
2019-09-06 17:59 ` Toke Høiland-Jørgensen
2019-09-06 18:33 ` Sebastian Moeller
2019-09-06 22:50 ` Toke Høiland-Jørgensen
2019-09-06 22:56 ` Sebastian Moeller [this message]
2019-09-06 23:12 ` Toke Høiland-Jørgensen
2019-09-07 11:33 ` Pete Heist
2019-09-07 12:02 ` Sebastian Moeller
2019-09-07 13:09 ` Pete Heist
2019-09-07 13:47 ` Valdis Klētnieks
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=E24351AA-3E9E-4643-B884-EA03FD1810B8@gmx.de \
--to=moeller0@gmx.de \
--cc=bloat@lists.bufferbloat.net \
--cc=cerowrt-devel@lists.bufferbloat.net \
--cc=matt@lackof.org \
--cc=swmike@swm.pp.se \
--cc=toke@toke.dk \
/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