Windows環境のJavaのソケット通信で質問させてください。

ソケット常時接続で通信を行うサーバ・クライアントモデルの
クライアント側アプリケーションを作っています。

OSはWindow 2003、JavaはJDK6を使用しています。

クライアント - サーバ間は、
[クライアント] - [スイッチングハブ] - [ルータ] - [サーバ]
という構成になっています。

クライアント側からアクティブオープンでソケット接続後、
常時read用スレッドおよび、write用スレッドの2つの非同期
スレッドでソケットを共有して使用しています。

ここで [スイッチングハブ] - [ルータ] 間のLANケーブルを
抜き、しばらくするとクライアントのread処理で例外
「SQLException(connection reseted)」が発生します。