Subject: Re: rdist and net.inet.tcp.ack_on_push=1
To: Jason Thorpe <thorpej@wasabisystems.com>
From: Jesse Off <jesseoff@yahoo.com>
List: tech-net
Date: 06/14/2003 14:29:56
Well, rdist uses rsh, so I couldn't really change it
in rdist itself, but I did change both machine's
rsh/rcmd and rshd to use TCP_NODELAY and sure enough,
got the time down from 10 minutes to 25 seconds
without using ack_on_push=1.  Would changing
rcmd()/rshd to use TCP_NODELAY by default be
appropriate?  Changing just the descriptor the local
rdist gets from rcmd() to TCP_NODELAY results in a
slight speedup from 10 minutes to 5 minutes.

//Jesse Off

--- Jason Thorpe <thorpej@wasabisystems.com> wrote:
> 
> On Friday, June 13, 2003, at 12:52  PM, Jesse Off
> wrote:
> 
> > ack_on_push=1 sysctl on both computers, it takes
> 25
> > seconds.  What seems to be happening is spurious
> .2
> > second time spans where no packet is transmitted,
> then
> > one machine sends an ack, then the two machines
> push
> > 2-10 more packets then freeze again for another .2
> > seconds.  I've attached a tcpdump snippet where
> the .2
> > second spans are obvious.
> 
> Can you try setting the TCP_NODELAY socket option in
> the application, 
> and see if that also improves the performance?
> 
>          -- Jason R. Thorpe
> <thorpej@wasabisystems.com>
> 


__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com