If either the PC end or the Unix end loses power there is NO way to keep a session alive. This is because the TCP/IP tracks connections by a combination of ip address and port address (as well as sequence numbers). The client (PC) side uses a local port address generated by the PC. This and the sequence number are not duplicatable over reboots.
If you are losing power on intervening routers and NOT on the PC or Unix side you MAY be able to make it work the way you want if ALL keepalives are DISABLED on both the PC and Unix side.
Someething that MAY work for you, there is a unix utility called screen (do a man screen) that works like this:
you login
you run screen
you run an app
the connection drops for whatever reason. Screen saves the session automatically.
you log back in
you do a screen -r
you are where you left off.
The drawback with screen however is that it is geared to a vt100 emulation so if your app uses special keys (like Function Keys) it will often not work properly. Also, it while it will save you from a PC power loss it will NOT save you from a Unix power loss. You've got nothing to lose in trying it however.