Why cant you put a packet on the link up to the data transfer is
finish? What is your MTU ? that is what MTU is for. Or perhaps your
MTU into time units is bigger than you want to signal !
Cheers
2011/4/5 Don Tucker dtuc...@arlut.utexas.edu:
Hello,
I am working on an application that needs to be able to rapidly detect a
lost connection between an ssh client and ssh server. I am using ssh to do
local and remote port forwarding, and sending data across the forwarded
ports. I was originally relying upon the TCPKeepAlive probes, but found
that I could not consistently detect a lost detection. Using the
ServerAliveInterval and ServerAliveCountMax options, however, I am able to
consistently detect a lost connection. The problem is, if I am using a
low-bandwidth connection (cellular modem), and I am pushing a significant
amount of data across, it seems that this hinders the communication between
the client and server with the ServerAlive messages. In other words, when I
am actually USING the connection, my application can mistakenly detect the
connection as lost because the ServerAliveInterval x ServerAliveCountMax is
exceeded without a response from the server. I was surprised at this
behavior, since I expected the ServerAlive probes to only start after data
flow between the client and server machines across that connection had
ceased, but perhaps I am misunderstanding. I do not have much leeway as to
how the server is configured. Can someone recommend a way to be able to
both (1) quickly detect a lost connection [which, seems to require the
interval and countmax be small], but not mistakenly detect the connection as
lost when it is being used?
Thank you for any assistance.
Don