Forum Discussion

f51's avatar
f51
Icon for Cirrostratus rankCirrostratus
Nov 14, 2017

Session Timeout

Hi DC,

 

What is the best way to keep the session open for days through the F5 ?

 

Thanks in advance.

 

5 Replies

  • Management session to GUI, or network session for an application delivered via BigIP?

     

  • f51's avatar
    f51
    Icon for Cirrostratus rankCirrostratus

    Thank you Hannes Rapp for the quick response and ans is network session for an application

     

  • Do not forget that the BIGIP terminates client side and reinitiates server side connections - it's a full proxy. Now this behaviour also depends on what type of virtual server you are actually using. It also depends on which protocol we are talking about ... For instance, HTTP protocol is short lived, unlike protocols such as FTP.

     

    With that said, I'd take a fairly educated guess here and say that you can't achieve this (and probably not even recommendable) through the F5BIGIP. If anything, I'd try to keep the session open sending traffic every x number of seconds, from the client itself.

     

    Hope this helps.

     

  • Option 1: Making F5 non-intrusive middleman - so it behaves similar to a stateless router. If it's a basic application that doesn't use advanced BigIP features (i.e. AFM or ASM inspection, HTTP-aware iRules or APM session management), see my response in this thread https://devcentral.f5.com/questions/tcp-timeout-question-56589comment56406

    The above is applicable for HTTP and any non-HTTP apps alike. Works regardless of protocol.

    Option 2: Try to implement

    Connection: Keep-Alive
    header for HTTP\1.1 apps, or equivalent Session management feature for HTTP\2. Reference: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Keep-Alive

    In BigIP LTM, default 5 minute idle timeout TCP profile will suffice regardless of session lengths. Even in arbitrary scenario of 10 year long session lengths, a profile with 5 min idle timeouts is OK. Just make sure application correctly implements

    Connection: Keep-alive
    (or equivalent in HTTP2 that goes by different name)

    Regards,