[Cake] bbr vs all the aqms, cake winning...
David Lang
david at lang.hm
Sat Sep 28 21:35:10 EDT 2024
On Sat, 28 Sep 2024, David P. Reed wrote:
> On Friday, September 27, 2024 17:43, "David Lang" <david at 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
More information about the Cake
mailing list