I have a problem with an Oracle 11g instance. Every connection that has been idle for about 20 minutes are lost. I get the following error

ORA-03135: connection lost contact

I did the following actions to get rid of it:

  • Changed the value os the IDLE_TIME in DEFAULT profile to UNLIMITED
  • Checked the TIMEOUT parametes in sqlnet.ora. There are no one setted
  • Checked the TIMEOUT parametes in listener.ora. There are no one setted

This problem only happens remotely.

What more I can do?


  • 3
    If it only happens remotely it's unlikely to be Oracle's fault. You need to talk to your sysadmins; it can be the server dropping idle connections or maybe some special firewall/proxy settings.
    – Ben
    Feb 19, 2014 at 13:48
  • 2
    It will be a firewall problem, as @Ben said.
    – Philᵀᴹ
    Feb 19, 2014 at 16:18
  • How can i check if firewall is killing the sessions? Feb 21, 2014 at 12:49

1 Answer 1


Add the option ENABLE=BROKEN into tnsnames.ora. This will enforce sending TCP Keepalive packets over TCP connection. These keepalives are not sent by Oracle client but by OS Kernel directly.

Then you must configure your TCP stack. Set TCP sending interval to value lower than 20 minutes.

Most probably you have a FW on the path and this FW drops tracking information for every in-active TCP connection.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.