General list for discussing Bufferbloat
 help / color / mirror / Atom feed
From: David Lang <david@lang.hm>
To: "David P. Reed" <dpreed@deepplum.com>
Cc: David Lang <david@lang.hm>, Dave Taht <dave.taht@gmail.com>,
	 Cake List <cake@lists.bufferbloat.net>,
	 bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] [Cake] bbr vs all the aqms, cake winning...
Date: Sat, 28 Sep 2024 18:35:10 -0700 (PDT)	[thread overview]
Message-ID: <793rr84s-q113-npr2-21p0-4ror01s1p376@ynat.uz> (raw)
In-Reply-To: <1727557632.49023402@apps.rackspace.com>

On Sat, 28 Sep 2024, David P. Reed wrote:

> On Friday, September 27, 2024 17:43, "David Lang" <david@lang.hm> said:
>
>> 
>> could the community try and produce 'traffic simulators' that implement these
>> various protocols with a more realistic traffic pattern? something that can be
>> turned up or down with a few presets of the mix that we can make available for
>> the academics to use for their testing?
>
> It's a pretty good idea.
>
> However, some things I think about...it's important to remember that just recording traffic streams and playing them back filters out almost all of the "control" dynamics.

That's why I was saying 'traffic simulator' rather than 'traffic replay'. A good 
simulator is a much harder problem

The simulator needs both ends to send and receive traffid, dealing with delays, 
failures, and whatever the control system does.

This means that the simulator isn't 'play these packets' (for all the reasons 
you gave) but rather is managing the simulation at layer 7, not at layer 2. It 
would be things like: 'open these connections and send data' The data can be 
junk, but it's timing and size match real traffic. There are a lot of different 
types of traffic, and only ISPs can provide information about the mix of the 
traffic

for types, off the top of my head I know of: one-way streaming such as youtube, 
two way streaming such as zoom, bulk downloads, dependencies (DNS, http library 
calls, cache checks), gaming, bulk uploads, etc

the control software would have knobs to adjust the mix of traffic types, the 
number of endpoints (on each end), the volume of data, and report on failures 
(hard failures where the data doesn't get through, soft failures where there is 
'too much' latency for streaming/gaming', user perceived quality (page load 
times for simulated complex pages), etc

and then throw this sort of traffic between the endpoints and see how it changes 
with different control systems.

> However, this suggests a "stress simulator" that might help create realistic 
> experiments - instead of simulating traffic, simulate instabilities in routers 
> by injecting packets into queues for mix of flows based on some probabilistic 
> model that acts like "real Internet". These injected packets might, for 
> example, have invalid checksums on purpose to avoid harming any endpoint 
> stacks. So such a tool would be a lot easier to deploy.

simulating failures is useful once you have a good case to start with. Based on 
this discussion, I don't believe that they are starting from a good point, so 
injecting failures won't get them to where they can tell if they can handle 
"real world" traffic well.

A problem injector is also easier than the type of simulation master I'm talking 
about.

David Lang

  reply	other threads:[~2024-09-29  1:35 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-26 22:21 [Bloat] " Dave Taht
2024-09-27 21:10 ` [Bloat] [Cake] " David P. Reed
2024-09-27 21:43   ` David Lang
2024-09-28 21:07     ` David P. Reed
2024-09-29  1:35       ` David Lang [this message]
2024-09-30 14:49         ` Livingood, Jason
2024-09-30 14:47   ` Juliusz Chroboczek

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=793rr84s-q113-npr2-21p0-4ror01s1p376@ynat.uz \
    --to=david@lang.hm \
    --cc=bloat@lists.bufferbloat.net \
    --cc=cake@lists.bufferbloat.net \
    --cc=dave.taht@gmail.com \
    --cc=dpreed@deepplum.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