c# socket客户端

场景:C# socket客户端怎么检测服务端已关闭

C# socket客户端如何检测服务端已关闭。
服务端:
 Socket socket = serverSocket.Accept();
 socket.ReceiveTimeout = 10000;  //监听客户端,10秒没有发信息到服务端。服务端将关闭该客户端连接。

服务端关闭该客户端连接后。客户端如何检测到打开的连接已关闭,然后判断假如已关闭重新再打开一个连接,如果没有,直接发送数据。
在客户端试了socket.Connected .返回值依然是ture。
请教各位大神....
------解决方案--------------------
这个肯定是通过心跳来实现的
------解决方案--------------------
Socket.Connected MSDN上说是上一次的状态,这玩意不大准,用心跳包吧