You could create a session variable called Session("loggedin"

which is set to False in both your Session_OnStart and Session_OnEnd in your global.asa
When the user logs in, set this value to True.
Then on each page, you can avoid page caching by entering <% Response.Expires=-1 %>, and then run a check (if statement) on the page to make sure that your Session("loggedin"

is set to True, if it is continue loading the page, otherwise, ouput a nice message with a link that lets the person know that they are logged out, possibly due to a timeout.
I haven't tested this, but I think it's worth a shot
Let me know if you have any questions....