[Ecn-sane] Fwd: my backlogged comments on the ECT(1) interim call

Jonathan Morton chromatix99 at gmail.com
Wed Apr 29 12:03:01 EDT 2020


>> As shown in our test results, Flent (which implements the RRUL test) is indeed now capable of tracking the latency experienced by individual TCP flows.  It does not do so at the packet level, but at the socket level.
>> 
>> Of course it is also possible to capture the traffic and analyse the traces offline, if you really do want packet-level detail.
> 
> 1. So, why do you continue to use this approach? It hides all the larger delays underneath a moving average. This seems more designed to hide inconsistent delay results than to measure them. If a real-time application waited only for the median delay before rendering, it would have to discard the 50% of traffic in the upper median! TCP also delivers nothing until the more delayed packets have been delivered to get the stream in order. So median (or mean) delay is a meaningless metric.

Because we are not laser-focused on the five-nines tail of latency as you are, but instead take a broader view that recognises some tradeoffs.  For us, the 99th percentile is interesting, but anything beyond that is not worth sacrificing other desirable properties for.  And, as I said, we can extract whatever per-packet statistics we like from a packet trace.

The time-series plot, however, tells us much more about the gross behaviour.  It tells us, for example, that the reason you have such good five-nines behaviour is because you drop out of slow-start extremely early, so you end up having to grow linearly to the BDP instead of using some faster function.  I bet when you get around to implementing Paced Chirping to correct that, you'll find that your five-nines latency takes a hit from the queue pacing the probe trains.  That's a prediction I'd like to see tested.

> 2. I also notice you didn't address Dave's point about using short flows as well as long. I don't believe I have ever seen a test from you or PeteH with anything but long flows.

That's mostly a tools problem.  Flent doesn't currently have a way to generate that type of traffic and incorporate it into a test run.  It's on our todo list though.

 - Jonathan Morton


More information about the Ecn-sane mailing list