socket 超时设立

socket 超时设置
假如一个c/s模型tcp的。 现在的协议是 c发送请求,s立即回复。那么我在c端的recv要设置超时值,比如我send后,就recv一段时间,如果某个时间内还接收不到数据,就认为对方断线了。现在是超时的时间设置多长才合适?有什么公式计算吗?

------解决方案--------------------
设置超时要以输入速度和人的感知来确定,感觉可以了就行.数据一般都会立即返回的.ping一个外网的IP可以给出一般的延时时间.