RE: Dead Connect detect

From: Bobak, Mark <>
Date: Mon, 4 Apr 2011 13:00:01 -0400
Message-ID: <>

Ok, well, I don't see a question in #1.

As to #2, DCD can work in one of two ways. Given a set firewall timeout value, you can set SQLNET.EXPIRE_TIME to a value less than your firewall timeout, and it will function as a keepalive. That is, connections will be preserved, or, kept alive. On the other hand, if you *want* the connections to get whacked after the firewall timeout, then set SQLNET.EXPIRE_TIME to something slightly longer than your firewall timeout period, and DCD works more as it's named. That is, it will detect the dead connections, and clean them up.

Hope that helps,


From: [] On Behalf Of Goulet, Richard Sent: Monday, April 04, 2011 11:21 AM
To: Jorgensen, Finn; Subject: RE: Dead Connect detect

OK, I've two questions:

  1. I'm using Redhat Linux
  2. I don't want the firewall settings to be exceeded so sending a packet just to keep the connection open is not desired. What is is to find those that are dead & clean up on the Oracle side.

Dick Goulet
Senior Oracle DBA/NA Team Leader

From: Jorgensen, Finn [] Sent: Monday, April 04, 2011 10:07 AM
To: Goulet, Richard; '' Subject: RE: Dead Connect detect

Gwen Shapira did a presentation at Hotsos 2011 that involved this type of scenario. 2 of the proposed solutions were as follows (copy and paste from her presentation) :

Another solution will be to modify kernel parameter net.ipv4.tcp_keepalive_time to a value lower than the firewall timeout values. This should give the TCP keepalive a chance to keep the connection alive. A third solution can be to use SQLNET keep-alive parameter SQLNET.EXPIRE_TIME that allows Oracle to send its own keep-alive probes from the server to the client, normally sent every 10 minutes. These probes will also keep the connection a live and not allow the firewall to disconnect it.


From: [] On Behalf Of Goulet, Richard Sent: Monday, April 04, 2011 9:52 AM
Subject: Dead Connect detect


        Many years ago (version 9.2) I toyed with this capability of SQL*Net without much luck. Has anyone toyed with it in recent times ( with much success??? I'm facing an issue where we have web servers in a DMZ that connect back to the database and the firewall has a 24 hour idle timeout, so I end up having to manually disconnect some sessions every day.

Dick Goulet
Senior Oracle DBA/NA Team Leader

>>> This e-mail and any attachments are confidential, may contain legal, professional or other privileged information, and are intended solely for the addressee. If you are not the intended recipient, do not use the information in this e-mail in any way, delete this e-mail and notify the sender. CEG-IP1

Received on Mon Apr 04 2011 - 12:00:01 CDT

Original text of this message