Sometime you might face disconnection of idle session. This can occur because of power energy settings of the client computer. In the control panel make sure your client hard drive does not go to sleep mode. 

Deactivating the power management of the network card on the server and client can also be useful :

It is possible to set the server to keep alive all remote session using local strategy.

click start, type in "gpedit.msc"

Locate the following local group policy :

Local Computer Policy\Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Session Time Limit

Here you will find 4 strategies that you may find useful. 

1- Set time for disconnected sessions : this strategy is used for logging off a disconnected session after a certain time. this can also be set in the Admin tool.
2- Set time limit for active but idle Remote Desktop Services session : this stategy is used to force a disconnection of active but idle session, this can be useful for freeing a session for another active user.
3- Set time limit for active Remote Desktop Services session : This strategy is used to force a disconnection of active session, for example a user can remotely connect for a limited duration of 30mn then will be disconnected. This strategy is rarely used.
4- Terminate session when time limits are reached : this strategy is useful for logging off disconnected session and can be used with a mix of the above strategies.