netdev
[Top] [All Lists]

Re: Comparison of several congestion control algorithms

To: baruch@xxxxxxxxx
Subject: Re: Comparison of several congestion control algorithms
From: "David S. Miller" <davem@xxxxxxxxxxxxx>
Date: Thu, 02 Jun 2005 16:35:12 -0700 (PDT)
Cc: netdev@xxxxxxxxxxx, shemminger@xxxxxxxx, doug.leith@xxxxxxx
In-reply-to: <4298E045.9050009@ev-en.org>
References: <4298E045.9050009@ev-en.org>
Sender: netdev-bounce@xxxxxxxxxxx
From: Baruch Even <baruch@xxxxxxxxx>
Date: Sat, 28 May 2005 22:19:01 +0100

> I wanted to point you to a comparison of congestion control algorithm
> done at the Hamilton Institute. These experiments compare Scalable-TCP,
> High-Speed TCP, FAST-TCP, BIC-TCP, H-TCP and Standard TCP. They compared
>   fairness, compatibility with TCP and link utilisation.
> 
> You can find the results and a report at http://hamilton.ie/net/eval/

Nice work, I enjoyed this paper very much.

There is something that none of these papers mention, but is essential
for interpreting results.  Did you use interfaces with TSO enabled?

There is a very serious congestion window growth bug with TSO enabled
in the current 2.6.x tree.  The problem is due to congestion window
validation.  When we build TSO frames, even if we have packets to send,
we may defer a few frames until the full TSO packet can go out.
But this causes the congestion window validation checks in tcp_ack()
to not pass, and thus the congestion window does not grow.

I am going to have this fixed, but for now people should do congestion
window algorithm tests with TSO explicitly disabled on their interfaces.

<Prev in Thread] Current Thread [Next in Thread>