ConnectionListener notification delayed 180 seconds

I have been attempting to speed up and/or control the interval of time it takes smack to detect a disconnect from the server. I have a ConnectionListener attached to my connection and no matter what I do, it always gets notifiyed almost exactly 180 seconds after I break the connection. In my connection configuration I provide a SocketFactory and I have attempted to set SoTimeout. This does not seem to affect the results.

I have tried taking down the network interface on the client machine as well as breaking the network path to the server. Both have exactly the same delay. When I run these tests I have another client (iChat actually) logged in to the same XMPP server (as a different account) and it is able to immediately detect the disconnect.

I do have SecurityMode enabled. I understand that SSL implementations have introduced delays in detecting socket death in the past but I am using java 1.6. I tried to disable it and I got the same 3 minute result.

What can I do to control the amount of time it takes smack to timeout it’s connection?