On Mon, 26 May 2014, [email protected] wrote:

Len Kleinrock and his student proved that the "optimal" state for throughput in the internet is the 1-2 buffer case. It's easy to think this through...

Yes, but how do we achieve it?

If you signal congestion with very small buffer depth used, TCP will back off and you will drain the buffer, meaning the link will be underutilized. This is great from an interactive point of view, but not so much for keeping the link used actually at capacity without incurring excessive buffering latency?

So you would like to see ECN drop=1 markings on all packets as soon as they're the 3rd (or deeper) packet in the buffer? Or if the packet doesn't have ECN markings, you'd just drop it?

I doubt this will create a beneficial system for the end user, sounds like it focuses too much on interactivity and too little on throughput.

I just don't buy your statement that adding buffers won't increase throughput. If you're optimizing for throughput, then you let a single session use 1 second of buffering, meaning you know for a fact that the link is always going to be used at 100%. This totally kills interactivity, but it's still more throughput efficient than having 2 packet deep buffers, where you're very likely to drain these two packets and then have no packets in the buffer, meaning the link will be underutilized.

So, I'd agree that a lot of the time you need very little buffers, but stating you need a buffer of 2 packets deep regardless of speed, well, I don't see how that would work.

--
Mikael Abrahamsson    email: [email protected]
_______________________________________________
Cerowrt-devel mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/cerowrt-devel

Reply via email to