On Wed, 08 Mar 2006 23:29:48 -0800 (PST)
"David S. Miller" <[EMAIL PROTECTED]> wrote:
> From: Stephen Hemminger <[EMAIL PROTECTED]>
> Date: Wed, 08 Mar 2006 23:24:22 -0800
>
> > I have gotten massive strace's and the java VM is:
> > 1) Turning on TCP_NODELAY
> > 2) Sending small packets.
>
> Java is doing the wrong thing, obviously.
>
> > 4) Fix java
>
> And this is the only reasonable recourse.
>
> You cannot turn on TCP_NODELAY and expect good performance
> when sending out small packets. You are asking for low
> latency and no delaying of packets in order to allow larger
> ones to accumulate.
>
> The kernel is doing exactly what Java is asking it to do.
>
> In fact I consider the new behavior of the kernel a bug fix.
A possible solution would be to set cwnd bigger for loopback.
If there was a clean way to know that connection was over loopback,
then doing something in tcp_init_metrics() to set INIT_CWND
if (IsLoopback(sk))
dst->metrics[RTAX_INIT_CWND-1] = 10;
then tcp_init_cwnd() would return a bigger congestion window.
-
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