sftp performance problem, cured by TCP_NODELAY

Chris Rapier rapier at psc.edu
Sat Jan 28 04:51:05 EST 2006

Miklos Szeredi wrote:

> Ah, but telnet generates interactive traffic, ssh is already broken
> for that case.  
> Now the interesting problem is non-interative traffic, for which ssh
> is clearly broken in _some_ cases.  Others it's not broken: e.g. for
> "scp" Nagle is totally irrelevant, because it only sends big packets
> in one direction.
> What else is there?  Port forwarding?  That is _usually_ done through
> an interactive session, so again no difference.  
> I really can't imagine Nagle helping all that much, when it's already
> disabled (without people noticing) for the most important case of
> interactive traffic.

I actually forgot about something which leads me to believe that 
disabling Nagle in all cases is appropriate appropriate at this time. 
Delayed ACK. Bad interactions. Also, I forgot, if you ever end up using 
multiple channels in SSH (it is multiplexed after all) I think you can 
only use Nagle on a per connection (not per channel) basis. That is what 
SFTP is doing isn't it? A data channel and control channel in the same 

It would be nice to get a better mechanism in place because not having 
Nagle is inherently limiting. Being that ssh is multiplexed anyway you 
could probably just re-implement something like it on a per channel basis.

More information about the openssh-unix-dev mailing list