Indeed - I believe that Codel will drop too much to allow maximum bandwidth utilization, when there are very few flows, and RTT is significantly greater than target. The theory is - with a Reno based CC the cwind gets cut in half on a drop. If the drop in cwind is greater than the number of packets in the queue, then the queue will empty out, and the link will then be idle for a while. If you want data to keep the data flowing uninterrupted, then you must have a full unloaded RTT's worth of data in the queue at that point. A drop will happen, the cwind will be halved (assuming a Reno TCP), and the sender will stop sending until one (unloaded) RTT's worth of data has been received. At that point the queue will just hit empty as the sender starts sending again.

Simon


On 6/9/2015 10:30 AM, Jonathan Morton wrote:

Wouldn't that be a sign of dropping too much, in contrast to your previous post suggesting it wouldn't drop enough?

In practice, statistical multiplexing works just fine with fq_codel, and you do in fact get more throughput with multiple flows in those cases where a single flow fails to each adequate utilisation.

Additionally, utilisation below 100% is really characteristic of Reno on any worthwhile AQM queue and significant RTT. Other TCPs, particularly CUBIC and Westwood+, do rather better.

- Jonathan Morton


_______________________________________________
aqm mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/aqm

Reply via email to