Netty 远程断开后的异常问题

使用netty做长连接,server端每30秒进行一次心跳包发送,client端也设置了ReadTimeoutHandler,时间长度为40秒,在局域网开发环境下,如果server自动断开,不管是client.channel本身,还是ReadTimeoutHandler都有异常提出,但是在非局域网连接情况下,将client连接到到公网的server后,sever一旦断开,所有的client端都不会提示异常,而且连ReadTimeoutHandler也不会按指定时间执行,请问是什么原因,如何解决呢?请各位高手指点一下.

自己单独用一个定时器来控制,估计ReadTimeoutHandler等还是依赖服务器的返回响应等
非局域网环境,服务器断线响应包可能被过滤了,客户端收不到。

http://www.iteye.com/problems/103468
http://baike.1688.com/doc/view-d36950770.html

服务端不能发心跳包, 只需添加心跳检测就行,60s没有接受到客户端消息 ,关闭channel