Doing a search in the list archives, I see that in 2001/2002 there was a patch made available for IdleTimeout keyword, for example: http://marc.info/?l=openssh-unix-dev&m=99838019319356&w=2 Looks like that patch did not make it in the following versions of OpenSSH - is there a reason why - any chance of the patch getting back in? I do know about ClientInterval, but I think I need IdleTimeout. The specific circumstance is that I've a SSH2 session from a laptop (PuTTY) to a OpenSSH server. When the laptop goes into standby or hibernates, and then is re-started after around 8 hours, the SSH session gets a network disconnect error". Since hibernate implies the client and the network connection is dormant, I am wondering if the IdleTimeout might help (maybe not?) If anyone has any other options that would allow an server to not disconnect a client even the connection is dormant - or maybe this is not possible? - let me know! Hate having to re-connect every 8 hours!
On Sun, Jun 24, 2007 at 09:05:09AM -0400, B Wooster wrote:> Doing a search in the list archives, I see that in 2001/2002 there was > a patch made available for IdleTimeout keyword, for example: > http://marc.info/?l=openssh-unix-dev&m=99838019319356&w=2 > > Looks like that patch did not make it in the following versions of > OpenSSH - is there a reason why - any chance of the patch getting > back in? > > I do know about ClientInterval, but I think I need IdleTimeout.I don't see why, it looks to do pretty much the same thing and you can get the same effect by setting ClientAliveInterval to a large value and ClientAliveCountMax to 1.> The specific circumstance is that I've a SSH2 session from a laptop > (PuTTY) to a OpenSSH server. > > When the laptop goes into standby or hibernates, and then is > re-started after around 8 hours, the SSH session gets a network > disconnect error". Since hibernate implies the client and the network > connection is dormant, I am wondering if the IdleTimeout might help > (maybe not?) > If anyone has any other options that would allow an server to not > disconnect a client even the connection is dormant - or maybe this is > not possible? - let me know! > Hate having to re-connect every 8 hours!What you need to do is remove all keepalives. The problem is that as soon as the server generates any traffic (be that ClientAlive* or TCPKeepAlive) then TCP guarantees that that the data will get to the other end or the application will be notified. Keepalives just guarantee that the (apparent) connection failure will be detected and your connection will be killed when the client becomes unresponsive. -- Darren Tucker (dtucker at zip.com.au) GPG key 8FF4FA69 / D9A3 86E9 7EEE AF4B B2D4 37C9 C982 80C7 8FF4 FA69 Good judgement comes with experience. Unfortunately, the experience usually comes from bad judgement.
Darren Tucker wrote:> On Sun, Jun 24, 2007 at 09:05:09AM -0400, B Wooster wrote: > > Doing a search in the list archives, I see that in 2001/2002 > there was > > a patch made available for IdleTimeout keyword, for example: > > http://marc.info/?l=openssh-unix-dev&m=99838019319356&w=2 > > > > Looks like that patch did not make it in the following versions of > > OpenSSH - is there a reason why - any chance of the patch getting > > back in? > > > > I do know about ClientInterval, but I think I need IdleTimeout. > > I don't see why, it looks to do pretty much the same thing and you > can get the same effect by setting ClientAliveInterval to a large > value and ClientAliveCountMax to 1.It's not the same effect at all - IdleTimeout means disconnecting the channel when no messages have been sent for a while. ClientInterval means disconnecting the channel when the client is no longer available. With IdleTimeout, you can create "ssh -MNf" deamonized connections that automatically time out when you're no longer using them. Great for scripting things and speeding things up in general. Is there any chance of IdleTimeout making it into the source? Wout.