On Wed, 30 Aug 2006 14:39:55 -0700 (PDT) David Miller <[EMAIL PROTECTED]> wrote:
> From: Stephen Hemminger <[EMAIL PROTECTED]> > Date: Wed, 30 Aug 2006 10:27:27 -0700 > > > Linux TCP implements "Appropriate Byte Count" (ABC) and this penalizes > > applications that do small sends. The problem is that the other side > > may be delaying acknowledgments. If receiver doesn't acknowledge the > > sender will limit itself to the congestion window. If the flow is light, > > then you will be limited to 4 packets. > > Right. > > However it occured to me the other day that ABC could be made smarter. > If we sent small frames, ABC should account for that. > > The problem with ABC is that it prevents CWND growth not just during > ACK division, but also when we truly are sending smaller sized frames. > > In fact, for "chatty" protocols, the real load on a router for the > small packets is much less than that for full sized frames. So it is > in fact these small frame sending cases for which we can be less > conservative, whatever that means here. > > So my suggestion is that ABC should go look in the retransmit queue > and see how many "real packets" are being fully ACK'd, rather than > assuming the send queue is composed of MSS sized frames. > > I also think we should seriously consider changing the ABC default to > "2" rather than "1". That would be a good simple first step. I can't hurt and seems reasonable. -- Stephen Hemminger <[EMAIL PROTECTED]> - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html