社区
网络编程
帖子详情
服务器端的TCP如果长时间没有通讯,可以自动断开吗?
亚细亚
2010-03-03 12:21:34
如题!
...全文
2019
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
服务器端
对于客户端连接状态的判断本文将介绍一个基于Java NIO开发的
TCP
通讯
服务器端
实现,用于实时监控客户端的连接状态。
tcp
通讯
原理
确认号为Ack=x+1,表示收到客户端的序号Seq并将其值加1作为自己确认号Ack的值(两端配对 接收到消息 并反馈的过程;标志位为SYN和ACK,表示“确认客户端的报文Seq序号有效,服务器能正常接收客户端发送的数据,并同意创建新连接”(即告诉客户端,服务器收到了你的数据);Seq:序号:给每个数据包一个序号,保证接受端可以按序收到数据包(首次握手的时候 Seq = 上次握手的时候的Ack值,如果
没有
则可以是任意值)序号为Seq=x+1,表示收到
服务器端
的确认号Ack,并将其值作为自己的序号值;
TCP
协议的
通讯
流程
基于
TCP
/IP协议的服务器和客户端程序的一般流程,如下图所示: 1、服务器初始化——LISTEN (1)调用socket函数创建文件描述符。 (2)调用bind函数将当前的文件描述符和ip/port绑定在一起。如果这个端口已经被其他进程占用了,就会bind失败。 (3)调用listen函数声明当前这个文件描述符作为一个服务器的文件描述符,为accept做好准备。 (4)调用acce...
TCP
客户端
断开
连接后,服务器连接处于CLOSE_WAIT状态之解决办法
问题背景: 最近做C/S结构的程序,项目中需要开发
TCP
服务器端
,需要能够接收多个客户端的连接请求。开发完成后,测试过程中出现了如题问题。 问题描述: 启动服务器,开启多个客户端,建立连接
通讯
,一切正常。关闭客户端(一个或多个),此时用netstat命令查看网络状态,发现所关闭的客户端的连接
没有
完全释放,而是处于CLOSE_WAIT状态。 解决方法:
Socket 处理客户端、
服务器端
断开
连接
一般是用来判断对方(设备,进程或其它网元)是否正常动行,一般采用定时发送简单的
通讯
包,如果在指定时间段内未收到对方响应,则判断对方已经当掉。用于检测
TCP
的异常
断开
。一般是用来判断对方(设备,进程或其它网元)是否正常动行,一般采用定时发送简单的
通讯
包,如果在指定时间段内未收到对方响应,则判断对方已经当掉。用于检测
TCP
的异常
断开
。基本原因是
服务器端
不能有效的判断客户端是否在线也就是说,服务器无法区
网络编程
18,356
社区成员
64,165
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章