On Thu, 2003-08-07 at 11:59, Pete Naylor wrote:
Dan Stromberg wrote...
IINM, TCP_NODELAY on setsockopt isn't a "don't make this socket needlessly slow" option. I believe it's a "kernel, I know someone was using this port recently, but please let me listen on it right away anyway" option.
My understanding of the TCP_NODELAY option is that it disables the Nagle algorithm. Rather than wait for the buffer to fill to the MSS length before flushing the packet, the packet is sent immediately.
Are you thinking of SO_REUSEADDR perhaps?
Sorry, yes I was.
If you're seeing lag, I'd guess either your network is laggy, or lsh just has some algorithm choices that could be reevaluated, or too deep nesting of functions or something like that.
I believe TCP_NODELAY is used by telnet, openssh etc to improve responsiveness for remote shells. My network is not laggy as openssh, telnet etc work great. It's possible that the default algorithm used by lsh is behind the delays, but I think setting TCP_NODELAY is a reasonable thing to try since lsh seems to be the odd-one-out in this regard. As I said, I'd like to test it myself but when I edit io.c something breaks in the abstraction stuff which I have no clue about.
OK.