社区
网络编程
帖子详情
服务器端的TCP如果长时间没有通讯,可以自动断开吗?
亚细亚
2010-03-03 12:21:34
如题!
...全文
1911
11
打赏
收藏
服务器端的TCP如果长时间没有通讯,可以自动断开吗?
如题!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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连接只要建立,默认是一直保持的,不会自动断开
当然,也可以自己设置超时自动断开
TCP
建立后数据传输完
长时间
不交互会出现什么?(
TCP
的Keepalive机制)
问题:客户端和服务器建立起
TCP
连接后,如果双方
长时间
不进行通信,会出现什么情况?如何保证连接的存活? 分析:在实际现实中,建立起长连接后客户端可很意外失联的情况,这些
TCP
连接并未来得及正常释放,
长时间
的积累会导致非常多的半打开连接,造成资源浪费,也有可能一个正常的请求得不到正常的返回。所以
服务器端
就有了
TCP
的Keepalive机制。 * 如上图所示,
长时间
不通信,服务端会给客户端发送一个
TCP
Keep-Alive来查看客户端是否还存活,如果客户端
没有
应答,服务端超时
没有
收到回复就会再次重新发送;连
TCP
通讯
客户端怎样判断与
服务器端
断开
,该如何处理
TCP
通讯
客户端怎样判断与
服务器端
断开
大虾们,神们,C# winform里面,采用多线程监听端口,接收方式为阻塞式,创建单一线程进行监听函数,这样阻塞时只阻塞单一线程,对主线程
没有
影响,并使用异步通信模式,来一个连接后回调函数进行解析入库。这是我的实现原理,目前有个问题,如何在客户端检测到与服务器
断开
,目前我只能做到写入TXT文档里面,看文档查看最后一次连接时间,如下: ------------------------告警信息2012-2-22 23:31:04----...
Linux中
TCP
断开
等待时间
Linux中
TCP
断开
等待时间 查看 /proc/sys/net/ipv4/
tcp
_fin_timeout中的数值,默认为60秒 #cat /proc/sys/net/ipv4/
tcp
_fin_timeout 60 可以修改这个值 修改为20,并查询 #echo 20 > /proc/sys/net/ipv4/
tcp
_fin_timeout netstat 常用命令格式 #netstat -anutp 参数含义: -a 显示所有 -n 以ip形式显示当前建立的有效连接和端口 -u 显示UDP协议
TCP
异常
断开
连接分析
【摘要】 一个
TCP
连接,
没有
开启 keepalive,双方一直
没有
数据交互,进程崩溃和主机崩溃有什么区别? 上周有位读者找我说,他在面试腾讯的时候,遇到了这么个问题: 这个属于
TCP
异常
断开
连接的场景,这部分内容在我的「图解网络」还
没有
详细介绍过,这次就乘着这次机会补一补。 这个问题有几个关键词:
没有
开启 keepalive; 一直
没有
数据交互; 进程崩溃; 主机崩溃; 我们先来认识认识什么是
TCP
keepalive 呢? 这东西其实就是
TCP
的保活机制,它的工作原理我之..
tcp
、http中的保活机制keep-alive
Tcp
: 在双方
长时间
未
通讯
时,如何得知对方还活着?如何得知这个
TCP
连接是健康且具有
通讯
能力的?
TCP
的保活机制就是用来解决此类问题,这个机制我们也可以称作:keepalive。保活机制默认是关闭的,
TCP
连接的任何一方都可打开此功能。有三个主要配置参数用来控制保活功能 系统级:保活时间
tcp
_keepalive_time、探测时间间隔
tcp
_keepalive_intvl、探测循环次数
tcp
_keepalive_probes。 保活时间(
tcp
_keepalive_time)默认7200秒,保活时
网络编程
18,363
社区成员
64,187
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章