I upgraded to a new router about 6 months ago and since then my ssh sessions would timeout after about 10 minutes of inactivity with the message:
Read from remote host xxx.com : Operation timed out
I did a little research and it turns out that others have had this problem with some routers. The fix involves changing the ClientAliveInterval setting in the sshd configuration file. Read about it here.