社区
网络编程
帖子详情
服务器端的TCP如果长时间没有通讯,可以自动断开吗?
亚细亚
2010-03-03 12:21:34
如题!
...全文
2016
11
打赏
收藏
服务器端的TCP如果长时间没有通讯,可以自动断开吗?
如题!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hslinux
2010-03-05
打赏
举报
回复
最好就是发心跳包检测,一定次数的心跳包没有数据回复,服务器端就主动关闭。
WizardK
2010-03-03
打赏
举报
回复
LZ问可不可以,我只能说可以,但是TCP这种长连接(连接保持)的方式,断开了就需要CLIENT重连了。
小马喝水
2010-03-03
打赏
举报
回复
不会,回复内容太短了!
cpp2017
2010-03-03
打赏
举报
回复
循环检查各个连接的最好活动时间,如果超时就close掉。
亚细亚
2010-03-03
打赏
举报
回复
引用 5 楼 zhdf189 的回复:
TCP连接只要建立,默认是一直保持的,不会自动断开
当然,也可以自己设置超时自动断开
怎么设置?
WizardK
2010-03-03
打赏
举报
回复
TCP SERVER判断CLIENT的断开情况:
1.正常情况,CLIENT关闭SOCKET,SERVER在上层收到CLOSE事件或阻塞型RECV返回0,关闭SOCKET。
2.网线断开,需要加入KEEPALIVE支持,默认是7200秒,或者自己维护KEEPALIVE,定时发送1字节的OOB数据包。
3.异常退出,客户端异常退出,系统会关闭和释放网络描述符,现象同1。
dd_zhouqian
2010-03-03
打赏
举报
回复
自己来做判断吧,TCP是长连接
yanghehong
2010-03-03
打赏
举报
回复
貌似TCP协议标准本身没有这种空闲死连接的检查机制;所以需要上层来自己实现。不过有的系统的TCP协议栈提供了一些keep-alive机制,可以帮助你应用程序诊断TCP连接是不是死掉了。
-
千里孤行
jiuchang
2010-03-03
打赏
举报
回复
最好是超时断开
防止客户端死机
这样能节省系统资源
不过需要客户端实现重连机制,也不是很麻烦
zhdf189
2010-03-03
打赏
举报
回复
TCP连接只要建立,默认是一直保持的,不会自动断开
当然,也可以自己设置超时自动断开
Java nio
服务器端
对于客户端连接状态的判断
本文介绍了一种使用Java NIO开发的
TCP
服务器端
心跳监测机制,通过定时发送心跳包来主动检测客户端连接状态。当客户端
长时间
无响应时,服务器会采取措施
断开
连接,确保
通讯
线程稳定。
tcp
通讯
原理
本文介绍了
TCP
通讯
原理,包括三次握手、四次挥手过程。三次握手用于建立连接,客户端和服务器通过发送特定标志和序号的数据包完成。四次挥手用于
断开
连接,双方也通过特定数据包交互。还提及了序号、窗口大小概念,以及可能的中断情况,如防火墙阻挡和SYN攻击。
TCP
协议的
通讯
流程
本文详细介绍了
TCP
/IP协议的服务器和客户端
通讯
流程,包括三次握手建立连接、全双工数据传输及四次挥手
断开
连接。通过示例解释了为什么需要三次握手和四次挥手,并探讨了TIME_WAIT状态的原因及其对服务器重启的影响。同时,讨论了服务器处理大量连接时可能遇到的问题以及解决方案。
TCP
客户端
断开
连接后,服务器连接处于CLOSE_WAIT状态之解决办法
在
TCP
服务器开发中,遇到客户端关闭连接后,服务器连接处于CLOSE_WAIT状态的问题。通过非阻塞的Send调用来检查连接状态并不准确。文中介绍了通过调整
TCP
Keep-Alive机制来缩短检测时间,实现对客户端
断开
连接的及时响应,从而解决CLOSE_WAIT状态问题。通过Socket.IOControl方法设置低级操作模式,确保连接在更短的时间内被
断开
。
Socket 处理客户端、
服务器端
断开
连接
本文深入解析了心跳包机制的工作原理及其实现方式。通过客户端定时发送简单信息到
服务器端
,确保连接的有效性,并介绍了心跳包在
TCP
连接中的作用,以及如何通过心跳包检测异常
断开
情况。
网络编程
18,357
社区成员
64,165
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章