If your sessions are expiring too quickly then please set the site to use ASP.Net State Server.
You need to do two things in web.config file in the root of your website/application to do that.
Firstly add this line:
<sessionState mode="StateServer" cookieless="false" timeout="20" />
Then please follow the link below to create a machine key for each site and add it in web.config as well:
http://portal.winserve.co.uk/knowledgebase.php?action=displayarticle&id=52
You put both of the above anywhere in section <system.web> .
Doing that will make your apps use the State Server service and it will keep your sessions active even if your application pool recycles or if the web server is reset.